
var kastle_trailers=Array();function KastleTrailerTimer(element_id)
{kastle_trailers[element_id].child_switch();kastle_trailers[element_id].play(true);}
var KastleTrailer=new Class({Implements:Options,options:{id:'trailer',thumbnail_id:null,mask:null,effect:'fade',effect_duration:500,display_duration:5000,thumbnail_selected_class:'current',},element_me:null,element_childs:null,element_thumbnail:null,element_thumbnail_childs:null,i_current:0,i_next:0,initialize:function(options)
{this.setOptions(options);kastle_trailers[this.options.id]=this;me=kastle_trailers[this.options.id];this.element_me=$("#"+this.options.id);$(this.element_me).css('overflow','hidden').css('position','relative');this.element_childs=$(this.element_me).children().not("#"+this.options.thumbnail_id);$(this.element_childs).each(function(index,element)
{$(element).css('position','absolute');});if(this.options.thumbnail_id)
{this.element_thumbnail=$("#"+this.options.thumbnail_id);this.element_thumbnail_childs=$(this.element_thumbnail).children();}
$(this.element_thumbnail_childs).each(function(index,element)
{if(index<me.element_childs.length)
{$(element).css('cursor','pointer');$(element).attr('class','');$(element).mouseover(function()
{me.stop();me.child_switch(index);}).mouseout(function()
{me.play(false);});if(index==0)
{$(element).attr('class','current');}}});if(this.options.mask)
{$(this.element_me).append('<div style="position:absolute;pointer-events:none;"><img src="'+this.options.mask+'"/></div>');}
this.prepare();this.child_switch(0);this.play(false);},selector:function(selected)
{this.current=selected;$(this.element_childs).each(function(index,element)
{$(element).css('display','none');if(index==selected)
{$(element).css('display','block');}});},next:function(i_next)
{if(typeof i_next=='undefined')
{this.i_next=this.i_next+1;}
else
{this.i_next=i_next;}
if(this.i_next>=this.element_childs.length)
{this.i_next=0;}},timer_id:null,play:function(include_effect)
{duration=this.options.display_duration;if(include_effect)
{duration+=this.options.effect_duration;}
this.timer_id=window.setTimeout("KastleTrailerTimer('"+this.options.id+"')",duration);},stop:function()
{$(this.element_childs).stop(true,true);window.clearTimeout(this.timer_id);this.prepare();},prepare:function()
{i_current=this.i_current;$(this.element_childs).each(function(index,element)
{if(index==i_current)
{$(element).css('display','block').fadeIn(0).css('left',0);}
else
{$(element).css('display','none');}});},child_switch:function(i_next)
{this.next(i_next);if(this.i_next!=this.i_current)
{element_next=$(this.element_childs[this.i_next]);element_current=$(this.element_childs[this.i_current]);if(this.options.effect=='fade')
{element_current.fadeToggle(this.options.effect_duration);element_next.fadeToggle(this.options.effect_duration);}
else
{if((this.i_next==0&&this.i_current==this.element_childs.length-1)||this.i_next>this.i_current)
{element_next.css('left',element_current.width()).css('display','block').fadeIn(0);element_current.animate({left:'-'+element_current.width(),},this.options.effect_duration,function(){element_current.fadeOut(0);});element_next.animate({left:0,},this.options.effect_duration,function(){});}
else
{element_next.css('left',-element_next.width()).css('display','block').fadeIn(0);element_current.animate({left:'+'+element_next.width(),},this.options.effect_duration,function(){element_current.fadeOut(0);});element_next.animate({left:0,},this.options.effect_duration,function(){});}}}
if(this.element_thumbnail_childs)
{$(this.element_thumbnail_childs[this.i_current]).removeClass(this.options.thumbnail_selected_class);$(this.element_thumbnail_childs[this.i_next]).addClass(this.options.thumbnail_selected_class);}
this.i_current=this.i_next;},});
