

/***********************************************
* 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
***********************************************/

var defaultMenuWidth="150px" //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="clearhidemenucart();" onMouseout="dynamichidecart(event)"></div>')


function iecompattest(){
return (document.compatMode && document.compatMode.indexOf("CSS")!=-1)? document.documentElement : document.body
}

function showproductmenu(event, menuwidth, imgId, albId, width, height){
	var s = '';
	var zz = 0;
	var products = albProducts[albId].Products;

	for(var i = 0; i < products.length; i++){
		if(products[i]){
			if(width >= products[i].minwidth && height >= products[i].minheight){
				s+= products[i].url;
			}
			else if(width >= products[i].minheight && height >= products[i].minwidth){
				s += products[i].url;
			}else if(!products[i].download){
				s += products[i].url;
			}
		}
	}  
	showmenu(event, s, menuwidth, imgId);
}

function showmenu(e, which, optWidth, imgId){
if (!document.all&&!document.getElementById){
return
}  
clearhidemenucart()
//Swap in dynamic image id
if(imgId){
	which = which.replace(/#addImageId#/g,imgId);
}
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
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"
//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+"px" : window.pageYOffset+eventY+"px"
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 hidemenucart(){
if (window.menuobj)
menuobj.style.visibility="hidden"
}

function dynamichidecart(e){
if (ie5&&!menuobj.contains(e.toElement))
hidemenucart()
else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
hidemenucart()
}

function delayhidemenucart(){
delayhide=setTimeout("hidemenucart()",500)
}

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