var CLEAR=window.CLEAR||{};CLEAR.com=CLEAR.com||{};CLEAR.com.Carousel=CLEAR.com.Carousel||{};(function(){var $space=CLEAR.com,$self=this;$self.vars={movies:{},timer:800,autoTimer:6000,arrows:(function(){var div=function(val){return'<div class="arrows '+val.toLowerCase()+'-slide"><a href="#">'+val+"</a></div>"};return div("Previous")+div("Next")})(),mask:(function(pos){var span=function(pos){return'<span class="feature-mask '+pos+'"></span>'};return span("top")+span("right")+span("bottom")+span("left")})(),icon:'<div class="feature-carousel-preloader-icon"></div>',border:'<div class="feature-carousel-border"></div>',delta:{}};$self.utils={addMovie:function(movie){$self.vars.movies[movie.id]=movie},removeMovie:function(movie){$("#"+movie.id+"-flash").parent().remove();movie.loaded=false},pauseMovie:function(movie){return movie.pauseVideo()},playMovie:function(movie){return movie.playVideo()},fade:function(el,value,easing,callback){el.stop().animate({opacity:value},{duration:$self.vars.timer/1.5,easing:easing,complete:callback})},loadMovieSlide:function(slide,movie){var dummy=$("<span></span>").appendTo(slide),url=movie.url;var flashobject={name:movie.id+"-flash",id:movie.id+"-flash","class":"flash-content",src:url,width:640,height:480,allowfullscreen:true,allowscriptaccess:"always",flashvars:movie.flashvars,wmode:"opaque"};dummy.flash(flashobject);$(document).one("FlashMovieEnd",function(e){$self.utils.unbindMovieControllerEvents(slide);$self.utils.removeMovie(movie)});movie.loaded=true;$self.utils.bindMovieControllerEvents(slide)},bindMovieControllerEvents:function(slide){var controller=$self.vars.controller,_timer=null;$self.utils.minimizeController();var mousemove=function(e){if(_timer){window.clearTimeout(_timer)}if(!controller.data("maximizing")){$self.utils.maximizeController()}_timer=window.setTimeout($self.utils.minimizeController,2000)};slide.bind("mousemove",mousemove);controller.bind("mouseenter",function(){slide.unbind("mousemove");if(_timer){window.clearTimeout(_timer)}$self.utils.maximizeController()});controller.bind("mouseleave",function(){$self.utils.minimizeController();slide.bind("mousemove",mousemove)})},unbindMovieControllerEvents:function(slide){var controller=$self.vars.controller;$self.vars.slides.unbind("mousemove");controller.trigger("mouseenter");controller.unbind("mouseenter");controller.unbind("mouseleave")},minimizeController:function(){var controller=$self.vars.controller;controller.removeData("maximizing");controller.stop().animate({top:130},{duration:500})},maximizeController:function(){var controller=$self.vars.controller;controller.data("maximizing",true);controller.stop().animate({top:0},{duration:500,complete:function(){controller.removeData("maximizing")}})},beforeSlide:function(el,active){var items=$(".feature-carousel-controller li"),index=Math.max(items.index(el),items.index(active))+1,rightOfActiveSlide=items.splice(index,items.length);$.each(rightOfActiveSlide,function(i,item){var el=$(item),pos=el.position();el.css({left:pos.left,top:pos.top})});$(rightOfActiveSlide).addClass("absolute-slide");$self.utils.unbindMovieControllerEvents()},slide:function(el,value,callback){el.stop(true,true).animate({width:value},{duration:$self.vars.timer,complete:function(){if(!$self.vars.totalWidth){$self.utils.setTotalListWidth()}if(callback){callback()}}})},afterSlide:function(){$(".absolute-slide").css({left:"",top:""}).removeClass("absolute-slide")},setTotalListWidth:function(){var triggers=$self.vars.triggers;var totalWidth=(function(){var width=0;triggers.each(function(){width+=$(this).outerWidth(true)});return width})();triggers.parent().width(totalWidth);$self.vars.totalWidth=totalWidth},getTotalWidth:function(el){return el.outerWidth(true)},getRelatedController:function(slide){var index=$self.vars.slides.index(slide);return $self.vars.triggers.eq(index)},triggerPreview:function(e){if(e){e.preventDefault()}var el=$(this),triggers=$self.vars.triggers,wrap=triggers.parent().parent(),active,slideParent;if(el.hasClass("loading")){return false}active=triggers.filter(".active");slideParent=function(controller,value){controller.parent().animate({left:value},{duration:$self.vars.timer})};if(!el.hasClass("active")){if($self.vars.home){var previousWidth=el.width();var activeWidth=el.width("").addClass("active").width();deltaIndex=triggers.index(el);if($self.vars.delta[deltaIndex]==undefined){$self.vars.delta[deltaIndex]=previousWidth}el.removeClass("active");var offset=(el.outerWidth(true)*triggers.index(el));offset=Math.min(offset,150*(triggers.length-1)+activeWidth-wrap.width());offset=Math.max(0,offset);slideParent(el,-offset);$self.utils.fade(active.find("img"),0.4);$self.utils.fade(active.find(".feature-carousel-border"),1);$self.utils.fade(el.find("img"),1);$self.utils.fade(el.find(".feature-carousel-border"),0);if(active.get(0)){$self.utils.beforeSlide(el,active);revertIndex=triggers.index(active);var revertWidth=$self.vars.delta[revertIndex];if(revertWidth==undefined){revertWidth=150}$self.utils.slide(active,revertWidth)}$self.utils.slide(el,activeWidth,$self.utils.afterSlide)}active.removeClass("active");el.addClass("active")}}};$self.settings=function(){var carousel=$("#feature"),slider=carousel.find(".feature-carousel-slides"),slides=slider.find("li"),content=slides.find(".feature-carousel-content").not(".fallback-content"),controller=carousel.find(".feature-carousel-controller"),triggers=controller.find("li");$self.vars.Carousel=carousel;$self.vars.slider=slider;$self.vars.slides=slides;$self.vars.content=content;$self.vars.controller=controller;$self.vars.triggers=triggers;$self.vars.auto=true};$self.preload=function(){var controller=$self.vars.controller,content=$self.vars.content,images=controller.find("img"),i=0,j=0,thumbsAreDone,assetsAreDone;var assets=["/public/images/home/carousel/ajax-loader.gif","/public/images/home/carousel/ajax-logo-preloader.png","/public/images/home/carousel/sprite-carousel.png"];images.each(function(){assets.push($(this).attr("src"))});$("body").addClass("feature-carousel-initialized");var finished=function(){if(assetsAreDone){$self.utils.fade(controller,1,null,function(){controller.css("filter","")});$space.utils.init($self.functions)}};if(assets[3]){controller.css("opacity",0);content.css("opacity",0);$.each(assets,function(i,asset){$.ajax({type:"GET",url:asset,cache:true,dataType:"image",complete:function(e){if(++i===assets.length){assetsAreDone=true;finished()}}})})}else{assetsAreDone=true;finished()}};$self.functions=(function(){return{carouselContent:function(){var content=$self.vars.slides.find(".feature-carousel-content");content.each(function(){var el=$(this),link=el.find("a").not(".overlay-link"),parent=el.parent(),movie=$self.vars.movies[parent.attr("id")];parent.bind("click",function(e){e.preventDefault();if(movie&&!movie.loaded){var controller=$self.utils.getRelatedController(parent);controller.trigger("click");$self.utils.loadMovieSlide(parent,movie)}else{if(link.attr("href")){location.href=link.attr("href")}}})})},loadCarouselSlides:function(){var carousel=$self.vars.Carousel,items=$self.vars.slides,triggers=$self.vars.triggers,item,src,url;triggers.addClass("loading");triggers.append($self.vars.icon);triggers.find(".preview").append($self.vars.border);var i=0;var iterate=function(){i++;if(items.get(i)){preload()}};var preload=function(){item=items.eq(i);url=item.find("img").attr("src");if(url){var onComplete=function(){var controller=$self.utils.getRelatedController(item);controller.removeClass("loading");controller.find(".feature-carousel-preloader-icon").fadeOut(250,function(i){$(this).remove();if((i===0)&&(!controller.hasClass("active"))){$self.utils.triggerPreview.call(controller)}}(i));var img=item.find("img");if(img.get(0)){item.css("background","url("+url+") no-repeat 0 0");img.remove()}iterate()};$.ajax({type:"GET",url:url,cache:true,dataType:"image",complete:onComplete})}else{iterate()}};preload()},previewControl:function(){var carousel=$self.vars.Carousel,triggers=$self.vars.triggers;$($self.vars.arrows).appendTo(triggers.parent().parent());$(".arrows").click(function(e){e.preventDefault();if($(this).hasClass("disabled")){window.clearTimeout($self.vars.auto);$self.vars.auto=false;return false}if(!e.originalEvent||(e.originalEvent&&!e.originalEvent.preventStop)){window.clearTimeout($self.vars.auto);$self.vars.auto=false}});if($self.vars.slides.length<2){$(".arrows").hide()}triggers.find("img").css("opacity",0.4);triggers.click(function(e){if($self.vars.isAnimating){return}if(!e.originalEvent||(e.originalEvent&&!e.originalEvent.preventStop)){window.clearTimeout($self.vars.auto);$self.vars.auto=false}$self.utils.triggerPreview.call(this,e)});triggers.find(".more-information a").click(function(e){e.stopPropagation()});triggers.hover(function(){var el=$(this);if(!el.hasClass("loading")&&!el.hasClass("active")){$self.utils.fade(el.find("img"),1)}},function(){var el=$(this);if(!el.hasClass("loading")&&!el.hasClass("active")){$self.utils.fade(el.find("img"),0.4)}});triggers.trigger("mouseleave");$($self.vars.mask).appendTo(carousel)},carouselProperties:function(selector){var triggers=$self.vars.triggers;$("#feature .feature-carousel-slides").jCarouselLite({clickDuringAnim:false,btnNext:".feature-carousel-controller .next-slide",btnPrev:".feature-carousel-controller .previous-slide",btnGo:(function(){var array=[];$.each(triggers,function(i,preview){array.push(this)});return array})(),speed:$self.vars.timer,visible:1,auto:$self.vars.autoTimer,circular:false,onStart:function(slide){$self.vars.isAnimating=true;controller=$self.utils.getRelatedController(slide);var selfMovie=$self.vars.movies[slide.attr("id")];if(selfMovie&&!selfMovie.loaded){controller.find(".more-information a").click(function(e){e.preventDefault();if(!slide.find(".flash-content").get(0)){$(this).closest("li").trigger("click");$self.utils.loadMovieSlide(slide,selfMovie)}})}var movies=slide.siblings().find(".flash-content");if(movies.get(0)){movies.each(function(i,movie){$self.utils.pauseMovie(movie)})}if(controller.hasClass("active")){return}$self.utils.triggerPreview.call(controller)},afterEnd:function(slide){var siblings=slide.siblings(),others=siblings.find(".feature-carousel-content");others.each(function(i,item){var el=$(this),parent=el.closest("li");var movie=$self.vars.movies[parent.attr("id")];if(movie&&movie.loaded){$self.utils.removeMovie(movie)}});var last=triggers.eq(triggers.length-1);if(last.hasClass("active")&&$self.vars.auto){$self.vars.auto=window.setTimeout(function(){var evt=$.Event({type:"click",preventStop:true});triggers.eq(0).trigger(evt)},$self.vars.autoTimer)}$self.vars.isAnimating=false}})}}})();$self.init=function(){$.extend($.browser,{ie6:function(){return !!($.browser.msie&&$.browser.version==6)}()});if(!$.browser.ie6){$self.vars.home=$("body").hasClass("home");$space.utils.init($self)}}()}).call(CLEAR.com.Carousel);