﻿function thumbOnClick(e)
{
	if(!e)
	{
		var e = window.event;
	}
	
	ShowThumb(this.src, this.offsetTop);
}

function ShowThumb(url, offsettop)
{
	loadingimage.style.display = "block";
	var url = url.replace("klein", "groot");
	url = url.replace("thumbs", "full");
	img = new Image();
	img.src = url;
	//img.onload = function(){sizeScrollBalk(offsettop)};
	//objimg = document.getElementById("bvz_objectimage");
	objectimage.src = img.src;
	window.setTimeout("loadingimage.style.display = 'none'", 500);
	
	//door resizen (verkleinen) van de scrollbalk kan de net aangeklikte thumb weer worden verborgen
	//scroll de scrollbalk naar de thumb die we net hebben aangeklikt
	doScrollTo(offsettop);
}

//hoogte van fotoscrollbalk aanpassen aan hoogte van bvz_objectimage
function sizeScrollBalk(scrolltovalue)
{
	for(i=0; i<document.images.length;i++)
	{
		if(document.images[i].id == "bvz_objectimage")
		{
			if(document.images[i].height == 0)
			{
				setTimeout("sizeScrollBalk()", 20);
				break;
			}
			else
			{
				scrollbalk.style.height = document.images[i].height;
				if(scrolltovalue > 0)
					doScrollTo(scrolltovalue);
				break;
			}
		}
	}
}

function Init()
{
	objectimage = document.getElementById("bvz_objectimage");
	loadingimage = document.getElementById("bvz_loadingdiv");	
	scrollbalk = document.getElementById("fotoscrollbalk");
	//document.getElementById("bvz_objectimage").onload = function(){sizeScrollBalk(this.offsetTop)};
	
	images = document.getElementsByTagName("img");
	for(i=0; i< images.length; i++)
	{
		var elm = images[i];
		var firstimg = false;
		
		if(elm.className == "bvz_beeldthumb")
		{
			elm.onclick = thumbOnClick;
			
			//laat de eerste image ook meteen full-size zien
			//zet daarna firstimg (betekent: eerste image gevonden) op true)
			if(!firstimg)
			{
				ShowThumb(elm.src);
				firstimg = true;
			}
		}
	}
	
	//sizeScrollBalk();
}

function toggleScrollUp()
{
	if(scrollup)
		scrollup = false;
	else
	{
		scrollup = true;
		doScrollUp();
	}
}

function doScrollUp()
{
	if(scrollup)
	{
		if(scrollbalk.scrollTop > scrollbalk.style.top)
		{
			scrollbalk.scrollTop -= scrollinterval;
			setTimeout("doScrollUp()", 50);
		}
	}
}

function toggleScrollDown()
{
	if(scrolldown)
		scrolldown = false;
	else
	{
		scrolldown = true;
		doScrollDown();
	}
}

function doScrollDown()
{
	if(scrolldown)
	{
		if(scrollbalk.scrollTop < scrollbalk.scrollHeight)
		{
			scrollbalk.scrollTop += scrollinterval;
			setTimeout("doScrollDown()", 50);	//getal = aantal milliseconden tussen elke aanroep van doScrollUp of doScrollDown. Verlaag dit getal om sneller te scrollen.
												//werking is afhankelijk van browsersnelheid: bij te lage waardes zie je wellicht geen verschil omdat de browser niet genoeg frames per seconde draait
		}
	}
}

function doScrollTo(scrollvalue)
{	
	//if(scrollbalk.style.bottom > scrollvalue)
		scrollbalk.scrollTop = scrollvalue;
}

scrollinterval = 3; //verschuiving (aantal pixels) per aanroep van doScrollUp of doScrollDown. Te hoge waardes zorgen voor plotse verspringing ipv. vloeiende beweging
var scrollbalk;
var scrollup = false;
var scrolldown = false;
var loadingimage;
var objectimage;
