/* -----------------------------------------------
   Floating layer - v.1
   (c) 2006 www.haan.net
   contact: jeroen@haan.net
   You may use this script but please leave the credits on top intact.
   Please inform us of any improvements made.
   When usefull we will add your credits.
  ------------------------------------------------ */

x = 20;
y = 70;

function doSetVisibleOrOpenPaintings(name, num, color) {
	if (!setVisibleLayer(num, color))
		openPaintings(name, num, color);
}

function setElementsNotVisible(className) {
	objs = document.getElementsByTagName('div');
	for (var i = 0; i < objs.length; i++)
		if (objs[i].className.indexOf(className) != -1)
			objs[i].style.visibility = 'hidden';
}

function setHidden(obj) {
	obj = document.getElementById(obj);
	obj.style.visibility = 'hidden';
}

// if obj (layer number 'num') found, hides all other numbered layers and set layer number 'num' to visible; in this case, returns true
// if obj is not found, returns false
function setVisibleLayer(num, color)
{
	setElementsNotVisible('addLayer');
	obj = document.getElementById('layer' + num);
	if (obj == null)
		return false;
	td = document.getElementById('td' + num);
	//var top = obj.parentNode.offsetTop + 11;
	var top = td.offsetTop + 11;
	obj.style.top = top + 'px';
	//var left = obj.parentNode.offsetLeft - 57;
	var left = td.offsetLeft - 57;
	var galTable = document.getElementById('galleryTable');
	if (galTable != null)
		left += galTable.offsetLeft;
	// if (left < 0)
		// left = 0;
	// else {
		// var maxRight = galTable.parentNode.offsetWidth + galTable.parentNode.offsetLeft;
		// if (left + obj.clientWidth > maxRight)
			// left = maxRight - obj.clientWidth;
	// }
	obj.style.left = left + 'px';
	objs = obj.getElementsByTagName('div');
	for (var i = 0; i < objs.length; i++)
		if (objs[i].className == 'galName')
			objs[i].style.backgroundColor = color;
	obj.style.visibility = 'visible';
	return true;
}

function setVisibleWithImage(num, imagesrc) {
	obj = document.getElementById('layer' + num);
	if (obj == null)
		return false;
	img = document.getElementById('p_image');
	if (img == null)
		return false;
	img.src = imagesrc;
	obj.style.visibility = 'visible';
}

// 
function openPaintings(name, num, color) {
	var slash = location.href.lastIndexOf('/');
	var dot = location.href.lastIndexOf('.');
	var currGallery = location.href.substring(slash + 1, dot);
	var url = location.href.replace('.html', '/' + name + '.html');
	location.assign(url);
}
