// Functions added by Adam Senour, March 5, 2006, to replace existing functions for mouseovers.

var loadedImages = null;

function loadImages(){
   var img
   if (document.images){
      if (!loadedImages) loadedImages = new Array()
      for (var i=0; i < arguments.length; i++){
         img = new Image()
         img.src = arguments[i]
         loadedImages[loadedImages.length] = img
      }
   }
}

function flip(imgName, imgSrc){
   if (document.images){
   	  var theImg = document.getElementById(imgName);
      theImg.src = imgSrc;
	  timerID = null;
   }
}

//Fix Netscape resize bug for mouseDown and mouseUp events.
function forceReload() {
      location.reload()
}
function fixNetscape4(){
   NS4 = document.layers
   NSVer = parseFloat(navigator.appVersion)
   if (NSVer >= 5.0 || NSVer < 4.1) NS4 = false

   if (NS4) onresize = forceReload
}
function listflip(elementName, elementSrc) {
if (document.images){
 	  var theImg = document.getElementById(elementName);
      theImg.style.listStyleImage = "url("+elementSrc+")";
	}
}
function loadNewLink(link) {
	window.open(link); 
}

function hideAll(submenu) {
	var divElements = document.getElementsByTagName('div');
	var count = divElements.length;
	for (var i = 0; i < count; i ++) {
		var clsName = divElements[i].className;
		var divId = divElements[i].id;
		if (clsName == 'submenu' && divId != '' && divId != 'undefined' && divId != submenu) {
			document.getElementById(divId).style.display = 'none';
		}
	}
}
function showSubmenu (submenu) {
	clearTimeout(timerID);
	timerID = null;
	hideAll (submenu);
	document.getElementById(submenu).style.display = 'block';
}
function calcDivWidth() {
	var divElements = document.getElementsByTagName('div');
	var count = divElements.length;
	for (var i=0;i<count;i++) {
		var clsName = divElements[i].className;
		var divId = divElements[i].id;
		if (clsName == 'submenu' && divId != '' && divId != 'undefined') {
			var scrWidth = document.getElementById(divId).scrollWidth + 'px';
			if (divElements[i].hasChildNodes) {
				for (var j = 0; j < divElements[i].childNodes.length;j++) {
					divElements[i].childNodes[j].childNodes[0].style.width = scrWidth;
				}
			}
		}
	}
}

/*
   name - name of the cookie
   value - value of the cookie
   [expires] - expiration date of the cookie
     (defaults to end of current session)
   [path] - path for which the cookie is valid
     (defaults to path of calling document)
   [domain] - domain for which the cookie is valid
     (defaults to domain of calling document)
   [secure] - Boolean value indicating if the cookie transmission requires
     a secure transmission
   * an argument defaults when it is assigned null as a placeholder
   * a null placeholder is not required for trailing omitted arguments
*/

function setCookie(name, value, expires, path, domain, secure) {
  var curCookie = name + "=" + escape(value) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");
  document.cookie = curCookie;
}


/*
  name - name of the desired cookie
  return string containing value of specified cookie or null
  if cookie does not exist
*/

function getCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}


/*
   name - name of the cookie
   [path] - path of the cookie (must be same as path used to create cookie)
   [domain] - domain of the cookie (must be same as domain used to
     create cookie)
   path and domain default if assigned null or omitted if no explicit
     argument proceeds
*/

function deleteCookie(name, path, domain) {
  if (getCookie(name)) {
    document.cookie = name + "=" +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

// date - any instance of the Date object
// * hand all instances of the Date object to this function for "repairs"

function fixDate(date) {
  var base = new Date(0);
  var skew = base.getTime();
  if (skew > 0)
    date.setTime(date.getTime() - skew);
}

function togglediv(divID, linkID) {
	var showMenu = getCookie ("showmenu");
	if (!showMenu) {
		showMenu = 0;
	}
	var showMenu2;
	var now = new Date();
	fixDate(now);
	now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
	if (showMenu == 0) {
		document.getElementById(divID).style.display = 'block';
		document.getElementById(linkID).innerHTML = 'Hide Steps';
		showMenu2 = 1;
	} else {
		document.getElementById(divID).style.display = 'none';
		document.getElementById(linkID).innerHTML = 'Show Steps';
		showMenu2 = 0;
	}
	setCookie("showmenu", showMenu2, now);
}
function toggledivload(divID, linkID) {
	var showMenu = getCookie ("showmenu");
	if (!showMenu) {
		showMenu = 0;
	}
	var showMenu2;
	var now = new Date();
	fixDate(now);
	now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
	if (showMenu == 0) {
		document.getElementById(divID).style.display = 'none';
		document.getElementById(linkID).innerHTML = 'Show Steps';
		showMenu2 = 0;
	} else {
		document.getElementById(divID).style.display = 'block';
		document.getElementById(divID).innerHTML = newHTML;
		document.getElementById(linkID).innerHTML = 'Hide Steps';
		showMenu2 = 1;
	}
	setCookie("showmenu", showMenu2, now);
}

function initialize() {
//	var now = new Date();
//	fixDate(now);
//	now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
//	var showMenu = getCookie("showmenu");
//	var showMenu2 = 0;
//	if (showMenu == '' || showMenu == null) {
// 		showMenu = 1; // the value for the new cookie
//		showMenu2 = 1;
//	}
//	if (showMenu == 1) {
//		showMenu2 = 1;
//	}
	newHTML = document.getElementById('steplist').innerHTML;
//	setCookie("showmenu", showMenu2, now);
	toggledivload('steplist', 'togglesteps');
}

function resizeDiv () {
	var contentDiv = document.getElementById("content");
	var topHeight = 140;
	var borderHeight = 65; // height of the content top and bottom border.
	var footerHeight = 30;  // height of the remaining footer.
	var paddingSize = 5;
	var docHeight = document.documentElement.clientHeight;
	if (isNaN (docHeight)) {
		docHeight = window.innerHeight;
	}
	if (isNaN (docHeight)) {
		docHeight = 550;
	}
	var divHeight = eval (docHeight - topHeight - borderHeight * 2 - footerHeight - paddingSize * 4);
	contentDiv.style.height = divHeight + 'px';
}
function loadNewLink(link) {
	window.open(link); 
}
var newHTML;
var timerID = null;