function getElementsByClass(className, els) {
	var a = new Array()
	for (var i = 0; i < els.length; i++) if(els[i].className == className) a[a.length] = els[i]
	return a
}

function findNextSiblingWClass(node, classn) {
	while (node) {
        if (node.className == classn) return node
        node = node.nextSibling
    }
    return null
}

function vColorize() {
	var id = this.id.replace(/\w+\-/,'')
	if (!id) return
	var el = document.getElementById('vimg-' + id)
	el.src = vImgColor[id].src
}

function vDesaturate() {
	var id = this.id.replace(/\w+\-/,'')
	if (!id) return
	var el = document.getElementById('vimg-' + id)
	el.src = vImgMono[id].src
}

function vShow() {
	var id = this.id.replace(/\w+\-/,'')
	if (!id) return
	var el = document.getElementById('vimg-' + id)
	var img = document.getElementById('photo')
	var desc = document.getElementById('photodesc')
	var txt = findNextSiblingWClass(el,'description')
	if (desc) {
		desc.innerHTML = txt.innerHTML
		var name = el.src.replace('_120.jpg','.jpg')
		name = name.replace('_120b.jpg','.jpg')
		vImg = new Image()
		vImg.src = name
		vTm = setTimeout('vLoadImg()', 10)
	}
}

function vLoadImg() {
	if (!vImg.width) { vTm = setTimeout('vLoadImg()', 10) }
	else {
		clearTimeout(vTm)
		var img = document.getElementById('photo')
		img.src = vImg.src
//		img.width = vImg.width
//		img.height = vImg.height
		vImg = null
	}
}

function vInit() {
	if (!document.getElementsByTagName) return
	var i
	var el = document.getElementById('thumbnails')
	var el = el.getElementsByTagName('img')
	var el = getElementsByClass('thumb', el)
	for (i = 0; i < el.length; i++) {
		el[i].id = 'vimg-' + i
		vImgMono[i] = new Image()
		vImgMono[i].src = el[i].src 
		vImgColor[i] = new Image()
		vImgColor[i].src = el[i].src.replace('_120b.jpg','_120.jpg')
		if (el[i].addEventListener) {
			el[i].addEventListener('mouseover', vColorize, false)
			el[i].addEventListener('mouseout', vDesaturate, false)
			el[i].addEventListener('click', vShow, false)
		} else {
			el[i].onmouseover = vColorize
			el[i].onmouseout = vDesaturate
			el[i].onclick = vShow
		}
	}
}

var vTm, vImg
var vImgColor = new Array(), vImgMono = new Array()
var vOldhandler = window.onload
window.onload = (typeof oldhandler == "function") ? function() { vOldhandler(); vInit(); } : vInit
