if(!YAHOO.Mevia){ YAHOO.namespace("Mevia"); }


YAHOO.Mevia.Animation = (function(){
	var yud = YAHOO.util.Dom;
	var yue = YAHOO.util.Event;
	var yur = YAHOO.util.Region;
	var yua = YAHOO.util.Anim;
	
	var container, slides, anim,slidesw,slidew;
	var current_position = 0;
	var children;
	var fxtimer = 0;
	var ismoving = false;
	
	var _build_anim = function(){
		children = yud.getChildren(slides);
	}
	
	var _init = function(pcontainer,pslides){
		container = pcontainer;
		slides = pslides;
		_build_anim();
	}
	
	return {
		init:function(container,slides){
			_init(yud.get(container),yud.get(slides));
		},
		
		scrollRight:function(){
			if(!ismoving){				
				if(current_position>=children.length-1){
					next_position = 0;
				}else{
					next_position = current_position+1;
				}
				var current = children[current_position];
				var next = children[next_position];
		
				yud.setStyle(next,'left',"670px");
				yud.setStyle(next,'z-index',"10");
				yud.setStyle(next,'display',"block");
				new yua(current, { left: { to: -670 } }, 0.5).animate();
				// new yua(next, { left: { to: 0 } }, 0.5).animate();
				var pilote = new yua(next, { left: { to: 0 } }, 0.5);
				pilote.onStart.subscribe(function(){ ismoving = true });
				pilote.onComplete.subscribe(function(){ 
						ismoving = false;
						yud.setStyle(current,'display',"none");
					});
				pilote.animate();
				yud.setStyle(current,'z-index',"1");
				current_position = next_position;
			}
		},
		
		scrollLeft:function(){
			if(!ismoving){				
				if(current_position<=0){
					next_position = children.length-1;
				}else{
					next_position = current_position-1;
				}
				var current = children[current_position];
				var next = children[next_position];
				yud.setStyle(next,'left',"-670px");
				yud.setStyle(next,'z-index',"10");
				yud.setStyle(next,'display',"block");
				new yua(current, { left: { to: 670 } }, 0.5).animate();
				var pilote = new yua(next, { left: { to: 0 } }, 0.5);
				pilote.onStart.subscribe(function(){ ismoving = true });
				pilote.onComplete.subscribe(function(){ 
						ismoving = false;
						yud.setStyle(current,'display',"none");
					});
				pilote.animate();
				yud.setStyle(current,'z-index',"1");
				current_position = next_position;
			}
		},
		
		scrollToElement:function(eltnumber){ //start at 0
			current_position = eltnumber*slidew;
			scroll.attributes.scroll = { to: [current_position,0] };
			scroll.animate();
		},
		
		start:function(){
			fxtimer = setInterval(function(){
				YAHOO.Mevia.Animation.scrollRight();
			},10000);
		},
		
		stop:function(){
			clearInterval(fxtimer);
			fxtimer = 0;
		}
	}
})();