
var signUpForm=new Object();signUpForm.errorColor="#FF0000";signUpForm.submit=function()
{try{this.checkUsername();this.checkPassword();this.checkEmail();this.checkBirthday();$("form[name='signup']").submit();}catch(e){alert("Error: "+e.message);}}
signUpForm.userIsAvailable=function()
{var available=$("form[name='signup'] label[for='username'] > small");try{var data=$.ajax({type:"post",url:"/pages/remote/validUser.php",data:{Ladder:$("form[name='signup'] input[name='path']").val(),strLadderName:$("form[name='signup'] input[name='username']").val()},async:false}).responseText;if(data!="1"){throw new Error();}
available.html("(available)");available.css("color","#0a0");return true;}catch(e){available.html("(unavailable)");available.css("color","#f00");return false;}}
signUpForm.checkUsername=function(){var error=false;var username=$("form[name='signup'] input[name='username']").val();if(username.match(/["&!@#%^*(\+':?<>]/)){error="The entered username contains one of the following invalid characters [\"&!@#%^*(+':?<>].";}else if(!this.userIsAvailable()){error="The entered username is already in use, please choose a different username.";}
if(error){$("form[name='signup'] label[for='username']").css("color",this.errorColor);throw new Error(error);}
return true;}
signUpForm.checkPassword=function(){var error=false;var password=$("form[name='signup'] input[name='password']").val();var v_password=$("input[name='v_password']").val();if(password!=v_password){error="The entered passwords do not match.";}
else if(password.length<6){error="Your password must be atleast 6 characters long.";}
else if(!password.match(/[0-9]/)||!password.match(/[a-zA-Z]/)){error="Your password must contain both letters and numbers.";}
if(error){$("label[for='password']").css("color",this.errorColor);$("label[for='v_password']").css("color",this.errorColor);$("form[name='signup'] input[name='password']").val("");$("input[name='v_password']").val("");throw new Error(error);}
return true;}
signUpForm.checkEmail=function(){var error=false;var email=$("input[name='email']").val();var v_email=$("input[name='v_email']").val();email=email.toLowerCase();v_email=v_email.toLowerCase();if(email!=v_email){error="The entered email addresses do not match.";}
else if(!email.match(/^([a-zA-Z0-9_\-\+.]+)@[a-zA-Z0-9\-.]+\.[a-zA-Z]{2,3}$/)){error="You have entered an invalid email address.";}
if(error){$("label[for='email']").css("color",this.errorColor);$("label[for='v_email']").css("color",this.errorColor);throw new Error(error);}
return true;}
signUpForm.checkBirthday=function(){var error=false;if($("select[name='birth_m']").val()==""||$("select[name='birth_d']").val()==""||$("select[name='birth_y']").val()==""){error="You are required to enter your birthday.";$("label[for='birth_m']").css("color",this.errorColor);throw new Error(error);}
return true;}