// JavaScript Document
var xmlHttp; // This var is used for all Ajax in this page.
var email, pass, password2, Message, AtPos, StopPos, errors, email_error,alreadyinuse,useralreadyinuse;


//my = document.getElementsByTagName('form');
//alert(my[1].id);
function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}


function checkifalready(value, name){

xmlHttp=GetXmlHttpObject();
			
		
		if (name == 'email'){
			var url="check_user_email.php";
			url=url+"?email="+value;
			url=url+"&sid="+Math.random();
		
			xmlHttp.onreadystatechange=stateEmail;
			xmlHttp.open("GET",url,true);
			xmlHttp.send(null);
		}
		else {
			var url="check_user_name.php";
			url=url+"?username="+value;
			url=url+"&sid="+Math.random();
		
			xmlHttp.onreadystatechange=stateUsername;
			xmlHttp.open("GET",url,true);
			xmlHttp.send(null);
		}
			
			
}
		
		
function stateEmail() {

	if (xmlHttp.readyState==4)
	{
	alreadyinuse = 0;	
		switch (xmlHttp.responseText){
			case 'false':
				alreadyinuse = 1;
				break;
		
			case 'true':
				alreadyinuse = 0;
				break;
		}
	}
}

		
function stateUsername() {

	if (xmlHttp.readyState==4)
	{
	
	useralreadyinuse = 0;	
		switch (xmlHttp.responseText){
			case 'false':
				useralreadyinuse = 1;
				break;
		
			case 'true':
				useralreadyinuse = 0;
				break;
		}
	}
}


function IsNumeric(strString)  {
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

      for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}



function isString(strString)  {
   var strValidChars = "אבגדהוזחטיכלמנסעפצקרשתץףךןם-.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

      for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}


function isNumber(strString)  {
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

      for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}

function isAlphaNumeric(strString)  {
   var strValidChars = "@_0123456789אבגדהוזחטיכלמנסעפצקרשתץףךןם-.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

      for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}
	
	
	
function validinfo(){
	errors = 0;
	Message = '';
	email_error =0;
	
	
	first_name = document.getElementById('first_name').value;
	last_name = document.getElementById('last_name').value;
	email = document.getElementById('email').value;
	password = document.getElementById('pass').value;
	password2 = document.getElementById('password_confirm').value;
	usernamefield = document.getElementById('usernamefield').value;
	agree = document.getElementById('agreement').checked;
	refferal = document.getElementById('refferal').value;
	
	

	if (first_name == ''){
		Message +='Please enter your first name';
		Message += '<br />';
		errors = 1;
	}else if (!isString(first_name)){
		Message += 'Your first name can have only letters';
		Message += '<br />';
		errors = 1;
	}
		
	
	if (last_name == ''){
		Message +='Please enter your last name';
		Message += '<br />';
		errors = 1;
	}else if (!isString(last_name)){
		Message += 'Your last name can have only letter';
		Message += '<br />';
		errors = 1;
	}
	
	
	if (!(refferal == '') && (!isNumber(refferal))){
		Message += 'The refferal number you have entered is not valid';
		Message += '<br />';
		errors = 1;
	}
		
	
	
	
	AtPos = email.indexOf("@");
	StopPos = email.lastIndexOf(".");
	

	if (email == "") {
	Message += 'Please enter your e-mail address';
	Message += '<br />';
	}
	
	if ((AtPos == -1 || StopPos == -1) && (email_error == 0)) {
	Message += 'Invalid e-mail address';
	Message += '<br />';
	email_error =1;
	}
	
	if ((StopPos < AtPos) && (email_error == 0)){
	Message += 'Invalid e-mail address';
	Message += '<br />';
	email_error =1;
	}
	
	if ((StopPos - AtPos == 1)&& (email_error == 0)) {
	Message += 'Invalid e-mail address';
	Message += '<br />';
	email_error =1;
	}
	
		
	
	if (email_error == 1){ 
		errors = 1;
	} 
	else if (!isAlphaNumeric(email)){
		Message += 'Invalid e-mail address';
		Message += '<br />';
		errors = 1;
	}

	
	
	
	
	
	
	
	
	if (password== ''){
			Message += "Please enter your password";
			Message += '<br />';
			errors = 1;
	}else if (password.length < 6){
			Message += "Password lenth must be at least 6 chars";
			Message += '<br />';
			errors = 1;
	}
	else if	(password!= password2){
		Message += "Passwords do not match";
		Message += '<br />';
		errors = 1;
	}else if (!isAlphaNumeric(password)){
		Message += 'Password can have only letters and numbers';
		Message += '<br />';
		errors = 1;
	}
	

		
	
	if (usernamefield == ''){
		Message +='Please select user name';
		Message += '<br />';

		errors = 1;
	}else if (!isAlphaNumeric(usernamefield)){
		Message += 'User name can only have letters and numbers';
		Message += '<br />';
		errors = 1;
	}
	
	if (!(agree)){
		Message +='You forgot to agree to the terms of use';
		Message += '<br />';

		errors = 1;
	}
	
	
	if (alreadyinuse==1){
		Message +='This e-mail is already registered';
		Message += '<br />';

		errors = 1;
	}
	
	if (useralreadyinuse==1){
		Message +='Sorry, this user name already taken...';
		Message += '<br />';

		errors = 1;
	}
	
	
	if (errors != 0){

		document.getElementById('errors_div').innerHTML = Message;
		return false;
				
	}
	else {
		

		return true;
		
		
		
	}
	
	
	
	

}
