﻿// JScript File
// Date         : 04-Dec-2007
// By           : Nalaka
// Description  : Menu control functions
var fw_Menu_Unhover;
var fw_Menu_HoverStatic;
var fw_Menu_HoverDynamic;

var t;
var div_name='';
var self = this;

function SetupInterceptors(){   // called by onload event
try
{
    if (typeof Menu_HoverStatic != 'undefined') 
    {
        var AppNAme = navigator.appName.toLowerCase();
            
        if ( AppNAme != "opera") 
        {
            fw_Menu_HoverStatic = Menu_HoverStatic;
            Menu_HoverStatic = my_Menu_HoverStatic;

            fw_Menu_HoverDynamic = Menu_HoverDynamic;
            Menu_HoverDynamic = my_Menu_HoverDynamic;

            fw_Menu_Unhover = Menu_Unhover;
            Menu_Unhover = my_Menu_Unhover;
        }
    }
}
catch(ex){ex=null;}
}

function my_Menu_HoverStatic(item) {
    var node = Menu_HoverRoot(item);
    var data = Menu_GetData(item);
    
    if (!data) return;
    
    __disappearAfter = data.disappearAfter;
    Menu_Expand(node, data.horizontalOffset, data.verticalOffset); 
    clearTimeout(self.t);
}

function my_Menu_HoverDynamic(item) {
fw_Menu_HoverDynamic(item);
var x = Menu_FindParentItem(item);
if(x && x.tagName.toLowerCase() != "body")
{
if (window.navigator && window.navigator.appName == "Microsoft Internet Explorer"){
    x.fireEvent("onmouseover");
}
else{
    var oEvent = document.createEvent( "MouseEvents" );
    oEvent.initMouseEvent("mouseover",true,true,window,1,1,1,1,1,false,false,false,false,0,null);
    x.dispatchEvent( oEvent );
}
clearTimeout(self.t);
}
}

function my_Menu_Unhover(item) {
clearTimeout(self.t);
fw_Menu_Unhover(item);
var x = Menu_FindParentItem(item);
if(x && x.tagName.toLowerCase() != "body"){
    if (window.navigator && window.navigator.appName == "Microsoft Internet Explorer"){
        x.fireEvent("onmouseout");
    }
    else{
        var oEvent = document.createEvent( "MouseEvents" );
        oEvent.initMouseEvent("mouseout",true,true,window,1,1,1,1,1,false,false,false,false,0,null);
        x.dispatchEvent( oEvent );
    }
}
else{
	//alert(self.div_name);
    hideMenu(self.div_name);
}
}

function showMenu(obj)
{
    var x = MM_findObj(obj);
    if(self.div_name!='' && self.div_name!=obj)
    {
        hide();
    }
    self.div_name = obj;
    x.style.visibility = 'visible';
    return false;
}

function hide()
{
    var x = MM_findObj(self.div_name);
    if (self.div_name != null && self.div_name != '')
    {
        x.style.visibility = 'hidden';
    }
}

function hideMenu(obj)
{
    self.t = setTimeout('hide()',500);
}



function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}