	var StatusError = false;

//	window.onerror = SetStatusError;
	function SetStatusError(msg, url, ln){	
		if ( !StatusError ){
			var sTmp = new String();
			sTmp = 'jsError.asp?';
			sTmp += 'msg=' + escape(msg);
			sTmp += '&url=' + escape(url);
			sTmp += '&ln=' + escape(ln);
			w = open(sTmp ,'','scrollbars=no,width=100,height=100,resizable=yes,status=no,location=no,toolbar=no');
			w.close();
		} 
		StatusError = true;
	}
	
	function SubmitForm(FrmObj){
		if ( Status() && FieldValidation() && FieldCondition())
			FrmObj.submit();
	}

	function 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=FindObj(n,d.layers[i].document);
		if(!x && d.getElementById) 
			x = d.getElementById(n); 
		return x;
	}


	function BrowserInfo(){
		this.name = navigator.appName;
		this.codename = navigator.appCodeName;
		this.version = navigator.appVersion.substring(0,4);
		this.platform = navigator.platform;
		this.javaEnabled = navigator.javaEnabled();
		this.screenWidth = screen.width;
		this.screenHeight = screen.height;
	}
	
	
	
	function Status(){
		if (StatusError){
			alert("Si è verificato un errore durante l'esecuzione di codice javascript.\nSarà impossibile salvare eventuali modifiche!");
			return false;
		}
		return true;
	}

	function isNullField(srcObj){
/*		if (srcObj.length){
			var i;
			for (i=0;i < srcObj.length; i++){
				if (srcObj[i].checked ) 
					return false
			}
			return true
		}
*/
		if ( srcObj.type == 'checkbox' && !srcObj.checked )	
			return true
		if ( srcObj.type == 'select-one' &&  srcObj.selectedIndex == 0 )	
			return true
		if ( srcObj.type == 'select-multiple' &&  srcObj.selectedIndex == -1 )	
			return true
		if ( srcObj.type == 'text' && srcObj.value == '' )
			return true
		if ( srcObj.type == 'textarea' && srcObj.value == '' )
			return true
		if ( srcObj.type == 'text' && parseFloat(srcObj.value) == 0 )
			return true
		return false
	}
	
	function Popup(slink, W, H) {
		var Left=(window.screen.width-W)/2;
		var Top=(window.screen.height-H)/2;
		window.open(slink ,'','left='+Left+',top='+Top+',scrollbars=no,width='+W+',height='+H+',resizable=no,status=no,location=no,toolbar=no');
	}
	function PopupScroll(slink, W, H) {
		var Left=(window.screen.width-W)/2;
		var Top=(window.screen.height-H)/2;
		window.open(slink ,'','left='+Left+',top='+Top+',scrollbars=yes,width='+W+',height='+H+',resizable=no,status=no,location=no,toolbar=no');
	}

	function DateControl( srcObj, msg ){
		if ( isNullField(srcObj) ) return true;
		var sDate = new String(srcObj.value);
		var day = parseInt(sDate.substr(0,2),10);
		var month = parseInt(sDate.substr(3,2),10);
		var year = parseInt(sDate.substr(5,4),10);
		
		var re = /^\d{2}\/\d{2}\/\d{4}$/
		if (!re.test(srcObj.value)){alert(msg);srcObj.value='';return false;}
		if ( day < 1 || day > 31 ){alert(msg);srcObj.value='';return false;}
		if ( month < 1 || month > 12 ) {alert(msg);srcObj.value='';return false;}
		if ((month==4 || month==6 || month==9 || month==11) && day==31){alert(msg);srcObj.value='';return false;}
		if (month == 2) { 
			var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
			if (day>29 || (day==29 && !isleap)){alert(msg);srcObj.value='';return false;}
		}
		return true;
	}


