moreOnLefts=new Image();
moreOnLefts.src="/images/modules/arrow_left_more2.gif";
moreOffLefts=new Image();
moreOffLefts.src="/images/modules/arrow_left_more-disabled2.gif";
moreOnRights=new Image();
moreOnRights.src="/images/modules/arrow_right_more2.gif";
moreOffRights=new Image();
moreOffRights.src="/images/modules/arrow_right_more-disabled2.gif";
var minCnt = 1;
var totalCnt = 5;
var first = false;
var last = false;
var sideCntArray = new Array();

var mvCarousels=Class.create();
mvCarousels.prototype={
	initialize:function(c1,c2){
		this_carouselModule=c1;
		this_direction=c2.cDirection;
		this_carouselCount=c2.cOfferCount;
		this_buttonIs=c2.cButtonIs;
		this.currentCnt = c2.cCnt;
	},
	initMovements:function(){
		ulElements=this_carouselModule+'-list';
		currPosi=parseInt($(ulElements).style.left);
		imgArrs=$(ulElements).getElementsByTagName('img');
		currentSpan = $(this_carouselModule).getElementsBySelector('.current')[0];
		
		variances = -10;
		visibleLis=1;
		v1s=this_carouselCount%2;
		moveByVals=clipEls-variances;  //318
	
		if(this_carouselCount%visibleLis==0){
			val3s=this_carouselCount/visibleLis;   //5
		}else{
			val3s=parseInt(this_carouselCount/visibleLi)+1;
		}
		ulElementWidths=val3s*moveByVals;
		if(this_carouselCount<1){
			stopAtVals=-1*moveByVals; //-318
		}else{
			stopAtVals=(1)*moveByVals-ulElementWidths;
		}
		
		carouselModule=this_carouselModule;
		buttonIs=this_buttonIs;
		switch(this_direction){
			case'prev':
				if(currPosi==0){moveByVals=0;currentSpan.update(minCnt); first=true;last=false;}
				new Effect.MoveBy($(ulElements),0,moveByVals,{duration:1,transition:Effect.Transitions.sinoidal,afterFinish:function(){reEnables(carouselModule,buttonIs,ulElements,ulElementWidths,moveByVals,'prev');}});
				if(!first){
					currentSpan.update(this.currentCnt);
					first = false;
					last = false;
				}
				break;
			case'next':
				if(stopAtVals==currPosi){moveByVals=0;currentSpan.update(this_carouselCount); last=true;first=false;}
				new Effect.MoveBy($(ulElements),0,-moveByVals,{duration:1,transition:Effect.Transitions.sinoidal,afterFinish:function(){nomasArr=document.getElementsByClassName('nomas',ulElements);if(nomasArr.length>4){step=4;}else{step=nomasArr.length;}
				for(i=0;i<step;++i){if(!nomasArr[i].src){
					nomasArr[i].setAttribute('src',nomasArr[i].name);
					nomasArr[i].removeAttribute('className');
					nomasArr[i].removeAttribute('class');
					nomasArr[i].setAttribute('name','');
					nomasArr[i].removeAttribute('name');
				}
				}
				reEnables(carouselModule,buttonIs,ulElements,ulElementWidths,moveByVals,stopAtVals,'next');}});
				if(!last){
					currentSpan.update(this.currentCnt);
					last = false;
					first = false;
				}
				break;}}}
				function reEnables(cModule,imgEl,divEl,ulEl,mvInt,stopVal,direction){
					currP=parseInt($(divEl).style.left);
					var leftBt='prev-' +cModule ;
					var rightBt='next-' +cModule;
				
					if(currP==stopVal){
						$(imgEl).setAttribute('src',moreOffRights.src);
					}
					else{
						$(rightBt).setAttribute('src',moreOnRights.src);
					}
					if(currP<0){
						$(leftBt).setAttribute('src',moreOnLefts.src);
					}
					else{
						$(leftBt).setAttribute('src',moreOffLefts.src);
					}
					isReady=true;
				}
				var isReady=false;
				function carouselMovements(evt){
					moveButton=Event.element(evt);
					cButton=moveButton.id;
					var direction=cButton.substring(0,4);
					var cnt; 
					if(isReady!=false){
						isReady=false;
						if(direction=='next'||direction=='prev'){
						var existingObj = cButton.substring(5,cButton.length);
						var check = false
						sideCntArray.each(function(item,index){
							if(item.id==existingObj){ 
								check = true;
								if(direction == 'next' && ($(cButton).src.indexOf('disabled') == -1)){
									var c = ++item.counter;
									item.counter = c;
									cnt = item.counter;
								}
								else if(direction == 'prev'&& ($(cButton).src.indexOf('disabled') == -1)){
									var c = --item.counter;
									item.counter = c;
									cnt = item.counter;
								}
							}
						})
						
						var checkcount = 1;
						if(check==false){
							var myobj = new Object();
							myobj.id = existingObj;
							myobj.counter = checkcount;
							myobj.ele = moveButton;
							sideCntArray.push(myobj);
							if(direction == 'next' && ($(cButton).src.indexOf('disabled') == -1)){
								var cc = ++myobj.counter;
								myobj.counter = cc;
								cnt = myobj.counter;
							}
							else if(direction == 'prev'&& ($(cButton).src.indexOf('disabled') == -1)){
								var cc = --myobj.counter;
								myobj.counter = cc;
								cnt = myobj.counter;
							}
						}
						
						
							var currCM = cButton.substring(5,cButton.length);
							var offerCount=$(currCM).getElementsByTagName('li').length;
							var cCarousel=new mvCarousels(currCM,{cDirection:direction,cOfferCount:offerCount,cButtonIs:cButton,cCnt:cnt});cCarousel.initMovements();delete cCarousel;}
						}
					}
			var elCarousels=Class.create();
			elCarousels.prototype={
				initialize:function(el1){
					containerEls=el1.container;

					clipEls=el1.visibleclip;
				},
				initStructures:function(){
					this.cnt = 1;
					cArr=document.getElementsByClassName('carouselList',containerEls);
					for(i=0;i<cArr.length;i++){
						var offerCount = cArr[i].parentNode.parentNode.getElementsByTagName('li').length;
						var totalSpan = cArr[i].getElementsBySelector('.total')[0];
						if(totalSpan)
							totalSpan.update(offerCount);
					}
					
					for(i=0;i<cArr.length;i++){
						cArr[i].setAttribute('style','width:'+clipEls+'px');
					}
					moreLeftArr=document.getElementsByClassName('more-left-side',containerEls);
					for(i=0;i<moreLeftArr.length;i++){
						Event.observe(moreLeftArr[i].id,'click',carouselMovements.bind(this),false);
						$(moreLeftArr[i].id).setAttribute('src',moreOffLefts.src);
					}
					moreRightArr=document.getElementsByClassName('more-right-side',containerEls);
					
					for(i=0;i<moreRightArr.length;i++){
						Event.observe(moreRightArr[i].id,'click',carouselMovements.bindAsEventListener(this),false);
						//$(moreRightArr[i].id).setAttribute('src',moreOnRights.src);
					}
					isReady=true;
				}
			}
					function mainColCarouselLoaders(evt){
						var structureThiss=new elCarousels({container:'sideCol',visibleclip:300});
						structureThiss.initStructures();
					}
					Event.observe(window,'load',mainColCarouselLoaders,false);