// Copyright (c) 2003-2004 by UriSoft


var dom = (document.getElementById) ? true : false;
var nn4 = (document.layers) ? true : false;
var ie = (document.all) ? true : false;
var ie4 = (!dom && ie) ? true : false;
var moz = (dom && (navigator.appName=="Netscape")) ? true : false;
var opr = (dom && window.opera) ? true : false;
var op7 = (opr && document.readyState) ? true : false;

var hintsObj = null;


// Netscape, Mozilla and Opera
function moveHintsN(e) {

	if (hintsObj == null) return;

	if (nn4) {
		xoff = e.pageX + 10;
		if (document.body.clientWidth < (xoff + 300)) {
// align to right border of window
//			xoff = document.body.clientWidth - 300;
// revert align to mouse
			xoff -= 310;
		}
		document.layers['hints'].left = xoff;
		document.layers['hints'].top = e.pageY + 10;
		document.layers['hints'].visibility = "show"
	} else if (moz || op7) {

		xoff = window.pageXOffset + e.clientX + 10;
		if (document.body.clientWidth < (xoff + 300)) {
// align to right border of window
//			xoff = document.body.clientWidth - 300;
// revert align to mouse
			xoff -= 310;
		}
		document.getElementById('hints').style.left = xoff + "px";
		document.getElementById('hints').style.top = window.pageYOffset + e.clientY + 10 + "px";
		document.getElementById('hints').style.visibility = "visible";
	}
}

function hideHintsN(e) {

	if (hintsObj == null) return;
	document.releaseEvents(Event.MOUSEMOVE);
	document.releaseEvents(Event.MOUSEOUT);
	document.onmousemove = null;
	document.onmouseout = null;
   	if (nn4) {
		document.layers['hints'].visibility = "hide";
		document.layers['hints'].left = 0;
		document.layers['hints'].top = 0;
    } else if (moz || op7) document.getElementById('hints').style.visibility = "hidden";
    hintsObj = null;
}


// IE
function moveHints() {

	if (opr || moz || nn4 || (hintsObj == null)) return;

    xoff = 0;
    yoff = 0;
	if (dom || ie) {
		if (dom) q = document.getElementById(hintsObj);
		else q = document.all[hintsObj];
		while (q) {
			xoff += q.offsetLeft;
			yoff += q.offsetTop;
			q = q.offsetParent;
		}
		xoff += window.event.offsetX + 10;
		yoff += window.event.offsetY + 5;
	}

	if (document.body.clientWidth < (xoff + 300)) {
// align to right border of window
//		xoff = document.body.clientWidth - 300;
// revert align to mouse
		xoff -= 320;
	}

    if (dom) {
		document.getElementById('hints').style.left = xoff;
		document.getElementById('hints').style.top = yoff;
	} else if (ie4) {
		document.all['hints'].style.left = xoff;
		document.all['hints'].style.top = yoff;
	}
}

function hideHints() {

	if (opr || moz || nn4 || (hintsObj == null)) return;

	if (dom) document.getElementById('hints').style.visibility = "hidden";
		else if (ie4) document.all['hints'].style.visibility = "hidden";
    hintsObj = null;
}


// ALL
function showHints(obj,head,text) {

	if ((opr && !op7) || (text == "")) return;

    contents = "<table border=\'0\' cellspacing=\'0\' class=\'hintshead\'><tr><td style=\'padding:1px\'><b>" + head + "</b></td></tr><tr><td style=\'padding:1px\'><table border=\'0\' cellspacing=\'0\' class=\'hintstext\'><tr><td style=\'padding:3px\'>" + text + "</td></tr></table></td></tr></table>";

	hintsObj = obj;
	if (dom) document.getElementById('hints').innerHTML = contents;
	else if (nn4) {
			document.layers['hints'].document.open();
			document.layers['hints'].document.write(contents);
			document.layers['hints'].document.close();
		}
	else if (ie4) document.all['hints'].innerHTML = contents;

    // for Netscape, Mozilla and Opera
	if (nn4 || moz || op7) {
		document.captureEvents(Event.MOUSEMOVE);
		document.captureEvents(Event.MOUSEOUT);
		document.onmousemove = moveHintsN;
		document.onmouseout = hideHintsN;
		return;
	}
    // for IE
    if (dom || ie) {
		moveHints();
		if (dom) document.getElementById('hints').style.visibility = "visible";
			else if (ie4) document.all['hints'].style.visibility = "visible";
    }
}

function showHints2(obj,head,head2,text) {

	if (opr && !op7) return;

    contents = "<table border=\"0\" cellspacing=\"0\" class=\"hintshead\"><tr><td style=\"padding:2px\"><b>" + head + "</b></td><td style=\"padding:2px\" align=\"right\"><b>" + head2 + "</b></td></tr><tr><td colspan=\"2\" style=\"padding:1px\"><table border=\"0\" cellspacing=\"0\" class=\"hintstext\"><tr><td style=\"padding:3px\">" + text + "</td></tr></table></td></tr></table>";

    if (head == "") contents = "<table border=\'0\' cellspacing=\'0\' class=\'hintshead\'><tr><td style=\'padding:2px\'><b>Тема закрыта.</b></td></tr></table>";
    if ((head != "") && (text == ""))  contents = "<table border=\'0\' cellspacing=\'0\' class=\'hintshead\'><tr><td style=\'padding:2px\'><b>" + head + "</b></td><td style=\'padding:2px\' align=\'right\'><b>" + head2 + "</b></td></tr></table>";

	hintsObj = obj;
	if (dom) document.getElementById('hints').innerHTML = contents;
	else if (nn4) {
			document.layers['hints'].document.open();
			document.layers['hints'].document.write(contents);
			document.layers['hints'].document.close();
		}
	else if (ie4) document.all['hints'].innerHTML = contents;

    // for Netscape, Mozilla and Opera
	if (nn4 || moz || op7) {
		document.captureEvents(Event.MOUSEMOVE);
		document.captureEvents(Event.MOUSEOUT);
		document.onmousemove = moveHintsN;
		document.onmouseout = hideHintsN;
		return;
	}
    // for IE
    if (dom || ie) {
		moveHints();
		if (dom) document.getElementById('hints').style.visibility = "visible";
			else if (ie4) document.all['hints'].style.visibility = "visible";
    }
}

