;(function($){var msMyCarousel=function(element,opt){var $this=this;var settings=$.extend({scrollSpeed:1000,autoSlide:0,defaultid:0,width:515,blockWidth:'auto',height:258,vertical:false,boxClass:'.set',messageClass:'.message',showMessage:false,messageOpacity:0.8,loop:true,callback:''},opt);var suffixed={id:'msc'};var carouselProp=new Object();var elementid=$(element).attr("id");var childid=elementid+"_mscchild";var unquieClass=elementid+"_mscss";var intervalid=0;carouselProp.moveToZero=0;var init=function(){makeLayout();};var makeLayout=function(){addScrollerDiv();};var addScrollerDiv=function(){$("#"+elementid).addClass("mscarousel");if(settings.vertical===false){if(settings.boxClass!='.set')$("#"+elementid+" >"+settings.boxClass).addClass("set");};$("#"+elementid+" >"+settings.boxClass).addClass(unquieClass);var sDiv='<div class="child" id="'+childid+'"></div>';$("#"+elementid).append(sDiv);$("#"+elementid).css({width:settings.width+'px',height:settings.height+'px',overflow:'hidden',position:'relative'});$("#"+sDiv).css({width:settings.width+'px',height:settings.height+'px',overflow:'hidden'});if(settings.showMessage===true){$("#"+elementid+"  "+settings.messageClass).css({display:'none',width:settings.width+'px',opacity:settings.messageOpacity});};$("#"+elementid+"  >."+unquieClass).appendTo($("#"+childid));$("#"+childid).append("<strong class='clear last'></strong>");var allElements=$("#"+childid+" >."+unquieClass);carouselProp.allElements=allElements;var prop=calculateWidthHeight();if(settings.vertical===false){$("#"+childid).css({width:prop.width+'px'});}else{$("#"+childid).css({height:prop.height+'px'});};setClasses();if(settings.autoSlide>0){startInterval();carouselProp.isPlaying=true;};if(settings.defaultid>0){settings.defaultid=settings.defaultid-1;next();}else if(settings.defaultid==0){settings.defaultid=-1;next();};};var setClasses=function(){var allElements=$("#"+childid+"  >."+unquieClass);if(settings.vertical===false){if(settings.boxclass!='.set')$("#"+childid+"  "+settings.boxclass).addClass("set");};for(var iCount=0;iCount<allElements.length;iCount++){$(allElements[iCount]).addClass(elementid+suffixed.id+"_"+iCount);};allElements=$("#"+childid+"  >."+unquieClass);carouselProp.allElements=allElements;};var next=function(isNext){if(isNext===undefined){if(settings.defaultid<carouselProp.allElements.length){settings.defaultid++;};if((settings.defaultid==carouselProp.allElements.length||carouselProp.moveToZero>=2)&&settings.loop==true){settings.defaultid=0;carouselProp.moveToZero=0;}else if(settings.loop==false&&(settings.defaultid==carouselProp.allElements.length)){settings.defaultid--;};};if(isNext=='fromGoto'){};if(settings.defaultid<carouselProp.allElements.length){if(carouselProp.currentItem!==undefined){carouselProp.previousItem=carouselProp.currentItem;};carouselProp.currentItem=childid+" > ."+elementid+suffixed.id+"_"+settings.defaultid;var pos=$("#"+carouselProp.currentItem).position();var tempw=$("#"+elementid).position().left+$("#"+carouselProp.currentItem).width();carouselProp.moveH="-"+(pos.left)+"px";var pb=0;var mb=0;if($("#"+carouselProp.currentItem).css("padding-bottom")!='auto'){pb=parseInt($("#"+carouselProp.currentItem).css("padding-bottom"));};if($("#"+carouselProp.currentItem).css("margin-bottom")!='auto'){mb=parseInt($("#"+carouselProp.currentItem).css("margin-bottom"));};var vSpacer=pb+mb;carouselProp.moveV="-"+(pos.top+vSpacer)+"px";carouselProp.currentID=settings.defaultid;scrollContent();if(settings.defaultid==carouselProp.allElements.length){settings.defaultid=0;};};};var previous=function(){if(settings.defaultid>0){carouselProp.moveToZero=0;settings.defaultid--;next("fromGoto");};};var afterScroll=function(evt){if($("#"+carouselProp.currentItem+" "+settings.messageClass).length>0&&settings.showMessage==true){$("#"+carouselProp.currentItem+" "+settings.messageClass).fadeIn("slow",function(){$(this).css({opacity:settings.messageOpacity})});};if(settings.callback!=''){eval(settings.callback)($this);};var lft=$("#"+childid).css("left");var lastItem=$(carouselProp.allElements[carouselProp.allElements.length-1]).position();if((lastItem.left-Math.abs(lft.substr(0,lft.length-2)))<settings.width){carouselProp.moveToZero++;if(carouselProp.moveToZero>=2||settings.defaultid==carouselProp.allElements.length-1){carouselProp.moveToZero=0;};};};var scrollContent=function(){if(carouselProp.previousItem!=undefined&&settings.showMessage==true){$("#"+carouselProp.previousItem+" "+settings.messageClass).fadeOut("slow");};if(settings.vertical===false){$("#"+childid).animate({"left":carouselProp.moveH},settings.scrollSpeed,function(evt){afterScroll(evt);});}else{$("#"+childid).animate({"top":carouselProp.moveV},settings.scrollSpeed,function(evt){afterScroll(evt);});};};var calculateWidthHeight=function(){var prop=new Object();prop.width=0;prop.height=0;var allElements=$("#"+childid+" >"+settings.boxClass);if(settings.vertical===false){if(settings.blockWidth=='auto'){for(var iCount=0;iCount<allElements.length;iCount++){prop.width+=$(allElements[iCount]).width();prop.height+=$(allElements[iCount]).height();};}else{prop.width=settings.blockWidth*allElements.length;prop.height=settings.height*allElements.length;};prop.width+=($("#"+elementid).width()*2);}else{prop.width=settings.width;prop.height=settings.height*allElements.length;};return prop;};var startInterval=function(){clearInterval(intervalid);intervalid=setInterval(function(){next();},settings.autoSlide);$("#"+elementid).bind("mouseover",function(arg){$("#"+elementid).unbind("mouseout");endInterval();carouselProp.isPlaying=false;});carouselProp.isPlaying=true;};var endInterval=function(){clearInterval(intervalid);$("#"+elementid).unbind("mouseover");$("#"+elementid).bind("mouseout",function(arg){startInterval();});carouselProp.isPlaying=false;};this.forceScroll=function(pos){if(settings.vertical===false){$("#"+childid).animate({"left":pos},settings.scrollSpeed,function(evt){afterScroll(evt);});}else{$("#"+childid).animate({"top":pos},settings.scrollSpeed,function(evt){afterScroll(evt);});};};this.play=function(){if(settings.autoSlide>0){startInterval();};};this.pause=function(){if(settings.autoSlide>0){endInterval();};};this.next=function(){if(settings.defaultid==0){carouselProp.moveToZero=0;}
if(settings.autoSlide>0){endInterval()};next();};this.goto=function(no,force){if(no==0){carouselProp.moveToZero=0;}
if(no>carouselProp.allElements.length-1){}else{settings.defaultid=no;next("fromGoto");};};this.previous=function(){if(settings.defaultid==0){carouselProp.moveToZero=0;};if(settings.autoSlide>0){endInterval()};previous();};this.getCurrentID=function(){return settings.defaultid;};this.item=function(i){if(i==undefined){return carouselProp.allElements;}else{return carouselProp.allElements[i];};};init();};$.fn.msCarousel=function(opt){return this.each(function(){var element=$(this);var myplugin=new msMyCarousel(element,opt);element.data("msCarousel",myplugin);});}})(jQuery);
