
    //var formTemp = document.getElementById("IdForm");
	//formData = getFormData(formTemp);
	//alert(formData);

	function getFormData(frm)  {
		var objForm;
		var submitDisabledElements = false;
		
		if (arguments.length > 1 && arguments[1] == true)
			submitDisabledElements = true;
		var prefix="";
		
		if(arguments.length > 2)
			prefix = arguments[2];
		
		if (typeof(frm) == "string")
			objForm = this.$(frm);
		else
			objForm = frm;
		var getString = "";
		
		if (objForm && objForm.tagName == 'FORM') {
			var formElements = objForm.elements;
			for( var i=0; i < formElements.length; i++) {
				
				if (!formElements[i].name)
					continue;
				
				if (formElements[i].name.substring(0, prefix.length) != prefix)
					continue;
				
				if (formElements[i].type && (formElements[i].type == 'radio' || formElements[i].type == 'checkbox') && formElements[i].checked == false)
					continue;
				
				if (formElements[i].disabled && formElements[i].disabled == true && submitDisabledElements == false)
					continue;
				
				var name = formElements[i].name;
				
				if (name) {
					
					if (getString != '')
						getString += '&';
					
					if(formElements[i].type=='select-multiple') {
						
						for (var j = 0; j < formElements[i].length; j++) {
							
							if (formElements[i].options[j].selected == true)
								getString += name+"="+encodeURIComponent(formElements[i].options[j].value)+"&";
						}
					
					} else {
						getString += name+"="+encodeURIComponent(formElements[i].value);
					}
				} 
			}
		}

		return getString;
	}

var WND_W_MARGIN = 0;   // Margine orizzontale 
var WND_H_MARGIN = 30;  // Margine verticale 

function OpenMaximized(url) { 
    var wndWidth = typeof(screen.availWidth) != "undefined" ? 
        screen.availWidth : screen.width - WND_W_MARGIN; 
    var wndHeight = typeof(screen.availHeight) != "undefined" ? 
        screen.availHeight : screen.height - WND_H_MARGIN; 

    var wndFS = window.open(url, "PopupFS", 
        "top=0,left=0,width=" + wndWidth + ",height=" + wndHeight + ",status,scrollbars=yes"); 
         
    wndFS.resizeTo(wndWidth, wndHeight); 
         
    wndFS.focus(); 
};


/*apertura pagine */
function ApriPagina(lnk,option)
{
  if (option == "t")
    {
    top.location.href = lnk;
	}
	else if (option == "s")
	  {
		  self.location.href = lnk;
	  }	
		else if (option == "n")
		  {
				window.open(lnk,'','toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no');
			}
};

function attendere_prego()
{
return '<div id = "attendere_prego" style="position : absolute; width : 30%; height : 30%; top : 80%;left : 45%; text-align : center; "> '
         + '<img src="immagini/attendere.gif" /> <br> '
         + '<span style = "font-family : tahoma; font-size:18px; color : Navy;" > Attendere prego... </span> '
         + '</div> ';
}

/* butta il contenuto di una pagina in uno componente(dest) tramite ajax*/
function AjaxApriPagina(lnk,dest)
{	
  $("#"+dest).load(lnk);  
};

function AjaxApriPagina_corretto(lnk,dest,params)
{	 
 $.ajax({
   type: "GET",
   url: lnk,
   data: params,
   success: function(msg){		      
	     $("#"+dest).load(lnk);
		}	
   });  
  
};


function AjaxApriPagina_form(lnk,dest,tipo,idform, AfterOperation)
{
	
var formData;	
var formtemp = document.getElementById(idform);
formData = getFormData(formtemp);

$('#'+dest).html(attendere_prego());
 $.ajax({
   type:tipo,
   url: lnk,
   data: formData,
   success: function(msg){		 
     if (AfterOperation != "")
	 	{
//		alert(msg);
	     AjaxApriPagina(AfterOperation,dest);
		}
		 else $('#'+dest).html(msg);
	}	
   });
}

/* cancella i dati da una determinata tabella */
function eliminarecord (table, keyfield, id, recname){
  if (confirm("Vuoi eliminare la riga selezionata ?"))  
   	{$.ajax({
	  type: "POST",
	  url: "eliminadati.php",
	  data: "tabella="+table+"&campo="+keyfield+"&valore="+id,
	  success: function(msg){
	  	 if (msg=="OK")
	       {$("#"+recname).hide();}
		   else if (msg.indexOf("MOVIMENTATO") !== -1)
		           {alert("Il record e' movimentato; Impossibile cancellarlo !");}
				   else {alert(msg);}
		   } //fine function
           })//fine ajax
	} //fine if confirm
};



/*funzione che controlla la correttezza formale di una data*/
function controlla_data(campodata, tasto) {

  var slash = 0;
  var posizione = 0;
  var lunghezza = 0;
  
  for (i=0; i<=campodata.value.length; i++) {
	if (campodata.value[i] == '/')  
	  slash++;
  };
  
  if (slash > 2) {
    alert("Verificare la data inserita");
	return false;
  };
 
  lunghezza = 6;
  
/*  if (slash == 2) {*/
	 posizione = 0;
	 
	 for (i=0; ((campodata.value[i] != '/') && (i<=campodata.value.length)); i++) {};
	 gg = campodata.value.substr(0,i);
     
	 if (gg.length <= 2)
	   lunghezza = lunghezza + gg.length;
	 else lunghezza = lunghezza + 2;  
	 
	 gg=gg.length==1?"0"+gg:gg;
	 
	 for (j=i+1; ((campodata.value[j] != '/') && (j<=campodata.value.length)); j++) {};
	 mm = campodata.value.substr(i+1,j-i-1);

	 if (mm.length <= 2)
	   lunghezza = lunghezza + mm.length;
	 else lunghezza = lunghezza + 2;  

     mm=mm.length==1?"0"+mm:mm;

    for (z=j+1; z<=campodata.value.length; z++) {};
    aa = campodata.value.substr(j+1,z-i-1);
/*  };*/
  
  if (campodata.value.length >= lunghezza) 
  {
    if ((tasto>=96 && tasto<=105)|| /*0..9 tastierino numerico*/
	    (tasto>=48 && tasto<=57)||
		(tasto==111)||(tasto==55))   /* "/" tastierino num, "/" normale*/
    {
     
/*     obj=campodata.value.replace(/[^\d]/g,"0");;

	  gg=obj.substr(0,2);
	  mm=obj.substr(3,2);
	  aa=obj.substr(6,4);*/

	  strdata=gg+"/"+mm+"/"+aa;

	  data = new Date(parseInt(aa,10),parseInt(mm,10)-1,parseInt(gg,10));
	  daa=data.getFullYear().toString();
	  dmm=(data.getMonth()+1).toString();
	  dmm=dmm.length==1?"0"+dmm:dmm
	  dgg=data.getDate().toString();
	  dgg=dgg.length==1?"0"+dgg:dgg
	  dddata=dgg+"/"+dmm+"/"+daa
	  if (dddata!=strdata)
	  {
		alert("Verificare la data inserita");
		campodata.value=dddata; // Nel campo viene scritta la data generata
		campodata.focus();
		campodata.select();
		return false;
//		document.modulo.data.value=""; // Il campo viene cancellato e...
//		document.modulo.data.focus(); //...viene ridato il focus per il reinserimento
	  }
	  return true;	
	} else return false;
  } else return false;

};
	
/*contollo che l'ora inserita sia corretta */	
function controlla_ora(nome)
{
if (
		 (document.getElementById(nome).value.substring(2,3) != ".") ||
      isNaN(document.getElementById(nome).value.substring(0,2)) ||
      isNaN(document.getElementById(nome).value.substring(3,5)) 
	 ) 

{
  alert("Inserire ora in formato hh.mm");
  document.getElementById(nome).value = "";
  document.getElementById(nome).ora.focus();	
}
}

function caricacitta(contenitore,prov,citta){
	$.ajax({
   type: "POST",
   url: "caricacombocitta.php",
   data: "prov="+prov+"&codcitta="+citta,
   success: function(msg){
     $("#"+contenitore).html(msg); 
   }
  })
};


function ElencoComuni(contenitore,prov,readonly)
	{    
	$.ajax({
	   type: 'POST',
	   url: 'caricatabellacomuni.php',
	   data: 'prov='+prov+'&readonly='+readonly,
	   success: function(msg){
	     $("#"+contenitore).html(msg); 
	   }
    });
  };

	
function caricatabellapersonale(cbente,cbconsultorio,edtcognomenome,
																cbprofessioni,aziendautente,permesso,dest){
    $.ajax({
	   type: "POST",
	   url: "caricatabellapersonale.php",
	   data: "cbEnte="+cbente+"&cbConsultorio="+cbconsultorio.value
	  		+"&CbProfessioni="+cbprofessioni.value+"&edtCognomeNome="+edtcognomenome.value
				+"&Codazienda="+aziendautente+"&Permesso="+permesso,				
	   success: function(msg){
	     $("#"+dest).html(msg); 
	   }
    })
};

function caricaconsultori(cbente,cbconsultorio,edtcognomenome,
																cbprofessioni,aziendautente,permesso,dest,destpers){	
var aziendaloc;

if ((cbente == -1) && (aziendautente != -1))
  aziendaloc = aziendautente;
	else aziendaloc = cbente;

  $.ajax({
  type: "POST",
  url: "caricacomboconsultori.php",
  data: "codazienda="+aziendaloc+"&permesso="+permesso,
  success: function(msg){
    $("#"+dest).html(msg); 
   }
  })
  caricatabellapersonale(aziendaloc,cbconsultorio,edtcognomenome,
												cbprofessioni,aziendautente,permesso,destpers);
};	
		
/* controllo obbligatorietà dei campi */
function campiobbligatori(nomeform, controls, desc_controls )
{
	var i;
	var msg = '';
	
  for (i=0; i < controls.length; i++)
	  {
			elemento = controls[i];
			if (elemento.value == '')
				msg = msg + 'il campo "' + desc_controls[i] + '" e\' obbligatorio!\n';
		}		
	if (msg	!= '')
	  {
			alert(msg);
			return false;		
		}
	  return true;	
}
/************** ****** *********** ******/
function campiobbligatoricaso(assemblea)
{
	var i;
	var msg = '';
	
  if (document.getElementById('edtDataInizio').value == '')
		msg = msg + 'il campo data inizio e\' obbligatorio!\n';

  if (document.getElementById('memonote').value == '')
		msg = msg + 'il campo note e\' obbligatorio!\n';

  if (document.getElementById('txtprestazione').value == '-1')
		msg = msg + 'la prestazione e\' obbligatoria!\n';
  
  if (document.getElementById('edtnumpartecipanti').style.visibility == "visible")
    if (document.getElementById('edtnumpartecipanti').value == '')
	  msg = msg + 'il numero di partecipanti e\' obbligatoria!\n';
  
	if (msg	!= '')
	  {
			alert(msg);
			return false;		
		}
	  return true;	
}
/************** ****** *********** ******/
function numeropartecipanticaso(nomerecord)
{
	var i = 1;
	var trovato = false;
	var numero = 0;
	
	while (!trovato)
	  {			
			riga = document.getElementById(nomerecord+i);
			if (riga != null)
  			numero++;	
				else return numero;
		  i++;		
		}
	
}
/************** ****** *********** ******/
  function caricatabellaassistiti(indirizzo){
	$.ajax({
	   type: "POST",
	   url: indirizzo,
	   data: "edtCognome="+document.cercaassistiti.edtCognome.value + '&edtNome=' + document.cercaassistiti.edtNome.value + '&edtCodFisc=' + document.cercaassistiti.edtCodFisc.value + '&edtTesseraSan=' + document.cercaassistiti.edtTesseraSan.value,
	   success: function(msg){
		 $("#divTabAssistiti").html(msg); 
	   }
    })
  };
		
function caricatabellastatistiche(lnk, tipo, datadal, dataal, cbEnte, cbConsultorio, cbfiltro, dest){
    $.ajax({
	   type: "POST",
	   url: lnk,
	   data: "tipo="+tipo+'&datadal='+datadal+'&dataal='+dataal+'&cbEnte='+cbEnte+'&cbConsultorio='+cbConsultorio+'&cbFiltro='+cbfiltro,
	   success: function(msg){
	     $("#"+dest).html(msg); 
	   }
    })
};

function ottieniHTML(url, postdata) {
var HTML = 
     $.ajax({
		type: "POST",
		url: url,
		data: postdata,
		async: false
	}).responseText;
return HTML;
};

function Maschera_data(tasto) {

  return ((tasto>=96 && tasto<=105)|| /*0..9 tastierino numerico*/
	  	  (tasto>=48 && tasto<=57)||  /*0..9*/
		  (tasto==37)||(tasto==39)||  /*frecce sx, dx*/
		  (tasto==13)||(tasto==8)||   /*invio <-- */
		  (tasto==46)||(tasto==27)||  /*canc esc*/
		  (tasto==111)||(tasto==55)); /* "/" tastierino num, "/" normale*/
}

function ControlloDate(f, campodata1, campodata2, nomecampo1, nomecampo2) {
 var data1=f.elements[campodata1].value;
 var data2=f.elements[campodata2].value;
 if (data1=="" || data2=="") return true;
 var oggetto1=new Date(parseInt(data1.substr(6)), parseInt(data1.substr(3, 2),10), parseInt(data1.substr(0, 2)));
 var oggetto2=new Date(parseInt(data2.substr(6)), parseInt(data2.substr(3, 2),10), parseInt(data2.substr(0, 2)));
 if (oggetto2-oggetto1<0) {
  alert("Attenzione, il valore del campo '"+nomecampo2+"' e\' antecedente quello del campo '"+nomecampo1+"'.");
  f.elements[campodata2].focus();
	return false;
 }
 return true;
}

function ControllaCF(cf)
{
    var validi, i, s, set1, set2, setpari, setdisp;
	if( cf == '' )  return '';
    cf = cf.toUpperCase();
    if( cf.length != 16 )
        return "La lunghezza del codice fiscale non è\n"
        +"corretta: il codice fiscale dovrebbe essere lungo\n"
        +"esattamente 16 caratteri.\n";
    validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    for( i = 0; i < 16; i++ ){
        if( validi.indexOf( cf.charAt(i) ) == -1 )
            return "Il codice fiscale contiene un carattere non valido `" +
                cf.charAt(i) +
                "'.\nI caratteri validi sono le lettere e le cifre.\n";
    }
    set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
    setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
    s = 0;
    for( i = 1; i <= 13; i += 2 )
        s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
    for( i = 0; i <= 14; i += 2 )
        s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
    if( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
        return "Il codice fiscale non è corretto:\n"+
            "il codice di controllo non corrisponde.\n";
    return "";
}

function ControllaPIVA(pi)
{
    if( pi == '' )  return '';
    if( pi.length != 11 )
        return "La lunghezza della partita IVA non è\n" +
            "corretta: la partita IVA dovrebbe essere lunga\n" +
            "esattamente 11 caratteri.\n";
    validi = "0123456789";
    for( i = 0; i < 11; i++ ){
        if( validi.indexOf( pi.charAt(i) ) == -1 )
            return "La partita IVA contiene un carattere non valido `" +
                pi.charAt(i) + "'.\nI caratteri validi sono le cifre.\n";
    }
    s = 0;
    for( i = 0; i <= 9; i += 2 )
        s += pi.charCodeAt(i) - '0'.charCodeAt(0);
    for( i = 1; i <= 9; i += 2 ){
        c = 2*( pi.charCodeAt(i) - '0'.charCodeAt(0) );
        if( c > 9 )  c = c - 9;
        s += c;
    }
    if( ( 10 - s%10 )%10 != pi.charCodeAt(10) - '0'.charCodeAt(0) )
        return "La partita IVA non è valida:\n" +
            "il codice di controllo non corrisponde.\n";
    return '';
}

function Maschera_importo(tasto) {

  return ((tasto>=96 && tasto<=105)|| /*0..9 tastierino numerico*/
	  	  (tasto>=48 && tasto<=57)||  /*0..9*/
		  (tasto==37)||(tasto==39)||  /*frecce sx, dx*/
		  (tasto==13)||(tasto==8)||   /*invio <-- */
		  (tasto==46)||(tasto==27)||  /*canc esc*/
		  (tasto==110)||(tasto==190)); /* "." tastierino num, "." normale*/
}

function ImportoSbagliato(Importo) {

  punto = Importo.indexOf('.');

  if (punto == -1)
    return false;
	else {
		    decimali = Importo.substr(punto+1, Importo.length - punto);
			return decimali.length > 2;
	     };

}

function controlla_importo(campoimporto, tasto) {

  var Errore = false;

  if (isNaN(campoimporto.value) == true) {
    alert("Verificare l'importo inserito");
	return false;
  };

  if (campoimporto.value != '')
     if (ImportoSbagliato(campoimporto.value)) {
       Errore = true;
       alert('Valore errato: sono permessi solo 2 decimali !!! ');
	 };
	 
  return !Errore;

}
