(function(a){a.fn.extend({infiniteCarousel:function(b){var c={transitionSpeed:1500,displayTime:6000,textholderHeight:0.2,displayProgressBar:1,displayThumbnails:1,displayThumbnailNumbers:1,displayThumbnailBackground:1,thumbnailWidth:"20px",thumbnailHeight:"20px",thumbnailFontSize:".7em"};var b=a.extend(c,b);return this.each(function(){var g=Math.round(Math.random()*100000000);var e=b;var m=a(this);var v=1;var p=a("img",m).length;var s=a("img:first",m).height();var r=a("img:first",m).width();var n=1;a("p",m).hide();a(m).width(r).height(s);if(e.displayProgressBar){a(m).append('<div id="progress'+g+'" style="position:absolute;bottom:0;background:#bbb;left:'+a(m).css("paddingLeft")+'"></div>');a("#progress"+g).width(r).height(5).css("opacity",".5")}a(m).css({overflow:"hidden",position:"relative"});a("li:last",m).prependTo(a("ul",m));a("ul",m).css("left",-r+"px");a("ul",m).width(9999);a("ul",m).css({"list-style":"none",margin:"0",padding:"0",position:"relative"});a("li",m).css({display:"inline","float":"left"});a(m).append('<div id="textholder'+g+'" class="textholder" style="position:absolute;bottom:0px;margin-bottom:'+-s*e.textholderHeight+"px;left:"+a(m).css("paddingLeft")+'"></div>');var q=parseInt(a("#textholder"+g).css("paddingTop"));var h=parseInt(a("#textholder"+g).css("paddingRight"));a("#textholder"+g).width(r-(q*2)).height((s*e.textholderHeight)-(h*2));k(a("li:eq(1) p",m).html());html='<div id="btn_rt'+g+'" style="position:absolute;right:0;top:'+((s/2)-15)+'px"><a href="javascript:void(0);"><img style="border:none;margin-right:2px" src="/js/infiniteCarousel/images/rt.png" /></a></div>';html+='<div id="btn_lt'+g+'" style="position:absolute;left:0;top:'+((s/2)-15)+'px"><a href="javascript:void(0);"><img style="border:none;margin-left:2px" src="/js/infiniteCarousel/images/lt.png" /></a></div>';a(m).append(html);html='<a href="javascript:void(0);"><img id="pause_btn'+g+'" src="/js/infiniteCarousel/images/pause.png" style="position:absolute;top:3px;right:3px;border:none" alt="Pause" /></a>';html+='<a href="javascript:void(0);"><img id="play_btn'+g+'" src="/js/infiniteCarousel/images/play.png" style="position:absolute;top:3px;right:3px;border:none;display:none;" alt="Play" /></a>';a(m).append(html);a("#pause_btn"+g).css("opacity",".5").hover(function(){a(this).animate({opacity:"1"},250)},function(){a(this).animate({opacity:".5"},250)});a("#pause_btn"+g).click(function(){n=0;a("#progress"+g).stop().fadeOut();clearTimeout(f);a("#pause_btn"+g).fadeOut(250);a("#play_btn"+g).fadeIn(250);d()});a("#play_btn"+g).css("opacity",".5").hover(function(){a(this).animate({opacity:"1"},250)},function(){a(this).animate({opacity:".5"},250)});a("#play_btn"+g).click(function(){n=1;l("next");a("#play_btn"+g).hide();f=setInterval(function(){l("next")},e.displayTime+e.transitionSpeed);setTimeout(function(){a("#pause_btn"+g).show();a("#progress"+g).fadeIn().width(r).height(5)},e.transitionSpeed)});a("#btn_rt"+g).css("opacity",".75").click(function(){n=0;a("#progress"+g).stop().fadeOut();l("next");setTimeout(function(){a("#play_btn"+g).fadeIn(250)},e.transitionSpeed);clearTimeout(f)}).hover(function(){a(this).animate({opacity:"1"},250)},function(){a(this).animate({opacity:".75"},250)});a("#btn_lt"+g).css("opacity",".75").click(function(){n=0;a("#progress"+g).stop().fadeOut();l("prev");setTimeout(function(){a("#play_btn"+g).fadeIn(250)},e.transitionSpeed);clearTimeout(f)}).hover(function(){a(this).animate({opacity:"1"},250)},function(){a(this).animate({opacity:".75"},250)});if(e.displayThumbnails){a(m).after('<div id="thumbs'+g+'" style="position:relative;overflow:auto;text-align:left;padding-top:5px;"></div>');a("#thumbs"+g).width(r);for(i=0;i<=p-1;i++){thumb=a("img:eq("+(i+1)+")",m).attr("src");a("#thumbs"+g).append('<div class="thumb" id="thumb'+g+"_"+(i+1)+'" style="cursor:pointer;background-image:url('+thumb+");display:inline;float:left;width:"+e.thumbnailWidth+";height:"+e.thumbnailHeight+";line-height:"+e.thumbnailHeight+";padding:0;overflow:hidden;text-align:center;border:2px solid #ccc;margin-right:4px;font-size:"+e.thumbnailFontSize+';font-family:Arial;color:#000;text-shadow:0 0 3px #fff">'+(i+1)+"</div>");if(i==0){a("#thumb"+g+"_1").css({"border-color":"#ff0000"})}}thumb=a("img:first",m).attr("src");a("#thumb"+g+"_"+p).css({"background-image":"url("+thumb+")"});a("#thumbs"+g+" div.thumb:not(:first)").css({opacity:".65"});a("#thumbs"+g+" div.thumb").hover(function(){a(this).animate({opacity:0.99},150)},function(){if(v!=this.id.split("_")[1]){a(this).animate({opacity:0.65},250)}});a("#thumbs"+g+" div").bind("click",u);if(!e.displayThumbnailNumbers){a("#thumbs"+g+" div").text("")}if(!e.displayThumbnailBackground){a("#thumbs"+g+" div").css({"background-image":"none"})}}function u(o){target_num=this.id.split("_");if(v!=target_num[1]){a("#thumb"+g+"_"+v).css({"border-color":"#ccc"});a("#progress"+g).stop().fadeOut();clearTimeout(f);a("#thumbs"+g+" div").css({cursor:"default"}).unbind("click");n=0;setTimeout(function(){a("#play_btn"+g).fadeIn(250)},e.transitionSpeed)}if(target_num[1]>v){diff=target_num[1]-v;l("next",diff)}if(target_num[1]<v){diff=v-target_num[1];l("prev",diff)}}function k(o){if(o!=null){a("#textholder"+g).html(o).animate({marginBottom:"0px"},500);d()}}function d(){if(!n){html='<img style="position:absolute;top:2px;right:18px;display:none;cursor:pointer" src="/js/infiniteCarousel/images/down.png" title="Minimize" alt="minimize" id="min" /><img style="position:absolute;top:2px;right:18px;display:none;cursor:pointer" src="/js/infiniteCarousel/images/up.png" title="Maximize" alt="maximize" id="max" />';html+='<img style="position:absolute;top:2px;right:6px;display:none;cursor:pointer" src="/js/infiniteCarousel/images/close.png" title="Close" alt="close" id="close" />';a("#textholder"+g).append(html);a("#min").fadeIn(250).click(function(){a("#textholder"+g).animate({marginBottom:(-s*e.textholderHeight)-(h*2)+24+"px"},500,function(){a("#min,#max").toggle()})});a("#max").click(function(){a("#textholder"+g).animate({marginBottom:"0px"},500,function(){a("#min,#max").toggle()})});a("#close").fadeIn(250).click(function(){a("#textholder"+g).animate({marginBottom:(-s*e.textholderHeight)-(h*2)+"px"},500)})}}function t(o){a("#thumbs"+g+" div").css({"border-color":"#ccc"}).animate({opacity:0.65},500);setTimeout(function(){o.css({"border-color":"#ff0000"}).animate({opacity:0.99},500)},e.transitionSpeed)}function l(o,w){a("#btn_rt"+g).fadeOut(500);a("#btn_lt"+g).fadeOut(500);a("#textholder"+g).animate({marginBottom:(-s*e.textholderHeight)-(h*2)+"px"},500);a("#pause_btn"+g).fadeOut(250);a("#play_btn"+g).fadeOut(250);if(o=="next"){if(v==p){v=0}if(w>1){t(a("#thumb"+g+"_"+(v+w)));a("li:lt(2)",m).clone().insertAfter(a("li:last",m));a("ul",m).animate({left:-r*(w+1)},e.transitionSpeed,function(){a("li:lt(2)",m).remove();for(j=1;j<=w-2;j++){a("li:first",m).clone().insertAfter(a("li:last",m));a("li:first",m).remove()}a("#btn_rt"+g).fadeIn(500);a("#btn_lt"+g).fadeIn(500);a("#play_btn"+g).fadeIn(250);k(a("li:eq(1) p",m).html());a(this).css({left:-r});v=v+w;a("#thumbs"+g+" div").bind("click",u).css({cursor:"pointer"})})}else{t(a("#thumb"+g+"_"+(v+1)));a("#thumbs"+g+" div").css({cursor:"default"}).unbind("click");a("li:first",m).clone().insertAfter(a("li:last",m));a("ul",m).animate({left:-r*2},e.transitionSpeed,function(){a("li:first",m).remove();a("ul",m).css("left",-r+"px");a("#btn_rt"+g).fadeIn(500);a("#btn_lt"+g).fadeIn(500);if(n){a("#pause_btn"+g).fadeIn(250)}k(a("li:eq(1) p",m).html());if(n){a("#progress"+g).width(r).height(5);a("#progress"+g).animate({width:0},e.displayTime,function(){a("#pause_btn"+g).fadeOut(50);setTimeout(function(){a("#pause_btn"+g).fadeIn(250)},e.transitionSpeed)})}v=v+1;a("#thumbs"+g+" div").bind("click",u).css({cursor:"pointer"})})}}if(o=="prev"){if(w>1){t(a("#thumb"+g+"_"+(v-w)));a("li:gt("+(p-(w+1))+")",m).clone().insertBefore(a("li:first",m));a("ul",m).css({left:(-r*(w+1))}).animate({left:-r},e.transitionSpeed,function(){a("li:gt("+(p-1)+")",m).remove();a("#btn_rt"+g).fadeIn(500);a("#btn_lt"+g).fadeIn(500);a("#play_btn"+g).fadeIn(250);k(a("li:eq(1) p",m).html());v=v-w;a("#thumbs"+g+" div").bind("click",u).css({cursor:"pointer"})})}else{t(a("#thumb"+g+"_"+(v-1)));a("#thumbs"+g+" div").css({cursor:"default"}).unbind("click");a("li:last",m).clone().insertBefore(a("li:first",m));a("ul",m).css("left",-r*2+"px").animate({left:-r},e.transitionSpeed,function(){a("li:last",m).remove();a("#btn_rt"+g).fadeIn(500);a("#btn_lt"+g).fadeIn(500);if(n){a("#pause_btn"+g).fadeIn(250)}k(a("li:eq(1) p",m).html());v=v-1;if(v==0){v=p}a("#thumbs"+g+" div").bind("click",u).css({cursor:"pointer"})})}}}var f=setInterval(function(){l("next")},e.displayTime+e.transitionSpeed);a("#progress"+g).animate({width:0},e.displayTime+e.transitionSpeed,function(){a("#pause_btn"+g).fadeOut(100);setTimeout(function(){a("#pause_btn"+g).fadeIn(250)},e.transitionSpeed)})})}})})(jQuery);

