var divDestino = document.getElementById("divMessage");
function createRequestObject(){
      var request;
      var browser = navigator.appName;
      if(browser == "Microsoft Internet Explorer"){
            request = new ActiveXObject("Microsoft.XMLHTTP");
      }else{
            request = new XMLHttpRequest();
			}
			return request;
}


var http = new Array();
function getData(url,langu){
      var act = new Date();
      http[act] = createRequestObject();
      http[act].open('get', url);
      http[act].onreadystatechange = function() 
      {
      	if (http[act].readyState == 4) 
      	{
            if (http[act].status == 200 || http[act].status == 304) 
            {
				  		var texto;
							texto = http[act].responseText;
				      //var divDestino = document.getElementById("divMessage");
				      if(texto=='1')
				      {
				     		if(langu=='es')
	          		{
				      		divDestino.innerHTML = "<div id='oki'><b>"+"El nombre de usuario est&aacute; disponible"+"</b></div>";
				      	}
				      	else if(langu=='en')
	          		{
	          			divDestino.innerHTML = "<div id='oki'><b>"+"The user name is available"+"</b></div>";
	          		}
				      	document.forms[0].checkuser.value = "ok";
				      }
				      else
				      {
				      	document.forms[0].checkuser.value = "ko";
				     		if(langu=='es')
	          		{
				      		divDestino.innerHTML = "<div id='error'><b>"+"El usuario ya existe. Pruebe con otro nombre."+"</b></div>";
				      	}
				      	else if(langu=='en')
				      	{
				      		divDestino.innerHTML = "<div id='error'><b>"+"The user already exists. Try another name."+"</b></div>";
				      	}
				      }
						}
				}
			}
	http[act].send(null);
}

function checkUser(tecla, langu) {
		 divDestino = document.getElementById("divMessage");
     tecla = (tecla) ? tecla: window.event;
     input = (tecla.target) ? tecla.target : tecla.srcElement;
     if(input.value.length>2)
     {
	     if (tecla.type == "keyup") {
	          //var divDestino = document.getElementById("divMessage");
	          if(langu=='es')
	          {
	          	divDestino.innerHTML = "<div>Validando usuario...</div>";
	          }
	          else if(langu=='en')
	          {
	          	divDestino.innerHTML = "<div>Validating user...</div>";
	          }
	          if (input.value) {
	               getData("cu.php?q=" + input.value + "&d=" + getCheckedValue(document.forms[0].domain), langu);
	          } 
	     }
	   }
	   else
	   {
		   	document.forms[0].checkuser.value = "ko";
		   	if(langu=='es')
		   	{
		   		divDestino.innerHTML = "<div id='error'>El usuario debe tener al menos 3 caracteres</div>";
		   	}
		   	else if(langu=='en')
		   	{
		   		divDestino.innerHTML = "<div id='error'>The user must have at least 3 characters</div>";
		   	}
	   }
}

function checkUserRadio(langu) {
     if(document.forms[0].username.value.length>2)
     {
          if(langu=='es')
          {
          	divDestino.innerHTML = "<div>Validando usuario...</div>";
          }
          else if(langu=='en')
          {
          	divDestino.innerHTML = "<div>Validating user...</div>";
          }
          if (input.value) {
               getData("cu.php?q=" + input.value + "&d=" + getCheckedValue(document.forms[0].domain), langu);
          } 
	   }
	   else
	   {
		   	document.forms[0].checkuser.value = "ko";
		   	if(langu=='es')
		   	{
		   		divDestino.innerHTML = "<div id='error'>El usuario debe tener al menos 3 caracteres</div>";
		   	}
		   	else if(langu=='en')
		   	{
		   		divDestino.innerHTML = "<div id='error'>The user must have at least 3 characters</div>";
		   	}
	   }
}


//Comprobar caracteres validos
function checkChar(tEvent) {
  var caracteres = "abcdefghijklmnopqrstuvwxyz0123456789";
  var teclas_especiales = [8, 37, 39, 46, 9];
  // 8 = BackSpace, 46 = Supr, 37 = flecha izquierda, 39 = flecha derecha, 9 = TAB
  var permitidos = caracteres;
 
  // Obtener la tecla pulsada 
  var evento = tEvent || window.event;
  var codigoCaracter = evento.charCode || evento.keyCode;
  var caracter = String.fromCharCode(codigoCaracter);
 
  // Comprobar si la tecla pulsada es alguna de las teclas especiales
  // (teclas de borrado y flechas horizontales)
  var tecla_especial = false;
  if(evento.charCode==0)  //en las teclas especiales el valor de evento.charCode es 0
  {
	  for(var i in teclas_especiales) {
	    if(codigoCaracter == teclas_especiales[i]) {
	      tecla_especial = true;
	      break;
	    }
	  }
	}
    // Comprobar si la tecla pulsada se encuentra en los caracteres permitidos
  // o si es una tecla especial
  return permitidos.indexOf(caracter) != -1 || tecla_especial;
}
