// Support Script (770)
function Validate(stopOnFailure)
{
	var ErrorMsg = "";
	var i
	var msg
	var tofocus = true;
	var ErrorMsg = "";
	
	// Go through the Validate Array that may or may not exist
	// and call the Validate function for all elements that have one.
	if (document.ValidateArray)
	{
		for (i = 0; i < document.ValidateArray.length; i ++)
		{
			msg = eval( document.ValidateArray[i] + ".Validate()")
			if (msg != "")
			{
				ErrorMsg += "\n\n" + document.ValidateArray[i] + ":  " + msg;
				if (tofocus) 
				{
					eval(document.ValidateArray[i] + ".focus()")
					tofocus = false;
				}
				
				if (stopOnFailure == "1") return ErrorMsg;
			}
  	}
  }
	return ErrorMsg;
}

// Support Script (776)
function AddToValidateArray(strElementName)
{
    var strName = strElementName

    if (!document.ValidateArray) 
    {
        document.ValidateArray = new Array
    }

    document.ValidateArray[document.ValidateArray.length] = strName
}

// Support Script (800)
function StripChars(theFilter,theString)
{
	var strOut,i,curChar

	strOut = ""
	for (i=0;i < theString.length; i++)
	{		
		curChar = theString.charAt(i)
		if (theFilter.indexOf(curChar) < 0)	// if it's not in the filter, send it thru
			strOut += curChar		
	}	
	return strOut
}

function AllInRange(x,y,theString)
{
	var i, curChar
	
	for (i=0; i < theString.length; i++)
	{
		curChar = theString.charAt(i)
		if (curChar < x || curChar > y) //the char is not in range
			return false
	}
	return true
}


function reformat (s)
{
    var arg;
    var sPos = 0;
    var resultString = "";

    for (var i = 1; i < reformat.arguments.length; i++) {
       arg = reformat.arguments[i];
       if (i % 2 == 1) 
           resultString += arg;
       else 
       {
           resultString += s.substring(sPos, sPos + arg);
           sPos += arg;
       }
    }
    return resultString;
}

function Trim(theString)
{
 var i,firstNonWhite

 if (StripChars(" \n\r\t",theString).length == 0 ) return ""

	i = -1
	while (1)
	{
		i++
		if (theString.charAt(i) != " ")
			break	
	}
	firstNonWhite = i
	//Count the spaces at the end
	i = theString.length
	while (1)
	{
		i--
		if (theString.charAt(i) != " ")
			break	
	}	

	return theString.substring(firstNonWhite,i + 1)

}
// Support Script (778)
function ValidateTargetEqualsSource()
{
	var msg = ""
	var sourceText = this.getText()
	var targetText = this.Target.getText()
	var msgInvalid = "Password and Confirmation must match"
	
	var theLen = StripChars(" \n\t\r", sourceText).length
	if (theLen == 0)
	{	
		if (!this.Required) return ""		
		else return "Required field.  " + msgInvalid
	}
	
	if (sourceText != targetText)
	{
		msg = msgInvalid
	}
	
	return msg	
}
// Support Script (649)
function ValidateNumChars()
{	
	var theString = this.getText()
	var MinLength = this.MinLength
	var MaxLength = this.MaxLength
	var msgInvalid = ""

	if (StripChars(" \n\t\r",this.ErrorMsg).length == 0)
	{
				
		if (MinLength == 1 && MaxLength == 1)		
			msgInvalid = "Please enter a value one character long."		
		else if (MinLength > 1 && MaxLength == MinLength)		
			msgInvalid = "Please enter a value " + MinLength + " characters long."				
		else if (MinLength > 0 && MaxLength > 0)		
			msgInvalid = "Please enter a value between\n" + MinLength + " and " + MaxLength + " characters long."		
		else if (MinLength == 1)		
			msgInvalid = "Please enter a value at least one character long."
		else if (MinLength > 1)
			msgInvalid = "Please enter a value at least " + MinLength + " characters long."
		else if (MaxLength == 1)		
			msgInvalid = "Please enter a value no more than one character long."
		else if (MaxLength > 1)
			msgInvalid = "Please enter a value no more than " + MaxLength + " characters long."		
 	else
	 	msgInvalid = this.ErrorMsg	

	}
	else
		msgInvalid = this.ErrorMsg	


	if (StripChars(" \n\r",theString).length == 0)	
		if (!this.Required) return ""		
		else return "Required field.  " + msgInvalid

	theString = Trim(theString)

	if (this.StripSpaces)
		theString = StripChars(" \n\r",theString)

	if (MinLength > 0 && theString.length < MinLength)
		return msgInvalid

	if (MaxLength > 0 && theString.length > MaxLength)
		return msgInvalid

	// we passed the tests
	this.setText(theString)

	return ""
}
function document_onLoad() {
Edit_Username.ErrorMsg = "Please enter a Username of 3-35 characters.";
Edit_Username.MaxLength = Number("35");
Edit_Username.MinLength = Number("3");
Edit_Username.StripSpaces = Number("1");
Edit_Username.Required = Number("1");
Edit_Username.Validate = ValidateNumChars;
AddToValidateArray("Edit_Username")
Edit_Password.ErrorMsg = "Please enter a password of 3-15 characters.";
Edit_Password.MaxLength = Number("15");
Edit_Password.MinLength = Number("3");
Edit_Password.StripSpaces = Number("0");
Edit_Password.Required = Number("1");
Edit_Password.Validate = ValidateNumChars;
AddToValidateArray("Edit_Password")
Edit_verify.Validate = ValidateTargetEqualsSource
Edit_verify.Target = Edit_Password
Edit_verify.Required = Number("1")
AddToValidateArray("Edit_verify")
 }
function NewForm_onSubmit() {
errorMsg = Validate("0"); // don't stop on first error

if (errorMsg != "")
    alert("The form could not be submitted:" + errorMsg);

return (errorMsg == ""); // false prevents form submission
 }
function _NewForm_onSubmit() { if (NewForm) return NewForm.onSubmit(); }

