﻿/************************
right click menu
************************/
var sMouseOver_HoldID = '';
var sMouseOver_SetID = '';
var sMouseOver_SetType = '';
var sMouseOver_Other = '';
var sMouseOver_Parent = '';
var oRightClickMenu;
var oMouseOver_Element;
var sMouseOver_MouseOverAddEvents;
var sMouseOver_MouseOutAddEvents;


function SetRightClickMenu(oElement, sSetID, sSetType, sOther, sParent)
{
    try
    {
        if (ie5 || ns6)
        {
            //oRightClickMenu.style.display='';
            document.oncontextmenu = ShowRightClickMenu;
            //document.onclick = FlushRigthClickMenu;
        }

        if (oRightClickMenu)
        {
            oRightClickMenu.style.display = 'none';
        }

        oMouseOver_Element = oElement;
        sMouseOver_SetID = sSetID;
        sMouseOver_SetType = sSetType;
        sMouseOver_Other = sOther;
        sMouseOver_Parent = sParent;

        //FloatAlert('oMouseOver_Element:"' + oMouseOver_Element.tagName + '"<br>sMouseOver_SetID:"' + sMouseOver_SetID + '"<br>sMouseOver_SetType:"' + sMouseOver_SetType + '"<br>sMouseOver_Other:"' + sMouseOver_Other + '"<br>sMouseOver_Parent:"' + sMouseOver_Parent + '"');
    }
    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);

            //FloatAlert(OuterHTML(oRightClickMenu,true));						

            if (oRightClickMenu)
            {
                if (oRightClickMenu.style.display != 'block')
                {
                    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) + 'px';
                    }
                    else
                    {
                        oRightClickMenu.style.left = ((ie5 ? document.documentElement.scrollLeft + event.clientX : window.pageXOffset + e.clientX) - 2) + 'px';
                    }
                    //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) + 'px';
                    }
                    else
                    {
                        oRightClickMenu.style.top = ((ie5 ? document.documentElement.scrollTop + event.clientY : window.pageYOffset + e.clientY) - 2) + 'px';
                    }


                    if (oMouseOver_Element.tagName == 'DIV' || oMouseOver_Element.tagName == 'TD')
                    {
                        //FloatAlert('here');
                        //oMouseOver_Element.appendChild(oRightClickMenu);
                    }
                    else
                    {
                        //FloatAlert('Not here <br>' + oMouseOver_Element.tagName);
                    }


                    oRightClickMenu.style.display = 'block';

                    if (sMouseOver_MouseOverAddEvents)
                    {
                        eval(sMouseOver_MouseOverAddEvents);
                    }

                    //$get('ctl00_Left1_ctl00_LBL_PageTitle2').innerHTML = (replace(replace(OuterHTML(oRightClickMenu), '<', '&lt;'), '>', '&gt;'));
                }
            }
            else
            {
                //$get('ctl00_Left1_ctl00_LBL_PageTitle2').innerHTML = 'Menu Not Found';
                FlushRigthClickMenu('');
            }
        }
        else
        {
            FlushRigthClickMenu('');
        }
        return false;
    }
    catch (oErr)
    {
        JSError('ShowRightClickMenu', oErr + '\n\n iErrorOnLine=' + iErrorOnLine);
        return false;
    }
}
function RightClickMenu_MouseOver(oElem)
{
    if (oMouseOver_Element)
    {
        //oMouseOver_Element.fireEvent('onmouseover');
    }

   // Menu_HoverOver(oElem, 'RightClick', null, null)
}

function RightClickMenu_MouseOut(oElem)
{
    if (oMouseOver_Element)
    {
        //oMouseOver_Element.fireEvent('onmouseover');
    }

    //Menu_AddFade(oElem,null,null,'FlushRigthClickMenu();');
    //FloatAlert('FlushRigthClickMenu\n' + OuterHTML(oElem,true));
}


function HideRightClickMenu(e)
{
    try
    {

        //FloatAlert('HideRightClickMenu:"' + oMouseOver_Element.tagName + '"<br>sMouseOver_SetID:"' + sMouseOver_SetID + '"<br>sMouseOver_SetType:"' + sMouseOver_SetType + '"<br>sMouseOver_Other:"' + sMouseOver_Other + '"<br>sMouseOver_Parent:"' + sMouseOver_Parent + '"');

        if (oRightClickMenu)
        {
            oRightClickMenu.style.display = 'none';

            if (sMouseOver_MouseOutAddEvents)
            {
                eval(sMouseOver_MouseOutAddEvents);
            }
        }
    }
    catch (oErr)
    {
        JSError('HideRightClickMenu', oErr);
        return false;
    }
}
function ClearRigthClickMenu()
{
    try
    {
        //FloatAlert('ClearRigthClickMenu:"' + oMouseOver_Element.tagName + '"<br>sMouseOver_SetID:"' + sMouseOver_SetID + '"<br>sMouseOver_SetType:"' + sMouseOver_SetType + '"<br>sMouseOver_Other:"' + sMouseOver_Other + '"<br>sMouseOver_Parent:"' + sMouseOver_Parent + '"');

        if (sMouseOver_HoldID == '')
        {
            FlushRigthClickMenu();
            //$get('ctl00_Left1_ctl00_LBL_PageTitle2').innerHTML = 'ClearRigthClickMenu:"' + sMouseOver_SetID + '"';
        }
    }
    catch (oErr)
    {
        JSError('ClearRigthClickMenu', oErr);
        return false;
    }
}
function FlushRigthClickMenu()
{
    try
    {
        if (oRightClickMenu)
        {
            oRightClickMenu.style.display = 'none';
        }


        if (sMouseOver_MouseOutAddEvents)
        {
            eval(sMouseOver_MouseOutAddEvents);
        }

        sMouseOver_HoldID = '';
        oMouseOver_Element = '';
        sMouseOver_SetID = '';
        sMouseOver_SetType = '';
        sMouseOver_Other = '';
        sMouseOver_MouseOutAddEvents = null;
        sMouseOver_MouseOverAddEvents = null;


        //$get('ctl00_Left1_ctl00_LBL_PageTitle2').innerHTML = 'FlushRigthClickMenu:"' + sMouseOver_SetID + '"';
    }
    catch (oErr)
    {
        JSError('FlushRigthClickMenu', oErr);
        return false;
    }
}

