/*
'******************************************************************************
'
' Nome:			checkform.js
' Autore:		Lorenzo Boni
' Versione:		27-02-01
' Contenuto:	Script per Verifica Riempimento Campi
' Modifiche:	CheckSearch()	
'******************************************************************************
*/

/*----------------------------------------------------------
function y2k (number)
------------------------------------------------------------
	Gestisce il cambio di millennio	
Input 
	number	: numerico anno
Output
	numerico formattato
------------------------------------------------------------*/	
function y2k(number){ 
	return (number < 1000) ? number + 1900 : number; }
 
/*----------------------------------------------------------
function isDate (input,separator,required) 
------------------------------------------------------------
	Controlla la validitā di una data in formato gg/mm/yyyy
Input	
	input		: valore del campo data
	separator	: carattere separatore valido
	required	: 0 campo opzionale
				  1 campo obbligatorio
Output
	true o false
------------------------------------------------------------*/
function isDate (input,separator,required) {
   	var dd,mm,yy,test;
   	if (isEmpty(input)){
		if (required == 1)
			return (false);
		else
			return (true);}
    if (input.length == 10) {
        if (input.substring(2,3) == separator && input.substring(5,6) == separator) {
            dd	= input.substring(0,2);
            mm	= input.substring(3,5);
            yy  = input.substring(6,10);
            test = new Date(yy,mm-1,dd);
            if (yy == y2k(test.getYear()) && (mm-1 == test.getMonth()) && (dd == test.getDate())) 
                return true;}}
    return false;
}

/*----------------------------------------------------------
function isNotNumber(input,required) 
------------------------------------------------------------
	Verifica i campi numerici
Input	
	input		: valore del campo numerico
	required	: 0 campo opzionale
				  1 campo obbligatorio
Output
	true o false
------------------------------------------------------------*/
function isNotNumber(input,required){
	if (isEmpty(input)){
		if (required == 1)
			return (true);
		else
			return (false);}
	if (isNaN(input))
		return (true);
	return (false);
}

/*----------------------------------------------------------
function isEmpty(input) 
------------------------------------------------------------
	Verifica che i campi di testo obbligatori siano riempiti
Input	
	input		: valore del campo di testo
Output
	true o false
------------------------------------------------------------*/
function isEmpty(input){
	if (input == "")
		return (true);
	else {
		for (var i=0; i < input.length; i++){
			if (input.charCodeAt(i) != 32)
				return (false);}
		return(true);}}

/*----------------------------------------------------------
function isExactLength(input,numb) :
------------------------------------------------------------
	Si assicura che il campo di testo (obbligatorio)
	sia esattemente della lunghezza richiesta.
	Non accetta spazi vuoti.
Input	
	input		: valore del campo telefono
	numb		: numero di caratteri richiesto
Output
	true o false
------------------------------------------------------------*/
function isExactLength(input,numb) {
	if (isEmpty(input)){
		return (false);}
	for (var i=0; i < input.length; i++){
		if (input.charCodeAt(i) == 32){
			return (false);}}
	if (input.length != numb){
		return (false);}
	return(true);}

/*----------------------------------------------------------
function CheckTxtArea(txt,name,num,by) :
------------------------------------------------------------
	Si assicura che il campo textarea
	non superi la lunghezza massima.
Input	
	el		: oggetto textarea
	name	: nome del campo
	num		: numero massimo di caratteri 
	by		: 0 - onkeypress - 1 - onblur	
------------------------------------------------------------*/
function CheckTxtArea(el,name,num,by){
	var str= el.value;
	var str2;
	if (by == 0){
		if (str.length == num){
			alert("Il limite massimo del campo " + name + " č di " + num + " caratteri.");
			window.event.returnValue= false;}
		return (true)}
	if (by == 1){		
		if (str.length > num){
			alert("Il limite massimo del campo " + name + " č di " + num + " caratteri.\nIl testo verrā automaticamente ridotto.");
			str2 = str.substr(0,num);
			el.value = str2;}
		return (true)}}


/*----------------------------------------------------------
function isNotPhone(input,required) :
------------------------------------------------------------
	Si assicura che il numero di telefono sia composto solo 
	da caratteri congrui (numeri, ,-,/)
Input	
	input		: valore del campo telefono
	required	: 0 campo opzionale
				  1 campo obbligatorio
Output
	true o false
------------------------------------------------------------*/
function isNotPhone(input,required) {
	var mychar;
	if (isEmpty(input)){
		if (required == 1)
			return (true);
		else
			return (false);}
	for(i=0; i < input.length; i++){
		mychar = input.charAt(i);
		if (isNaN(mychar)){
			if (mychar != "/" && mychar != "-" && input.charCodeAt(i) != 32){
				return (true);}}}
	return(false);
}


/*----------------------------------------------------------
function CheckSearch()
------------------------------------------------------------
	Controlla Form per Index Server	
------------------------------------------------------------*/
function CheckSearch() {
	var frm,str;
	var frm = document.frmSearch;
	var str = frm.txt.value;
	if (isEmpty(str)){
		alert("Inserire un criterio di ricerca per favore!");	
		frm.txt.focus();
		return false;}
	frm.submit();	
        return (true);}

/*----------------------------------------------------------
function ViewImg(myUrl)
------------------------------------------------------------
	Visualizza immagine in finestra
------------------------------------------------------------*/
function ViewImg(myUrl){
	var win;
	var winOpts;
	winOpts = "menubar=no,toolbar=no,scrollbars=yes,top=10,left=50";
	win = window.open(myUrl,'',winOpts);}
	
/*---------------------------------------------------------------------
function WinOpen(myUrl,myWid,myHei,myMenu,myStatus,myScrolls,myTool)
-----------------------------------------------------------------------
	Apre un file in una nuova finestra personalizzata
-----------------------------------------------------------------------*/
function WinOpen(myUrl,myWid,myHei,myMenu,myStatus,myScrolls,myTool){
	var win;
	var winOpts;
	if (myWid == '') myWid=600;
	if (myHei == '') myHei=400;
	if (myMenu == '') myMenu='yes';
	if (myStatus == '') myStatus='yes';
	if (myScrolls == '') myScrolls='yes';
	if (myTool == '') myTool='yes';
	winOpts = "top=10,left=50,width=" + myWid + ",height=" + myHei
		+ ",menubar=" + myMenu + ",status=" + myStatus + ",scrollbars="
		+ myScrolls + ",toolbar=" + myTool;
	win = window.open(myUrl,'',winOpts);}	


/*-----------------------------------------------------------------------
	Apre un sito in una nuova finestra personalizzata
-----------------------------------------------------------------------*/
function fuori()
        {
        alert("Questa selezione attiva un collegamento esterno\nal sito del Ministero dell'Ambiente e della Tutela del Territorio"); 
        }

