var error = 0;
var msg =""

function data(campo,nome_campo) { 
var risult= false;
 
if ((campo.value.length!=0)&&(!campo.value.match(/(([012][123456789])|([123][01]))\/(([0][123456789])|([1][012]))\/([12]\d{3})/)))
  {
   error+=1;
   msg+="- la data inserita nel campo "+nome_campo+" è errata\n"; 
   return false;
  }
else { 
   if (formatoData(campo.value))
	 return true;
   else
	 {
      error+=1;
	  msg+="- la data inserita nel campo "+nome_campo+" è errata\n"; 
	  return false;
	 }
	}
}

function checkData(str) {
if ((str.length!=0)&&(!str.match(/(([012][123456789])|([123][01]))\/(([0][123456789])|([1][012]))\/([12]\d{3})/))) 
  return false;
else
  return formatoData(str);
}

		
function compare_date(data1,data2,nome_campo1,nome_campo2){	
	
		var anno2=(data2.value.substring(6,10)+data2.value.substring(3,5)+data2.value.substring(0,2));
		var anno1=(data1.value.substring(6,10)+data1.value.substring(3,5)+data1.value.substring(0,2));

		if((parseInt(anno2)<=parseInt(anno1)))
			{
			error+=1;			
			msg+="---la "+nome_campo1+" non può essere maggiore o uguale alla "+nome_campo2+"\n";
			return false;
			}
			else {
				return true;
			}
			
}
	
function compare_date_eq(data1,data2,nome_campo1,nome_campo2){	
		
		var anno2=(data2.value.substring(6,10)+data2.value.substring(3,5)+data2.value.substring(0,2));
		var anno1=(data1.value.substring(6,10)+data1.value.substring(3,5)+data1.value.substring(0,2));

		if((parseInt(anno2)<parseInt(anno1)))
			{
			error+=1;			
			msg+="---la "+nome_campo1+" non può essere maggiore della "+nome_campo2+"\n";
			return false;
			}
			else {
				return true;
			}
			
}
	
function date_p(data1,data2,n_campo){	
	if ((data1.value.length==0)&&(data2.value.length!=0)){
			error+=1;			
			msg+="---manca la "+n_campo;
			return false;
	}
	else{
		return true;
	}	
}

function alerterror()
{
if (error > 0)
{alert(msg);
 msg ="Sono stati individuati degli errori relativi alle date inserite.\n";
 msg +="Si prega di correggerli prima di continuare.\n\n";
 error=0;
 return true;
 }
else
{
return false;
}
}

function trim(s) {
     return s.replace(/^\s+/, '').replace(/\s+$/, '');
}

function min(x,y) {
  if (x<y) 
    return x
  else 
    return y
}

function formatoData(s) {
  var str=trim(s);
  
  if (str.length==0) 
    return true;
  
  
  var bisestile;
  
  var g=str.substring(0,2);
  var m=str.substring(3,5);
  var a=str.substring(6,10);
  
  var giorno=parseInt(g,10);
  var mese=parseInt(m,10);
  var anno=parseInt(a,10);
    
  if (((anno % 4 == 0) && (anno % 100 != 0)) || (anno % 400 == 0))
      bisestile=true
  else 
      bisestile=false;
      
  if (mese==2)
  {
    if (bisestile) 
    {
      if ((giorno>=1) && (giorno<=29))
         return true;
      else
         return false;
    }
    else
    {
      if ((giorno>=1) && (giorno<=28))
         return true;
      else
         return false;
    }    
  }
  if ((mese==1)||(mese==3)||(mese==5)||(mese==7)||(mese==8)||(mese==10)||(mese==12))
  {
    if ((giorno>=1) && (giorno<=31))
       return true;
    else
       return false;
  }
  if ((mese==4)||(mese==6)||(mese==9)||(mese==11))
  {
    if ((giorno>=1) && (giorno<=30))
       return true;
    else
       return false;
  }
}	


//Disabilta i validator di un template di un datagrid
//in funsione se la riga è attivata o meno
function DisabilitaValidator(namechk,nameData)
	{
		allv = document.all.tags("SPAN")  
		for (i =0; i < allv.length; i++)
		{
			v=allv[i];
			if(v.controltovalidate!= null)
			{
				vid=v.id;
				s=vid.split("_");
				chk= s[0] + "__" + s[2] + "_" + namechk;
				if (s[0]== nameData)
				{
					ck= document.getElementById(chk); 
					if (!ck.checked)	
						ValidatorEnable(v,false);
					else
						ValidatorEnable(v,true);
				}
			}
		}
	}
	
//modifica alla funzione precedente per "Registro Scarico"
function EnableValidator(idChk, AllDoc)
{
	var pref = idChk.substring(0,idChk.length-12);
	if (document.getElementById(idChk).checked)
	{
		if (AllDoc == "All")
		{
			document.getElementById(pref + "RequiredFieldValidator6").enabled = true;
			document.getElementById(pref + "RequiredFieldValidator7").enabled = true;
			document.getElementById(pref + "RegularExpressionValidator4").enabled = true;
			document.getElementById(pref + "RegularExpressionValidator5").enabled = true;
		}
		else
		{
			document.getElementById(pref + "RequiredFieldValidator4").enabled = true;
			document.getElementById(pref + "RequiredFieldValidator5").enabled = true;
			document.getElementById(pref + "RegularExpressionValidator2").enabled = true;
			document.getElementById(pref + "RegularExpressionValidator3").enabled = true;
		}	
	}
	else
	{
		if (AllDoc == "All")
		{
			document.getElementById(pref + "RequiredFieldValidator6").enabled = false;
			document.getElementById(pref + "RequiredFieldValidator7").enabled = false;
			document.getElementById(pref + "RegularExpressionValidator4").enabled = false;
			document.getElementById(pref + "RegularExpressionValidator5").enabled = false;
		}
		else
		{
			document.getElementById(pref + "RequiredFieldValidator4").enabled = false;
			document.getElementById(pref + "RequiredFieldValidator5").enabled = false;
			document.getElementById(pref + "RegularExpressionValidator2").enabled = false;
			document.getElementById(pref + "RegularExpressionValidator3").enabled = false;
		}	
	}	
}
	
				
function AssegnaQuantita(chkId)
{
	if (document.getElementById(chkId).checked == true)
	{	
		var pref = chkId.substring(0,chkId.length-18);
		/*switch (chkId.length)
		{
			case 33:
				var pref= chkId.substring(0,15);
				break;
			case 34:
				var pref= chkId.substring(0,16);
				break;
			case 35:
				var pref= chkId.substring(0,17);
				break;
			case 36:
				var pref= chkId.substring(0,18);
				break;
		}*/
		if (document.getElementById(pref + "txtQuantitaScarico").value != null)
		{
			var ddl = document.getElementById("ddlTipoMateriale");
			if (ddl.options[1].selected == true) //materiale individuale
			{
				var qta = document.getElementById(pref + "txtQuantitaScarico").value;
				for (var i=0; i<document.getElementById(pref + "dgAllievi").rows.length-1; i++) 
				{
					document.getElementById(pref + "dgAllievi__ctl" + (i+2) + "_chkSelectAll").checked = true
					document.getElementById(pref + "dgAllievi__ctl" + (i+2) + "_txtAllQtaDetail").value = qta;
					EnableValidator(pref + "dgAllievi__ctl" + (i+2) + "_chkSelectAll", "All");
				}				
			}	
			else //materiale collettivo
			{
				var qta = document.getElementById(pref + "txtQuantitaScarico").value;
				for (var i=0; i<document.getElementById(pref + "dgDocenti").rows.length-1; i++) 
				{
					document.getElementById(pref + "dgDocenti__ctl" + (i+2) + "_chkSelectDoc").checked = true
					document.getElementById(pref + "dgDocenti__ctl" + (i+2) + "_txtDocQtaDetail").value = qta;
					EnableValidator(pref + "dgDocenti__ctl" + (i+2) + "_chkSelectDoc", "Doc");
				}	
			}
		}
		else
		{
			alert("Inserire un valore non nullo!");
			document.getElementById(chkId).checked = false;
		}
	}
}

function AssegnaData(chkId)
{
	if (document.getElementById(chkId).checked == true)
	{	
		var pref = chkId.substring(0,chkId.length-14);
		/*switch (chkId.length)
		{
			case 29:
				var pref= chkId.substring(0,15);
				break;
			case 30:
				var pref= chkId.substring(0,16);
				break;
			case 31:
				var pref= chkId.substring(0,17);
				break;
			case 32:
				var pref= chkId.substring(0,18);
				break;
		}*/
		if (document.getElementById(pref + "txtDataConsegna").value != null)
		{
			var data = document.getElementById(pref + "txtDataConsegna").value;
			var ddl = document.getElementById("ddlTipoMateriale");
			if (ddl.options[1].selected == true) //materiale individuale
			{
				for (var i=0; i<document.getElementById(pref + "dgAllievi").rows.length-1; i++) 
				{
					document.getElementById(pref + "dgAllievi__ctl" + (i+2) + "_chkSelectAll").checked = true
					document.getElementById(pref + "dgAllievi__ctl" + (i+2) + "_txtAllDataDetail").value = data;
					EnableValidator(pref + "dgAllievi__ctl" + (i+2) + "_chkSelectAll", "All");
				}				
			}	
			else //materiale collettivo
			{
				for (var i=0; i<document.getElementById(pref + "dgDocenti").rows.length-1; i++) 
				{
					document.getElementById(pref + "dgDocenti__ctl" + (i+2) + "_chkSelectDoc").checked = true
					document.getElementById(pref + "dgDocenti__ctl" + (i+2) + "_txtDocDataDetail").value = data;
					EnableValidator(pref + "dgDocenti__ctl" + (i+2) + "_chkSelectDoc", "Doc");
				}	
			}
		}
		else
		{
			alert("Inserire un valore non nullo!");
			document.getElementById(chkId).checked = false;
		}
	}
}

function CalcolaIva(field, Id)
{
	if (field == 'percentuale')
	{
		var pref =Id.substring(0,Id.length-17);
		if ((document.getElementById(Id).value != '') && (document.getElementById(pref + "txtImporto").value != ''))
		{
			var str_perc = new String(document.getElementById(Id).value);
			var str_imp = new String(document.getElementById(pref + "txtImporto").value)
			str_perc = str_perc.replace(",", ".");
			str_imp = str_imp.replace(",", ".");
			document.getElementById(pref + "txtImportoIva").value = (Number(str_imp)/100)*Number(str_perc); 
			document.getElementById(pref + "txtImportoIva").value = document.getElementById(pref + "txtImportoIva").value.replace(".", ",");
		}
		else
			document.getElementById(pref + "txtImportoIva").value = '';	
	}
	else //field = 'importo'
	{
		var pref =Id.substring(0,Id.length-10);
		if ((document.getElementById(Id).value != '') && (document.getElementById(pref + "txtImporto").value != ''))
		{
			var str_imp = new String(document.getElementById(Id).value);
			var str_perc = new String(document.getElementById(pref + "txtPercentualeIva").value)
			str_perc = str_perc.replace(",", ".");
			str_imp = str_imp.replace(",", ".");
			document.getElementById(pref + "txtImportoIva").value = (Number(str_imp)/100)*Number(str_perc); 
			document.getElementById(pref + "txtImportoIva").value = document.getElementById(pref + "txtImportoIva").value.replace(".", ",");	
		}
		else
			document.getElementById(pref + "txtImportoIva").value = '';	
	}
}

function controllopersona(nominativo,parentela,data_nascita,professione,reddito,reddito_auto){
var nom,par,dat,pro,red,red_a;
nom=trim(nominativo.value);
par=trim(parentela.value);
dat=trim(data_nascita.value);
pro=trim(professione.value);
red=trim(reddito.value);
red_a=trim(reddito_auto.value);
if ((nom=='')||(par=='-1')||(dat=='')||(pro=='-1')||(red=='')||(red_a=='')){
	alert("Dati di un componente della famiglia non completi.");
	return false;
}
if (!(nom.match(/^\D+(\s\D+){1,2}$/))){
	alert("Nomimativo non corretto.");
	nominativo.focus();
	return false;
}
if (!data(data_nascita,"")){
	alert("Data di nascita non corretta.");
	data_nascita.focus();
	return false;
}
if (!(red.match(/^\d{1,4}(\,\d{1,2})?$/))) {
	alert("Inserire il reddito in modo corretto");
	reddito.focus();
	return false;
}
if (!(red_a.match(/^\d{1,4}(\,\d{1,2})?$/))) {
	alert("Inserire il reddito autonomo in modo corretto");
	reddito_auto.focus();
	return false;		
}
return true;
}


/*
		//assegna i valori contenuti in opportuni array ad una serie di ddl
		function PopolaDDL()
		{
			alert();
			var i;
			var j;
			var oCompl;
			var oOb;
			var oAsse;
			var OMis;
			var temp;
			for (i=0; i<document.getElementById("dgCharts").rows.length-2; i++)
			{						
				//ddlComplemento
				oCompl = document.createElement("OPTION");
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").add(oCompl);
				oCompl.text = "";
				oCompl.value = "";
				temp = complemento[0];
				for (j=0; j<temp.length; j++)
				{
					oCompl = document.createElement("OPTION");
					oCompl.text = temp[j];
					oCompl.value = temp[j];
					document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").add(oCompl);
				}
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").options[0].selected = true;
				//ddlObiettivo	
				oOb = document.createElement("OPTION");
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").add(oOb);
				oOb.text = "";
				oOb.value = "";
				temp = obiettivo[0];
				for (j=0; j<temp.length; j++)
				{
					oOb = document.createElement("OPTION");
					oOb.text = temp[j];
					oOb.value = temp[j];
					document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").add(oOb);
				}
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").options[0].selected = true;
				//ddlAsse
				oAsse = document.createElement("OPTION");
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").add(oAsse);
				oAsse.text = "";
				oAsse.value = "";
				temp = asse[0];
				for (j=0; j<temp.length; j++)
				{
					oAsse = document.createElement("OPTION");
					oAsse.text = temp[j];
					oAsse.value = temp[j];
					document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").add(oAsse);
				}
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").options[0].selected = true;
				//ddlMisura
				oMis = document.createElement("OPTION");
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").add(oMis);
				oMis.text = "";
				oMis.value = "";
				temp = misura[0];
				for (j=0; j<temp.length; j++)
				{
					oMis = document.createElement("OPTION");
					oMis.text = temp[j];
					oMis.value = temp[j];
					document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").add(oMis);
				}
				document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").options[0].selected = true;
			}
		}
		
*/
			
			//funzioni di modifica dei dati contenuti in alcuni ddl

			function AggiornaDdlMisura(ddlId, flag)
			{
				if (flag)
				{
					switch (ddlId.length)
					{
						case 24:
							var pref= ddlId.substring(0,15);
							break;
						case 25:
							var pref= ddlId.substring(0,16);
							break;
						case 26:
							var pref= ddlId.substring(0,17);
							break;
						case 27:
							var pref= ddlId.substring(0,18);
							break;
					}
					document.getElementById(pref + "hMisura").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].value;
					document.getElementById(pref + "hMisuraDes").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].text;
				}
			}
			
			
			function AggiornaDdlAsse(ddlId, flag)
			{
				switch (ddlId.length)
				{
					case 22:
						var pref= ddlId.substring(0,15);
						break;
					case 23:
						var pref= ddlId.substring(0,16);
						break;
					case 24:
						var pref= ddlId.substring(0,17);
						break;
					case 25:
						var pref= ddlId.substring(0,18);
						break;
				}
				document.getElementById(pref + "hAsse").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].value;
				document.getElementById(pref + "hAsseDes").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].text;
				var aAsse = misura[2];
				var aMis = misura[3];
				var aDes = misura[4];
				var oMis;
				var i;
				var len = document.getElementById(pref + "ddlMisura").options.length;
				var addOption = 0;
				//rimuovo tutte le opzioni
				for (i=1; i<len; i++)
				{
					document.getElementById(pref + "ddlMisura").remove(document.getElementById(pref + "ddlMisura").options.length-1);
				}
				//aggiungo le opzioni necessarie
				if (document.getElementById(ddlId).selectedIndex == 0)
				{
					for (i=0; i<aMis.length; i++)
					{
						oMis = document.createElement("OPTION");
						oMis.text = aDes[i];
						oMis.value = aMis[i];
						document.getElementById(pref + "ddlMisura").add(oMis);
						addOption++;
					}
					document.getElementById(pref + "ddlMisura").style.visibility='hidden';
					document.getElementById(pref + "hEM").value = "F";
				}
				else
				{
					for (i=0; i<aMis.length; i++)
					{
						if (aAsse[i] == document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].value)
						{
							oMis = document.createElement("OPTION");
							oMis.text = aDes[i];
							oMis.value = aMis[i];
							document.getElementById(pref + "ddlMisura").add(oMis);
							addOption++;
						}
					}
					if (flag)
					{
						if (addOption != 0)
						{
							document.getElementById(pref + "ddlMisura").style.visibility='visible';
							document.getElementById(pref + "hEM").value = "T";
						}
						else
						{
							alert("Non esistono misure corrispondenti all'asse selezionato!");
							document.getElementById(pref + "ddlMisura").style.visibility='hidden';
							document.getElementById(pref + "hEM").value = "F";
						}
					}
				}
				if (flag)
				{
					document.getElementById(pref + "ddlMisura").options[0].selected = true;
					AggiornaDdlMisura(pref + "ddlMisura",true);
				}
			}
			
			
			function AggiornaDdlObiettivo(ddlId, flag)
			{
				switch (ddlId.length)
				{
					case 27:
						var pref= ddlId.substring(0,15);
						break;
					case 28:
						var pref= ddlId.substring(0,16);
						break;
					case 29:
						var pref= ddlId.substring(0,17);
						break;
					case 30:
						var pref= ddlId.substring(0,18);
						break;
				}
				document.getElementById(pref + "hObiettivo").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].value;
				document.getElementById(pref + "hObiettivoDes").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].text;
				var aOb = asse[1];
				var aAsse = asse[2];
				var aDes = asse[3];
				var oAsse;
				var i;
				var len = document.getElementById(pref + "ddlAsse").options.length;
				var addOption = 0;
				//rimuovo tutte le opzioni
				for (i=1; i<len; i++)
				{
					document.getElementById(pref + "ddlAsse").remove(document.getElementById(pref + "ddlAsse").options.length-1);
				}
				//aggiungo le opzioni necessarie
				if (document.getElementById(ddlId).selectedIndex == 0)
				{
					for (i=0; i<aAsse.length; i++)
					{
						oAsse = document.createElement("OPTION");
						oAsse.text = aDes[i];
						oAsse.value = aAsse[i];
						document.getElementById(pref + "ddlAsse").add(oAsse);
						addOption++;
					}
					document.getElementById(pref + "ddlAsse").style.visibility='hidden';
					document.getElementById(pref + "hEA").value = "F";
					document.getElementById(pref + "ddlMisura").style.visibility='hidden';
					document.getElementById(pref + "hEM").value = "F";
				}
				else
				{
					for (i=0; i<aAsse.length; i++)
					{
						if (aOb[i] == document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].value)
						{
							oAsse = document.createElement("OPTION");
							oAsse.text = aDes[i];
							oAsse.value = aAsse[i];
							document.getElementById(pref + "ddlAsse").add(oAsse);
							addOption++;
						}
					}
					if (flag)
					{
						if (addOption != 0)
						{
							document.getElementById(pref + "ddlAsse").style.visibility='visible';
							document.getElementById(pref + "hEA").value = "T";
							document.getElementById(pref + "ddlMisura").style.visibility='hidden';
							document.getElementById(pref + "hEM").value = "F";
						}
						else
						{
							alert("Non esistono assi corrispondenti all'obiettivo selezionato!");
							document.getElementById(pref + "ddlAsse").style.visibility='hidden';
							document.getElementById(pref + "hEA").value = "F";
							document.getElementById(pref + "ddlMisura").style.visibility='hidden';
							document.getElementById(pref + "hEM").value = "F";
						}
					}
				}
				if (flag)
				{
					if (addOption != 0)
					{
						document.getElementById(pref + "ddlAsse").options[0].selected = true;
						AggiornaDdlAsse(pref + "ddlAsse",true);
					}
					else
					{
						document.getElementById(pref + "ddlAsse").options[0].selected = true;
						document.getElementById(pref + "hAsse").value = "";
						document.getElementById(pref + "ddlMisura").options[0].selected = true;
						document.getElementById(pref + "hMisura").value = "";
					}
				}
			}
			
			
			function AggiornaDdlComplemento(ddlId, flag)
			{
				
				switch (ddlId.length)
				{
					case 29:
						var pref= ddlId.substring(0,15);
						break;
					case 30:
						var pref= ddlId.substring(0,16);
						break;
					case 31:
						var pref= ddlId.substring(0,17);
						break;
					case 32:
						var pref= ddlId.substring(0,18);
						break;
				}
				document.getElementById(pref + "hComplemento").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].value;
				document.getElementById(pref + "hComplementoDes").value = document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].text;
				var aCompl = obiettivo[0];
				var aOb = obiettivo[1];
				var aDes = obiettivo[2];
				var oOb;
				var i;
				var len = document.getElementById(pref + "ddlObiettivo").options.length;
				var addOption = 0;
				//rimuovo tutte le opzioni
				for (i=1; i<len; i++)
				{
					document.getElementById(pref + "ddlObiettivo").remove(document.getElementById(pref + "ddlObiettivo").options.length-1);
				}
				//aggiungo le opzioni necessarie
				if (document.getElementById(ddlId).selectedIndex == 0)
				{
					for (i=0; i<aOb.length; i++)
					{
						oOb = document.createElement("OPTION");
						oOb.text = aDes[i];
						oOb.value = aOb[i];
						document.getElementById(pref + "ddlObiettivo").add(oOb);
						addOption++;
					}
					document.getElementById(pref + "ddlObiettivo").style.visibility='hidden';
					document.getElementById(pref + "hEO").value = "F";
					document.getElementById(pref + "ddlAsse").style.visibility='hidden';
					document.getElementById(pref + "hEA").value = "F";
					document.getElementById(pref + "ddlMisura").style.visibility='hidden';
					document.getElementById(pref + "hEM").value = "F";
				}
				else
				{
					for (i=0; i<aOb.length; i++)
					{
						if (aCompl[i] == document.getElementById(ddlId).options[document.getElementById(ddlId).selectedIndex].value)
						{
							oOb = document.createElement("OPTION");
							oOb.text = aDes[i];
							oOb.value = aOb[i];
							document.getElementById(pref + "ddlObiettivo").add(oOb);
							addOption++;
						}
					}
					if (flag)
					{
						if (addOption != 0)
						{
							document.getElementById(pref + "ddlObiettivo").style.visibility='visible';
							document.getElementById(pref + "hEO").value = "T";
							document.getElementById(pref + "ddlAsse").style.visibility='hidden';
							document.getElementById(pref + "hEA").value = "F";
							document.getElementById(pref + "ddlMisura").style.visibility='hidden';
							document.getElementById(pref + "hEM").value = "F";
						}
						else
						{
							alert("Non esistono obiettivi corrispondenti al complemento di programmazione selezionato!");
							document.getElementById(pref + "ddlObiettivo").style.visibility='hidden';
							document.getElementById(pref + "hEO").value = "F";
							document.getElementById(pref + "ddlAsse").style.visibility='hidden';
							document.getElementById(pref + "hEA").value = "F";
							document.getElementById(pref + "ddlMisura").style.visibility='hidden';
							document.getElementById(pref + "hEM").value = "F";
						}
					}
				}
				if (flag)
				{
					if (addOption != 0)
					{
						document.getElementById(pref + "ddlObiettivo").options[0].selected = true;
						AggiornaDdlObiettivo(pref + "ddlObiettivo",true);
					}
					else
					{
						document.getElementById(pref + "ddlObiettivo").options[0].selected = true;
						document.getElementById(pref + "hObiettivo").value = "";
						document.getElementById(pref + "ddlAsse").options[0].selected = true;
						document.getElementById(pref + "hAsse").value = "";
						document.getElementById(pref + "ddlMisura").options[0].selected = true;
						document.getElementById(pref + "hMisura").value = "";
					}
				}
			}
			
			function AggiornaDDL() 
			{
				if ((document.getElementById("EditMode").value=="true") || (document.getElementById("EditMode").value=="stand by"))
				{
					for (var i=0; i<document.getElementById("dgCharts").rows.length-2; i++)
					{
						//per ciascuna riga della griglia e per ciascun ddl
						//-si seleziona l'opzione del ddl corrispondente al valore dell'opportuno campo hidden 
						//-si assegna un valore all'attributo "visibility" del ddl (corrispondente al valore contenuto nell'opportuno campo hidden)
						//-si effettua l'eventuale chiamata alla funzione di aggiornamento
						var j = 0;
						var find = false;
						while ((j<document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").options.length)&&(!find))
						{
							if (document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").options[j].value == document.getElementById("dgCharts__ctl"+ (i+3) +"_hComplemento").value)
							{
								find = true;
								document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").options[j].selected = true;
							}
							j++;
						}
						if (document.getElementById("dgCharts__ctl"+ (i+3) +"_hEC").value=="T")
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").style.visibility='visible';
							AggiornaDdlComplemento("dgCharts__ctl"+ (i+3) +"_ddlComplemento",false);
						}
						else
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlComplemento").style.visibility='hidden';
						}	
						j = 0;
						find = false;
						while ((j<document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").options.length)&&(!find))
						{
							if (document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").options[j].value == document.getElementById("dgCharts__ctl"+ (i+3) +"_hObiettivo").value)
							{
								find = true;
								document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").options[j].selected = true;
							}
							j++;
						}
						if (document.getElementById("dgCharts__ctl"+ (i+3) +"_hEO").value=="T")
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").style.visibility='visible';
							AggiornaDdlObiettivo("dgCharts__ctl"+ (i+3) +"_ddlObiettivo",false);
						}
						else
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlObiettivo").style.visibility='hidden';
						}	
						j = 0;
						find = false;
						while ((j<document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").options.length)&&(!find))
						{
							if (document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").options[j].value == document.getElementById("dgCharts__ctl"+ (i+3) +"_hAsse").value)
							{
								find = true;
								document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").options[j].selected = true;
							}
							j++;
						}
						if (document.getElementById("dgCharts__ctl"+ (i+3) +"_hEA").value=="T")
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").style.visibility='visible';
							AggiornaDdlAsse("dgCharts__ctl"+ (i+3) +"_ddlAsse",false);
						}
						else
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlAsse").style.visibility='hidden';
						}
						j = 0;
						find = false;
						while ((j<document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").options.length)&&(!find))
						{
							if (document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").options[j].value == document.getElementById("dgCharts__ctl"+ (i+3) +"_hMisura").value)
							{
								find = true;
								document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").options[j].selected = true;
							}
							j++;
						}
						if (document.getElementById("dgCharts__ctl"+ (i+3) +"_hEM").value=="T")
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").style.visibility='visible';
							AggiornaDdlMisura("dgCharts__ctl"+ (i+3) +"_ddlMisura",false);
						}
						else
						{
							document.getElementById("dgCharts__ctl"+ (i+3) +"_ddlMisura").style.visibility='hidden';
						}
					}
				} 
			}
			//FUNZIONE CHE CONTROLLA LA VALIDITA'DEI VALIDATOR PASSATI NELL'ARRAY - RESTIUSCE FALSE IN CASO DI ERRORE
			function chkValidator(validator,Clientstr,NoSummary)
			{
				if (Clientstr==null)
				{
					Clientstr='';
				}
				var Salva=true;
				for (i=0; i<Page_Validators.length; i++) 
					Page_Validators[i].isvalid = true; 
				for(var i=0;i<validator.length;i++)
				{
				
					if(window.document.getElementById(Clientstr +validator[i])!=null)
					{
						ValidatorValidate(window.document.getElementById(Clientstr +validator[i]));
						if( window.document.getElementById(Clientstr +validator[i]).isvalid==false)
						{
							Page_IsValid=false;
							Salva=false;
							
						} 
					} 
				}
				if (Salva) Page_IsValid=true;
				//null = false;
				if(!NoSummary) 
				{
					//alert('summary');	
					ValidationSummaryOnSubmit();
				}
				else
				{
					//alert('NOsummary')	;
				}
				return Salva;
				
			
			}
			
		 function getEl(id)
			{
				return document.getElementById(id);
			}	