function windowSize() {
	var myWidth = 0, myHeight = 0;
	if( typeof( window.innerWidth ) == "number" ) {
		if(document.body && document.body.clientWidth)
		{
			// Palauttaa Firefoxissa viewportin ilman scrollbareja
			myWidth = document.body.clientWidth;
			myHeight = document.body.clientHeight;
		}
		else
		{
			//Non-IE
			myWidth = window.innerWidth;
			myHeight = window.innerHeight;
		}
	} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		//IE 6+ in "standards compliant mode"
		myWidth = document.documentElement.clientWidth;
		myHeight = document.documentElement.clientHeight;
	} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		//IE 4 compatible
		myWidth = document.body.clientWidth;
		myHeight = document.body.clientHeight;
	}
	return {width:myWidth, height:myHeight};
}
function getScrollXY() {
	var scrOfX = 0, scrOfY = 0;
	if( typeof( window.pageYOffset ) == "number" ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	}
	return [ scrOfX, scrOfY ];
}

function fireTooltip(ev)
{
	clearTimeout(window.tooltipTimer);
	if(!ev) ev = window.event;
	if(!ev) return;
	var src = ev.target ? ev.target : ev.srcElement;
	if(!src) return;
	var txt = '';
	while(!txt && src && src.getAttribute)
	{
		txt = src.getAttribute("tooltip");
		src = src.parentNode;
	}
	window.tooltipContent = txt;
	if(!window.tooltipContent) return;
	var s = getScrollXY();
	window.tooltipScroll = s;
	window.tooltipX = ev.clientX;
	window.tooltipY = ev.clientY;
	if(window.tooltipVisible) showTooltip();
	else window.tooltipTimer = setTimeout(showTooltip, 500);
}
function showTooltip()
{
	var dX = 10;
	var dY = 12;
	var tooltipDiv = document.getElementById("tooltipDiv");
	var tooltipContentDiv = document.getElementById("tooltipDivContent");
	if(!tooltipDiv)
	{
		tooltipDiv = document.createElement("DIV");
		tooltipDiv.id = "tooltipDiv";
		var tmp = document.createElement("DIV");
		tmp.id = "tooltipDivBottom";
		tooltipDiv.appendChild(tmp);
		tooltipContentDiv = document.createElement("DIV");
		tooltipContentDiv.id = "tooltipDivContent";
		tmp.appendChild(tooltipContentDiv);
		document.body.appendChild(tooltipDiv);
		addEvent(window, "click", hideTooltip);
		addEvent(document, "click", hideTooltip);
		addEvent(document, "contextmenu", hideTooltip);
	}
	if(tooltipDiv.parentNode != document.body) document.body.appendChild(tooltipDiv);
	tooltipContentDiv.innerHTML = tooltipContent;
	tooltipDiv.style.position = "absolute";
	tooltipDiv.style.left = "-1000px";
	tooltipDiv.style.top = "-1000px";
	tooltipDiv.style.width = "auto";
	tooltipDiv.style.display = "block";
	if(tooltipDiv.offsetWidth*1 > 330) tooltipDiv.style.width = '330px';
	var ws = windowSize();
	tooltipX = tooltipX + tooltipScroll[0] + dX;
	tooltipY = tooltipY + tooltipScroll[1] + dY;
	if(ws.width+tooltipScroll[0] < tooltipX+tooltipDiv.offsetWidth) tooltipX = ws.width + tooltipScroll[0] - tooltipDiv.offsetWidth - dX;
	if(ws.height+tooltipScroll[1] < tooltipY+tooltipDiv.offsetHeight) tooltipY -= tooltipDiv.offsetHeight + Math.round(1.5*dY);
	//alert(tooltipX+' | '+tooltipY);
	tooltipDiv.style.left = tooltipX + "px";
	tooltipDiv.style.top = tooltipY + "px";
	window.tooltipVisible = true;
}
function hideTooltip()
{
	clearTimeout(window.tooltipTimer);
	window.tooltipVisible = false;
	var tooltipDiv = document.getElementById("tooltipDiv");
	if(tooltipDiv) tooltipDiv.style.display = "none";
}

function editValue(el, id)
{
	var el2 = document.getElementById(id);
	if(el2)
	{
		el.style.display = 'none';
		el2.style.display = '';
		el2.focus();
		el2.select();
		return false;
	}
	return true;
}

