<!--

//CONTROLLA IL MAXLENGHT DELLE TEXTAREA
function jCheckLengthTextArea(textarea) {
	if ( textarea.value.length > textarea.maxlength ) {
		textarea.value = textarea.value.substr(0, textarea.maxlength);
		//alert("Attenzione, si è raggiunta la lunghezza limite di "+textarea.maxlength+" caratteri per questo campo.");
		Istruzione.innerHTML = "Attenzione, si è raggiunta la lunghezza limite di "+textarea.maxlength+" caratteri per questo campo.";
		return false;
	}
	else {
		Istruzione.innerHTML = "";
	}
return true;
}

//##########################

//FUNZIONE PER TRASFORMARE UNA DATA NEL FORMATO mm/aaaa RICHIAMATA DA Check_MeseAnno	
function FormatDate(dt) {
	vet = dt.split("/");
	if (parseInt(vet[0],10) < 10){
		vet[0] = "0" + parseInt(vet[0],10)
	}
	return vet[0] + "/" + vet[1]
}

//##########################

//******************************************

//	Descrizione			: CONTROLLA CHE IL FORMATO DI UNA DATA SIA MM/AAAA
//	Parametri in input	: oggetto della form contenente una data
//	Parametri di output : valore booleano : torna false per una data che non sia nel formato corretto + alert

//*********************************************
//IN QUESTO CASO IL PARAMETRO MESE RAPPRESENTA
//IL NUMERO DI UN FASCICOLO
function Controlla_MeseAnno(str) {
	
	//SPLITTA LA STRINGA CON IL CARATTERE "/"
	s = str.split("/");
	
	//UNA DATA CORRETTA (MM/AAAA) DEVE CONTENERE DUE SPLIT
	if (s.length == 2) {

		mm = s[0];
		aaaa = s[1];

		//TRATTANDO FASCICOLI E NON MESE ACCETTIAMO COME PRIMO VALORE 
		//DI ARRAY FINO A 15
		if (mm > 0 && mm < 16 && aaaa.length == 4 && aaaa > 1900) {
			return true;
		}
	}
	return false ;		
}

//###################################

//********************************************************
//  Descrizione	        : Funziione che controlla l'inserimento della data nel formato corretto(integrando la funzione "Controlla_MeseAnno")
//						  senza l'obbligatorietà in caso di mancato inserimento
//	Parametri in input	: oggetto della form contenente il nome del campo Data , nome da visualizzare nell'alert
//	Parametri di output : valore booleano : false per data errata o mancato inserimento + alert

//********************************************************	
	
function Check_MeseAnno(objdata,campo) {
	
	len=objdata.value.length
	if(len>0) 
	{	
		if ( Controlla_MeseAnno(objdata.value)==false ) {
			//alert('Il dato inserito nel campo ' + campo + ' non è nel formato corretto.\nInserire il formato corretto n°/aaaa');
			Istruzione.innerHTML = "Il dato inserito nel campo "+campo+" non è nel formato corretto. Inserire il formato corretto n°/aaaa.";
			objdata.focus();
			return false;
		}
		else {
			objdata.value = FormatDate(objdata.value)
			return true;
		}
	}
	return true;
}

//********************************************************
//  Descrizione	        : Fa il rapporto tra due date, controllando maggiore,uguale,minore.
//	Parametri in input	: oggetto della form contenente il nome dei due campi data
//	Parametri di output : valore booleano : false se data2 è minore o uguale di data1 
//********************************************************

function Confronta_Data(Data1, Data2) {
	d1 = Data1.split("/");
	d2 = Data2.split("/");
	
	//alert(parseInt(d2[1],10) + ' ' + parseInt(d1[1],10) + ' ' + parseInt(d2[0],10) + ' ' + parseInt(d1[0],10));
	
	// Confronta l'anno
	if ( parseInt(d2[1],10) > parseInt(d1[1],10) ) {
		//alert('anno ok');
		return true;				
	}
	else {
		//alert('anno NO o uguale');
		//Se l'anno è uguale
		if ( parseInt(d2[1],10) == parseInt(d1[1],10) ) {
	
			// Confronta il mese
			if ( parseInt(d2[0],10) >= parseInt(d1[0],10) ) {
				//alert('mese ok');
				return true;
			}
			else {
				//alert('mese NO');
				return false;
			}
		}
		else {
			//alert('anno NO');
			return false;
		}	
	}		  	
}

//##########################

//SULL'ONCHANGE DI FASCICOLO
function Fascicolo_OnClick(obj) {

	Istruzione.innerHTML = "";
	
	if (obj.Ric_ID_Fascicolo.value != "null") {		
		obj.Ric_ID_Anno.value = "null";
		obj.Ric_Inizio.value = "";
		obj.Ric_Inizio.disabled = true;
		obj.Ric_Fine.value = "";
		obj.Ric_Fine.disabled = true;
	}
	else {
		obj.Ric_Inizio.disabled = false;
		obj.Ric_Fine.disabled = false;								
	}
}

//SULL'ONCHANGE DI ANNO  
function Anno_OnClick(obj) {

	Istruzione.innerHTML = "";
	
	if (obj.Ric_ID_Anno.value != "null") {		
		obj.Ric_ID_Fascicolo.value = "null";
		obj.Ric_Inizio.value = "";
		obj.Ric_Inizio.disabled = true;
		obj.Ric_Fine.value = "";
		obj.Ric_Fine.disabled = true;
	}
	else {
		obj.Ric_Inizio.disabled = false;
		obj.Ric_Fine.disabled = false;								
	}
}

//##########################

//VERIFICA IL TIPO DI RICERCA EFFETTUATA
function VerificaRichiesta(obj) {

	if ((obj.Ric_Inizio.value == "") && (obj.Ric_Fine.value == "")) {
	
		if (jSpaceString(obj.Ric_Testo)== true) {
			var testo = 'true';
			if ((obj.Ric_ID_Argomento.value == "null") && (obj.Ric_ID_Tipologia.value == "null")) {
				Istruzione.innerHTML = "Indicare almeno un Argomento o una Tipologia di contenuto nei criteri di ricerca.";
				return false;	
			}	
		}
		else {
			obj.Ric_Testo.value = "";
			obj.Ric_Testo.focus; 
			var testo = 'false';
		}
		if ((testo == 'false') && (obj.Ric_ID_Argomento.value == "null") && (obj.Ric_ID_Fascicolo.value == "null") && (obj.Ric_ID_Anno.value == "null")) {
			Istruzione.innerHTML = "Indicare almeno un Argomento, un Fascicolo o un Anno nei criteri di ricerca.";
			return false;	
		}		
	}	
		
	if (obj.Ric_Inizio.value != "") {
		if(!Check_MeseAnno(obj.Ric_Inizio,'DAL FASCICOLO')) {			
			return false;
		}		
    }
    if (obj.Ric_Fine.value != "") {		
		if(!Check_MeseAnno(obj.Ric_Fine,'AL FASCICOLO')) {			
			return false;
		}
    }
    if (obj.Ric_Inizio.value != "") {
		if (obj.Ric_Fine.value == "") {
			Istruzione.innerHTML = "Attenzione: indicare un numero di fine ricerca.";
			obj.Ric_Fine.focus();
			return false;
		}
    }
    if (obj.Ric_Fine.value != "") {
		if (obj.Ric_Inizio.value == "") {
			Istruzione.innerHTML = "Attenzione: indicare un numero di inizio ricerca.";
			obj.Ric_Inizio.focus();
			return false;
		}
    }
    if ((obj.Ric_Inizio.value != "") && (obj.Ric_Fine.value != "")) {
		if (Confronta_Data(obj.Ric_Inizio.value, obj.Ric_Fine.value)== false) {
			Istruzione.innerHTML = "Attenzione: il numero di fine ricerca deve essere più recente di quello di inizio.";
			obj.Ric_Inizio.focus();
			return false;	
		}
	}
	
	if ((obj.Ric_Inizio.value != "") && (obj.Ric_Fine.value != "")) {
		if (obj.Ric_ID_Testata.value == "null") {
			Istruzione.innerHTML = "Attenzione: per una ricerca sul periodo di pubblicazione occorre selezionare una testata.";
			obj.Ric_ID_Testata.focus();
			return false;	
		}
	}           	
	return true;
}

//##########################

//SOTTOFUNZIONE CHE SOSTITUISCE I CARATTERI USATA DALLE 2 SOTTO
function subReplaceChars( temp, filterOut, filterIn ) {
	while (temp.indexOf(filterOut)>-1)
	{
		pos= temp.indexOf(filterOut);
		temp = "" + (temp.substring(0, pos) + filterIn + temp.substring((pos + filterOut.length), temp.length));
	}
	return temp ;
}

//FUNZIONE PER LANCIARE UN RICERCA SUGLI ARTICOLI
//DIRETTAMENTE DAI LINK(autori,argomenti,citati) DELL'ARTICOLO VISUALIZZATO
//USATA IN VISUALIZZA.ASP E PIANO.ASP
function Ricerca(testo,link) {
	//Parola chiave per la ricerca	
	testo = subReplaceChars( testo, "^|^", " " );	
	document.InputForm.Ric_Testo.value = testo;
	//annulliamo i parametri di ricerca e elenco impostati e
	//prepariamo la paginazione del nuovo elenco con quelli di default
	document.InputForm.ID_Sort.value = 3;
	document.InputForm.ID_Ordina.value = 2;
	document.InputForm.CampiElenco_Articoli.value = "";
	document.InputForm.CampiRicerca_Articoli.value = "";
	document.InputForm.Keiwords.value = "";
	document.InputForm.action = link;
	document.InputForm.submit();
}

//##########################

//FUNZIONE PER LANCIARE UNA NUOVA RICERCA MANTENENDO
//GLI STESSI PARAMETRI.USATA IN ELENCO.ASP E ELENCOPIANI.ASP
function CambiaRicerca(link) {
	//annulliamo i parametri di elenco impostati e
	//prepariamo la paginazione del nuovo elenco con quelli di default
	document.InputForm.ID_Sort.value = 3;
	document.InputForm.ID_Ordina.value = 2;
	document.InputForm.CampiElenco_Articoli.value = "";
	//manteniamo i parametri di ricerca e le Keiwords
	//document.InputForm.CampiRicerca_Articoli.value = "";
	//document.InputForm.Keiwords.value = "";
	document.InputForm.action = link;
	document.InputForm.submit();
}

//##########################

//RICARICA LA PAGINA DI RICERCA E
//QUINDI IL COMBO DEI FASCICOLI
//SULL'ONCHANGE DEL COMBO TESTATE 
function Ricarica_OnClick(obj) {
	obj.action = "Ricerca.asp";
	obj.submit();
}

//##########################

function jSpaceString(stringa) {
	if ((stringa.value.charAt(0) == "\r")||(stringa.value.charAt(0)==" ")||(stringa.value.charAt(0)=="")) {
		//vuoto il primo carattere della stringa passata
		return false;
	}	
	else {		
		return true;	
	}	
}

//##########################

//-->