var _lastSearch="";function search()
{var username=$(this).val();if(username.length>0)
{if(username!=_lastSearch)
{$.ajax({type:"POST",url:"/ajax/userexists.php",data:"name="+username,dataType:"json",timeout:4*1000,success:function(data){if(data.success)
{onSearchSuccess(data.userexists);}
else
{hideAvailability();}},error:hideAvailability});_lastSearch=username;}}
else
{hideAvailability();}}
function onSearchSuccess(userexists)
{if(userexists)
{$("#available").hide();$("#unavailable").show();$("#signup_submit").attr("disabled","disabled");}
else
{$("#available").show();$("#unavailable").hide();$("#signup_submit").attr("disabled","");}}
function hideAvailability()
{$("#available").hide();$("#unavailable").hide();$("#signup_submit").attr("disabled","");}
function validateField(description)
{var text="";if(this.length)
{text=this.val();}
if(text.length==0)
{showMessage('Error: invalid '+description);return"";}
return text;}
function newUser()
{hideMessage();var username=validateField.apply($('#signup_username'),['username']);if(username=="")return;var password=validateField.apply($('#signup_password'),['password']);if(password=="")return;var confirmpwd=validateField.apply($('#signup_confirmpwd'),['confirmation password']);if(confirmpwd=="")return;if(password!=confirmpwd)
{showMessage('Error: Password does not match confirmation password');return;}
var email=$('#signup_email').val();if(email!="")
{if(!email.match(/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i))
{showMessage('Error: invalid email address');return;}}
$("#signupform").submit();}
function showMessage(text)
{$("#error").html(text).fadeIn('slow');}
function hideMessage()
{$("#error").html("").hide();}
