//RECUPERA IL CODICE ASCII DEL TASTO PREMUTO
function getkey(e){
	if (window.event)
	  return window.event.keyCode;
	else if (e)
	  return e.which;
	else
	  return null;
}
//CONTROLLA CHE IL TASTO PREMUTO CORRISPONDA AD UN NUMERO
function caratteriok(e, goods){
	var key, keychar;
	key = getkey(e);
	if (key == null) return true;

	// get character
	keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
	goods = goods.toLowerCase();

	// check goodkeys
	if (goods.indexOf(keychar) != -1)
			return true;

	// control keys
	if ( key==null || key==0 || key==8 || key==9
		|| key==13 || key==27 )
	  return true;

	// else return false
	return false;
}


//CONTROLLA CHE IL TASTO PREMUTO SIA VALIDO PER USERNAME E PASSWORD
 function caratteriok2(e)
 {
    var key, keychar;
    key = getkey(e);

	
    // get character
    keychar = String.fromCharCode(key);
    keychar = keychar.toLowerCase();

	
	// control keys
	if ( key==232 || key==233 || key==242 || key==224 || key==249 || key==94 || key==236 || key==176 || key==38 || key==36 || key==37 || key==47 || key==34 || key==39 || key==92 || key==124 || key==33 || key==63 || key==231 || key==46 || key==44 || key==59 || key==167 || key==163 || key==32)
	{
		alert('Carattere immesso non valido:\n\nUsername e Password non possono contenere i seguenti caratteri:\n\n'
			  +String.fromCharCode(232)+'\t'+String.fromCharCode(233)+'\t'+String.fromCharCode(242)+'\t'+String.fromCharCode(224)+'\t'+String.fromCharCode(249)+'\t'+String.fromCharCode(94)+'\t'+String.fromCharCode(236)+'\t'+String.fromCharCode(176)+'\t'+String.fromCharCode(38)+'\t'+String.fromCharCode(36)+'\t'+String.fromCharCode(37)+'\t'+String.fromCharCode(47)+'\t'+String.fromCharCode(34)+'\t'+String.fromCharCode(39)+'\t'+String.fromCharCode(92)+'\t'+String.fromCharCode(124)+'\t'+String.fromCharCode(33)+'\t'+String.fromCharCode(63)+'\t'+String.fromCharCode(231)+'\t'+String.fromCharCode(46)+'\t'+String.fromCharCode(44)+'\t'+String.fromCharCode(59)+'\t'+String.fromCharCode(167)+'\t'+String.fromCharCode(163)+'\t'+String.fromCharCode(32)+'\t');
		return false;
		
	}
	else
	{
		return true;
	}
} 



//----FUNZIONE AJAX PER IL CRONOPROGRAMMA--------------------------------
function ajaxpost(url,div,parametri,ok) 
{
	if (document.getElementById('attesa').value=='0') 
		{
          setTimeout(function () {ajaxpost(url,div,parametri, ok);},30);
       }
		else{
  document.getElementById('attesa').value='0';
       var http_request = false;

        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // Vedi note sotto
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Giving up : Non riesco a creare una istanza XMLHTTP');
            return false;
        }
        http_request.onreadystatechange = function() { alertContents(http_request,div,ok); };
        http_request.open('POST', url, true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        http_request.setRequestHeader("Content-length", parametri.length);
        http_request.send(parametri);
		}
}


function alertContents(http_request,div,ok) 
{
    if (http_request.readyState == 4) 
		{
      if (http_request.status == 200) 
			{
         resp=http_request.responseText;
			   document.getElementById(div).innerHTML=resp;
         document.getElementById('attesa').value='1';

			   if(ok == 1)
			   {
			   	  alert('Salvataggio avvenuto con successo!');
         }
       } 
       else 
			 {  document.getElementById('attesa').value='1';
          alert('Si č verificato un problema con la richiesta');
       }
     }
 }
//-------------------------------------------------------------------//

//-----------------FUNZIONE TEMPO CONTRATTUALE---------------------
function stringa_post(frm){
  stringa = "";
  var form = document.getElementById(frm);
  var numeroElementi = form.elements.length;
 
  for(var i = 0; i < numeroElementi; i++){
    if(i < numeroElementi-1){
      stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value)+"&";
    }else{
      stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value);
    } 
  }
  return stringa;
}

function stringa_check(frm){
  stringa = "";
  var form = document.getElementById(frm);
  var numeroElementi = form.elements.length;
 
  for(var i = 0; i < numeroElementi; i++){
	if(form.elements[i].checked == true){
		if(i < numeroElementi-1){
		  stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value)+"&";
		}else{
		  stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value);
		} 
	}
  }
  return stringa;
}

function stringa_mista(frm){
  stringa = "";
  var form = document.getElementById(frm);
  var numeroElementi = form.elements.length;

  for(var i = 0; i < numeroElementi; i++){
	if(form.elements[i].type == 'radio' || form.elements[i].type == 'checkbox'){
		if(form.elements[i].checked == true){
			if(i < numeroElementi-1){
			  stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value)+"&";
			}else{
			  stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value);
			} 
		}
	}
	else{
		if(i < numeroElementi-1){
		  stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value)+"&";
		}else{
		  stringa += form.elements[i].name+"="+encodeURIComponent(form.elements[i].value);
		} 
	}
  }
  return stringa;
}





function controlloNewsletter()
{
  var errore = false;
  
  if( document.getElementById('nome').value == '' )
  {
      alert('attenzione non hai inserito il nome');
      errore = true;
      return false;
  }
  else if( document.getElementById('cognome').value == '' )
  {
      alert('attenzione non hai inserito il cognome');
      errore = true;
      return false;
  }
  else if( document.getElementById('citta').value == '' )
  {
      alert('attenzione non hai inserito la cittā');
      errore = true;
      return false;
  }
  else if( document.getElementById('professione').value == '' )
  {
      alert('attenzione non hai inserito la professione');
      errore = true;
      return false;
  }
  else if( document.getElementById('email').value == '' )
  {
      alert('attenzione non hai inserito la mail');
      errore = true;
      return false;
  }
  else if( document.getElementById('privacy').checked == false )
  {
      alert('attenzione devi accettare l informativa sulla privacy');
      errore = true;
      return false;
  }
  else
  {
      return true;
  }

  
  if(errore == false)
	{	
		ajaxpost(url,div,parametri);	
	}
	else
	{
      document.formnewsletter.email.focus();
  }
}





function controlloRegistrazione()
{
  var errore = false;
  
  if( document.getElementById('fattura').value == '' )
  {
      alert('attenzione non hai inserito la fattura');
      errore = true;
      return false;
  }
  else if( document.getElementById('indirizzo').value == '' )
  {
      alert('attenzione non hai inserito indirizzo');
      errore = true;
      return false;
  }
  else if( document.getElementById('citta').value == '' )
  {
      alert('attenzione non hai inserito la cittā');
      errore = true;
      return false;
  }
  else if( document.getElementById('prov').value == '' )
  {
      alert('attenzione non hai inserito la provincia');
      errore = true;
      return false;
  }
  else if( document.getElementById('email').value == '' )
  {
      alert('attenzione non hai inserito la mail');
      errore = true;
      return false;
  }
  else if( document.getElementById('tel').value == '' )
  {
      alert('attenzione non hai inserito il numero di telefono');
      errore = true;
      return false;
  }
  else if( document.getElementById('cf').value == '' )
  {
      alert('attenzione non hai inserito il codice fiscale');
      errore = true;
      return false;
  }
  else if( document.getElementById('radio1').checked == false )
  {
      alert('attenzione devi selezionare la modalita di pagamento');
      errore = true;
      return false;
  }
  else if( document.getElementById('privacy').checked == false )
  {
      alert('attenzione devi accettare l informativa sulla privacy');
      errore = true;
      return false;
  }
  else
  {
      return true;
  }

  
  if(errore == false)
	{	
		ajaxpost(url,div,parametri);	
	}
	else
	{
      document.formnewsletter.email.focus();
  }
}
