﻿pageEls = new Array;
pagesEl = false;
BodyEl = false;
BodyEl = false;
currentpage = 0;
initialposition = 0;
movetimeID = false;
helpertimeID = false;
helpershown = false;
helperOpacity = 0;
pagelinkhelperLEl = false;
pagelinkhelperREl = false;
fadein = false;
fadeout = false;

function initscroll() {
	i=0;

	while ( pageEl = document.getElementById('page'+i) ) {
		pageEls.push(pageEl);
		i++;
	}
	pagesEl = document.getElementById('pages');
	BodyEl = document.getElementsByTagName('body');
	BodyEl = BodyEl[0];
	pagelinkleft1El = document.getElementById('pagelinkleft1');
	pagelinkleft2El = document.getElementById('pagelinkleft2');
	pagelinkright1El = document.getElementById('pagelinkright1');
	pagelinkright2El = document.getElementById('pagelinkright2');
	pagelinkhelperLEl = document.getElementById('pagelinkhelperleft');
	pagelinkhelperREl = document.getElementById('pagelinkhelperright');
	scrollpages();
	pagelinkhelperLEl.style.left = Math.floor((BodyEl.clientWidth-860)/2)-41;
	pagelinkhelperREl.style.left = Math.floor((BodyEl.clientWidth-860)/2)+865;
	pagelinkleft1El.style.left = Math.floor((BodyEl.clientWidth-860)/2)-870;
	pagelinkleft2El.style.left = Math.floor((BodyEl.clientWidth-860)/2)-870*2;
	pagelinkright1El.style.left = Math.floor((BodyEl.clientWidth-860)/2)+870;
	pagelinkright2El.style.left = Math.floor((BodyEl.clientWidth-860)/2)+870*2;
	initialposition = (BodyEl.clientWidth-860)/2;
	pagesEl.style.left = initialposition;
	helpertimeID = setTimeout(blinkhelper, 5000);
	addEvent(window, 'resize', resizereset);
	loadimages();
}

function resizereset() {
	pagelinkhelperLEl.style.left = Math.floor((BodyEl.clientWidth-860)/2)-41;
	pagelinkhelperREl.style.left = Math.floor((BodyEl.clientWidth-860)/2)+865;
	pagelinkleft1El.style.left = Math.floor((BodyEl.clientWidth-860)/2)-870;
	pagelinkleft2El.style.left = Math.floor((BodyEl.clientWidth-860)/2)-870*2;
	pagelinkright1El.style.left = Math.floor((BodyEl.clientWidth-860)/2)+870;
	pagelinkright2El.style.left = Math.floor((BodyEl.clientWidth-860)/2)+870*2;
	scrollpages();
}

function  hidepagelinks() {
	if (currentpage >= pageEls.length-2 && BodyEl.clientWidth > 2500) {
//		pagelinkright2El.style.visibility = 'visible';
	}
	else {
		pagelinkright2El.style.visibility = 'hidden';
	}
	if (currentpage >= pageEls.length-1) {
		currentpage = pageEls.length-1;
		pagelinkright1El.style.visibility = 'hidden';
//		pagelinkright1El.href = '#'+(currentpage+1);
	}
	else {
//		setTimeout('pagelinkright1El.style.visibility = \'visible\'', 100);
	}
	if (currentpage > 1 && BodyEl.clientWidth > 2500) {
//		setTimeout('pagelinkleft2El.style.visibility = \'visible\'', 100);
	}
	else {
		pagelinkleft2El.style.visibility = 'hidden';
	}

	if (currentpage > 0) {
//		setTimeout('pagelinkleft1El.style.visibility = \'visible\'', 100);
	}
	else {
		pagelinkleft1El.style.visibility = 'hidden';
	}	
}

function showpagelinks() {
	if (currentpage >= pageEls.length-2 && BodyEl.clientWidth > 2500) {
		pagelinkright2El.style.visibility = 'visible';
	}
	else {
//		setTimeout('pagelinkright2El.style.visibility = \'hidden\'', 100);
	}
	if (currentpage >= pageEls.length-1) {
		currentpage = pageEls.length-1;
//		pagelinkright1El.style.visibility = 'hidden';
	}
	else {
		pagelinkright1El.style.visibility = 'visible';
	}
	if (currentpage > 1 && BodyEl.clientWidth > 2500) {
		pagelinkleft2El.style.visibility = 'visible';
	}
	else {
//		pagelinkleft2El.style.visibility = 'hidden';
	}

	if (currentpage > 0) {
		pagelinkleft1El.style.visibility = 'visible';
	}
	else {
//		pagelinkleft1El.style.visibility = 'hidden';
	}
	
}

function scrollpages() {
	if (self.location.hash.length > 0 && Number(self.location.hash.substring(1))) { currentpage = Number(self.location.hash.substring(1)) }
	else { currentpage = 0; }
	showpagelinks();
	clearTimeout(movetimeID);
	movepagesto(Math.floor((BodyEl.clientWidth-860)/2)-870*currentpage);
//	new Effect.Move(pagesEl, { x: Math.floor((BodyEl.clientWidth-860)/2)-870*currentpage, y: 0, mode: 'absolute' });
//	hidepagelinks();	
	setTimeout('pagesEl.style.visibility = \'visible\'', 100);
}

function scrollby(n) {
	if (helpertimeID) { clearTimeout(helpertimeID); hidehelper(); }
	currentpage = currentpage + n;
	if (currentpage <= 0) {	currentpage = 0; }
	if (currentpage > pageEls.length-1) { currentpage = pageEls.length-1; }
	self.location = '#'+currentpage;
	scrollpages();
}

function scrollto(n) {
	if (helpertimeID) { clearTimeout(helpertimeID); hidehelper(); }
	currentpage = n;
	if (currentpage <= 0) {	currentpage = 0; }
	if (currentpage > pageEls.length-1) { currentpage = pageEls.length-1; }
	self.location = '#'+currentpage;
	scrollpages();
}


function movepagesto(newposition) {
//	if (Math.abs(initialposition-newposition) <= 1) { initialposition = newposition; }
	initialposition = newposition + (((initialposition - newposition)/1.5));
	if (Math.abs(initialposition-newposition) <= 1) { initialposition = newposition; }
//	alert(initialposition+" | "+newposition);
	pagesEl.style.left = initialposition;
	if (initialposition != newposition) {
		movetimeID = setTimeout('movepagesto('+newposition+')', 40);
	}
	else {
		hidepagelinks();	
	}
//	pagesEl.style.left;
}

function showhelper() {
	helpershown = true;
	if (currentpage < pageEls.length-1) {
		pagelinkhelperREl.style.visibility = 'visible';
	}
	if (currentpage > 0) {
		pagelinkhelperLEl.style.visibility = 'visible';
	}
	if (helperOpacity < 100) {
		helperOpacity = helperOpacity+5;
		setHelperOpacity(helperOpacity)
		helpertimeID = setTimeout(showhelper, 25);
	}
	else {
		helperOpacity = 100;
		setHelperOpacity(helperOpacity);
		fadeout = true;
		helpertimeID = setTimeout(blinkhelper, 2000);
	}
}

function hidehelper() {
	helpershown = false;
	clearTimeout(helpertimeID);
	if (helperOpacity > 0) {
		helperOpacity = helperOpacity-25;
		setHelperOpacity(helperOpacity)
		helpertimeID = setTimeout(hidehelper, 25);
	}
	else {
		helperOpacity = 0;
		setHelperOpacity(helperOpacity);
		pagelinkhelperREl.style.visibility = 'hidden';
		pagelinkhelperLEl.style.visibility = 'hidden';
		pagelinkhelperREl.style.display = 'none';
		pagelinkhelperLEl.style.display = 'none';
	}
}

function blinkhelper() {
	if (currentpage < pageEls.length-1) {
		pagelinkhelperREl.style.visibility = 'visible';
	}
	if (currentpage > 0) {
		pagelinkhelperLEl.style.visibility = 'visible';
	}
	if (fadeout) {
		if (helperOpacity > 0) {
			helperOpacity = helperOpacity-5;
			setHelperOpacity(helperOpacity)
			helpertimeID = setTimeout(blinkhelper, 25);
		}
		else {
			fadein = true;
			fadeout = false;
			helperOpacity = 0;
			setHelperOpacity(helperOpacity)
			helpertimeID = setTimeout(blinkhelper, 2500);
		}
	}
	else {
		if (helperOpacity < 95) {
			helperOpacity = helperOpacity+5;
			setHelperOpacity(helperOpacity)
			helpertimeID = setTimeout(blinkhelper, 25);
		}
		else {
			fadein = false;
			fadeout = true;
			helperOpacity = 95;
			setHelperOpacity(helperOpacity)
			helpertimeID = setTimeout(blinkhelper, 250);
		}
	}
}

function setHelperOpacity(value) {
//	alert(currentImg);
	if (currentpage < pageEls.length-1) {
		pagelinkhelperREl.style.opacity = value/100;
		pagelinkhelperREl.style.filter = 'alpha(opacity=' + value + ')';
	}
	if (currentpage > 0) {
		pagelinkhelperLEl.style.opacity = value/100;
		pagelinkhelperLEl.style.filter = 'alpha(opacity=' + value + ')';
	}
}

function loadimages() {
	if (self.location.hash.length > 0 && Number(self.location.hash.substring(1))) { curpage = Number(self.location.hash.substring(1)) }
	else { curpage = 0; }
	if (ills) {
		if (curpage < 0) { curpage = 0; }
		else if (curpage >= ills.length) { curpage = ills.length-1; }
		down = curpage;
		up = curpage+1;
		while (down >= 0 || up < ills.length) {
			if (down >= 0) {
				for (i=0;i<ills[down].length;i++) {
					if (img = document.getElementById("page"+down+"ill"+i)) {
						img.style.background = 'url('+ills[down][i]+') center no-repeat';
					}
				}
			}
			if (up < ills.length) {
				for (i=0;i<ills[up].length;i++) {
					if (img = document.getElementById("page"+up+"ill"+i)) {
						img.style.background = 'url('+ills[up][i]+') center no-repeat';
					}
				}
			}
			down--;
			up++;
		}
	}
	else {
		return;
	}
	
}

/*
	pageEl[0].style.zIndex = 100;
	for (i=0;i<pageEl.length;i++) {
		pageEl[i].style.left = Math.floor((BodyEl.clientWidth-860)/2)+870*i;
	}
	
	function setcurrentpage() {
		if (self.location.hash.length > 0) {
			
		}
	}*/
