var XMLHttpRequestObject = false; 
//check browser
if (window.XMLHttpRequest) {
	XMLHttpRequestObject = new XMLHttpRequest();
} else if (window.ActiveXObject) {
	XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}
function checkusername(unamefld){
	var utargetdiv = document.getElementById("usernamestatus");
	 if (unamefld.value==''){
		utargetdiv.innerHTML = "<div>&nbsp;</div>";
	}else if (unamefld.value.length<6){  
		utargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Your username is too short.</div>";
		unamefld.className = "invalidfld";
	}else{
		/*check username uniqueness */
     	if (unamefld.value) {
			if(XMLHttpRequestObject) {
				XMLHttpRequestObject.open("GET", "/gc/reg.nsf/ruajax?openagent&uname=" + unamefld.value); 
          		XMLHttpRequestObject.onreadystatechange = function() { 
          			if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) { 
                			if(XMLHttpRequestObject.responseText.substr(0,4) == "Nope"){
            					utargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;" + unamefld.value + " is not available" + "</div>";
            					unamefld.className = "invalidfld";
                			}else{
            					utargetdiv.innerHTML = "<div class='validtext'><img border='0' src='/icons/vwicn082.gif'>&nbsp;" + unamefld.value + " is available" + "</div>";
            					unamefld.className = "validfld";
                			}
					} 
				} 
     			XMLHttpRequestObject.send(null); 
			}
		} 	
	}
}
function checkusernamelength(){
	var utargetdiv = document.getElementById("usernamestatus");
	unamefld = document.forms[0].Username ;
	if (unamefld.value.length<6){  
		utargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Your username is too short.</div>";
		unamefld.className = "invalidfld";
	}else if (unamefld.value.length>20){  
		utargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Your username is too long.</div>";
		unamefld.className = "invalidfld";
	}
}
/* ------------------------------------------------------------------------------------- */
function checkpasswords(pwfld){
	var pfld1 = document.forms[0].Password;
	var pfld2 = document.forms[0].PasswordConfirm;
	var ptargetdiv = document.getElementById("passwordstatus");
	ptargetdiv.innerHTML = "<div></div>";
	
	if (pfld1.value=="") {
		//check if 1st is blank ("")
		ptargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;The password field is blank.</div>";	
		pfld1.className = "invalidfld";
		pfld2.className = "fldtext";
	} else if (pfld1.value=="" && pfld2.value=="") {
		//check if both are blank ("" & "")
		ptargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Both passwords fields are blank.</div>";	
		pfld1.className = "invalidfld";
		pfld2.className = "invalidfld";
	} else if (pfld1.value.length<6) {
		//check if 1st has at least 6 characters  (pw<6)
		ptargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Your password is too short.</div>";	
		pfld1.className = "invalidfld";
		pfld1.focus();
	} else if (!(pfld1.value.match(/(\d.*\D)|(\D.*\d)/))) {
		//check if 1st has at least one letter and one number (pw has A-Z and 0-9)
		ptargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Passwords must contain letters and numbers</div>";	
		pfld1.className = "invalidfld";
		pfld1.focus();
	} else if (pwfld=='Password' && (pfld1.value!='' && pfld2.value=='')) {
		//if  (pwfld=='Password' and (pw!='' and pwc='')) 1st is valid, going to 2nd +++++
		ptargetdiv.innerHTML = "<div></div>";	
		pfld1.className = "validfld";
	} else if (pwfld=='PasswordConfirm' && (pfld1.value!='' && pfld2.value=='')) {
		//if (pwfld=='PasswordConfirm' and (pw!="" and pwc="") then prompt that they must confirm the password		 
		ptargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Password Confirm is blank.</div>";	
		pfld2.className = "invalidfld";
	} else if (pfld1.value!=pfld2.value) {
		//if (pwfld!=pwcfld) then they don't match
		ptargetdiv.innerHTML = "<div class='invalidtext'><img border='0' src='/icons/vwicn081.gif'>&nbsp;Passwords do not match.</div>";	
		pfld1.className = "invalidfld";
		pfld2.className = "invalidfld";
	} else {
		//all is good
		ptargetdiv.innerHTML = "<div class='validtext'><img border='0' src='/icons/vwicn082.gif'>&nbsp;Passwords are valid and match.</div>";	
		pfld1.className = "validfld";
		pfld2.className = "validfld";
	}
}
/* ------------------------------------------------------------------------------------- */
function isNumberKey(evt){
	//only allows "0123456789./"
	var charCode = (evt.which) ? evt.which : event.keyCode
	if (charCode < 31 || (charCode > 45 && charCode < 58))
		return true;
	return false;
};
function isAlphaKey(evt){
	//only allows "a-z and A-Z and -"
	var charCode = (evt.which) ? evt.which : event.keyCode
	if (charCode < 33 || charCode==45 || ((charCode > 64 && charCode < 91) || (charCode > 96 && charCode < 123)))
		return true;
	return false;
};
function isAlphaNumKey(evt){
	//only allows "0123456789 and a-z and A-Z and -"
	var charCode = (evt.which) ? evt.which : event.keyCode
	if (charCode < 33 || charCode==45 || ((charCode > 47 && charCode < 58) || (charCode > 64 && charCode < 91) || (charCode > 96 && charCode < 123)))
		return true;
	return false;
};
function isPasswordKey(evt){
	//only allow !@#$%^&*?_~- and 0123456789 and a-z and A-Z"
	var cc = (evt.which) ? evt.which : event.keyCode
	if (cc < 33 || cc==33 || charCode==63234 || charCode==63235 || (cc > 34 && cc < 39) || cc==42 || cc==45 || (cc > 47 && cc < 58) || (cc > 62 && cc < 91) || cc==94 || cc==95 || (cc > 96 && cc < 123) || cc==126 )
		return true;
	return false;
};
function isUsernameKey(evt){
	//only allows "0123456789 and a-z and A-Z and (-) and (_)"
	var charCode = (evt.which) ? evt.which : event.keyCode
	if (charCode < 32 || charCode==63234 || charCode==63235 || charCode==45 || charCode==95 || ((charCode > 47 && charCode < 58) || (charCode > 64 && charCode < 91) || (charCode > 96 && charCode < 123)))
		return true;
	return false;
};
function isValidEmail(emailAddress) {
    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[(2([0-4]\d|5[0-5])|1?\d{1,2})(\.(2([0-4]\d|5[0-5])|1?\d{1,2})){3} \])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
    return re.test(emailAddress);
}
//Only allow Backspace in entry fields///
if (typeof window.event != 'undefined')
        document.onkeydown = function()
	  {
                if (event.srcElement.tagName.toUpperCase() != 'INPUT')
                        return (event.keyCode != 8);
        }
else
        document.onkeypress = function(e)
        {
                if (e.target.nodeName.toUpperCase() != 'INPUT')
                        return (e.keyCode != 8);
        }
////////////////
