var isSliding = 0;

function slide(sens, start, elements, loop){
	if(!loop && !isSliding || loop){
		isSliding = 1;
		var slide = document.getElementById('slide');
		var startInt = parseInt(start.replace(/px/, ''));
		var margin = parseInt(slide.style.marginLeft.replace(/px/, ''));
		var toSlide = Math.abs(startInt-margin);
		var speed = 10*(4-(Math.abs(3-(Math.round(toSlide/100)))));
		
		margin = parseInt(slide.style.marginLeft.replace(/px/, ''))+(sens*speed);
		slide.style.marginLeft = margin+'px';
		
		if(Math.abs(startInt-margin) != 600){
			setTimeout("slide("+sens+", '"+start+"', "+elements+", 1);", 10);
		}
		else{
			isSliding = 0;
			for(i=0; i<elements; i++){
				document.getElementById('goto'+i).className = (Math.abs(margin)/600 == i ? 'on' : 'off');
			}
			if(margin == 0){
				document.getElementById('previous').style.visibility = 'hidden';
				document.getElementById('next').style.visibility = 'visible';
			}
			else if((margin-600)+'px' == '-'+document.getElementById('elements').style.width){
				document.getElementById('previous').style.visibility = 'visible';
				document.getElementById('next').style.visibility = 'hidden';
			}
			else{
				document.getElementById('previous').style.visibility = 'visible';
				document.getElementById('next').style.visibility = 'visible';
			}
		}
	}
}

function goToSlide(id, elements, loop, sens){
	var slide = document.getElementById('slide');
	if((!loop && !isSliding && slide.style.marginLeft != -(id*600)+'px') || loop){
		if(!sens){
			sens = (parseInt(slide.style.marginLeft.replace(/px/, '')) < -(id*600) ? -1 : 1);
		}
		isSliding = 1;
		if(!loop){
			for(i=0; i<elements; i++){
				document.getElementById('goto'+i).className = (i == id ? 'on' : 'off');
			}
		}
		
		var margin = parseInt(slide.style.marginTop.replace(/px/, ''))-(sens*10);
		
		var opacity = 100-Math.abs(margin/2);
		slide.style.opacity = opacity/100;
		slide.style.filter = 'alpha(opacity='+opacity+')';
		
		slide.style.marginTop = margin+'px';
		
		if(Math.abs(margin) == 200){
			var target = -(id*600);
			slide.style.marginLeft = target+'px';
			slide.style.marginTop = (200*sens)+'px';
			
			var marginLeft = parseInt(slide.style.marginLeft.replace(/px/, ''));
			if(marginLeft == 0){
				document.getElementById('previous').style.visibility = 'hidden';
				document.getElementById('next').style.visibility = 'visible';
			}
			else if((marginLeft-600)+'px' == '-'+document.getElementById('elements').style.width){
				document.getElementById('previous').style.visibility = 'visible';
				document.getElementById('next').style.visibility = 'hidden';
			}
			else{
				document.getElementById('previous').style.visibility = 'visible';
				document.getElementById('next').style.visibility = 'visible';
			}
		}
		
		if(margin != 0){
			setTimeout("goToSlide('"+id+"', "+elements+", 1, "+sens+");", 10);
		}
		else{
			isSliding = 0;
		}
	}
}
