var scrollTimer, scrollIncrement = 7, scrollCurrentIncrement, scrollTop, mainHeight, contentHeight, zoneHeight, currentHeight, currentY, lastY=0; //backgroundTimer, opacity=0, increase=1;

var topHeight = 156; //Hauteur du top a la scrollbar ; padding-top du container + hauteur top + bord top + hauteur fleche haut (a prendre direct dans le style!)

function initScroll(scrollBar) {
/*	if (!scrollBar) {
		if (screen.availWidth < 1100) {
			if (document.getElementById('titleImg')) document.getElementById('titleImg').style.width='100%';
			document.getElementById('container').style.width='960px';
			document.getElementById('doubleLigne').style.width='100%';
			document.getElementById('LProyectos_scroll').style.width='694px';	
			if (document.getElementById('big')) document.getElementById('big').style.height='350px';	
		}
		document.getElementById('container').style.height = document.body.clientHeight - 52 + 'px'; //52 => padding-top + padding-bottom du container (a prendre direct dans le style!)
		mainHeight = document.getElementById('container').offsetHeight - document.getElementById('top').offsetHeight - 35; //padding-top du container + margin-top du main (a prendre direct dans le style!)
		document.getElementById('LProyectos_scroll').style.height = mainHeight + 'px';
		document.getElementById('leftNavigation').style.height = mainHeight + 'px';
		document.getElementById('scrollBar').style.height = mainHeight+8 + 'px'; //8 => margin-top du main (a prendre direct dans le style!)
		contentHeight = document.getElementById('content').offsetHeight;	
	
		zoneHeight = mainHeight+8 - 2*16; //8 => margin-top du main ; 16 => hauteur des fleches (a prendre direct dans le style!)
		document.getElementById('zone').style.height = zoneHeight + 'px';
		
		if (document.getElementById('titleImg'))
			contentHeight += document.getElementById('titleImg').height;
		
		if (contentHeight > mainHeight)
			currentHeight = mainHeight * zoneHeight / contentHeight;
		else
			currentHeight = 0;
	}*/
	
	/*scrollTop = document.getElementById('LProyectos_scroll').scrollTop * zoneHeight / contentHeight;	
	if (scrollTop <= 0)
		scrollTop = 0	
	if (scrollTop + currentHeight > zoneHeight)
		scrollTop = zoneHeight - currentHeight;	

	if (!isNaN(scrollTop)) document.getElementById('current').style.top = scrollTop + 'px';
	*/
	if (!scrollBar) {
		/*document.getElementById('current').style.height = currentHeight + 'px';
	
		scrollCurrentIncrement = scrollIncrement * zoneHeight / contentHeight;
		*/
		if (window.addEventListener) {
			document.getElementById('LProyectos_scroll').addEventListener('DOMMouseScroll', wheel, false);
			document.addEventListener('DOMMouseMove', mouseMove, false);
			document.addEventListener('DOMMouseUp', clearTimer, false);		
		}
		document.getElementById('LProyectos_scroll').onmousewheel = wheel;	
		document.onmousemove = mouseMove;
		document.onmouseup = clearTimer;
	}

}

function mouseMove(event) {
	if (!event) event = window.event;
	if (event.pageY) 
		currentY=event.pageY;
	else
		currentY=event.clientY + document.documentElement.scrollTop;	
}

function scrollUp() {
	document.getElementById('LProyectos_scroll').scrollTop -= scrollIncrement;	
	scrollTop = document.getElementById('LProyectos_scroll').scrollTop * zoneHeight / contentHeight;	
	/*if (scrollTop <= 0)
		scrollTop = 0	
	if (scrollTop + currentHeight > zoneHeight)
		scrollTop = zoneHeight - currentHeight;			

	document.getElementById('current').style.top = scrollTop + 'px';*/	
	scrollTimer = setTimeout('scrollUp()', 1);
}

function scrollDown() {
	document.getElementById('LProyectos_scroll').scrollTop += scrollIncrement;	
	scrollTop = document.getElementById('LProyectos_scroll').scrollTop * zoneHeight / contentHeight;	
	/*if (scrollTop <= 0)
		scrollTop = 0	
	if (scrollTop + currentHeight > zoneHeight)
		scrollTop = zoneHeight - currentHeight;

	document.getElementById('current').style.top = scrollTop + 'px';*/		
	scrollTimer = setTimeout('scrollDown()', 1);
}

function mouseScrollUp(nbr) {
	if (!nbr) nbr=1;	
	document.getElementById('LProyectos_scroll').scrollTop -= nbr*scrollIncrement;	
	scrollTop = document.getElementById('LProyectos_scroll').scrollTop * zoneHeight / contentHeight;	
/*	if (scrollTop <= 0)
		scrollTop = 0	
	if (scrollTop + currentHeight > zoneHeight)
		scrollTop = zoneHeight - currentHeight;			

	document.getElementById('current').style.top = scrollTop + 'px';	*/
}

function mouseScrollDown(nbr) {
	if (!nbr) nbr=1;
	document.getElementById('LProyectos_scroll').scrollTop += nbr*scrollIncrement;
	scrollTop = document.getElementById('LProyectos_scroll').scrollTop * zoneHeight / contentHeight;	
/*	if (scrollTop <= 0)
		scrollTop = 0	
	if (scrollTop + currentHeight > zoneHeight)
		scrollTop = zoneHeight - currentHeight;			

	document.getElementById('current').style.top = scrollTop + 'px';	*/	
}

function handle(delta) {
	if (delta < 0)
		mouseScrollDown(2);
	else
		mouseScrollUp(2);
}

function wheel(event){
	var delta = 0;
	if (!event) event = window.event;
	if (event.wheelDelta) {
		delta = event.wheelDelta/120; 
		if (window.opera) delta = -delta;
	} else if (event.detail) {
		delta = -event.detail/3;
	}
	if (delta)
		handle(delta);
		if (event.preventDefault)
			event.preventDefault();
		event.returnValue = false;
}

function move() {
	if (lastY == 0) lastY = currentY;
	if (currentY > lastY) {
		if ((currentY-lastY)/scrollCurrentIncrement > 0) {
			mouseScrollDown((currentY-lastY)/scrollCurrentIncrement);
			lastY = currentY;
		}
	}
	if (currentY < lastY) {
		if ((lastY-currentY)/scrollCurrentIncrement > 0) {
			mouseScrollUp((lastY-currentY)/scrollCurrentIncrement);
			lastY = currentY;
		}
	}
	
	scrollTimer = setTimeout('move()', 1);					
}

function moveTo(event) {
	var y;
	if (!event) event = window.event;
	if (event.pageY) 
		y=event.pageY;
	else
		y=event.clientY + document.documentElement.scrollTop;
		
	if (y-topHeight > scrollTop) {
		if ((y-topHeight-scrollTop)/scrollCurrentIncrement > 0) {
			mouseScrollDown((y-topHeight-scrollTop)/scrollCurrentIncrement);
		}
	} else if (y-topHeight < scrollTop) {
		if ((scrollTop-(y-topHeight))/scrollCurrentIncrement > 0) {
			mouseScrollUp((scrollTop-(y-topHeight))/scrollCurrentIncrement);
		}
	}
}

function clearTimer() {
	clearTimeout(scrollTimer);	
	lastY = 0;
}

/*function getStyle(element) {
	return document.getElementById(element).className;
}

function setStyle(element, style) {
	if (document.getElementById(element)) {
		var currentStyle = getStyle(element);
		var styleSup = '';
		
		if (currentStyle.indexOf('first') != -1) 
			styleSup = ' first';
		else if (currentStyle.indexOf('last') != -1)
			styleSup = ' last';
			
		document.getElementById(element).className = style+styleSup;
		return true;
		
	} else {
		return false;
	}
}

function switchSubNavigation(nav, current, total) {
	var subStyle;
	
	if (getStyle(nav+'ss'+1) == 'hidden first') {
		subStyle = 'sub'
	
	} else {
		subStyle = 'hidden';		
		
	}
	
	var element = 1;
	while (setStyle(nav+'ss'+element, subStyle)) {
		element++;
	}

	if (subStyle == 'sub')
		for (var i=1; i<=total; i++) {
			element = 1;
			if ('ps'+i != current && 'ps'+i != nav)
				while (setStyle('ps'+i+'ss'+element, 'hidden')) {
					element++;
				}
		}
}*/
