var timHide;
var mouseX;
var mouseY;
var req;

function ShowLink(linkstr, categoryID)
{
	LinkMenu_XMLHttpRequest();
	var url="../Home/GetRequest.aspx?Command=Link&Parameter=" + linkstr + "&CategoryID=" + categoryID;
	if(req)
	{
		req.onreadystatechange = LinkMenu_Result;
		req.open('GET', url, true);
		req.send(null);
	}
}

function ShowLinkMenu(menustr)
{
	var menuItems = menustr.split('$$');
	var menu = "";
	menu += LinkMenu_StartTag();
	for (i=0; i<menuItems.length-1; i++)
		menu += LinkMenu_AddRow(menuItems[i]);
	menu += LinkMenu_EndTag();
	
	var panelLink = document.getElementById("panelLink")
	document.getElementById("lblLink").innerHTML = menu;
	PanelLink_Show(true);
	if(window.event)
    {
        panelLink.style.left = (window.event.clientX - 200) + "px";
        panelLink.style.top = (window.event.clientY + document.body.scrollTop) + "px";
    }
    PanelLink_SetWindow();
    LinkMenu_StartHide(5000);
}

function LinkMenu_XMLHttpRequest()
{
    req = false;
    if (window.XMLHttpRequest)
    { // Mozilla, Safari,...
        req = new XMLHttpRequest();
        if (req.overrideMimeType)
        {
            req.overrideMimeType('text/xml');
            // See note below about this line
        }
    }
    else if (window.ActiveXObject)
    { // IE
        try
        {
            req = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                req = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e) {}
        }
    }

    if (!req)
    {
        alert('Giving up :( Cannot create an XMLHTTP instance');
        return false;
    }
}

function LinkMenu_Result()
{
    if (req.readyState == 4)
    {
        if (req.status == 200)
        {
            if(req.responseText!="")
            {
                LinkMenu_Render();
            }
        }
    }
}

function LinkMenu_Render()
{
	var nodes;
	var menustr = "";
	if (window.XMLHttpRequest)
	{
		//Mozilla
		var xmldoc = req.responseXML;
		var root_node = xmldoc.getElementsByTagName('url').item(0);
		url = root_node.firstChild.data;	
			if (url.indexOf("javascript") >= 0)
				eval(url);
			else
				window.location.href = url;
			return;
	}
	else
	{
		//IE
		nodes = req.responseXML.selectNodes("/links/link");
		if (nodes.length == 0)
			return;
		if (nodes.length == 1)
		{
			var node = nodes(0);
			var url = node.selectSingleNode("./url").text;
			if (url.indexOf("javascript") >= 0)
				eval(url);
			else
				window.open (url, "_self", "", true);
			return;
		}
		for (var i=0; i<nodes.length; i++)
		{
			var node = nodes(i);
			var url, title;
			url = node.selectSingleNode("./url").text;
			title = node.selectSingleNode("./title").text
			menustr += title + "##" + url + "$$";
		}
	}
	LinkMenu_Show(menustr);
}

function LinkMenu_AddRow(menuItemStr)
{
	var menuItem = menuItemStr.split('##');
	title = menuItem[0];
	url = menuItem[1];
	var menuScript = '<a class="LinkMenuItem" href="' + url + '">' + title + '</a><br>';
	return menuScript;
}

function LinkMenu_StartTag()
{
	return "<div class='LinkMenu' onmouseout='LinkMenu_StartHide(1500);' onmouseover='LinkMenu_StopHide();'>";
}

function LinkMenu_EndTag()
{
	return "</div>";
}

function LinkMenu_StartHide(sec)
{
	timHide = window.setTimeout(function(){PanelLink_Show(false)}, sec);
}

function LinkMenu_StopHide()
{
	window.clearTimeout(timHide);
}

function getMousePosition()
{
	//mouseX = event.clientX;
	//mouseY = event.clientY;
}

function LinkMenu_Write()
{
	var menudiv = "<div id='linkMenu' style='position:absolute;'></div>";
	window.document.write(menudiv);
}

function PanelLink_Show(isShow)
{
    if(isShow)
        document.getElementById('panelLink').style.display = 'block';
    else
        document.getElementById('panelLink').style.display = 'none';
}

function PanelLink_SetWindow()
{
    var left = (document.body.offsetWidth - 287)/2;
    var top = (document.body.offsetHeight - 167)/2 + document.body.scrollTop;
    document.getElementById("panelLink").style.left = left + "px";
    document.getElementById("panelLink").style.top = top + "px";
}

LinkMenu_Write();