<!-- Hide from old browsers


// converts an alphabetical character to number as per the buttons on the phone dial
function charToNum(chara)
{
	tempChar = chara.toUpperCase();
	tc = chara;
	var phoneButtons = new Array("ABC", "DEF", "GHI", "JKL", "MNO", "PQRS", "TUV", "WXYZ");
	var phoneButtonsNumbers = new Array("2", "3", "4", "5", "6", "7", "8", "9");
	for (var i=0;i<phoneButtons.length;i++) {
		phoneString = phoneButtons[i];
		if (phoneString.indexOf(tempChar) != -1) {
			tc = phoneButtonsNumbers[i];
			break;
		}
	}
	return tc;
}

function strToPhoneNumber(str)
{
	var tempString = "";
	for (var i=0;i<str.length;i++) {
		tempChar = str.charAt(i);
		tempString = tempString + charToNum(tempChar);
	}
 	var tempString2 = parseString(tempString, digitSet, 0)
	if (tempString.length != tempString2.length)
		tempString2 = "";
	return tempString2;
}


// just removes " " from the beginning and end of string
function trim(tempString1)
{
	tempString1 += "";
	while (((index = tempString1.indexOf(" ")) == 0 || (index = tempString1.lastIndexOf(" ")) == (tempString1.length-1)) && tempString1 != "") 
	{
		tempString1 = tempString1.substring(0,index) + tempString1.substring(index+1,tempString1.length);
	}
	return tempString1; 
}

// if parseValue is 0 means keep the value, >1 means to remove the value
function parseString(parseString,parseSet,parseValue)
{
	var returnString = new String("");
	var tempChar = '';
	if (parseSet == null) return parseString;
	if (parseValue == null) parseValue = 0;
		
	for (z=0;z<parseString.length;z++)
	{
		tempChar = parseString.charAt(z);
		if (parseValue>0)
		{ if (parseSet.indexOf(tempChar) == -1) { returnString += tempChar; } }
		else
		{ if (parseSet.indexOf(tempChar) != -1) { returnString += tempChar; } }
	}
	return returnString;
}

function lowercase(theString)
{
	theString = theString.toLowerCase();
	theString = theString.substring(0,1).toUpperCase() + theString.substring(1);
	return theString;
}

function stringTokenizer(text, tokens)
{
// This is a string tokenizer similar to StringTokenizer class in Java
	var a = new Array();
	var x = 0;
	var pos = 0;
	
	for (i=0; i<text.length; i++) {
		for (ii=0; ii<tokens.length; ii++) {
			if (text.charAt(i) == tokens.charAt(ii)) {
				if (pos != i) {
					a[x] = text.substring(pos,i);
					x++;
				}
				pos = i+1;
			}
		}
	}
	a[x] = text.substring(pos,i);
	
	return a;
}


function splitOnCapital(theString)
{
	var returnString = "";

	for (var i=0; i<theString.length; ++i) {
		if (alphaCapSet.indexOf(theString.charAt(i)) != -1) {
			returnString += " ";
		}
		returnString += theString.charAt(i);
	}
	return returnString;
}

function focusObject(object)
{
/* Inactive function till error checking code for visibility of the object is coded
	object.focus();
	if (object.value != "") {
		object.select();
	}
*/
}

function checkSSN(object, noCheck)
{
	if (arguments.length == 1) {
		checkForEmptyField(object);
	}
	if (object.value == "" || !GOOD)
		return;

	tempString = trim(object.value);
	tempString = parseString(object.value,digitSet,0);
	if (tempString.length!=9)
	{
		error = object.value+" is not a valid social security number.";
		focusObject(object);
		GOOD = false;
	}
	else {
		object.value = tempString.substring(0,3) + "" + tempString.substring(3,5)+""+tempString.substring(5,9);
	}
}

function checkPhone(object, noCheck)
{
	if (arguments.length == 1) {
		checkForEmptyField(object);
	}
	if (object.value == "" || !GOOD)
		return;

	tempString = trim(object.value);
	tempString = parseString(object.value,digitSet,0);
	if (tempString.length!=10)
	{
		error = object.value+" is not a valid phone number.";
		focusObject(object);
		GOOD = false;
	}
	else {
		object.value = ""+tempString.substring(0,3) + "" + tempString.substring(3,6)+""+tempString.substring(6,10);
	}
}

function checkEmail(object, noCheck)
{
	if (arguments.length == 1) {
		checkForEmptyField(object);
	}
	if (object.value == "" || !GOOD)
		return;

	tempString = trim(object.value);
	if (tempString.length<6 || tempString.indexOf("@")==-1 || tempString.indexOf(".")==-1)
	{
		error = object.value+" is not a valid e-mail address.";
		focusObject(object);
		GOOD = false;
	}
	else {
		object.value = tempString;
	}
}

function checkZip(object, noCheck)
{
	if (arguments.length == 1) {
		checkForEmptyField(object);
	}
	if (object.value == "" || !GOOD)
		return;

	tempString = trim(object.value);
	tempString = parseString(tempString,digitSet,0);
	if (tempString.length!=9 && tempString.length!=5)
	{
		error = object.value+" is not a valid ZIP code.";
		focusObject(object);
		GOOD = false;
	}
	else {
		object.value = tempString;
	}
}

function checkAccountNumber(object, pattern)
{
	if (!object || !pattern) {
		error = "No pattern or object specified for account check.";
		GOOD = false;
		return;
	}
	
 	var accnt = parseString(object.value, digitSet, 0);
 
 	// check if length of 10
	if (accnt.length!=(pattern.length+1)) {
		error = "Account number must be exactly "+(pattern.length+1)+" digits long.";
		GOOD = false;
		return;
	}

	// do the math....
	
	var total = 0;
	for (var i=0;i<pattern.length;i++) {
		var x = accnt.charAt(i);
		var y = pattern.charAt(i);
		total += x * y;
	}
	
	// check the last digit
	
	var checkLastDigit = accnt.charAt(pattern.length);
	if (checkLastDigit == (total%(pattern.length+1))) {
		object.value = parseString(object.value,digitSet+"-",0);
	}
	else {
		error = "Invalid Account Number.";
		GOOD = false;
	}	
}

// This function was modified v/s the function in /include/javascript_functions.html
function checkAccountNumber(object)
{
 	var accnt = parseString(object.value, digitSet+"-", 0);
 
	// check if length of 10
	if ((accnt.length != 11) && (accnt.length != 10)) {

		error = "Account number must have 99999-99999 or 9999999999 format.";
		GOOD = false;
		return;
	}

	if (accnt.length == 11) {
		if (accnt.indexOf('-') != 5) {
			error = "Account number must have 99999-99999 or 9999999999 format.";
			GOOD = false;
			return;
		}
		else {
			accnt = accnt.substring(0,5)+accnt.substring(6);
			object.value = accnt;
		}
	}

	// do the math....
	
	var pattern = '371937937';
	var total = 0;
	for (var i=0;i<pattern.length;i++) {
		var x = accnt.charAt(i);
		var y = pattern.charAt(i);
		total += x * y;
	}
	
	// check the last digit
	
	var checkLastDigit = accnt.charAt(pattern.length);
	if (checkLastDigit == (total%(pattern.length+1))) {
		object.value = parseString(object.value,digitSet+"-",0);
	}
	else {
		error = "Invalid Account Number.";
		GOOD = false;
	}	
}

function checkDate(object, noCheck)
{
	if (arguments.length == 1) {
		checkForEmptyField(object);
	}
	if (object.value == "" || !GOOD)
		return;

	tempString = trim(object.value);
	tempString = parseString(tempString,digitSet+"./-",0);
	a = new Array();
	a = stringTokenizer(tempString,"./-");

	if (a.length!=3 || (a[2].length != 2 && a[2].length != 4) || (a[1].length != 1 && a[1].length != 2) || (a[0].length != 1 && a[0].length != 2))
	{
		error = object.value+" is not a valid date string. Format must be in \"mm/dd/yyyy\".\n";
		focusObject(object);
		GOOD = false;
	}
	else if (a[0] > 12 || a[1] >31) {
		error = object.value+" is not a valid date string. Format must be in \"mm/dd/yyyy\".\n";
		focusObject(object);
		GOOD = false;
	}
	else {
		object.value = a.join("/");
	}
}

// -->
