
function SetMenu(nMenu)
{
 // alert("Hai scelto menu n. " + nMenu);
 var frm = eval("menu");
 var nm = eval("nmenu");
 nm.value = nMenu;
//  alert("frm.className="+frm.className+ " e adesso nMenu vale " + nm.value);
 frm.submit();
}

function newXMLHttpRequest()
{
 var req;

    // branch for native XMLHttpRequest object
    if(window.XMLHttpRequest && !(window.ActiveXObject)) {
    	try {
          req = new XMLHttpRequest();
        } catch(e) {
	  req = false;
        }
    // branch for IE/Windows ActiveX version
    } else if(window.ActiveXObject) {
       	try {
       	  req = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) {
          try {
            req = new ActiveXObject("Microsoft.XMLHTTP");
          } catch(e) {
            req = false;
          }
       }
    }
    return req;
}


function GetBody(nMenu)
{
  var des =   ['0 Uninitialized: The initial value.',
               '1 Open: The open() method has been successfully called.',
               '2 Sent: The user agent successfully acknowledged the request.',
               '3 Receiving: Immediately before receiving the message body (if any). All HTTP headers have been received.',
               '4 Loaded: The data transfer has been completed.'];
   var req = newXMLHttpRequest();//new XMLHttpRequest();
   var msg = eval("corpo");
   if (req) {
     req.open('GET','body'+nMenu+'.php',true);
     req.onreadystatechange  = function() {
       //alert("state:"+req.readyState);
        switch (req.readyState) {
           case 3:
             msg.innerHTML = "<div> Loading  .... </div>";
             break;
           case 4:
             if (req.status == 200) {
                msg.innerHTML = req.responseText;
             };
           break;
           default:
          //msg.innerHTML = "<div>"+des[req.readyState]+"</dvi>";
          msg.innerHTML = "<div> Loading .... "+des[req.readyState]+"</div>";
        };
     };
     req.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT" );
     req.send(null);
   } else {
     alert("Impossibile creare XMLHttpRequest()");
   }
}


function invia_modulo()
{
   var frm = eval("frmiscr");
   //alert("sono in invia del documento " + frm.name);
   var i = 0;
   var txt;
   var val;
   var dt;

   // check dati inseriti

   for (i=0; i<frm.elements.length;i++) {
       txt = frm.elements[i];
       //alert("Element is "+txt.nodeName);
       if (txt.nodeName != "INPUT") continue; // skippa
       val = trim(txt.value);
       //alert(val);
       switch (txt.attributes['name'].nodeValue.substr(0,6)) {
         // nomi corridori
         case "txtcor":
              if (! val.length) {
                 alert("Immettere Corridore " + txt.attributes['name'].nodeValue.substr(6,1));
                 txt.setfocus();
                 return;
              }
              break;
         // data nascita
         case "txtdat":
              if (! val.length) {
                 alert("Immettere Data Nascita Corridore " + txt.attributes['name'].nodeValue.substr(6,1) + " (es. 31/01/1975)");
                 txt.setfocus();
                 return;
              }
              break;
         // n.tessera
         case "txttes":
              if (! val.length) {
                 alert("Immettere N. Tessera Corridore " + txt.attributes['name'].nodeValue.substr(6,1));
                 txt.setfocus();
                 return;
              }
              break;
       // n.scarpe
         case "txtnsc":
              if (! val.length) {
                 alert("Immettere N. Scarpe Corridore " + txt.attributes['name'].nodeValue.substr(6,1));
                 txt.setfocus();
                 return;
              }
              break;
       // TShirt
         case "txttsh":
              if (! val.length) {
                 alert("Immettere Taglia T-Shirt Corridore " + txt.attributes['name'].nodeValue.substr(6,1));
                 txt.setfocus();
                 return;
              }
              break;
         // società
         case "txtsoc":
              if (! val.length) {
                 alert("Immettere nome società sportiva es. PODISTICA MARENE 2000 VETERANI");
                 txt.setfocus();
                 return;
              }
              break;
         // responsabile
         case "txtres":
              if (! val.length) {
                 alert("Immettere il responsabile o la persona da contattare");
                 txt.setfocus();
                 return;
              }
              break;
         // email
         case "txtema":
              if (! checkmail(val)) {
                 alert("Immettere la propria casella di posta es. info@pod2000.it");
                 txt.setfocus();
                 return;
              }
              break;
         // telefono
         case "txttel":
              if (! val.length) {
                 alert("Immettere il proprio n. di telefono");
                 txt.setfocus();
                 return;
              }
              break;
         default:
         // altri controlli
         //

       }
   }


   frm.submit();
   //alert("fine controllo");
}

function sbianca_modulo()
{
   var frm = eval("frmiscr");
   // alert("sono in invia del documento " + frm.name);
   frm.reset();
}

function stampa_modulo()
{
   var a = window.open();
   a.documentElement.innerHTML = "<head><body>sono il body</body></head>";
   //a.close();
}


function trim(a)
{
 var nc = a.length;
 var msg;
 var first, last;
 var ch;

 // alert("a lunga:" + nc);
 for (var i=0; i<nc; i++) {
   ch = a.charAt(i);
   if (ch != ' ' && ch != '\n' && ch != '\r') {
      first=i;
      break;
   };
 };
 for (var i=0; i<nc; i++) {
   ch = a.charAt(i);
   if (ch != ' ' && ch != '\n' && ch != '\r') {
      last=i;
   };
 };
//    msg="tmp:" + tmp + " first:" + first + " last:" + last;
//    alert(msg);
 return a.substring(first,last+1);
}

function checkmail(a)
{
  var s = trim(a);
  //var regex = "/[a-z0-9_]{1,}\@[a-z0-9_]{1,}\.[a-z]{2,}/i";
  //var res = s.search("/{[a-z][0-9]}+\@{[a-z][0-9]}+\.[a-z]2+/i"); // ritorna -1 se non trova
  //var res = s.search(regex);
  res = s.length;
  //  alert(s + " search ritorna " + res + " con regex: " + regex);
  return ( res > 8 );
}

