function textRequired(theField, fieldName)
{
	if(theField.value.trim() == "")
	{
		theField.focus();
		alert(fieldName + " is required.");
		return false;
	}
	return true;
}

function checkLoginFields(thisForm)
{
	if(!textRequired(thisForm.userid, "User ID"))
		return false;
	if(!textRequired(thisForm.password, "Password"))
		return false;
	return true;
}

function viewDocument(documentid, casenumber)
{
	if(documentid != "" && casenumber != "")
	{
		try
		{
			document.frmIndex.docid.value = documentid;
			document.frmIndex.casenum.value = casenumber;
		}
			catch(err)
		{
			alert(err.description);
		}
		var url = "hpdocumentlist.aspx?docid=" + documentid + "&casenum=" + casenumber;
		return displayHPNewWindow(url);
		return false;
	}
	return false;
}

function displayHPNewWindow(link)
{
	window.open(link, 'HPPDF', 'width=630,height=500,directories=yes,resizable=yes,status=yes,menubar=yes,location=yes,scrollbars=yes');
	return false;
}			

var sPasswordMessage = "Create a Password using any characters except spaces.  It must contain 6 to 12 characters.  The Password is case sensitive.";
var sUserIDMessage = "Create your User ID using only letters and/or numbers.  It must contain 6 to 12 characters.";

function verify12DigitZipCode(theField)
{
	if((theField.value.trim() != "") && ((theField.value.trim().length != 12) && (theField.value.trim().length != 5)))
	{
		alert("Invalid Zip Code.");
		theField.focus();
		return false;
	}
	return true;
}


function checkPhoneNoOptional(theFieldArea, theFieldNumber)
{
	if((theFieldArea.value.trim() != "") || (theFieldNumber.value.trim() != ""))
	{
		if(checkPhoneNo(theFieldArea, theFieldNumber))
			return true;
		return false;
	}
	return true;
}

function deleteUser()
{
	if(confirm("Are you certain you wish to delete this user?"))
	{
		document.Form1.erase.value = "yes";
		document.Form1.submit();
		return true;
	}
	return false;
}

function checkRegistrationFields(newuser)
{
	emptyOK = false;
	if(newuser)
	{
		if(!textRequired(document.Form1.txtUserID, "User ID"))
			return false;
		if(!isAlphanumeric(document.Form1.txtUserID.value, false))
		{
			alert(sUserIDMessage);
			document.Form1.txtUserID.focus();
			return false;
		}
		if((document.Form1.txtUserID.value.length > 12)||
			(document.Form1.txtUserID.value.length < 6))
		{
			alert(sUserIDMessage);
			document.Form1.txtUserID.focus();
			return false;
		}
		if(!textRequired(document.Form1.password, "Password"))
			return false;
		if((document.Form1.password.value.length > 12)||
			(document.Form1.password.value.length < 6))
		{
			alert(sPasswordMessage);
			document.Form1.password.focus();
			return false;
		}
		
		if(hasSpaces(document.Form1.password.value))
		{
			alert(sPasswordMessage);
			document.Form1.password.focus();
			return false;
		}
		if(document.Form1.password.value.toLowerCase().trim() == document.Form1.txtUserID.value.toLowerCase().trim())
		{
			alert("User ID and Password must be different.");
			document.Form1.password.focus();
			return false;
		}
		if(document.Form1.password.value != document.Form1.confirmpass.value)
		{
			alert("Confirm Password must match Password.");
			document.Form1.password.focus();
			return false;
		}
	}
		
	if(!(
		textRequired(document.Form1.txtFirstName, "First Name") &&
		textRequired(document.Form1.txtLastName, "Last Name") &&
		textRequired(document.Form1.txtOrganization, "Organization") &&
		verify12DigitZipCode(document.Form1.txtZipCode) &&
		textRequired(document.Form1.txtAreaCode, "Area Code") &&
		textRequired(document.Form1.txtPhoneNumber, "Phone Number") &&
		checkPhoneNo(document.Form1.txtAreaCode, document.Form1.txtPhoneNumber) &&
		checkPhoneNoOptional(document.Form1.txtMobileAreaCode, document.Form1.txtMobilePhoneNumber) &&
		checkPhoneNoOptional(document.Form1.txtPagerAreaCode, document.Form1.txtPagerPhoneNumber) &&
		textRequired(document.Form1.txtEmail, "Email")
		))
		
	{
		return false;
	}


	if(!checkEmail(document.Form1.txtEmail))
	{
		return false;
	}

	document.Form1.submit();
	return true;
}

function checkEmail(theField)
{
	var x = theField.value.trim();
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(x)) 
		return true;
	else 
	{
		alert("Invalid email address");
		return false;
	}
}

function checkPhoneNo(theFieldArea, theFieldNumber)
{
	if(theFieldArea.value.trim().length != 3)
	{
		alert("Area Code must be 3 digits long.");
		theFieldArea.focus();
		return false;
	}
	if(!isNumeric(theFieldArea.value.trim()))
	{
		alert("Area Code must be numeric.");
		theFieldArea.focus();
		return false;
	}
	if(theFieldNumber.value.trim().length != 7)
	{
		alert("Phone Number must be 7 digits long.");
		theFieldNumber.focus();
		return false;
	}
	if(!isNumeric(theFieldNumber.value.trim()))
	{
		alert("Phone Number must be numeric.");
		theFieldNumber.focus();
		return false;
	}
	return true;
}

function hasSpaces(string)
{	
	if(string.indexOf(" ") != -1) 
	{
		return true;
	}
	return false;
}
