﻿/************************
right click menu
************************/
var sMouseOver_HoldID = '';
var sMouseOver_SetID = '';
var sMouseOver_SetType = '';
var sMouseOver_Other = '';
var sMouseOver_Parent = '';
var oRightClickMenu;
var oMouseOver_Element;


try
{
    if (ie5 || ns6)
    {
        //oRightClickMenu.style.display='';
        document.oncontextmenu = ShowRightClickMenu;
        document.onclick = HideRigthClickMenu;
    }
}
catch (oErr)
{
    JSError('[Load]', oErr);
}


function SetRightClickMenu(oElement, sSetID, sSetType, sOther, sParent)
{
    try
    {
        HideRigthClickMenu('');

        oMouseOver_Element = oElement;
        sMouseOver_SetID = sSetID;
        sMouseOver_SetType = sSetType;
        sMouseOver_Other = sOther;
        sMouseOver_Parent = sParent;
    }
    catch (oErr)
    {
        JSError('SetRightClickMenu', oErr);
        return false;
    }
}

function ShowRightClickMenu(e)
{
    try
    {
        var iErrorOnLine = 0;

        //alert('sMouseOver_SetID=' + sMouseOver_SetID + '\n\n sMouseOver_SetType=' + sMouseOver_SetType);
        if (!(sMouseOver_SetID == '') && !(sMouseOver_SetType == ''))
        {
            sMouseOver_HoldID = sMouseOver_SetID;

            //alert('3 ' + e.id);						

            iErrorOnLine = 20;
            if (window.RightClickMenuMore)
            {
                //alert('4');						
                if (sMouseOver_Other)
                {
                    RightClickMenuMore(sMouseOver_Other);
                }
            }
            oRightClickMenu = document.getElementById("RightClickMenu" + sMouseOver_SetType);

            //alert('6  oRightClickMenu' + oRightClickMenu);						

            if (oRightClickMenu)
            {
                var rightedge = ie5 ? (document.documentElement.documentElement - event.clientX) - 10 : (window.innerWidth - e.clientX) - 10;
                var bottomedge = ie5 ? (document.documentElement.documentElement - event.clientY) - 10 : (window.innerHeight - e.clientY) - 10;

                //alert('8');				
                //alert(bottomedge + '\n' + document.documentElement.scrollTop + '\n' + event.clientY);	

                if (rightedge < oRightClickMenu.offsetWidth)
                {
                    oRightClickMenu.style.left = (ie5 ? document.documentElement.scrollLeft + event.clientX - oRightClickMenu.offsetWidth : window.pageXOffset + e.clientX - oRightClickMenu.offsetWidth) - 2;
                }
                else
                {
                    oRightClickMenu.style.left = (ie5 ? document.documentElement.scrollLeft + event.clientX : window.pageXOffset + e.clientX) - 2;
                }
                //alert('12');						
                //same concept with the vertical position
                if (bottomedge < oRightClickMenu.offsetHeight)
                {
                    oRightClickMenu.style.top = (ie5 ? document.documentElement.scrollTop + event.clientY - oRightClickMenu.offsetHeight : window.pageYOffset + e.clientY - oRightClickMenu.offsetHeight) - 2;
                }
                else
                {
                    oRightClickMenu.style.top = (ie5 ? document.documentElement.scrollTop + event.clientY : window.pageYOffset + e.clientY) - 2;
                }

                //alert('15');						
                oRightClickMenu.style.display = 'block';

                //alert(oRightClickMenu.outerHTML);
            }
            else
            {
                HideRigthClickMenu('');
            }
        }
        else
        {
            HideRigthClickMenu('');
        }
        return false;
    }
    catch (oErr)
    {
        JSError('ShowRightClickMenu', oErr + '\n\n iErrorOnLine=' + iErrorOnLine);
        return false;
    }
}
function HideRigthClickMenu(e)
{
    try
    {
        sMouseOver_HoldID = '';
        ClearRigthClickMenu();
    }
    catch (oErr)
    {
        JSError('HideRigthClickMenu', oErr);
        return false;
    }
}
function ClearRigthClickMenu()
{
    try
    {
        if (sMouseOver_HoldID == '')
        {
            if (oRightClickMenu)
            {
                oRightClickMenu.style.display = 'none';
            }

            oMouseOver_Element = '';
            sMouseOver_SetID = '';
            sMouseOver_SetType = '';
            sMouseOver_Other = '';
        }
    }
    catch (oErr)
    {
        JSError('ClearRigthClickMenu', oErr);
        return false;
    }
}
