function foco(elemento) {
  elemento.style.border = "1px solid #000000";
}

function no_foco(elemento) {
  elemento.style.border = "1px solid #CCCCCC";
}

var filter = /^([1-9][0-9]{0,2})+\.([1-9][0-9]{0,2})+\.([1-9][0-9]{0,2})+\.([1-9][0-9]{0,2})+$/;

function getXmlHttpRequestObject() {
 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.");
 }
}

var receiveReq = getXmlHttpRequestObject();

function makeRequest(url, param) {
 if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {

   receiveReq.open("POST", url, true);
   receiveReq.onreadystatechange = updatePage;

   receiveReq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   receiveReq.setRequestHeader("Content-length", param.length);
   receiveReq.setRequestHeader("Connection", "close");

   receiveReq.send(param);
 }
}

function updatePage() {
 if (receiveReq.readyState == 4) {

   var res = receiveReq.responseText;

   if (res == "CAPTCHA") {
     document.getElementById('analizando').innerHTML = '';
     document.getElementById('scan').innerHTML = '<a href="#" onclick="analizar(scanner);"><img alt="" src="images/analizar.gif" border="0"></a>';
     document.getElementById('selectores').style.display = "inline";
     document.getElementById('captcha').style.display = "inline";
     document.getElementById('codigo').innerHTML = '<img id="imgCaptcha" src="create_image.php?' + Math.random() + '" border=1>';
   } else {
     var ports = new Array();
     ports = res.split(' ');
     for (var p=0; p < ports.length; p++) {
       var div = 'dport' + ports[p].substr(1,6);
       if (ports[p].substr(0, 1) == "1") {   
         document.getElementById(div).innerHTML = '<img alt="" src="images/open.gif" border="0">';
       } else {
         document.getElementById(div).innerHTML = '<img alt="" src="images/closed.gif" border="0">';
       }
       document.getElementById(div).style.display = "inline";
     }
     FancyForm.none();
     document.getElementById('scan').innerHTML = '';
     document.getElementById('analizando').innerHTML = '<a href="#" onclick="restaurar();"><img src="images/volver.gif" border="0"></a>';
   }

 }

}

function restaurar() {

   var Spans = document.getElementsByTagName('span');
   for(var i=0; i < Spans.length; i++) {
     if(Spans[i].className == 'nada') {
       Spans[i].style.display = "none";
     }
   }

   document.getElementById('analizando').innerHTML = '';
   document.getElementById('scan').innerHTML = '<a href="#" onclick="analizar(scanner);"><img alt="" src="images/analizar.gif" border="0"></a>'; 
   document.getElementById('selectores').style.display = "inline";
   document.getElementById('codigo').innerHTML = '<img id="imgCaptcha" src="create_image.php?' + Math.random() + '" border=1>';
   document.getElementById('txtCaptcha').value = '';
   document.getElementById('captcha').style.display = "inline";
   document.getElementById('txtCaptcha').focus() = 'true';
   FancyForm.none();

}

function Valores (theForm) {
  var elems = theForm.elements;
  var str = '';
  for (var ix=0; ix < elems.length; ix++) {
    var elem = elems[ix];
    if (elem.checked) {
        str += elem.name + ' ';
    } 
  }
  return str;
}

function analizar(theForm) {

/*
 if (!filter.test(theForm.ip.value)) {
   alert('La IP introducida no es valida');
   document.getElementById('ip').focus();
   return false
 }
*/

 var puertos = Valores(theForm);
 
 if (puertos == '') {
   alert('No has seleccionado ningun puerto');
   return false;
 }
 
 var url = 'check_ports.php?puertos=' + puertos + '&ip=' + theForm.tip.value + '&codigo=' + theForm.txtCaptcha.value;
 var postStr = '';
 document.getElementById('scan').innerHTML = '';
 document.getElementById('analizando').innerHTML = '<img src="images/hispanito.gif" border="0">';
 document.getElementById('selectores').style.display = "none";
 document.getElementById('captcha').style.display = "none";
 makeRequest(url, postStr);
}

