// JScript source code
// Imposto il numero minimo di notti
var numero_giorno_minimo = 4 ;
    
function init()
{    
  //alert('sono in Init');
  $.datePicker.setDateFormat('ymd', '-');
	
	$('input#datadal').datePicker();
	$('input#dataal').datePicker();
	
  ImpostaData();
    
  //alert('imposto i bind per il data dal');
	// Imposto l'azione da fare sull'evendo onChange per la data dal
	$('input#datadal').bind('change',function(){ changeDateDataPicker($("input#datadal"),"DAl"); });
	$('select#Menuleft_DDAnnoDAl').bind('change',function(){ changeDateSelect($("input#datadal"),"DAl"); });
	$('select#Menuleft_DDMeseDAl').bind('change',function(){ changeDateSelect($("input#datadal"),"DAl"); });
	$('select#Menuleft_DDGiornoDAl').bind('change',function(){ changeDateSelect($("input#datadal"),"DAl"); });
	
  //alert('imposto i bind per il data al');
	// Imposto l'azione da fare sull'evendo onChange per la data al
	$('input#dataal').bind('change',function(){ changeDateDataPicker($("input#dataal"),"Al"); });
	$('select#Menuleft_DDAnnoAl').bind('change',function(){ changeDateSelect($("input#dataal"),"Al"); });
	$('select#Menuleft_DDMeseAl').bind('change',function(){ changeDateSelect($("input#dataal"),"Al"); });
	$('select#Menuleft_DDGiornoAl').bind('change',function(){ changeDateSelect($("input#dataal"),"Al"); });

}
function initPostBack()
{    
	// alert('sono in initPostBack');
	$.datePicker.setDateFormat('ymd', '-');
	
	$('input#datadal').datePicker();
	$('input#dataal').datePicker();
	
	var data_dal_format = $("select#Menuleft_DDAnnoDAl").val() + "-" + $("select#Menuleft_DDMeseDAl").val() + "-" + $("select#Menuleft_DDGiornoDAl").val();
	$("input#datadal").val(data_dal_format);
	var data_al_format = $("select#Menuleft_DDAnnoAl").val() + "-" + $("select#Menuleft_DDMeseAl").val() + "-" + $("select#Menuleft_DDGiornoAl").val();
	$("input#dataal").val(data_al_format);
	
	$('input#datadal').bind('change',function(){ changeDateDataPicker($("input#datadal"),"DAl"); });
	$('select#Menuleft_DDAnnoDAl').bind('change',function(){ changeDateSelect($("input#datadal"),"DAl"); });
	$('select#Menuleft_DDMeseDAl').bind('change',function(){ changeDateSelect($("input#datadal"),"DAl"); });
	$('select#Menuleft_DDGiornoDAl').bind('change',function(){ changeDateSelect($("input#datadal"),"DAl"); });
	
	$('input#dataal').bind('change',function(){ changeDateDataPicker($("input#dataal"),"Al"); });
	$('select#Menuleft_DDAnnoAl').bind('change',function(){ changeDateSelect($("input#dataal"),"Al"); });
	$('select#Menuleft_DDMeseAl').bind('change',function(){ changeDateSelect($("input#dataal"),"Al"); });
	$('select#Menuleft_DDGiornoAl').bind('change',function(){ changeDateSelect($("input#dataal"),"Al"); });
		
}

function Normalizza(stringa)
{
  if(stringa.toString().length < 2)
    return "0" + stringa;
  else
    return stringa;
}
    
    
    
function ImpostaData()
{
  
  //alert('Sono in Imposta Data');
  // Imposto la data di arrivo come data odierna
	var data_oggi = new Date();
	var data_oggi_format = data_oggi.getFullYear() + "-" + Normalizza(data_oggi.getMonth()+1) + "-" + Normalizza(data_oggi.getDate());
  
  $("input#datadal").val(data_oggi_format);
  changeDateDataPicker($("input#datadal"),"DAl");
  
  // Imposto la data di arrivo a distanza di "numero_giorno_minimo" dalla data odierna
  var data_domani = new Date(data_oggi.getFullYear(),data_oggi.getMonth(),data_oggi.getDate()+ numero_giorno_minimo );
	var data_domani_format = data_domani.getFullYear() + "-" + Normalizza(data_domani.getMonth()+1) + "-" + Normalizza(data_domani.getDate());
  $("input#dataal").val(data_domani_format);
  changeDateDataPicker($("input#dataal"),"Al");
}
		
		

function ImpostaDataArrivo()
{ 		  
  //alert('Sono in Imposta Data Arrivo');
  // Leggo i valori dei select per la data di arrivo
  anno = $("select#Menuleft_DDAnnoDAl").val();
  mese = $("select#Menuleft_DDMeseDAl").val()-1;
  giorno = $("select#Menuleft_DDGiornoDAl").val();
  
  //alert(anno +'-'+mese +'-'+giorno);
  // Calcolo il giorno di arrivo e creo una data valida per la data di arrivo
  giorno_successivo = Number( Number(giorno) + numero_giorno_minimo );
  var nuovaData = new Date(anno,mese,giorno_successivo);
  
  // Formatto la data di arrivo per inserirla nel campo text
  var data_domani_format = nuovaData.getFullYear() + "-" + Normalizza(nuovaData.getMonth()+1) + "-" + Normalizza(nuovaData.getDate());
	
  // Inserisco la data nel campo text e aggiorno i select
  $("input#dataal").val(data_domani_format);
  changeDateDataPicker($("input#dataal"),"Al");
}
			
			
			
function controlladate(datai,dataf)
{
  //alert('Sono in controlla date');
	var dd1=datai.split('/');
	var dd2=dataf.split('/');
	var data1= new Date(dd1[2],dd1[1]-1,dd1[0]);
	var dd1=data1.getTime();
	var data2= new Date(dd2[2],dd2[1]-1,dd2[0]);
	var dd2=data2.getTime();
	if (dd1>dd2)
		return false;
	else
		return true;
}
			
function controllaMinimoGiorni(datai,dataf)
{
  //alert('Sono in controlla minimo giorni');
	// Leggo i valori dei select per la data di arrivo
  anno = $("select#DDAnnoDAl").val();
  mese = $("select#DDMeseDAl").val()-1;
  giorno = $("select#DDGiornoDAl").val();
  
  anno_al = $("select#DDAnnoAl").val();
  mese_al = $("select#DDMeseAl").val()-1;
  giorno_al = $("select#DDGiornoAl").val();
  
  var data_al = new Date(anno_al,mese_al,giorno_al);
  
  // Calcolo il giorno minimo di arrivo senza che ci sia bisogno
  // di stampare il messaggio di alert
  giorno_minimo = Number( Number(giorno) + numero_giorno_minimo );
  var data_minima = new Date(anno,mese,giorno_successivo);
  
  if ( data_al < data_minima )
    return false;
  else
    return true;
}

function search(path,idlingua)
{
			
  //alert('Sono in search');
	IdNazione=document.Form1.DDNazione.value
	
	IdRegione=document.Form1.DDRegione.value
	
	IdLocalita=document.Form1.DDLocalita.value
	
	IdZona="0"
	
	IdOrdine="1"
	
	ggAl=document.Form1.DDGiornoAl.value
	mmAl=document.Form1.DDMeseAl.value
	aaAl=document.Form1.DDAnnoAl.value
	
	ggDal=document.Form1.DDGiornoDAl.value
	mmDal=document.Form1.DDMeseDAl.value
	aaDal=document.Form1.DDAnnoDAl.value
	
	DataDal=ggDal+"/"+mmDal+"/"+aaDal
	
	DataAl=ggAl+"/"+mmAl+"/"+aaAl
	
	NumeroPersone=document.Form1.DDPersona.value
	
	TipoRicerca="S"
	
	if(controlladate(DataDal,DataAl))
	{
		document.Form1.action= path + "default_new.aspx?&idLingua="+ idlingua +"&qstring="+IdNazione+"|"+IdRegione+"|"+IdLocalita+"|"+IdZona+"|"+IdOrdine+"|"+DataDal+"|"+DataAl+"|"+NumeroPersone+"|"+TipoRicerca+"|&CenterPage=frmCenter.aspx&qFunction=Ricerca";
		document.Form1.submit();
	}
	else
		alert("Departure date MUST be greater than Arrival date!");

}
			
			
	  
function CaricaSelect(annoFrom,annoTo)
{
  //alert('Sono in carica select');
  
  var data_oggi = new Date();
	var annoFrom = data_oggi.getFullYear();
	var annoTo = Number(Number(data_oggi.getFullYear())+1);
  
  // Riempio il combo degli anni
  for (i = annoFrom ;i<= annoTo ;i++)
  {
    $("#DDAnnoDAl").addOption(i, i);
  }

  // Riempio il combo dei mesi
  for (i=1;i<10;i++)
  {
    $("#DDMeseDAl").addOption("0"+i,"0"+i);
  }
  for (i=10;i<=12;i++)
  {
    $("#DDMeseDAl").addOption(i,i);
  }
 
  // Riempio il combo dei giorni
  for (i=1;i<10;i++)
  {
    $("#DDGiornoDAl").addOption("0"+i,"0"+i);
  }
  for (i=10;i<=31;i++)
  {
    $("#DDGiornoDAl").addOption(i,i);
  }

  // Copio i valori nel select per la data di arrivo
  
  $("#DDAnnoDAl").copyOptions("#DDAnnoAl", "all");
  $("#DDMeseDAl").copyOptions("#DDMeseAl", "all");
  $("#DDGiornoDAl").copyOptions("#DDGiornoAl", "all");
  
} 
	  


function changeDateDataPicker(obj,suffisso)
{ 
  //alert('Sono in changeDateDataPicker');
  // Aggiorno i select con i valori inseriti nel campo text
  $("#Menuleft_DDAnno"+suffisso).selectOptions(obj.val().substring(0,4), true);
  $("#Menuleft_DDMese"+suffisso).selectOptions(obj.val().substring(5,7), true);
  $("#Menuleft_DDGiorno"+suffisso).selectOptions(obj.val().substring(8,10), true);
  
  // Se sto manipolando la dataDAl aggiorno anche il campo DataAl 
  if (suffisso == "DAl")
    ImpostaDataArrivo();
}
		
		

function changeDateSelect(obj,suffisso)
{ 
  //alert('Sono in changeDateSelect');
  // Leggo i valori dei select 
  anno = $("select#Menuleft_DDAnno"+suffisso).val();
  mese = $("select#Menuleft_DDMese"+suffisso).val()-1;
  mmese = $("select#Menuleft_DDMese"+suffisso).val();
  giorno = $("select#Menuleft_DDGiorno"+suffisso).val();
  
  // Creo una variabile con la data odierna
  var dataOdierna = new Date();
  dataOdierna.setHours(0);
  dataOdierna.setMinutes(0);
  dataOdierna.setSeconds(0);
  dataOdierna.setMilliseconds(0);
  
  // Creo una variabile con la data letta nei select
  var nuovaData = new Date(anno,mese,giorno);
  
  // Verifico se la data inserita è successiva a quella odierna
  validate = (nuovaData >= dataOdierna);
  
  
  if (!validate)
  {
    // Se la data inserita è precedente segnalo l'errore
    alert("La data " + suffisso + " deve essere successiva a quella odierna");
    
    // Non aggiorno il campo text ma risistemo solamente i select
    changeDateDataPicker(obj,suffisso);
  }
  else
  {
    // Verifico se la data è formalmente corretta
    validate = ( (nuovaData.getFullYear() == anno) && (nuovaData.getMonth() == mese)  && (nuovaData.getDate() == giorno) );
    
    // Formatto la data per il campo di testo
    var data_format = anno + "-" + mmese + "-" + giorno;
    
    if (!validate)
    {
      // Se la data era sbagliata avviso l'utente
      alert("La data " + suffisso + " non è corretta");
      
      // Creo una data valida successiva a quella immessa dall'utente
      data_format = nuovaData.getFullYear() + "-" + Normalizza(nuovaData.getMonth()+1) + "-" + Normalizza(nuovaData.getDate())
      
      // Imposto il campo text ed aggiorno i select
      obj.val(data_format);
      changeDateDataPicker(obj,suffisso);
    }
    else
    {
      // Memorizzo nel campo text la data immessa nell'utente
      obj.val(data_format);
    }
  }
  
  // Se sto manipolando la dataDAl aggiorno anche il campo DataAl 
  if (suffisso == "DAl")
    ImpostaDataArrivo();
}




function RicaricaDate(data_dal_format,data_al_format)
{ 		  
  //alert('RicaricaDate '+ data_dal_format +'   ----->    '+data_al_format);  
	// Inserisco la data nel campo text e aggiorno i select
	$("input#datadal").val(data_dal_format);
  changeDateDataPicker($("input#datadal"),"DAl");
  
	$("input#dataal").val(data_al_format);
  changeDateDataPicker($("input#dataal"),"Al");
}


function init_pagamento()
{   
  var dataOdierna = new Date();
 
  $("#dp_anno").addOption("0","--");
  for (i = dataOdierna.getFullYear() ;i<= dataOdierna.getFullYear()+2 ;i++)
  {
    $("#dp_anno").addOption(i, i);
  }

  // Riempio il combo dei mesi
  $("#dp_mese").addOption("0","--");
  for (i=1;i<10;i++)
  {
    $("#dp_mese").addOption("0"+i,"0"+i);
  }
  for (i=10;i<=12;i++)
  {
    $("#dp_mese").addOption(i,i);
  }
 
  // Riempio il combo dei giorni
  $("#dp_giorno").addOption("0","--");
  for (i=1;i<10;i++)
  {
    $("#dp_giorno").addOption("0"+i,"0"+i);
  }
  for (i=10;i<=31;i++)
  {
    $("#dp_giorno").addOption(i,i);
  }

  $("#dp_giorno").selectOptions("0",true);
  $("#dp_mese").selectOptions("0",true);
  $("#dp_anno").selectOptions("0",true);
    
    
  //alert('sono in Init');
  $.datePicker.setDateFormat('ymd', '-');
	
	$('input#dataprevista').datePicker();
  //alert('imposto i bind per il data dal');
	// Imposto l'azione da fare sull'evendo onChange per la data dal
	$('input#dataprevista').bind('change',function(){ changeDateDataPicker_pagamento($("input#dataprevista")); });
	$('select#dp_giorno').bind('change',function(){ changeDateSelect_pagamento($("input#dataprevista")); });
	$('select#dp_mese').bind('change',function(){ changeDateSelect_pagamento($("input#dataprevista")); });
	$('select#dp_anno').bind('change',function(){ changeDateSelect_pagamento($("input#dataprevista")); });
	

  changeDateDataPicker_pagamento($("input#dataprevista"));
}

function changeDateDataPicker_pagamento(obj)
{ 
  //alert('Sono in changeDateDataPicker');
  // Aggiorno i select con i valori inseriti nel campo text
  $("#dp_anno").selectOptions(obj.val().substring(0,4), true);
  $("#dp_mese").selectOptions(obj.val().substring(5,7), true);
  $("#dp_giorno").selectOptions(obj.val().substring(8,10), true);
  
}

function changeDateSelect_pagamento(obj)
{ 
  //alert('Sono in changeDateSelect');
  // Leggo i valori dei select 
  anno = $("select#dp_anno").val();
  mese = $("select#dp_mese").val()-1;
  mmese = $("select#dp_mese").val();
  giorno = $("select#dp_giorno").val();
  
  // Creo una variabile con la data odierna
  var dataOdierna = new Date();
  dataOdierna.setHours(0);
  dataOdierna.setMinutes(0);
  dataOdierna.setSeconds(0);
  dataOdierna.setMilliseconds(0);
  
  // Creo una variabile con la data letta nei select
  var nuovaData = new Date(anno,mese,giorno);
  
  // Verifico se la data inserita è successiva a quella odierna
  validate = (nuovaData >= dataOdierna);
  
  
  if (!validate)
  {
    // Se la data inserita è precedente segnalo l'errore
    alert("La data deve essere successiva a quella odierna");
    
    // Non aggiorno il campo text ma risistemo solamente i select
    changeDateDataPicker_pagamento(obj);
  }
  else
  {
    // Verifico se la data è formalmente corretta
    validate = ( (nuovaData.getFullYear() == anno) && (nuovaData.getMonth() == mese)  && (nuovaData.getDate() == giorno) );
    
    // Formatto la data per il campo di testo
    var data_format = anno + "-" + mmese + "-" + giorno;
    
    if (!validate)
    {
      // Se la data era sbagliata avviso l'utente
      alert("La data  non è corretta");
      
      // Creo una data valida successiva a quella immessa dall'utente
      data_format = nuovaData.getFullYear() + "-" + Normalizza(nuovaData.getMonth()+1) + "-" + Normalizza(nuovaData.getDate())
      
      // Imposto il campo text ed aggiorno i select
      obj.val(data_format);
      changeDateDataPicker_pagamento(obj);
    }
    else
    {
      // Memorizzo nel campo text la data immessa nell'utente
      obj.val(data_format);
    }
  }
  
}



function init_listapagamenti(prefisso,suffisso,datepicker)
{   
  var dataOdierna = new Date();
  var annoCorrente = dataOdierna.getFullYear();
 
  for (i = dataOdierna.getFullYear() ;i<= dataOdierna.getFullYear()+2 ;i++)
  {
    $('#' + prefisso + 'anno' + suffisso).addOption(i, i);
  }

  // Riempio il combo dei mesi
  for (i=1;i<10;i++)
  {
    $('#' + prefisso + 'mese' + suffisso).addOption("0"+i,"0"+i);
  }
  for (i=10;i<=12;i++)
  {
    $('#' + prefisso + 'mese' + suffisso).addOption(i,i);
  }
 
  // Riempio il combo dei giorni
  for (i=1;i<10;i++)
  {
    $('#' + prefisso + 'giorno' + suffisso).addOption("0"+i,"0"+i);
  }
  for (i=10;i<=31;i++)
  {
    $('#' + prefisso + 'giorno' + suffisso).addOption(i,i);
  }

  //alert('sono in Init');
  $.datePicker.setDateFormat('ymd', '-');
	
	$('input#' + datepicker ).datePicker({startDate:'01/01/2007'});
	$('input#' + datepicker ).bind('change',function(){ changeDateDataPicker_listapagamenti($('input#' + datepicker ),prefisso,suffisso); });
	$('select#' + prefisso + 'giorno' + suffisso).bind('change',function(){ changeDateSelect_listapagamenti($('input#' + datepicker ),prefisso,suffisso); });
	$('select#' + prefisso + 'mese' + suffisso).bind('change',function(){ changeDateSelect_listapagamenti($('input#' + datepicker ),prefisso,suffisso); });
	$('select#' + prefisso + 'anno' + suffisso).bind('change',function(){ changeDateSelect_listapagamenti($('input#' + datepicker ),prefisso,suffisso); });
	if ($('input#' + datepicker ).val()=='')
    $('input#' + datepicker ).val(dataOdierna.getFullYear() + "-" + Normalizza(dataOdierna.getMonth()+1) + "-" + Normalizza(dataOdierna.getDate()))
  changeDateDataPicker_listapagamenti($('input#' + datepicker ),prefisso,suffisso);

  
/*
  var dataOdierna = new Date();
  var annoCorrente = dataOdierna.getFullYear();
 
  for (i = dataOdierna.getFullYear() ;i<= dataOdierna.getFullYear()+2 ;i++)
  {
    $("#dt_anno_dal").addOption(i, i);
  }

  // Riempio il combo dei mesi
  for (i=1;i<10;i++)
  {
    $("#dt_mese_dal").addOption("0"+i,"0"+i);
  }
  for (i=10;i<=12;i++)
  {
    $("#dt_mese_dal").addOption(i,i);
  }
 
  // Riempio il combo dei giorni
  for (i=1;i<10;i++)
  {
    $("#dt_giorno_dal").addOption("0"+i,"0"+i);
  }
  for (i=10;i<=31;i++)
  {
    $("#dt_giorno_dal").addOption(i,i);
  }

 
  $("#dt_anno_dal").copyOptions("#dt_anno_al", "all");
  $("#dt_mese_dal").copyOptions("#dt_mese_al", "all");
  $("#dt_giorno_dal").copyOptions("#dt_giorno_al", "all");
  
  $("#dt_anno_dal").copyOptions("#dp_anno_al", "all");
  $("#dt_mese_dal").copyOptions("#dp_mese_al", "all");
  $("#dt_giorno_dal").copyOptions("#dp_giorno_al", "all");
  
  $("#dt_anno_dal").copyOptions("#dp_anno_dal", "all");
  $("#dt_mese_dal").copyOptions("#dp_mese_dal", "all");
  $("#dt_giorno_dal").copyOptions("#dp_giorno_dal", "all");  
    
  //alert('sono in Init');
  $.datePicker.setDateFormat('ymd', '-');
	
	$('input#datapagamento_dal').datePicker({startDate:'01/01/2007'});
	$('input#datapagamento_dal').bind('change',function(){ changeDateDataPicker_listapagamenti($("input#datapagamento_dal"),'dt_','_dal'); });
	$('select#dt_giorno_dal').bind('change',function(){ changeDateSelect_listapagamenti($("input#datapagamento_dal"),'dt_','_dal'); });
	$('select#dt_mese_dal').bind('change',function(){ changeDateSelect_listapagamenti($("input#datapagamento_dal"),'dt_','_dal'); });
	$('select#dt_anno_dal').bind('change',function(){ changeDateSelect_listapagamenti($("input#datapagamento_dal"),'dt_','_dal'); });
	if ($('input#datapagamento_dal').val()=='')
    $('input#datapagamento_dal').val(dataOdierna.getFullYear() + "-" + Normalizza(dataOdierna.getMonth()+1) + "-" + Normalizza(dataOdierna.getDate()))
  changeDateDataPicker_listapagamenti($("input#datapagamento_dal"),'dt_','_dal');
  
  
	$('input#datapagamento_al').datePicker({startDate:'01/01/2007'});
	$('input#datapagamento_al').bind('change',function(){ changeDateDataPicker_listapagamenti($("input#datapagamento_al"),'dt_','_al'); });
	$('select#dt_giorno_al').bind('change',function(){ changeDateSelect_listapagamenti($("input#datapagamento_al"),'dt_','_al'); });
	$('select#dt_mese_al').bind('change',function(){ changeDateSelect_listapagamenti($("input#datapagamento_al"),'dt_','_al'); });
	$('select#dt_anno_al').bind('change',function(){ changeDateSelect_listapagamenti($("input#datapagamento_al"),'dt_','_al'); });
	if ($('input#datapagamento_al').val()=='')
    $('input#datapagamento_al').val(dataOdierna.getFullYear() + "-" + Normalizza(dataOdierna.getMonth()+1) + "-" + Normalizza(dataOdierna.getDate()))
  changeDateDataPicker_listapagamenti($("input#datapagamento_al"),'dt_','_al');
  
  
	$('input#dataprevista_dal').datePicker({startDate:'01/01/2007'});
	$('input#dataprevista_dal').bind('change',function(){ changeDateDataPicker_listapagamenti($("input#dataprevista_dal"),'dp_','_dal'); });
	$('select#dp_giorno_dal').bind('change',function(){ changeDateSelect_listapagamenti($("input#dataprevista_dal"),'dp_','_dal'); });
	$('select#dp_mese_dal').bind('change',function(){ changeDateSelect_listapagamenti($("input#dataprevista_dal"),'dp_','_dal'); });
	$('select#dp_anno_dal').bind('change',function(){ changeDateSelect_listapagamenti($("input#dataprevista_dal"),'dp_','_dal'); });
	if ($('input#dataprevista_dal').val()=='')
    $('input#dataprevista_dal').val(dataOdierna.getFullYear() + "-" + Normalizza(dataOdierna.getMonth()+1) + "-" + Normalizza(dataOdierna.getDate()))
  changeDateDataPicker_listapagamenti($("input#dataprevista_dal"),'dp_','_dal');
  
  
	$('input#dataprevista_al').datePicker({startDate:'01/01/2007'});
	$('input#dataprevista_al').bind('change',function(){ changeDateDataPicker_listapagamenti($("input#dataprevista_al"),'dp_','_al'); });
	$('select#dp_giorno_al').bind('change',function(){ changeDateSelect_listapagamenti($("input#dataprevista_al"),'dp_','_al'); });
	$('select#dp_mese_al').bind('change',function(){ changeDateSelect_listapagamenti($("input#dataprevista_al"),'dp_','_al'); });
	$('select#dp_anno_al').bind('change',function(){ changeDateSelect_listapagamenti($("input#dataprevista_al"),'dp_','_al'); });
	if ($('input#dataprevista_al').val()=='')
    $('input#dataprevista_al').val(dataOdierna.getFullYear() + "-" + Normalizza(dataOdierna.getMonth()+1) + "-" + Normalizza(dataOdierna.getDate()))
  changeDateDataPicker_listapagamenti($("input#dataprevista_al"),'dp_','_al');
  */
}


function changeDateDataPicker_listapagamenti(obj,prefisso,suffisso)
{ 
  //alert('Sono in changeDateDataPicker');
  // Aggiorno i select con i valori inseriti nel campo text
  $('#' + prefisso + 'anno' + suffisso).selectOptions(obj.val().substring(0,4), true);
  $('#' + prefisso + 'mese' + suffisso).selectOptions(obj.val().substring(5,7), true);
  $('#' + prefisso + 'giorno' + suffisso).selectOptions(obj.val().substring(8,10), true);
  
}



function changeDateSelect_listapagamenti(obj,prefisso,suffisso)
{ 
  //alert('Sono in changeDateSelect');
  // Leggo i valori dei select 
  anno = $('select#' + prefisso + 'anno' + suffisso).val();
  mese = $('select#' + prefisso + 'mese' + suffisso).val()-1;
  mmese = $('select#' + prefisso + 'mese' + suffisso).val();
  giorno = $('select#' + prefisso + 'giorno' + suffisso).val();
  
  // Creo una variabile con la data odierna
  var dataOdierna = new Date();
  dataOdierna.setHours(0);
  dataOdierna.setMinutes(0);
  dataOdierna.setSeconds(0);
  dataOdierna.setMilliseconds(0);
  
  // Creo una variabile con la data letta nei select
  var nuovaData = new Date(anno,mese,giorno);
  
  // Verifico se la data inserita è successiva a quella odierna
  //validate = (nuovaData >= dataOdierna);
  validate = true
  
  if (!validate)
  {
    // Se la data inserita è precedente segnalo l'errore
    alert("La data deve essere successiva a quella odierna");
    
    // Non aggiorno il campo text ma risistemo solamente i select
    changeDateDataPicker_listapagamenti(obj,prefisso,suffisso);
  }
  else
  {
    // Verifico se la data è formalmente corretta
    validate = ( (nuovaData.getFullYear() == anno) && (nuovaData.getMonth() == mese)  && (nuovaData.getDate() == giorno) );
    
    // Formatto la data per il campo di testo
    var data_format = anno + "-" + mmese + "-" + giorno;
    
    if (!validate)
    {
      // Se la data era sbagliata avviso l'utente
      alert("La data  non è corretta");
      
      // Creo una data valida successiva a quella immessa dall'utente
      data_format = nuovaData.getFullYear() + "-" + Normalizza(nuovaData.getMonth()+1) + "-" + Normalizza(nuovaData.getDate())
      
      // Imposto il campo text ed aggiorno i select
      obj.val(data_format);
      changeDateDataPicker_listapagamenti(obj,prefisso,suffisso);
    }
    else
    {
      // Memorizzo nel campo text la data immessa nell'utente
      obj.val(data_format);
    }
  }
  
}
