﻿/*
  ######################################################
  # JAVASCRIPT POPUPS ROUTINE VERSION #7 07-Feb-2001   #        
  # Written by Mike McGrath [mike_mcgrath@lineone.net] # 
  # PC-Tested for Netscape 3.04, 4.61, 6.0, & IE5.5    #
  # Note: Popups may not cover all form field inputs.  #
  # PLEASE RETAIN THIS NOTICE WHEN COPYING MY SCRIPT.  #
  # THIS SCRIPT IS COPYRIGHT OF MIKE MCGRATH 1998-2001 #
  ######################################################
*/
var Xoffset= 23;        // modify these values to ...
var Yoffset= 0;      	// change the popup position.
var popwidth=350;       // popup width
var bcolor="black";  // popup border color
var fcolor="black";     // popup font color
var fface="verdana";    // popup font face


// id browsers
var iex=(document.all);
var nav=(document.layers);
var old=(navigator.appName=="Netscape" && !document.layers && !document.getElementById);
var n_6=(window.sidebar);

// assign object
var skin;
if(nav) skin=document.pup;
if(iex) skin=pup.style;
if(n_6) skin=document.getElementById("pup").style;

// park modifier
var yyy=-1000;

// capture pointer
if(nav)document.captureEvents(Event.MOUSEMOVE);
if(n_6) document.addEventListener("mousemove",get_mouse,true);
if(nav||iex)document.onmousemove=get_mouse;

// set dynamic coords
function get_mouse(e)
{
	var x,y;
	
	if (!e) var e = window.event;
	if (e.pageX || e.pageY)
	{
		x = e.pageX;
		y = e.pageY;
	}
	else if (e.clientX || e.clientY)
	{
		x = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
		y = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
	}
	
	if(iex || nav)
	{
		skin.top=y+yyy;
		skin.left=x+Xoffset; 
	}
	
	if(n_6)
	{
		skin.top=(y+yyy)+"px";
		skin.left=x+Xoffset+"px";
	}    
	nudge(x);
}

// avoid edge overflow
function nudge(x)
{
	var extreme,overflow,temp;
	
	// right
	if(iex) extreme=(document.body.clientWidth-popwidth);
	if(n_6 || nav) extreme=(window.innerWidth-popwidth);
	
	if(parseInt(skin.left)>extreme)
	{
		overflow=parseInt(skin.left)-extreme;
		temp=parseInt(skin.left);
		temp-=overflow;
		if(nav || iex) skin.left=temp;
		if(n_6)skin.left=temp+"px";
	}
	
	// left
	if(parseInt(skin.left)<1)
	{
		overflow=parseInt(skin.left)-1;
		temp=parseInt(skin.left);
		temp-=overflow;
		if(nav || iex) skin.left=temp;
		if(n_6)skin.left=temp+"px";
	}
}

// write content & display
function popup(msg)
{
	var bak="red";
	var content='<table width="'+popwidth+'" border="1" bordercolor="'+bcolor+'" cellpadding="10" cellspacing="0" bgcolor="'+bak+'"><td align="left"><font color="'+fcolor+'" face="'+fface+'" size="2">'+msg+'</font></td></table>';
	
	if(old)
	{
		alert(msg);
		return;
	} 
	
	yyy=Yoffset; 
	//skin.width=popwidth;
	
	if(nav)
	{ 
		skin.document.open();
		skin.document.write(content);
		skin.document.close();
		skin.visibility="visible";
	}
	
	if(iex)
	{        
		pup.innerHTML=content;
		skin.visibility="visible";
	}  
	
	if(n_6)
	{   
		document.getElementById("pup").innerHTML=content;
		skin.visibility="visible";
	}
}


// park content box
function kill()
{
	if(!old)
	{
		yyy=-1000;
		skin.visibility="hidden";
		skin.width=0;
		display:"block"
	}
}
