/*
'Author					: Stefan Kruger
'Date Created			: 30-Mar-2006
'Last Changed by		: Stefan Kruger
'Date Changed			: 03-Apr-2006
'Version				: 1.0.03042006
'Comments/Changes:
'Date:			Person:					Desc:
'------------------------------------------------------------------------------------------------------
'30-Mar-2006	Stefan Kruger			Created file

'ToDo List:
'Date:			Person:					Desc:
'------------------------------------------------------------------------------------------------------
*/
var menuDelay = 20;
var menuSpeed = 5;
var menuOffset = 0;
var menuWidth = 0;
var menuHeight = 0;
var menuWidthMultiplier = 5.9;
var menuHeightMultiplier = 20;
var menuWidthMin = 100;
var menuHeightMin = 40;
var menuWidthCompensator = 0;
var html = "";
var previoustag = null,menuTimer = null,menuXPos = 0,menuYPos = 0,menuXIncrement = 0,menuYIncrement = 0,iHeight = 0,iWidth = 0;

function createPopUpMenu(content,itemwidth,itemcount,isModal,sliding,evt){
	
	// Added to get the scroll offset
	var scrollproperty = getScrollXY();
	
	var pathchange = "";
	if (isModal) {
		pathchange = modalpathchange;
	}
	
	menuWidth = Math.ceil(menuWidthMultiplier * itemwidth);
	if (menuWidth < menuWidthMin) {
		menuWidth = menuWidthMin;
	}
	//Spacing compensator
	menuWidth += menuWidthCompensator;
	menuHeight = Math.ceil(menuHeightMultiplier * (itemcount + 1)); //Extra 1 for cancel button
	if (menuHeight < menuHeightMin) {
		menuHeight = menuHeightMin;
	}
	
	// Added the scroll x and y properties to get an accurate location
    menuXPos = (evt.clientX + scrollproperty[0]) + menuOffset;
    menuYPos = (evt.clientY + scrollproperty[1]) + menuOffset;
    menuXIncrement = menuWidth / menuSpeed;
    menuYIncrement = menuHeight / menuSpeed;
	//Content sample
	//<tr><td valign=\"top\"><img src=\"images/right_click_arrow.gif\"></td><td><a href=\"javascript:void(0)\" onclick=\"clearPopUpMenu()\" class=\"right_click_text right_click_hover\">cancel</a></td></tr><tr><td colspan=\"2\"><img src=\"images/right_click_line.gif\"></td></tr>
	//html = "<div onclick=\"clearPopUpMenu(this,event)\" class=\"century_21_out\"><div class=\"century_21_in century_21_ltin century_21_tpin\">" + content + "<div class=\"century_21_right_click_height\"><div class=\"float_left\"><img src=\"images/kumon_form_arrow_1.gif\"></div><div class=\"float_left\"><a href=\"javascript:void(0)\" onclick=\"clearPopUpMenu()\" class=\"century_21_right_click\">Cancel</a></div><div class=\"theplug\"><!--IE FIX--></div></div></div></div>"
	html = "<div onclick=\"clearPopUpMenu(this,event)\" style=\"margin-left: 20px;\"><div style=\"width: 200px;\"><div class=\"out right_click_container\"><div class=\"in ltin tpin\"><table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td class=\"right_click_container_2\">" + content + "<a href=\"javascript:void(0)\" onclick=\"clearPopUpMenu();\" class=\"right_click_text\">Cancel</a></td></tr></table></div></div></div></div>"

	//Old style
    //html = "<div onclick=\"clearPopUpMenu(this,event)\" class=\"out right_click_container\"><div class=\"in ltin tpin\"><table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">" + content + "<tr><td valign=\"top\"><img src=\"" + pathchange + "images/right_click_arrow.gif\"></td><td><span onclick=\"clearPopUpMenu()\" class=\"right_click_text right_click_hover\" style=\"cursor:pointer;\">Cancel</span></td></tr><tr><td colspan=\"2\"><img src=\"" + pathchange + "images/right_click_line.gif\"></td></tr></table></div></div>"
    if (sliding) {
        menuTimer = setTimeout('openPopUpMenu(0,0)',menuDelay);
    }
    else {
        showPopUpMenu(menuXPos,menuYPos,menuWidth,menuHeight,document.body);
    }
    cancelEvent(evt);
}

function openPopUpMenu(height,width){
    iHeight = height;
    iWidth = width;
    showPopUpMenu(menuXPos,menuYPos,iWidth,iHeight,document.body);
    if (iHeight < menuHeight) menuTimer = setTimeout('openPopUpMenu(iHeight + menuYIncrement, iWidth + menuXIncrement)', 1);
    else clearTimeout(menuTimer);
}

function showPopUpMenu(left,top,width,height,parent){
    var divtag = null;
    if (!(previoustag)) {
        divtag = document.createElement("div");
        divtag.id = "popupdiv";
    }
    else {
        divtag = previoustag;
    }
    //Compensate for scrolling of the page
    top += document.body.scrollTop;
    left += document.body.scrollLeft;
    //Set position and display values
    divtag.style.display = 'block';
    divtag.style.left = left + 'px'; // FF/Chrome/Safari Fix
    divtag.style.top = top + 'px'; // FF/Chrome/Safari Fix
    /*divtag.style.width = width;
    divtag.style.height = height;*/
    divtag.innerHTML = html;
    if (!(previoustag)) {
        previoustag = divtag;
        parent.appendChild(divtag);
    }
    return false;
}

function clearPopUpMenu(obj,evt){
	if (previoustag) {
		previoustag.style.display = "none";
	}
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}