/*
    Suckerfish dropdowns
*/
sfHover = function() {
	var sfEls = document.getElementById("mainnav").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);


/*
    Change images on rollover
*/
function changeImages() {
  if (document.images) {
    for (var i=0; i<changeImages.arguments.length; i+=2) {
      document.images[changeImages.arguments[i]].src = eval(changeImages.arguments[i+1] + ".src");
    }
  }
}


/*
    Empty form fields
*/
function clearText(objField){
	if (objField.defaultValue==objField.value)
	objField.value = ""
}

function wopen(url, name, w, h)
{
w += 32;
h += 96;
 var win = window.open(url,
  name,
  'width=' + w + ', height=' + h + ', ' +
  'location=no, menubar=no, ' +
  'status=no, toolbar=no, scrollbars=no, resizable=no');
 win.resizeTo(w, h);
 win.focus();
}


/*
    Written by Jonathan Snook, http://www.snook.ca/jonathan
    Add-ons by Robert Nyman, http://www.robertnyman.com
*/

function getElementsByClassName(oElm, strTagName, strClassName){
    var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, "\\-");
    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
    var oElement;
    for(var i=0; i<arrElements.length; i++){
        oElement = arrElements[i];      
        if(oRegExp.test(oElement.className)){
            arrReturnElements.push(oElement);
        }   
    }
    return (arrReturnElements)
}

function validate(theForm)
	{
	
	var returnFlag = true;
	var frmLength;
	var firstBlank;
	var strEmailAddress;
	var strMessage;
	
	var arrReqFields = getElementsByClassName(document.getElementById(theForm.id), "*", "required");
	
	strMessage = "Please complete all required fields."
	firstBlank = -1;
	
	// loop through fields to clear out default values
	frmLength = arrReqFields.length;
	
	for (i=0; i<frmLength;i++){ 
		if(arrReqFields[i].value == "")
		{
			
			arrReqFields[i].className = "required warning";
			returnFlag = false;
			if(firstBlank == -1) {
				firstBlank = i
			}
		}
		else if(arrReqFields[i].name == "email") {
			strEmailAddress = arrReqFields[i].value;
			intAtPosition = strEmailAddress.indexOf("@");
			intLastDotPosition = strEmailAddress.lastIndexOf(".");
			if((strEmailAddress=="") || (intAtPosition == 0) || (intAtPosition == 1) || (intLastDotPosition == -1) || (intAtPosition > intLastDotPosition) || (intLastDotPosition+1 == strEmailAddress.length)){
				arrReqFields[i].className = "required warning";
				returnFlag = false;
				if(firstBlank == -1) {
					firstBlank = i;
					strMessage = "Please enter a valid email address";
					
				}
			}
		}
		else {
			arrReqFields[i].className = "required";
		}
	}
	
	var arrReqChecks = getElementsByClassName(document.getElementById(theForm.id), "*", "reqcheck");
	
	// loop through fields to clear out default values
	frmLength = arrReqChecks.length;
	
	if(returnFlag == true)
	{ 
		for (i=0; i<frmLength;i++)
			{
				if(arrReqChecks[i].checked == false)
				{
					returnFlag = false;
					strMessage = "You must check the checkbox to continue.";
					firstBlank = 1;
				}
			}
	}
	
	if(document.getElementById('sigcheck'))
		{
			if(returnFlag == true)
			{
				if(document.getElementById('sigcheck').checked == false)
				{
					returnFlag = false;
					strMessage = "You must check the checkbox to continue.";
					firstBlank = 1;
				}
			}
		}
		
	if(returnFlag == false)
		{
			alert(strMessage);
			arrReqFields[firstBlank].focus()
		}
		
	return returnFlag;
	}