//Pop-it menu- By Dynamic Drive
//For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
//This credit MUST stay intact for use

var linkset=new Array()

////No need to edit beyond here : hehe, yeah right (junior)

var offsetxpoint=10 //Customize x offset of tooltip
var offsetypoint=20 //Customize y offset of tooltip
var ie=document.all
var ns6=document.getElementById && !document.all
var menuobj=document.all? document.all["popmenu"] : document.getElementById? document.getElementById("popmenu") : ""

function ietruebody() {
   return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function showtooltip(e,which,width) {
   clearhidemenu()
   if ( typeof width == 'undefined' ) var width = 165
   which = unescape(which)
   which = which.replace(/\+/g," ")
   menuobj.innerHTML="<p>"+which+"</p>"
   menuobj.style.width=width+"px"
   menuobj.style.visibility="visible"
   positionit(e, "tip");
}

function showmenu(e,which,swap) {
   which = which.replace(/ID=0/g, "ID="+swap);
   clearhidemenu()
   menuobj.innerHTML=which
   menuobj.style.width="170px"
   menuobj.style.visibility="visible"
   positionit(e, "menu");
}


function positionit(e, type) {
   var curX=(ns6)?e.pageX : event.x+ietruebody().scrollLeft;
   var curY=(ns6)?e.pageY : event.y+ietruebody().scrollTop;
   curX = e.clientX;
   curY = e.clientY;

   if ( type == "tip" ) {
      offsetxpoint=10
      offsetypoint=20
   } else {
      offsetxpoint=0
      offsetypoint=0
   }

   //Find out how close the mouse is to the corner of the window
   var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : window.innerWidth-e.clientX-offsetxpoint-20
   var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20

   var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000

   // if the horizontal distance isn't enough to
   // accomodate the width of the context menu
   if (rightedge<menuobj.offsetWidth)
      // move the horizontal position of the menu to the left by it's width
      if (ie)
         menuobj.style.left = ietruebody().scrollLeft+event.clientX-menuobj.offsetWidth+"px"
      else
         menuobj.style.left = window.pageXOffset+e.clientX-menuobj.offsetWidth+"px"
   else
      if (curX<leftedge)
         menuobj.style.left="5px"
      else
         //position the horizontal position of the menu where the mouse is positioned
         menuobj.style.left=curX+offsetxpoint+"px"

   //same concept with the vertical position
   if (bottomedge<menuobj.offsetHeight)
      if (ie)
         menuobj.style.top = ietruebody().scrollTop+event.clientY-menuobj.offsetHeight-offsetypoint+"px"
      else
         menuobj.style.top = window.pageYOffset+e.clientY-menuobj.offsetHeight-offsetypoint+"px"
   else
      menuobj.style.top=curY+offsetypoint+"px"

   return false
}

// Determines if 1 element in contained in another- by Brainjar.com
function contains_ns6(a, b) {
   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 (ie&&!menuobj.contains(e.toElement))
      hidemenu()
   else
      if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
      hidemenu()
}

function delayhidemenu(){
   delayhide=setTimeout("hidemenu()",50)
}

function clearhidemenu(){
   if (window.delayhide)
      clearTimeout(delayhide)
}

function highlightmenu(e,state){
   if (document.all)
      source_el=event.srcElement
   else
      if (document.getElementById)
         source_el=e.target
   if (source_el.className=="menuitems"){
      source_el.id=(state=="on")? "mouseoverstyle" : ""
   } else {
      while(source_el.id!="popmenu"){
         source_el=document.getElementById? source_el.parentNode : source_el.parentElement
         if (source_el.className=="menuitems"){
            source_el.id=(state=="on")? "mouseoverstyle" : ""
         }
      }
   }
}

//if (ie||ns6)
//   document.onclick=hidemenu
