/***********************************************
* Pop-it menu- © Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

document.write('<link rel="stylesheet" href="/css/dynamicpopup.css" media="screen"></link>');

var defaultMenuWidth="225px" //set default menu width.

////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)" style="position:absolute;float:left;"></div>')

if (ie5||ns6)
document.write('<div id="popitmenuob" onMouseover="clearhidemenu();" onMouseout="dynamichide(event)" style="position:absolute;float:left;"></div>')

function iecompattest()
{
    return (document.compatMode && document.compatMode.indexOf("CSS")!=-1)? document.documentElement : document.body
}

function showmenu(e, which, optWidth)
{
    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 : defaultMenuWidth
    menuobj.contentwidth=menuobj.offsetWidth
    menuobj.contentheight=menuobj.offsetHeight
    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
    
    eventX=eventX-70;

    if (rightedge<menuobj.contentwidth)
        //move the horizontal position of the menu to the left by it's width
        menuobj.style.left=ie5? iecompattest().scrollLeft+eventX-menuobj.contentwidth+"px" : window.pageXOffset+eventX-menuobj.contentwidth+"px"
    else
        //position the horizontal position of the menu where the mouse was clicked
        menuobj.style.left=ie5? iecompattest().scrollLeft+eventX+"px" : window.pageXOffset+eventX+"px"
    
    eventY = eventY + 5;

    //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+eventY+"px" : window.pageYOffset+eventY+"px"
    
    menuobj.style.visibility="visible"
    
    return false
}

function showmenuob(e, which, optWidth, popupctrlid)
{
    if (!document.all&&!document.getElementById)
    return
    
    var ctrloldname = "aTitleLinkPopUp";
    var ctrlnewname = "divBookCapsuleOuter";    
    var popupctrlidnew = '';
    
    if (popupctrlid != '')
    {
        popupctrlidnew = popupctrlid.replace(ctrloldname, ctrlnewname);
        
        var ctrldata = document.getElementById(popupctrlidnew);
        
        clearhidemenu()
        menuobj=ie5? document.all.popitmenuob : document.getElementById("popitmenuob")
        menuobj.innerHTML=ctrldata.innerHTML;
        menuobj.style.width=(typeof optWidth!="undefined")? optWidth : defaultMenuWidth
        menuobj.contentwidth=menuobj.offsetWidth
        menuobj.contentheight=menuobj.offsetHeight
        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

        eventX=eventX-70;

        if (rightedge<menuobj.contentwidth)    
            //move the horizontal position of the menu to the left by it's width
            menuobj.style.left=ie5? iecompattest().scrollLeft+eventX-menuobj.contentwidth+"px" : window.pageXOffset+eventX-menuobj.contentwidth+"px"        
        else
            //position the horizontal position of the menu where the mouse was clicked
            menuobj.style.left=ie5? iecompattest().scrollLeft+eventX+"px" : window.pageXOffset+eventX+"px"    
        
        eventY = eventY + 5;

        //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+eventY+"px" : window.pageYOffset+eventY+"px"
        
        menuobj.style.left = eventX + Math.round(parseInt(optWidth.substring(0, 3)) * (40 / 100)) + "px";
            
        //alert('top: ' + menuobj.style.top + ', left: ' + menuobj.style.left);
        
        menuobj.style.visibility="visible";
        return false;
    }
}

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
*/