jsPromptPre = "prompt";

mousePos=new Object;

historyObjects=new Array();
activeHistoryObject=0;
activeHistoryIndex=0;

historyControlPosition=2030;
historyControlTarget=0;
historyControlTimer=false;

historyControlDrag=false;

function jsPrompt(promptTXT){
	promptTXT += ' ';
	if(document.getElementById('jsPrompt')){
		var lines=promptTXT.split("\n");
		for (var i=0;i<lines.length;i++){
			var newBR = document.createElement("br");
			var newTXT = document.createTextNode(lines[i]);
			document.getElementById('jsPrompt').appendChild(newTXT);
			document.getElementById('jsPrompt').appendChild(newBR);
		}
	} else jsPromptPre+="\n"+promptTXT;
}
/***************************************************************************************/
function detectScrollbars(){
	var pos = document.documentElement.scrollTop || window.pageYOffset;
	if (pos>100){
		document.getElementById('topOfPage').style.display='block';
		document.getElementById('footerNavi').style.width='858px';
	} else {
		document.getElementById('topOfPage').style.display='';
		document.getElementById('footerNavi').style.width='';
	}
}

/***************************************************************************************/

function mouseMove(ev){
	ev           = ev || window.event;
	mousePos = mouseCoords(ev);
	if (historyControlDrag){
		historyControlPosition=px2y(mousePos.y);
		setHistoryControlPosition();
		setHistoryControlTarget();
//		jsPrompt('setpos'+" "+historyControlDrag);
	}
}

function mouseCoords(ev){
	if(ev.pageX || ev.pageY){
		return {x:ev.pageX, y:ev.pageY};
	}
	window.status=ev.clientY + document.body.scrollTop  - document.body.clientTop;
	return {
		x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
		y:ev.clientY + document.body.scrollTop  - document.body.clientTop
	};
}
function mouseDown(){
	if(!historyControlDrag){
		historyControlPosition=px2y(mousePos.y);
		setHistoryControlTarget();
		activeHistoryObject=historyControlTarget;
		if(!historyControlTimer) historyControlTimer=window.setInterval("computeHistoryControlPosition()",20);
	}
}

/***************************************************************************************/
checkImagesTimer=false;

function imageLoader() {
	checkImagesTimer=window.setInterval("checkImages()",1);
}
function checkImages () {
	var loaded = 0;
		for (var i = 0; i < document.images.length; ++i) {
			if (document.images[i].complete == true) {
				loaded+=1;
				} else {

			}
		}
	jsPrompt(loaded+"/"+i);
	if (loaded==i) {
		window.clearInterval(checkImagesTimer);
		if(document.getElementById('historyAccordion')) initTimeline();
	}
}
/***************************************************************************************/

function initTimeline(){

	document.onmousemove = mouseMove;
	document.onmouseup = function (e){
		historyControlDrag=false;
		document.getElementsByName('search')[0].focus();
		activeHistoryObject=historyControlTarget;
		if(!historyControlTimer) historyControlTimer=window.setInterval("computeHistoryControlPosition()",20);
	};



	obj=document.getElementById('historyAccordion').firstChild;
	while(true){
		if (obj.tagName=='DIV') historyObjects.push(parseFloat(obj.id.split('_')[1]));
		if (obj.nextSibling) obj=obj.nextSibling;
		else break;
	}
	activeHistoryIndex=Math.floor(Math.random()*historyObjects.length);
	activeHistoryObject=historyObjects[activeHistoryIndex];
	activeHistoryObject=historyObjects[0];
	adjustHistoryControlPosition();
}
function y2px(y){
	return (((y-1950)*5)-1)+"px";
}
function px2y(px){
	px -= 196;
	return (parseInt(px)-6)/5+1950;
}
function adjustHistoryControlPosition(){
	historyControlTimer=window.setInterval("computeHistoryControlPosition()",20);
}

function computeHistoryControlPosition(){
	var v=1;

	if(historyControlPosition>activeHistoryObject+v){
		historyControlPosition-=v;

	} else if (historyControlPosition<activeHistoryObject-v){
		historyControlPosition+=v;

	} else {
		historyControlPosition=activeHistoryObject;
		window.clearInterval(historyControlTimer);
		historyControlTimer=false;

	}
	setHistoryControlPosition();
	setHistoryControlTarget();
}
function setHistoryControlPosition(){
	obj=document.getElementById('timeline').firstChild.firstChild;
	obj.style.marginTop=y2px(historyControlPosition);
}

function setHistoryControlTarget(){
	if(historyControlPosition<historyObjects[0]){
		historyControlTarget=historyObjects[0];
	} else if (historyControlPosition>historyObjects[historyObjects.length-1]) {
		historyControlTarget=historyObjects[historyObjects.length-1];
	} else {
		for (i=0;i<(historyObjects.length-1);i++){
			delta = historyObjects[i+1]-historyObjects[i];
			threshold = parseFloat(historyObjects[i])+parseFloat(delta/2);
			if (historyControlPosition>historyObjects[i]&&historyControlPosition<threshold) {
				historyControlTarget=historyObjects[i];
			}
			if (historyControlPosition<historyObjects[i+1]&&historyControlPosition>threshold) {
				historyControlTarget=historyObjects[i+1];
			}


		}
	}


	historyAccordion.openPanel("panel_"+historyControlTarget);
	obj=document.getElementById('timeline').firstChild.firstChild.nextSibling;
	obj.style.marginTop=y2px(historyControlTarget);
}

function decrypt(string){
	key="banana";
	array_alphabet=new Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","@","-",".",":","_","%");
	var result="";

	for(i=0;i<string.length;i++){
		var j=0;
		while(j<array_alphabet.length&&string.charAt(i)!=array_alphabet[j])j++;
			position_char=j;
			j=0;
			//alert(string.charAt(i));
		while(j<array_alphabet.length&&key.charAt(i%key.length)!=array_alphabet[j])j++;
			position_key=j;
			position=(position_char-position_key)%array_alphabet.length;
			if(position<0)position+=array_alphabet.length;

			//alert(key.charAt(i%key.length));

			result+=array_alphabet[position];
			//alert(array_alphabet[position]);

	}
	document.location.href=decodeURIComponent(result);
}
