// Tips outer script
// setting tip html code on div "tipdiv" and repositioning that div on where is mouse

function getIdentsCode(title, arr)
{
	var code;
	code = "<div><table cellSpacing=0 cellPadding=1 border=1 onclick='return SmsMenu.Hide();'><tr><td align=center class='smsmenuheader'>"+title+"</td></tr>";
	for (var i in arr) {
		code += "<tr><td align=left class='smsmenu' bgcolor='#ffffff' onmouseover=\"bgColor='#FFD790'\" onmouseout=\"bgColor='#ffffff'\" onclick=\""+arr[i].onclick+"\">"+arr[i].name+"</td></tr>";
	}
	code += "</table></div>";
	return code;
}


function showSmsMenu(title, idents)
{
	var code = getIdentsCode(title, idents);
	SmsMenu.Show(document, code);
	//Tooltip.Hide();
}


var SmsMenu = {
// private
	_doc         : null,
	
	_setPosition : function(newX, newY)
	{
		newX += 5;
		newY += 1;
		if (ie) {
			var td = SmsMenu._doc.getElementById("smsmenudiv");
			td.style.left = newX;
			td.style.top  = newY;
		} else if (ns6) {
			var s = SmsMenu._doc.getElementById("smsmenudiv").style;
			s.left = newX + "px";
			s.top  = newY + "px";
		} else if (ns4) {
			SmsMenu._doc.tipdiv.left = newX;
			SmsMenu._doc.tipdiv.top  = newY;
		}
	},
		
// public
	Show : function(doc, code)
	{
		SmsMenu._doc         = doc;
		
		// setting up event capture
		SmsMenu._setPosition(Mouse.currentX+1, Mouse.currentY+1)
		
		// setting up text
		if (DOM2) {
			doc.getElementById('smsmenudiv').innerHTML = code;
		} else if (ns) {
			var d = doc.layers['smsmenudiv'].document;
			d.open();
			d.write(code);
			d.close();
		} else {
			doc.all['smsmenudiv'].innerHTML = code;
		}
		
		// showing div
		doc.getElementById("smsmenudiv").style.visibility = "visible";
		doc.getElementById("tipdiv").style.visibility = "hidden";
	},
	
	Hide : function()
	{
		var td = SmsMenu._doc.getElementById("smsmenudiv");
		if (td)	{
			SmsMenu._setPosition(-1000, -1000);
			SmsMenu._doc.getElementById("smsmenudiv").style.visibility = "hidden";
			SmsMenu._doc = null;
		}
	}
};

