var selectedImage = 0;

var imgcache = new Array();

function load(selected,link) {
	selectedImage = selected;
	
	if (!imgcache[selectedImage]) {
		imgcache[selectedImage] = new Image();
		imgcache[selectedImage].src = gallerydir+'/'+gallery[selectedImage];
		imgcache[selectedImage].onload = function() {
			load(selected,link);
		}
		return;
	}
	
	var page = Math.floor(selectedImage/showlength)+1;
	if (page!=currentpage) navpage(page);
	
	document.getElementById('bottompicture').onload = function() {
		_js.fadeOut(_js.id('toppic'),doneFadeOut);
	}
	document.getElementById('bottompicture').src = imgcache[selectedImage].src;
	
	var offset = (currentpage-1)*showlength;
	var offsetSelected = selected-offset;
	
	for (i=0;i<showlength;i++) {
		var elm = document.getElementById('thumb_'+i);
		if (elm) elm.className = 'thumb';
	}
	
	document.getElementById('thumb_'+offsetSelected).className = 'thumbselected';
	
	/*
	var offset = (currentpage-1)*showlength;
	if (link) {
		var offsetSelected = selected-offset;
		for (i=0;i<showlength;i++) {
			var elm = document.getElementById('thumb_'+i);
			if (elm) elm.className = 'thumb';
		}
		link.className = 'thumbselected';
	}
	*/
	
	//document.getElementById('bottompicture').src = gallerydir+'/'+gallery[selectedImage];
	//_js.fadeOut(_js.id('picture'),doneFadeOut);
}

function lastImage() {
	var i = selectedImage-1;
	if (i<0) i=gallery.length-1;
	load(i);
}

function nextImage() {
	var i = selectedImage+1;
	if (i>gallery.length-1) i=0;
	load(i);
}



function doneFadeOut() {
	var toppic = _js.id('toppic');
	var topimage = _js.id('topimage');
	_js.opacity(toppic,0);
	topimage.onload = function() {
		_js.opacity(toppic,1);
	}
	topimage.src = imgcache[selectedImage].src;
	
}

var currentpage = 1;
var numpages = Math.floor(gallery.length/showlength)+1;

function navpage(page) {
	currentpage = page;
	var offset = (currentpage-1)*showlength;
	var str = '',img,classn;
	for (i=0;i<showlength;i++) {
		imgi = i+offset;
		if (imgi<gallery.length) {
			img = gallery[imgi];
			thumb = thumbs[imgi];
			classn = 'thumb';
			if (selectedImage==imgi) classn = "thumbselected";
			str += '<a id="thumb_'+i+'" href="javascript://" title="'+thumb+'" onclick="load('+imgi+',this)" class="'+classn+'"><img src="'+gallerydir+'/'+thumb+'" width="28" height="28" border="0"></a>';
		}
		else {
			str += '<a href="javascript://" class="thumbblank"></a>';
		}
	}
	document.getElementById('thumbnailwrap').innerHTML = str;
}

function navback() {
	if (currentpage-1<1) navpage(numpages);
	else navpage(currentpage-1);
}

function navnext() {
	if (currentpage+1>numpages) navpage(1);
	else navpage(currentpage+1);
}

function galleryLoad() {
	navpage(1);
	document.getElementById('thumb_0').className = 'thumbselected';
	_js.opacity('navbar_overlay',0.8);
	
	// preload images
	for (var i=0;i<gallery.length;i++) {
		imgcache[i] = new Image();
		imgcache[i].src = gallerydir+'/'+gallery[i];
	}
}