﻿/******************************************
*
*
*
******************************************/

var defaultMenuWidth= 150; //"150px" //set default menu width.

var linkset=new Array()
var MaxWidth=new Array()

////No need to edit beyond here

var ie5=document.all && !window.opera
var ns6=document.getElementById

if (ie5||ns6)
document.write('<div id="popitmenu" onMouseover="clearhidemenu();" onMouseout="dynamichide(event)"></div>')

function iecompattest(){
    return (document.compatMode && document.compatMode.indexOf("CSS")!=-1)? document.documentElement : document.body
}

function showmenu(e, which, row){
    if (!document.all&&!document.getElementById)
        return
    clearhidemenu()
    menuobj=ie5? document.all.popitmenu : document.getElementById("popitmenu")
    menuobj.innerHTML=which
   // menuobj.style.width=(typeof optWidth!="undefined")? optWidth : MaxWidth[row] //ReturnWidthDiv(which) //defaultMenuWidth
    menuobj.contentwidth=menuobj.offsetWidth
    menuobj.contentheight=menuobj.offsetHeight
    //alert(ReturnWidthDiv(which))
    eventX=ie5? event.clientX : e.clientX
    eventY=ie5? event.clientY : e.clientY
    //Find out how close the mouse is to the corner of the window
    var rightedge=ie5? iecompattest().clientWidth-eventX : window.innerWidth-eventX
    var bottomedge=ie5? iecompattest().clientHeight-eventY : window.innerHeight-eventY
    //if the horizontal distance isn't enough to accomodate the width of the context menu
    if (rightedge<menuobj.contentwidth)
        //move the horizontal position of the menu to the left by it's width
        //-menuobj.contentwidth
        menuobj.style.left=ie5? iecompattest().scrollLeft-10+eventX+"px" : window.pageXOffset-10+eventX-menuobj.contentwidth+"px"
    else
        //position the horizontal position of the menu where the mouse was clicked
        menuobj.style.left=ie5? iecompattest().scrollLeft-10+eventX+"px" : window.pageXOffset+eventX+"px"
        //same concept with the vertical position
    if (bottomedge<menuobj.contentheight)
        menuobj.style.top=ie5? iecompattest().scrollTop+eventY-menuobj.contentheight+"px" : window.pageYOffset+eventY-menuobj.contentheight+"px"
    else
        menuobj.style.top=ie5? iecompattest().scrollTop+event.clientY+10+"px" : window.pageYOffset+10+eventY+"px"
    menuobj.style.visibility="visible"
    return false
}

/*Begin Harlem*/
function ReturnWidthDiv(Obj){
    var length=0;
    var Ar = new Array();
    Ar = Obj.split("</a>")
    for (i=0; i<Ar.length; i++){
        if (length<Ar[i].length)
            length = Ar[i].length;
    }
    length = (((length -95) * 7) + 8)
    if (length < defaultMenuWidth)
        length = defaultMenuWidth;

    return length + "px";
}
/*End Harlem*/

function contains_ns6(a, b) {
    //Determines if 1 element in contained in another- by Brainjar.com
    while (b.parentNode)
    if ((b = b.parentNode) == a)
        return true;
    return false;
}

function hidemenu(){
    if (window.menuobj)
        menuobj.style.visibility="hidden"
}

function dynamichide(e){
    if (ie5&&!menuobj.contains(e.toElement))
    hidemenu()
    else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
    hidemenu()
}

function delayhidemenu(){
    delayhide=setTimeout("hidemenu()",500)
}

function clearhidemenu(){
    if (window.delayhide)
        clearTimeout(delayhide)
}

if (ie5||ns6)
    document.onclick=hidemenu
    
function format(str)
{
  for(i = 1; i < arguments.length; i++)
  {
    str = str.replace('{' + (i - 1) + '}', arguments[i]);
  }
  return str;
}
