var GalleryCarousel=new Class({initialize:function(c,b,a){this.root_node=c?$(c):null;this.image_viewport_class="mb_gallery_image_viewport";this.image_class="mb_gallery_image";this.image_active_class="mb_gallery_image_active";this.image_hold_class="mb_gallery_image_hold";this.images_class="mb_gallery_images";this.image_prev_class="mb_gallery_image_prev";this.image_next_class="mb_gallery_image_next";this.image_info_class="mb_gallery_image_info";this.image_title_class="mb_gallery_image_title";this.image_description_class="mb_gallery_image_description";this.info_title_class="mb_gallery_info_title";this.info_description_class="mb_gallery_info_description";this.info_link_class="mb_gallery_info_link";this.info_link_target_class="mb_gallery_info_link_taget";this.controls_class="mb_gallery_controls";this.control_class="mb_gallery_control";this.control_index_class="mb_gallery_control_index";this.blocker_class="mb_gallery_blocker";this.active_class="active";this.disabled_class="disabled";this.image_prefix="mb_gallery_image_";this.info_prefix="mb_gallery_info_";this.control_prefix="mb_gallery_control_";b=b?parseInt(b):0;a=a?parseInt(a):0;this.effect_type=isNaN(b)?0:b;this.time_interval=isNaN(a)?0:a;this.timer=null;this.images_amount=0;this.image_viewport_width=0},start:function(){var e=this;if(this.root_node){var a=this.root_node.getElement("."+this.images_class);var d=this.root_node.getElement("."+this.image_viewport_class);if(a){var c=a.getElements("img");if(c){this.images_amount=c.length;if(this.images_amount==1){this.stateHandler(this.image_prev_class,0);this.stateHandler(this.image_next_class,0)}else{if(this.images_amount>1){if(this.time_interval){this.timer=new Fx({duration:this.time_interval,onComplete:function(){e.showImageSibling(1);e.timer.start()}});this.timer.start()}}}}}if(d){var b=d.getSize();this.image_viewport_width=b.x}}this.setEvents()},setEvents:function(){var e=this;if(this.root_node){var b=this.root_node.getElement("."+this.image_prev_class);var a=this.root_node.getElement("."+this.image_next_class);var d=this.root_node.getElement("."+this.controls_class);if(b&&a){b.addEvent("click",function(){if(!this.hasClass(e.disabled_class)){e.showImageSibling(2)}});a.addEvent("click",function(){if(!this.hasClass(e.disabled_class)){e.showImageSibling(1)}})}if(d){var c=d.getElements("."+this.control_class);if(c){c.addEvent("click",function(){if(!this.hasClass(e.active_class)){var n=this.getElement("."+e.control_index_class);if(n){var i=n.get("text");var j=parseInt(i);if(!isNaN(j)){var g=e.image_prefix+j;var m=d.getElement("."+e.active_class);var l=1;if(m){var f=m.getElement("."+e.control_index_class);if(f){var k=f.get("text");var h=parseInt(k);if(!isNaN(h)){if(j<h){l=2}}}}e.showImage(g,l);e.showImageInfo(g)}}}})}}}},showImage:function(l,y){var r=this;if(this.root_node&&l){var v=this.root_node.getElement("."+this.image_class);var g=this.root_node.getElement("."+this.images_class);var e=parseInt(l.replace(this.image_prefix,""));var a=null;if(!isNaN(e)){var j=this.root_node.getElement("."+this.controls_class);var s=this.info_prefix+e;var t=this.root_node.getElement("."+s);if(j){var m=j.getElement("."+this.control_index_class+":contains("+e+")");if(m){var i=m.getParent("."+this.control_class);if(i){if(!i.hasClass(this.active_class)){var h=j.getElement("."+this.active_class);if(h){h.removeClass(this.active_class)}i.addClass(this.active_class)}}}}if(t){var p=t.getElement("."+this.info_link_class);if(p){var f=t.getElement("."+this.info_link_target_class);var k=p.get("text");a=new Element("a",{href:k});if(f){var b=f.get("text");a.set("target",b)}}}}if(v&&g){var u=g.getElement("."+l);if(u){var x=u.clone();var c=x.clone();var q=v.getElement("."+this.image_active_class);var o=v.getElement("."+this.image_hold_class);if(q){if(this.effect_type&&o){switch(this.effect_type){case 1:q.setStyle("z-index",20);o.setStyle("z-index",10);x.inject(o);var n=new Fx.Morph(q,{duration:500,transition:Fx.Transitions.Quad.easeOut,onStart:function(){r.displayBlocker(1);r.setTimer(0)},onComplete:function(){q.set("html",null);c.inject(q);q.setStyle("opacity",1);o.set("html",null);if(a){a.wraps(c)}r.displayBlocker(0);r.setTimer(1)}});n.start({opacity:0});break;case 2:if(this.image_viewport_width){var d=0;var w=-this.image_viewport_width;y=!isNaN(parseInt(y))?y:1;switch(y){case 1:v.setStyle("left",0);q.setStyle("left",0);o.setStyle("left",this.image_viewport_width);break;case 2:d=-this.image_viewport_width;w=0;v.setStyle("left",-this.image_viewport_width);q.setStyle("left",this.image_viewport_width);o.setStyle("left",0);break}x.inject(o);var n=new Fx.Morph(v,{duration:500,transition:Fx.Transitions.Quad.easeOut,onStart:function(){r.displayBlocker(1);r.setTimer(0)},onComplete:function(){q.set("html",null);c.inject(q);v.setStyle("left",d);o.set("html",null);if(a){a.wraps(c)}r.displayBlocker(0);r.setTimer(1)}});n.start({left:w})}break}}else{this.setTimer(0);this.setTimer(1);q.set("html",null);x.inject(q);if(a){a.wraps(x)}}}}}}},showImageSibling:function(h){if(this.root_node){var e=this.root_node.getElement("."+this.image_active_class);var c=this.root_node.getElement("."+this.images_class);if(e&&c){var g=e.getElement("img");if(g){var a=g.get("class");if(a){var d=c.getElement("."+a);if(d){var b=null;var f=null;h=!isNaN(parseInt(h))?h:1;switch(h){case 1:b=d.getNext("img");if(!b){f=this.image_prefix+1}break;case 2:b=d.getPrevious("img");if(!b){f=this.image_prefix+this.images_amount}break}if(b){var f=b.get("class")}if(f){this.showImage(f,h);this.showImageInfo(f)}}}}}}},showImageInfo:function(c){var h=this;if(this.root_node&&c){var f=parseInt(c.replace(this.image_prefix,""));if(!isNaN(f)){var l=this.info_prefix+f;var b=this.root_node.getElement("."+l);if(b){var k=this.root_node.getElement("."+this.image_info_class);var a=this.root_node.getElement("."+this.image_title_class);var i=this.root_node.getElement("."+this.image_description_class);var e=b.getElement("."+this.info_title_class);var g=b.getElement("."+this.info_description_class);var j=e?e.get("text"):null;var d=g?g.get("text"):null;if(k){if((e||g)&&k.hasClass(this.disabled_class)){k.removeClass(this.disabled_class)}else{if(!e&&!g&&!k.hasClass(this.disabled_class)){k.addClass(this.disabled_class)}}}if(a){a.set("text",j)}if(i){i.set("text",d)}}}}},stateHandler:function(c,b){if(this.root_node&&c){var a=this.root_node.getElement("."+c);if(a){b=!isNaN(parseInt(b))?b:1;switch(b){case 0:a.addClass(this.disabled_class);break;case 1:a.removeClass(this.disabled_class);break}}}},displayBlocker:function(b){if(this.root_node){var a=this.root_node.getElement("."+this.blocker_class);if(a){b=!isNaN(parseInt(b))?b:1;switch(b){case 0:a.setStyle("display","none");break;case 1:a.setStyle("display","block");break}}}},setTimer:function(a){if(this.timer){a=!isNaN(parseInt(a))?a:1;switch(a){case 0:this.timer.cancel();break;case 1:this.timer.start();break}}}});
