<!--//

var n;
var p;
var p1;
function ValidatePhone(){
	p=p1.value;
	if(p.length==3){
        pp=p;
        d4=p.indexOf('(')
        d5=p.indexOf(')')
        if(d4==-1){
          pp="("+pp;
        }
        if(d5==-1){
          pp=pp+")";
        }
        p1.value="";
        p1.value=pp;
	}   

	if(p.length>3){
        d1=p.indexOf('(')
        d2=p.indexOf(')')
	    if (d2==-1){
          l30=p.length;
          p30=p.substring(0,4);
          p30=p30+")"
          p31=p.substring(4,l30);
          pp=p30+p31;
          p1.value="";
          p1.value=pp;
        }
    }
       
	if(p.length>5){
		p11=p.substring(d1+1,d2);
        if(p11.length>3){
          p12=p11;
          l12=p12.length;
          l15=p.length;
          p13=p11.substring(0,3);
          p14=p11.substring(3,l12);
          p15=p.substring(d2+1,l15);
          p1.value="";
	      pp="("+p13+")"+p14+p15;
          p1.value=pp;
        }
        
        l16=p.length;
        p16=p.substring(d2+1,l16);
        l17=p16.length;
        if(l17>3&&p16.indexOf('-')==-1){
			p17=p.substring(d2+1,d2+4);
            p18=p.substring(d2+4,l16);
            p19=p.substring(0,d2+1);
            pp=p19+p17+"-"+p18;
		    p1.value="";
            p1.value=pp;
        }
	}

	setTimeout(ValidatePhone,100)
}

function getIt(m){
	n=m.name;
	p1=m
	ValidatePhone()
}




function FormatDate(objInput) {

	var objDateRegExp = /^[0-1]?\d\/[0-3]?\d\/(\d{2}|\d{4})$/;
	var strValue = objInput.value.replace(/ /g, '');
	var arrDate;
	var intMonth;
	var intDay;
	var intYear;
	var blnError = false;

	// Test formatting of value
	if (objDateRegExp.test(strValue)) {
		arrDate = strValue.split('/');
		intMonth = Number(arrDate[0]);
		intDay = Number(arrDate[1]);
		intYear = Number(arrDate[2]);

		// If using a two digit year, correct year value by assuming anything >= 70 is 1900, otherwise assume 2000
		if (intYear < 100) {
			if (intYear >= 70) {
				intYear = 1900 + intYear;
			}
			else {
				intYear = 2000 + intYear;
			}
		}

		// Validate day, month, and year
		if ((intMonth > 0) && (intMonth <= 12)) {

				switch (intMonth){

					// Jan, Mar, May, Jul, Aug, Oct, and Dec have 31 days max.
					case 1: case 3: case 5: case 7: case 8: case 10: case 12:	
						if ((intDay > 31) || (intDay < 1)) {
							blnError = true;
						}		
						break;
					
					// Feb can have 29 days if it is a leap year, otherwise 28 days max.
					case 2 :
						if ((intDay > 29) || (intDay < 1)) {
							blnError = true;
						}
						else if (intDay == 29) {
							if ((intYear % 4) == 0) {
								if (((intYear % 100) == 0) && ((intYear % 400) != 0)) {
									blnError = true;
								}
							}
							else {
								blnError = true;
							}
						}
						break;
						
					// Apr, Jun, Sep, and Nov have 30 days max.
					default :
						if (isNaN(intDay) || (intDay > 30) || (intDay < 1)) {
							blnError = true;
						}
				}	
		}
		else {
			blnError = true;
		}		
	}
	else {
		blnError = true;
	}

	// If value is the default (without spaces) or blank, set form input to blank
	if ((strValue == '//') || (strValue == '')) {
		objInput.value = '';
		return true;
	}
	// Else if invalid value, prompt to re-enter
	else if (blnError) {
		alert('Invalid date, please re-enter');
		objInput.focus();
		objInput.select();
		return false;
	}
	// Else valid value, re-format nicely
	else {
		strValue = (intMonth < 10 ? '0' : '') + String(intMonth) + '/' 
					+ (intDay < 10 ? '0' : '') + String(intDay) + '/' + String(intYear);
		objInput.value = strValue;
		return true;
	}

}


function FormatPhone(objInput) {

	var objPhoneRegExp = /^((\(\d{3}\))|\d{3})[\-| ]?\d{3}[\-| ]?\d{4}$/;
	var strValue = objInput.value.replace(/ /g, '');

	// Test format of value
	if (!objPhoneRegExp.test(strValue)) {

		// If value is the default (without spaces) or blank, set form input to blank
		if ((strValue == '()-') || (strValue == '')) {
			objInput.value = '';
			return true;
		}
		// Else invalid value, prompt to re-enter
		else {
			alert('Invalid phone number, please re-enter');
			objInput.focus();
			objInput.select();
			return false;
		}
	}
	// Else valid value, reformat nicely
	else {
		strValue = strValue.replace(/[\(|\)|\-| ]/g, '');
		objInput.value = '(' + String(strValue.substring(0,3)) + ')' + 
							String(strValue.substring(3,6)) + '-' + String(strValue.substring(6));
		return true;
	}
}



function FormatMoney(objInput) {

	var objMoneyRegExp = /^\$?((([1-9]\d{0,2}(\,\d{3})*)|([1-9]\d*))|[0])?(\.\d{2})?$/;
	var strValue = objInput.value.replace(/ /g, '');
	var strError;
	var blnError = false;

	// Test format of value
	if (objMoneyRegExp.test(strValue)) {

		strValue = strValue.replace(/\$|\,/g, '');

		// SQL Server max is $922,337,203,685,477.5807
		// For some reason Javascript rounds the .58 to .6, so to be safe
		// don't allow anything higher than $922,337,203,685,477
		if (parseFloat(strValue) > 922337203685477) {
			blnError = true;
			strError = "The maximum value for this field is $922,337,203,685,477.00. Please re-enter";
		}		

	}
	else {
		blnError = true;
		strError = 'Invalid amount, please re-enter';
	}

	// If value is the default (without spaces) or blank, set form input to blank
	if ((strValue == '$') || (strValue == '')) {
		objInput.value = '';
		return true;
	}
	// Else invalid value, prompt to re-enter
	else if (blnError) {
		alert(strError);
		objInput.focus();
		objInput.select();
		return false;
	}
	// Else valid value, reformat nicely
	else {
		if (strValue.indexOf('.') == -1) {
			strValue += '.00';
		}
		for (var i = strValue.indexOf('.') - 3; i > 0; i = strValue.indexOf(',') - 3) {
			strValue = strValue.substring(0, i) + ',' + strValue.substring(i);
		}
		objInput.value = '$' + (strValue.charAt(0) == '.' ? '0' : '') + String(strValue);
		return true;
	}
}

// Sets the default value of a field if it is not already populated
function SetValue(objInput, strDefaultValue) {
	if (objInput.value.replace(/ /g, '') == '') {
		objInput.value = strDefaultValue;
		objInput.focus();
		objInput.select();
	}
}
function OpenCenteredWindow(Address) {
		XPosition = ((screen.width / 2) - 250);
		if(screen.width >= 1024){
			window.open(Address,'New','menubar=no,toolbar=no,scrollbars=yes,location=no,resizable=yes,height=500,width=500,left=' + XPosition + ',top=100','False');
		}
		else {
			window.open(Address,'New','menubar=no,toolbar=no,scrollbars=yes,location=no,resizable=yes,height=450,width=500,left=' + XPosition + ',top=100','False');
		}
}

//-->