function toggleFoto(foto) {
	document.getElementById('grote_foto_container').style.display = 'block';
	document.getElementById('grote_foto').src = foto;
	//window.location.hash  = 'down';
}

var scrollspeed = 0
var initialdelay = 10
var scrolltype = 0;
var itemheight = 300;

function initializeScroller(item){
	dataobj = document.all? document.all.datacontainer : document.getElementById("datacontainer");
	dataobj.style.left = "0px";
	thelength = dataobj.offsetWidth;
	if(thelength > itemheight){
		setTimeout("getdataheight()", initialdelay);
	}
	if((item != "") && (item.indexOf('_') != -1)){
		itemArr = item.split('_');
		if(!isNaN(itemArr[0]))
			jumpTo(itemArr[0]);
	}
	else if(!isNaN(item) && (item != ""))
		jumpTo(item);
}

function playLeft(){
  document.getElementById('databorder').style.position = 'relative';
  document.getElementById('datacontainer').style.position = 'relative';
	scrolltype = 1;
	scrollspeed = 10;
}

function stopPlay(){
	scrollspeed = 0;
}

function playRight(){
  document.getElementById('databorder').style.position = 'relative';
  document.getElementById('datacontainer').style.position = 'relative';
	scrolltype = 2;
	scrollspeed = 10;
}

function getdataheight(){
	if(thelength == 0)
		setTimeout("getdataheight()",10);
	else
		scrollDiv();
}

function jumpTo(imgCount){
	barPos = 0;
	for(i=1;i<imgCount;i++)
		barPos += (document.all['nav'+i+'item'].offsetWidth+23);
	if(barPos+(document.all['nav'+imgCount+'item'].offsetWidth+23) > itemheight){
		if(barPos > ((itemheight-dataobj.offsetWidth)*(-1)))
			barPos = ((itemheight-dataobj.offsetWidth)*(-1));
		dataobj.style.left = barPos*(-1)+"px";
	}
}

function scrollDiv(){
	if(scrolltype == 1){
		if((parseInt(dataobj.style.left)-itemheight) <= thelength*(-1))
			stopPlay();
		else{
			if((thelength - (parseInt(dataobj.style.left)*(-1)+itemheight)) < 5)
				newscrollspeed = (thelength - (parseInt(dataobj.style.left)*(-1)+itemheight));
			else
				newscrollspeed = scrollspeed;
			dataobj.style.left = parseInt(dataobj.style.left)-newscrollspeed+"px";
		}
	}
	else if(scrolltype == 2){
		if(parseInt(dataobj.style.left) == 0)
			stopPlay();
		else{
			if(parseInt(dataobj.style.left)+scrollspeed > 0)
				newscrollspeed = 5 - (parseInt(dataobj.style.left)+scrollspeed);
			else
				newscrollspeed = scrollspeed;
			dataobj.style.left = parseInt(dataobj.style.left)+newscrollspeed+"px";
		}
	}
	setTimeout("scrollDiv()",40);
}

function opacity(id, opacStart, opacEnd, millisec) {
	//speed for each frame
	var speed = Math.round(millisec / 100);
	var timer = 0;

	//determine the direction for the blending, if start and end are the same nothing happens
	if(opacStart > opacEnd) {
		for(i = opacStart; i >= opacEnd; i--) {
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	} else if(opacStart < opacEnd) {
		for(i = opacStart; i <= opacEnd; i++)
			{
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
	var object = document.getElementById(id).style; 
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	object.filter = "alpha(opacity=" + opacity + ")";
}

function doNothing() {
  //nothing here
}

function shiftOpacity(id, millisec) {
	//if an element is invisible, make it visible, else make it ivisible
	if(document.getElementById(id).style.opacity == 0) {
		opacity(id, 0, 100, millisec);
	} else {
		opacity(id, 100, 0, millisec);
	}
}

function blendimage(divid, imageid, imagefile, millisec) {
	var speed = Math.round(millisec / 100);
	var timer = 1;
	
	//set the current image as background
  document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";

	//make image transparent
	changeOpac(0, imageid);

	setTimeout("doBlending("+timer+","+speed+",'"+imageid+"','"+imagefile+"')", 100);
	
}

function doBlending(timer, speed, imageid, imagefile) {
	//make new image
	document.getElementById(imageid).src = imagefile;
  
  //fade in image
	for(i = 0; i <= 100; i++) {
		setTimeout("changeOpac(" + i + ",'" + imageid + "')",(timer * speed));
		timer++;
	}
}

function currentOpac(id, opacEnd, millisec) {
	//standard opacity is 100
	var currentOpac = 100;
	
	//if the element has an opacity set, get it
	if(document.getElementById(id).style.opacity < 100) {
		currentOpac = document.getElementById(id).style.opacity * 100;
	}

	//call for the function that changes the opacity
	opacity(id, currentOpac, opacEnd, millisec)
}
