function mg_init(a){this.reference=a.reference;this.activated="undefined"!=typeof a.activated?a.activated:[];if(a.click){var b=a.click.interactive;this[reference+"_activated_click"]=[];this[reference+"_linked_click"]=a.click.linked;this[reference+"_max_activated_click"]=a.click.max_activated;this[reference+"_deactivable_click"]=a.click.deactivable;this[reference+"_less_click"]=a.click.less;this[reference+"_plus_click"]=a.click.plus;this[reference+"_automatic_click"]=a.click.automatic;this[reference+
"_automaticpause_click"]=a.click.automaticpause;this[reference+"_automaticinverse_click"]=a.click.automaticinverse}if(a.hover){var c=a.hover.interactive;this[reference+"_activated_hover"]=[];this[reference+"_linked_hover"]=a.hover.linked;this[reference+"_max_activated_hover"]=a.hover.max_activated;this[reference+"_deactivable_hover"]=a.hover.deactivable;this[reference+"_less_hover"]=a.hover.less;this[reference+"_plus_hover"]=a.hover.plus;this[reference+"_automatic_hover"]=a.hover.automatic;this[reference+
"_automaticpause_hover"]=a.hover.automaticpause;this[reference+"_automaticinverse_hover"]=a.hover.automaticinverse}if(a.out){var d=a.out.interactive;this[reference+"_activated_out"]=[];this[reference+"_linked_out"]=a.out.linked;this[reference+"_max_activated_out"]=a.out.max_activated;this[reference+"_deactivable_out"]=a.out.deactivable;this[reference+"_less_out"]=a.out.less;this[reference+"_plus_out"]=a.out.plus;this[reference+"_automatic_out"]=a.out.automatic;this[reference+"_automaticpause_out"]=
a.out.automaticpause;this[reference+"_automaticinverse_out"]=a.out.automaticinverse}a.interaction?(this[reference+"_prevsteps"]="undefined"!=typeof a.interaction.prevsteps?a.interaction.prevsteps:1,this[reference+"_nextsteps"]="undefined"!=typeof a.interaction.nextsteps?a.interaction.nextsteps:1,this[reference+"_prevtosteps"]=a.interaction.prevtosteps,this[reference+"_nexttosteps"]=a.interaction.nexttosteps,this[reference+"_cycle"]=a.interaction.cycle):(this[reference+"_prevsteps"]=1,this[reference+
"_nextsteps"]=1);mg_initLinks(reference,b,c,d);if(0<activated.length)for(var e in activated)mg_setState(reference,activated[e],"_init",!1);else mg_setState(reference,null,"_init",!1);mg_automatic(reference,"_click");mg_automatic(reference,"_over");mg_automatic(reference,"_out")}$.ajaxSetup({cache:!1});
function mg_automatic(a,b){var c=this[a+"_automatic"+b],d=this[a+"_automaticinverse"+b];void 0!=c&&(clearInterval(this[a+"_timeout"+b]),clearInterval(this[a+"_timeoutpause"+b]),this[a+"_timeout"+b]=d?this.setInterval(function(){mg_prev(a,!0)},c):this.setInterval(function(){mg_next(a,!0)},c))}
function mg_automaticpause(a,b){var c=this[a+"_automaticpause"+b];void 0!=c&&(clearInterval(this[a+"_timeout"+b]),clearInterval(this[a+"_timeoutpause"+b]),this[a+"_timeoutpause"+b]=this.setInterval(function(){mg_automatic(a,b)},c))}
function mg_setState(a,b,c,d,e){var g=this[a+c];"_init"==c&&(c="_click");var h=this[a+"_target"+c],i=this[a+"_target"+c]=b,k=this[a+"_deactivable"+c];if(void 0!=g){var f=this[a+"_activated"+c],l=mg_deactivate(a,b,c),m=this[a+"_cycle"],n=this[a+"_prevsteps"],o=this[a+"_nextsteps"],h=mg_set_mutiple(a,i,h,n,o,this[a+"_less"+c],this[a+"_plus"+c],this[a+"_prevtosteps"],this[a+"_nexttosteps"],m);g(a,f,l,n,o,h,m);if(!k){for(var j=0;j<f.length;j++)mg_enableTextSelect($("#"+a+"-"+f[j]));mg_disableTextSelect($("#"+
a+"-"+l))}}if(d)for(j in d=this[a+"_linked"+c],d)mg_setState(d[j],b,c,!1);e||mg_automaticpause(a,c)}
function mg_set_mutiple(a,b,c,d,e,g,h,i,k,f){mg_checkPrev(a,d,e,g,h,i,k,f);mg_checkNext(a,d,e,g,h,i,k,f);if(0<h+g){e=$("[id^="+a+"-]:not([id*=prev]):not([id*=next]):not([id*=first]):not([id*=last])").length;a=mg_mapNum(b,g,h,e,f);d=mg_mapNum(c,g,h,e,f);b=mg_findNearestDistance(b,c,e,f);f={};f.activated=a;f.old_activated=d;f.less=g;f.plus=h;f.distance=b;f.jumped=b;f.before_in=[];f.before_out=[];f.after_in=[];f.after_out=[];f.direction=1;if(null==c)return f;if(0<b){f.direction=1;for(c=0;c<Math.abs(b);c++)f.after_in.unshift(a[d.length-
c-1]),f.before_out.unshift(d[b-c-1])}else for(c=f.direction=0;c<Math.abs(b);c++)f.before_in.push(a[-b-c-1]),f.after_out.push(d[d.length-c-1]);return f}return null}function mg_deactivate(a,b,c){var d=this[a+"_activated"+c],e=this[a+"_max_activated"+c],a=this[a+"_deactivable"+c],c=null;if(null!=b){var g=$.inArray(b,d);-1!=g?a&&(c=parseFloat(d.splice(g,1))):(d.length>=e&&(c=parseFloat(d.splice(d.length-1,1))),d.unshift(b))}return c}
function mg_initLinks(a,b,c,d){for(var e=0;0!=$("#"+a+"-"+e).length;)b&&(mg_disableTextSelect($("#"+a+"-"+e)),$("#"+a+"-"+e).live("click",function(){var a=$(this).attr("id").lastIndexOf("-"),b=$(this).attr("id").slice(0,a);mg_setState(b,parseFloat($(this).attr("id").slice(a+1)),"_click",!0);return!1})),c&&$("#"+a+"-"+e).live("mouseenter",function(){var a=$(this).attr("id").lastIndexOf("-"),b=$(this).attr("id").slice(0,a);mg_setState(b,parseFloat($(this).attr("id").slice(a+1)),"_hover",!0);return!1}),
d&&$("#"+a+"-"+e).live("mouseleave",function(){var a=$(this).attr("id").lastIndexOf("-"),b=$(this).attr("id").slice(0,a);mg_setState(b,parseFloat($(this).attr("id").slice(a+1)),"_out",!0);return!1}),e++;mg_disableTextSelect($("#"+a+"-prev"));$("#"+a+"-prev").live("click",function(){$(this).attr("id").lastIndexOf("-");mg_prev(a);return!1});mg_disableTextSelect($("#"+a+"-next"));$("#"+a+"-next").live("click",function(){$(this).attr("id").lastIndexOf("-");mg_next(a);return!1});mg_disableTextSelect($("#"+
a+"-first"));$("#"+a+"-first").live("click",function(){$(this).attr("id").lastIndexOf("-");mg_setState(a,0,"_click",!0);return!1});mg_disableTextSelect($("#"+a+"-last"));$("#"+a+"-last").live("click",function(){$(this).attr("id").lastIndexOf("-");mg_setState(a,$("[id^="+a+"-]:not([id*=prev]):not([id*=next]):not([id*=first]):not([id*=last])").length-1,"_click",!0);return!1})}
function mg_prev(a,b){var c=this[a+"_cycle"],d=$("[id^="+a+"-]:not([id*=prev]):not([id*=next]):not([id*=first]):not([id*=last])").length,e=this[a+"_prevsteps"],g=this[a+"_prevtosteps"],e=parseFloat(this[a+"_target_click"])-e,h=this[a+"_less_click"];g&&!c?e<0-h&&(e=0-h):0>e&&(e=c?d-Math.abs(e):0);mg_setState(a,e,"_click",!0,b)}
function mg_next(a,b){var c=this[a+"_cycle"],d=$("[id^="+a+"-]:not([id*=prev]):not([id*=next]):not([id*=first]):not([id*=last])").length,e=this[a+"_target_click"]+this[a+"_nextsteps"],g=this[a+"_plus_click"];this[a+"_nexttosteps"]&&!c?e>d-1+g&&(e=d-1+g):e>d-1&&(e=c?Math.abs(e)-d:this[a+"_target_click"]);mg_setState(a,e,"_click",!0,b)}
function mg_checkPrev(a,b,c,d,e,g,h,i){$("[id^="+a+"-]:not([id*=prev]):not([id*=next]):not([id*=first]):not([id*=last])");i||(c=parseFloat(this[a+"_target_click"])-b,d=g?c<0-d-e?this[a+"_prevhide"]:this[a+"_prevshow"]:0>c?this[a+"_prevhide"]:this[a+"_prevshow"],void 0!=d&&d(a,b))}
function mg_checkNext(a,b,c,d,e,g,h,i){b=$("[id^="+a+"-]:not([id*=prev]):not([id*=next]):not([id*=first]):not([id*=last])").length;i||(i=this[a+"_target_click"]+c,d=h?i>b-d-e-1?this[a+"_nexthide"]:this[a+"_nextshow"]:i>b-1?this[a+"_nexthide"]:this[a+"_nextshow"],void 0!=d&&d(a,c))}function mg_mapNum(a,b,c,d,e){for(var g=[],b=-b;b<=c;b++)a+b<d||e?0>a+b&&e?g.push(d-(-a-b)):a+b>=d&&e?g.push(a+b-d):g.push(a+b):g.push(null);return g}function mg_mapDistance(a,b){return a-b}
function mg_mapDistanceReverse(a,b,c,d){c-=d;return b==a?a:b<c/2?-b:b>c/2?c-b-1:c/2}function mg_findNearestDistance(a,b,c,d){var e=c/2;if(!d||a-b<e&&a-b>-e)return a-b;if(a-b>e)return b>a?-a-(c-b):-b-(c-a);if(a-b<-e)return b>a?a+(c-b):b+(c-a)}
function mg_disableTextSelect(a){a.each(function(){this.onselectstart=function(){return!1};this.unselectable="on";jQuery(this).css("user-select","none");jQuery(this).css("-o-user-select","none");jQuery(this).css("-moz-user-select","none");jQuery(this).css("-khtml-user-select","none");jQuery(this).css("-webkit-user-select","none")})}
function mg_enableTextSelect(a){a.each(function(){this.onselectstart=function(){};this.unselectable="off";jQuery(this).css("user-select","text");jQuery(this).css("-o-user-select","text");jQuery(this).css("-moz-user-select","text");jQuery(this).css("-khtml-user-select","text");jQuery(this).css("-webkit-user-select","text")})};
