// Check for the completion of form fields
function IsFormComplete(FormName)
{
	var x       = 0
	var FormOk  = true
	
	while ((x < document.forms[FormName].elements.length) && (FormOk))
	   {
		 if (document.forms[FormName].elements[x].value == '')
		 { 
			alert('Enter the '+document.forms[FormName].elements[x].name +' and try again.')
			document.forms[FormName].elements[x].focus()
			FormOk = false 
		 }
		 x ++
	   }
	return FormOk
}

// Validate an email address
function IsEmailValid(formfield)
{
var Temp     = formfield
var AtSym    = Temp.value.indexOf('@')
var Period   = Temp.value.lastIndexOf('.')
var Space    = Temp.value.indexOf(' ')
var Length   = Temp.value.length - 1   // Array is from 0 to length-1

if ((AtSym < 1) ||                     // '@' cannot be in first position
    (Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
    (Period == Length ) ||             // Must be atleast one valid char after '.'
    (Space  != -1))                    // No empty spaces permitted
   {  
      return false;
   }
return true;
}

// Check contact form
function checkContact() {	
	if (document.frmContact.name.value == "") {
		 alert("Enter your name.");
	     document.frmContact.name.focus();
		 return false;
	}
	if (document.frmContact.email.value == "") {
		 alert("Enter your e-mail address.");
	     document.frmContact.email.focus();
		 return false;
	}
	if (document.frmContact.comments.value == "") {
		 alert("Enter your comments.");
	     document.frmContact.comments.focus();
		 return false;
	}
	if (!IsEmailValid(document.frmContact.email)) {
		alert("Enter a valid e-mail address.");
     	document.frmContact.email.focus();
	 	return false;
	}
return true;
}

function validPassword(thepassword) {
	var invalidChars = " \#!$%^&*()+=~`<,>.?/|-_"
	for (i=0; i<invalidChars.length; i++) {
		badChar = invalidChars.charAt(i)
		if (thepassword.indexOf(badChar,0) > -1) {
			return false
		}
	}
	return true
}

// Check username recovery form
function checkUsernameReq() {	
	if (frmUsernameReq.email.value == ""){
		alert("Enter an e-mail address");
		frmUsernameReq.email.focus();
		return false;
	}
	if (!IsEmailValid(document.frmUsernameReq.email)) {
		alert("Enter a valid e-mail address.");
     	document.frmUsernameReq.email.focus();
	 	return false;
	}
}

// Check password recovery form
function checkPasswordReq() {	
	if (frmPasswordReq.username.value == ""){
		alert("Enter a username")
		frmPasswordReq.username.focus();
		return false;
	}
}

// Check login form
function checkLogin() {	
	if (frmLogin.username.value == ""){
		alert("Enter a username")
		frmLogin.username.focus();
		return false;
	}
	if (frmLogin.password.value == ""){
		alert("Enter a password")
		frmLogin.password.focus();
		return false;
	}
}