function onchangeCategoria(el,idCategoriaAppartenenzaSpec) {
  if (!el || !idCategoriaAppartenenzaSpec) return true;

  var rf = document.getElementById("requiredfields").value;
  var rfnew = rf;

  var val = el.value;

  var row1 = document.getElementById('boxCategoriaAppartenenzaDurata');
  var row2 = document.getElementById('boxCategoriaAppartenenzaDiploma');
  
  

  if (val==idCategoriaAppartenenzaSpec)
  {
    rfnew = rf + ",categoriaAppartenenzaDurata";

    if (GE)
    {
      row1.style.display = 'table-row';
      row2.style.display = 'table-row';
    }
    else
    {
      row1.style.display = 'block';
      row2.style.display = 'block';
    }
  }
  else
  {
    rfnew = rf.replace(",categoriaAppartenenzaDurata", "", "g");

    row1.style.display = 'none';
    row2.style.display = 'none';
  }

  document.getElementById("requiredfields").value = rfnew;
}


function onchangeCategoriaEx(el,idCategoriaAppartenenzaSpec,idCategoriaAppartenenzaA,idCategoriaAppartenenzaC) {
  if (!el || !idCategoriaAppartenenzaSpec || !idCategoriaAppartenenzaA || !idCategoriaAppartenenzaC) return true;
  

  var rf = document.getElementById("requiredfields").value;
  var rfnew = rf;

  var val = el.value;

  var row1 = document.getElementById('boxCategoriaAppartenenzaDurata');
  var row2 = document.getElementById('boxCategoriaAppartenenzaDiploma');
  var row3 = document.getElementById('boxCategoriaAppartenenzaCentroImpiego');
  var row4 = document.getElementById('boxCategoriaAppartenenzaFileAttestazione');
  

  if (val==idCategoriaAppartenenzaSpec)
  {
    rfnew = rf + ",categoriaAppartenenzaDurata";

    if (GE)
    {
      row1.style.display = 'table-row';
      row2.style.display = 'table-row';
    }
    else
    {
      row1.style.display = 'block';
      row2.style.display = 'block';
    }
  }
  else
  {
    rfnew = rf.replace(",categoriaAppartenenzaDurata", "", "g");

    row1.style.display = 'none';
    row2.style.display = 'none';
  }

  if ((val==idCategoriaAppartenenzaA) || (val==idCategoriaAppartenenzaC))
  {
    rfnew = rf + ",categoriaAppartenenzaCentroImpiego,fileAllegatoAttestazione";

    if (GE)
    {
      row3.style.display = 'table-row';
      row4.style.display = 'table-row';
    }
    else
    {
      row3.style.display = 'block';
      row4.style.display = 'block';
    }
  }
  else
  {
    rfnew = rf.replace(",categoriaAppartenenzaCentroImpiego,fileAllegatoAttestazione", "", "g");

    row3.style.display = 'none';
    row4.style.display = 'none';
  }




  document.getElementById("requiredfields").value = rfnew;
}




function onchangeTipologia(el) {	
  if (!el) return true;

  var val = el.value;

  var row2 = document.getElementById('tipologiaDurata2');

  if (val=='' || val=='1')
  {
    row2.style.display = 'none';
  }
  else if (val=='2')
  {
    if (GE)
      row2.style.display = 'table-row';
    else
      row2.style.display = 'block';
  }
}

function onchangeOrario(el) {	
  if (!el) return true;

  var val = el.value;

  var row = document.getElementById('orarioLavoroOre');

  if (val=='' || val=='1')
  {
    row.style.display = 'none';
  }
  else if (val=='2')
  {
    if (GE)
      row.style.display = 'table-row';
    else
      row.style.display = 'block';
  }
}

function isValidOreSettimana(el) {

  var isvalid = true;
  var val = el.value;

  if (val!="") {
     if (isNaN(val)) 
     {
       isvalid = false;
     }
     else
     {
       if (val<9 || val>36) isvalid = false;
     }
  }

  if (!isvalid)
  {
    // TODO: resource bundle    
    alert("Il campo accetta solo valori numerici compresi tra 9 e 36.");
    el.value = "";
  }
}


function isValidValidita(el1, el2) {

	// el1 = dataFineValidita
	// el2 = numeroMesi

  var isvalid = true;
  var isvalidnumber = true;

	var val1 = "";
  var val2 = "";
	if (el1) val1 = el1.value;
	if (el2) val2 = el2.value;

  if (val2!="") {
     if (isNaN(val2)) 
     {
       isvalidnumber = false;
     }
  }
  
  if (!isvalidnumber)
  {
    // TODO: resource bundle    
    var msg = "Il campo 'mesi n.' accetta solo valori numerici.";
    alert(msg);
    
    el2.value = "";
  }
  else
  {
  	if (val1!="" && val2!="") isvalid = false;
  	
	  if (!isvalid)
	  {
	    // TODO: resource bundle    
	    var msg = "Compilare solo uno tra i campi 'fino al' e 'mesi n.' relativi alla validità della graduatoria.\n";
		  msg += "Non specificando nessun valore sarà assunto un periodo di validità pari a 3 mesi.";
	    alert(msg);
	    
	    el2.value = "";
	  }
	}
}

function isValidLavoratori(el) {

  var isvalid = true;
  var val = el.value;

  if (val!="") {
     if (isNaN(val)) 
     {
       isvalid = false;
     }
  }

  if (!isvalid)
  {
    // TODO: resource bundle    
    alert("Il campo 'Numero lavoratori da assumere' accetta solo valori numerici.");
    el.value = "";
  }
}
