
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function mm_swapimgrestore() { //v3.0
  var i,x,a=document.mm_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function mm_preloadimages() { //v3.0
  var d=document; if(d.images){ if(!d.mm_p) d.mm_p=new Array();
    var i,j=d.mm_p.length,a=mm_preloadimages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.mm_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function mm_findobj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=mm_findobj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function mm_swapimage() { //v3.0
  var i,j=0,x,a=mm_swapimage.arguments; document.mm_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=mm_findobj(a[i]))!=null){document.mm_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid Email Address")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid Email Address")
		   document.test.submit.disabled = true
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid Email Address")
			document.test.submit.disabled = true
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid Email Address")
			document.test.submit.disabled = true
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid Email Address")
			document.test.submit.disabled = true
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid Email Address")
			document.test.submit.disabled = true
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid Email Address")
			document.test.submit.disabled = true
		    return false
		 }
		 document.test.submit.disabled = false
 		 return true					
	}

// 5. Show
// This shows a hidden object.

function Show(ob) {
	if (document.getElementById) {
		document.getElementById(ob).style.display = "block"
	} else if (document.all) {
		document.all.ob.style.display = "block"
	} else {
		document.ob.display ="block"
	}
}

// 6. Hide
// This hides an object.

function Hide(ob) {
	if (document.getElementById) {
		document.getElementById(ob).style.display = "none"
	} else if (document.all) {
		document.all.ob.style.display = "none"
	} else {
		document.ob.display = "none"
	}
}

function Check(ob) {
 	if (document.getElementById(ob).style.display == "none")
		Show(ob);
	else {
		Hide(ob);
	}
}
function check(ob) {
 	if (document.getElementById(ob).style.display == "none" || document.getElementById(ob).style.display == "")
		Show(ob);
	else {
		Hide(ob);
	}
}

function checkBoxTotal(frm,fld,maxcount) {
var total = 0;
var max = document.forms[frm].elements[fld].length;
for (var idx = 0; idx < max; idx++) {
if (document.forms[frm].elements[fld][idx].checked) {
    total += 1;
	if(total > maxcount)
	document.forms[frm].elements[fld][idx].checked = false;
   }
}
if(total > maxcount)
	alert("You may only select " + maxcount + " boxes.");
}


// JavaScript Document
/*
startList = function() {
	if (document.all&&document.getElementById) {
		navRoot = document.getElementById("top_nav");
		for (i=0; i<navRoot.childNodes.length; i++) {
			node = navRoot.childNodes[i];
			if (node.nodeName=="LI") {
				node.onmouseover=function() {
					this.className+=" over";
  				}
  				node.onmouseout=function() {
  					this.className=this.className.replace(" over", "");
  				 }
  			 }
 		 }
 	}
}
//UNCOMMENT THE NEXT LINE TO TURN ON DROP_DOWN MENUS
window.onload=startList;
*/
/*sfHover = function() {
	var sfEls = document.getElementById("nav_top").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);
//if(document.all && document.getElementById) window.onload=sfHover;
*/
/*
******************************************************************************
javascript originally fixed by Anatoly.
http://www.htmldog.com/ptg/archives/000050.php#comment124

htmldogs blog distored the code when it was processed as a comment.
javascript cleaned up by simeon.  the attachEvent method was replaced due to
bugs in IE 5.x Mac with window.onload method.  

this has been tested in the following browsers.  
NS 7.x Mac
Safari 1.2.3 
Firefox 1.0 PR Mac
Opera 7.54 Mac
Firefox 1.0 PR Win
Opera 7.54 Win
Netscape 7.2 Win
IE 6.0 Win
IE 5.5 Win
IE 5.01 Win 
******************************************************************************
*/

function menuFix() {
	var sfEls = document.getElementById("nav_top").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
		this.className+=(this.className.length>0? " ": "") + "sfhover";
		}
		// event added to keep menu items from disappearing
		sfEls[i].onMouseDown=function() {
		this.className+=(this.className.length>0? " ": "") + "sfhover";
		}
		// event added to keep menu items from disappearing
		sfEls[i].onMouseUp=function() {
		this.className+=(this.className.length>0? " ": "") + "sfhover";
		}
		sfEls[i].onmouseout=function() {
		this.className=this.className.replace(new RegExp("( ?|^)sfhover\\b"), "");
		}
	}
}
window.onload=menuFix;
