var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

function encode64(input) {
   var output = "";
   var chr1, chr2, chr3;
   var enc1, enc2, enc3, enc4;
   var i = 0;

   do {
      chr1 = input.charCodeAt(i++);
      chr2 = input.charCodeAt(i++);
      chr3 = input.charCodeAt(i++);

      enc1 = chr1 >> 2;
      enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
      enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
      enc4 = chr3 & 63;

      if (isNaN(chr2)) {
         enc3 = enc4 = 64;
      } else if (isNaN(chr3)) {
         enc4 = 64;
      }

      output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) +
         keyStr.charAt(enc3) + keyStr.charAt(enc4);
   } while (i < input.length);

   return output;
}


function getXmlHttpRequestObject3() {
 if (window.XMLHttpRequest) {
    return new XMLHttpRequest(); //Mozilla, Safari ...
 } else if (window.ActiveXObject) {
    return new ActiveXObject("Microsoft.XMLHTTP"); //IE
 } else {
    alert("Your browser doesn't support the XmlHttpRequest object.");
    return false;
 }
}

var receiveReq3 = getXmlHttpRequestObject3();

function makeRequest3(url, param) {
 if (receiveReq3.readyState == 4 || receiveReq3.readyState == 0) {

   receiveReq3.open("POST", url, true);
   receiveReq3.onreadystatechange = updatePage3; 

   receiveReq3.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   receiveReq3.setRequestHeader("Content-length", param.length);
   receiveReq3.setRequestHeader("Connection", "close");

   receiveReq3.send(param);
 }   
}

function updatePage3() {
 if (receiveReq3.readyState == 4) {

   document.getElementById('nick').disabled = false;
   document.getElementById('check').innerHTML = '<input name="disponibilidad" id="boton" class="boton185" value="COMPROBAR DISPONIBILIDAD" onmouseover="document.getElementById(\'boton\').className=\'boton185b\'" \
                                              onmouseout="document.getElementById(\'boton\').className=\'boton185\'" onclick="checkParam(document.frmCaptcha); this.blur();" type="button">';

   var res = receiveReq3.responseText;

   if ( res == 0 ) {
     document.getElementById('res_check').innerHTML = ' \
      <div> \
        <img alt="Alias no disponible" src="media/333-u-l.gif" border="0"> \
      </div> \
      <div class="oops"> \
         <span class="ups1">Upps! Alias no disponible o caracteres no v&aacute;lidos.</span><br> \
         <span class="ups2">Vuelve a introducir el alias.</span> \
      </div> \
     ';

   } else if ( res == 1 ) {
     document.getElementById('nick').readOnly = true;
     document.getElementById('nick').tabIndex = -1;

     document.getElementById('email1').disabled = false;
     document.getElementById('email2').disabled = false;
     document.getElementById('txtCaptcha').disabled = false;
     document.getElementById('check').style.display = "none";
     document.getElementById('chars').style.display = "none";

     document.getElementById('res_check').innerHTML = ' \
      <div> \
        <img alt="Alias disponible" src="media/290-u-l-ok.gif" border="0"> \
      </div> \
      <div class="falta_email"> \
        El alias que has elegido est&aacute; disponible :) \
      </div> \
      <div> \
      <span class="otro_alias">Si quieres puedes </span><a tabindex=-1 href="" class="otro_link" onclick="Restaurar();">Elegir otro alias</a> \
      </div> \
     ';

     document.getElementById('titulo').innerHTML = '<ul class="pasos"> \
                                                    <li class="p1 unsel"><span class="num">1</span> <span class="txt">Elige tu alias</span></li> \
                                                    <li class="p2"><span class="num">2</span> <span class="txt">Reserva tu alias</span></li> \
                                                    </ul>';

     document.getElementById('masdatos').style.display = "inline";
     document.getElementById('email1').focus();

   }
 }

}

function Restaurar() {

  document.getElementById('check').innerHTML = '<input name="disponibilidad" id="boton" class="boton185" value="COMPROBAR DISPONIBILIDAD" onmouseover="document.getElementById(\'boton\').className=\'boton185b\'" \
                                              onmouseout="document.getElementById(\'boton\').className=\'boton185\'" onclick="checkParam(document.frmCaptcha); this.blur();" type="button">';

  document.getElementById('err_fin1').style.display = "none";
  document.getElementById('err_fin2').style.display = "none";

  document.getElementById('res_check').innerHTML = '';
  document.getElementById('masdatos').style.display = "none";
  document.getElementById('check').style.display = "inline";
  document.getElementById('chars').style.display = "inline";

  document.getElementById('titulo').innerHTML = '<ul class="pasos"> \
                                                 <li class="p1 sel"><span class="num">1</span> <span class="txt">Elige tu alias</span></li> \
                                                 <li class="p1"><span class="num">2</span> <span class="txt">Reserva tu alias</span></li> \
                                                 </ul>';
  

  document.getElementById('email1').value = '';
  document.getElementById('email2').value = '';
  document.getElementById('errores2').style.display = "none";
  document.getElementById('errores').style.display = "none";
  document.getElementById('correo1').style.display = "none";
  document.getElementById('correo2').style.display = "none";
  document.getElementById('errc').style.display = "none";

  document.getElementById('nick').value = '';
  document.getElementById('nick').readOnly = false;
  document.getElementById('pie').style.display = "inline";
  document.getElementById('todo').style.display = "inline";
  document.getElementById('nick').focus();


}

function checkParam(theForm) {

 if (theForm.nick.value.length==0) {
   document.getElementById('res_check').innerHTML = ' \
      <div> \
        <img alt="Introduce el alias." src="media/235-u-l.gif" border="0"> \
      </div> \
      <div class="falta_email"> \
        Introduce el alias, por favor. \
      </div> \
   ';
   return false;
 }

 var url = 'check_nick.php?nick=' + encode64 ( theForm.nick.value );
 var postStr = '';

 document.getElementById('nick').disabled = true;
 document.getElementById('res_check').innerHTML = ' \
      <div class="comp"> \
        <img alt="Comprobando disponibilidad" src="media/comprobando2.gif" border="0"> \
      </div> \
      <div class="comp1"> \
         <img src="media/comprobando.gif" alt="Comprobando"> \
      </div> \
      <div class="comp2"> \
         Comprobando disponibilidad. \
      </div> \
 ';


  makeRequest3(url, postStr);
  return true;
}
