// script per select

function selectArgomento(field,fieldselect) {
	field.value=fieldselect.options[fieldselect.selectedIndex].value
}

// script di utilities per le ricerche

function pattern(ricerca, label_field) {
	
	if(!label_field) {
 		ricerca.value="%"+ricerca.value+"%"; }
	else {
		ricerca.value="%"+label_field.value+"%" ;
    }	
}


// script di utilities per le date

function checkrange(data_inserita_da,data_inserita_a) {
 	var datefield = data_inserita_da;
	if (!chkdate(data_inserita_da)) {
 		datefield.select();
		alert("La data inserita non e' valida.");
 		datefield.focus();
 		return false;
 	}else {
 		datefield = data_inserita_a;
 		if (!chkdate(data_inserita_a)) {
	 		datefield.select();
			alert("La data inserita non e' valida.");
	 		datefield.focus();
	 		return false;
	 	}else {
	 		return true;
    		}
    	}
    	
}


function checkdate(data_inserita) {

 	var datefield = data_inserita;
	if (!chkdate(data_inserita)) {
 		datefield.select();
		alert("La data inserita non e' valida.");
 		datefield.focus();
 		return false;
 	}else {
 		return true;
    	}
    	
}

function chkdate(data_inserita) {
 	//var strDatestyle = "US"; //United States date style
 	var strDatestyle = "EU";  //European date style
 	var dataformattata;
 	var strDate;
 	var strDateArray;
 	var strDay;
 	var strMonth;
 	var strYear;
 	var strDay0;
 	var strMonth0;
 	var strYear0;
 	var intday;
 	var intMonth;
 	var intYear;
 	var booFound = false;
 	var datefield = data_inserita;
 	var strSeparatorArray = new Array("/"," ",",","-");
 	var intElementNr;
 	var err = 0;
 	var strMonthArray = new Array(12);
 	strMonthArray[0] = "Gen";
 	strMonthArray[1] = "Feb";
 	strMonthArray[2] = "Mar";
 	strMonthArray[3] = "Apr";
 	strMonthArray[4] = "Mag";
 	strMonthArray[5] = "Giu";
 	strMonthArray[6] = "Lug";
 	strMonthArray[7] = "Ago";
 	strMonthArray[8] = "Set";
 	strMonthArray[9] = "Ott";
 	strMonthArray[10] = "Nov";
 	strMonthArray[11] = "Dic";
 	strDate = datefield.value;
 	if (strDate.length < "1" ) {
 		data_inserita.value="";
 		return true;
 	}
 	for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
 		if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
 			strDateArray = strDate.split(strSeparatorArray[intElementNr]);
 			if (strDateArray.length != 3) {
 				err = 1;
 				return false;
 			}else {
 				if(strDateArray[0] !=null ){
 					strDay = strDateArray[0];}else{return false;
 				}
 				if(strDateArray[1] !=null ){
 					strMonth  = strDateArray[1];
 				}else{
 					return false;
 				}
 				if(strDateArray[2] !=null ){
 					strYear  = strDateArray[2];
 				}else{
 					return false;
 				}
 
 				//strMonth = strDateArray[1];
 				//strYear = strDateArray[2];
 			}
			 booFound = true;
    		}
 	}
 	if (booFound == false) {
 		if (strDate.length>5) {
 			if(strDate.substr(0, 2) != null ){
 				strDay  = strDate.substr(0, 2) ;
 			} else{
 				return false;
 			}
 			if(strDate.substr(2, 2) != null ){
 				strMonth  = strDate.substr(2, 2) ;
 			} else{
 				return false;
 			}
 			if(strDate.substr(4) != null ){
 				strYear  = strDate.substr(4)
 			} else{
 				return false;
 			}
 
 
 			//strDay = strDate.substr(0, 2);
 			//strMonth = strDate.substr(2, 2);
 			//strYear = strDate.substr(4);
    		}
 	}
 
 	if(strYear != null){
 		if (strYear.length == 2) {
 			strYear = "19" + strYear;
 		}
 
 		if (strYear.length == 1) {
 			strYear = "200" + strYear;
 		}
  		if (strYear.length == 3) {
  			strYear = "1" + strYear;
 		}
 	}else{
 		return false;
 	}
 
 
 	// US style
 	if (strDatestyle == "US") {
 		strTemp = strDay;
 		strDay = strMonth;
 		strMonth = strTemp;
 	}
 	intday = parseInt(strDay, 10);
 	if (isNaN(intday)) {
 		err = 2;
 		return false;
 	}
 	intMonth = parseInt(strMonth, 10);
 	if (isNaN(intMonth)) {
 		for (i = 0;i<12;i++) {
 			if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
 				intMonth = i+1;
 				strMonth = strMonthArray[i];
 				i = 12;
    			}
 		}
 		if (isNaN(intMonth)) {
 			err = 3;
 			return false;
    		}
 	}
 	intYear = parseInt(strYear, 10);
 	if (isNaN(intYear)) {
 		err = 4;
 		return false;
 	}
 	if (intMonth>12 || intMonth<1) {
 		err = 5;
 		return false;
 	}
 	if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
 		err = 6;
 		return false;
 	}
 	if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
 		err = 7;
 		return false;
 	}
 	if (intMonth == 2) {
 		if (intday < 1) {
 			err = 8;
 			return false;
 		}
 		if (LeapYear(intYear) == true) {
 			if (intday > 29) {
 				err = 9;
 				return false;
 			}
 		}else {
 			if (intday > 28) {
 				err = 10;
 				return false;
 			}
 		}
 	}
 	if (strDatestyle == "US") {
 		datefield.value = strMonthArray[intMonth-1] + " " + intday+" " + strYear;
 	}else {
 		datefield.value = intday + " " + strMonthArray[intMonth-1] + " " + strYear;
 		if(intMonth< 10){
 			strMonth0="0"+intMonth.toString();
 		}else{
 			strMonth0=intMonth.toString();
 		}
 		if(intday< 10){
 			strDay0="0"+intday.toString();
 		}else{
 			strDay0=intday.toString();
 		}
 	}
 	data_inserita.value=strDay0+"/"+strMonth0+"/"+strYear;
 	return true;
}

function LeapYear(intYear) {
	if (intYear % 100 == 0) {
 		if (intYear % 400 == 0) { return true; }
 	}else {
 		if ((intYear % 4) == 0) { return true; }
 	}
 	return false;
}
// language
function load1(form) {
	 var url = form.Llist_1.options[form.Llist_1.selectedIndex].value;
     if (url != '') location.href = url;
     return false;
}
//country
function loadCountry(value) {
	var url = value;
     if (url != '') location.href = url;
     return false;
}
function load2(form) {
     var url = form.Llist_2.options[form.Llist_2.selectedIndex].value;
     if (url != '') location.href = url;
     return false;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
  }