// IMG.ZEROUNO ~ DEV STAFF ~ www.img01.com
// Castel Madama - Rome - Italy


function CheckBrowser() {
	var browser="None";
	if( navigator.appName.indexOf("Netscape") >= 0 && parseFloat(navigator.appVersion) >= 4) {
		browser = "NS4";
		version = 4;
	}
	if( document.getElementById ) {
		browser = "NS6";
		if( navigator.userAgent.indexOf("6.01") != -1 || navigator.userAgent.indexOf("6.0") != -1 ) {
			version = 6;
		}else {
			version = 6.1;
		}
	}
	if( document.all ) {
		if( document.getElementById ) {
			version = 5;
		}else {
			version = 4;
		}
		browser = "IE";
	}
	return browser;
}


var browser = CheckBrowser();


//sistema operativo
function CeckOS() {
	var os = navigator.userAgent;
	if( os.indexOf("Mac") != -1 ) {
		os = "Mac";
	}else { 
		os = "Win";
	}
	return os;
}

//====== Function: WinPop - apri pop-up  ====

function WinPop(url,w,h,scroll,resize,center) {
	if (center) {
	var winPos = ',top='+((screen.height - h) / 2)+',left='+((screen.width - w) / 2);
	}
	var scrollArg = (scroll == false) ? '' : ',scrollbars=1';
	var resizeArg = (resize == false) ? '' : ',resizable=1';
	flyout = window.open (url,"newin"+scroll+resize+center,"width=" + w + ",height=" + h + scrollArg + resizeArg + winPos);
	flyout.resizeTo(w,h);
	flyout.focus();
}

//===================== fine funzione WinPop =======================	

//===================== funzione controllo form =======================	

// N.B. Utilizzare la sintassi seguente nell' onSubmit del form:
// Per rendere i campi opzionali:
// this.nomecampo.optional = true;
// Per rendere i campi numeric:
// this.nomecampo.numeric = true;
// Per definire il min di un campo numerico:
// this.nomecampo.min = 10;
// Per definire il max di un campo numerico:
// this.nomecampo.min = 100;
// Per definire un campo e.mail ed effettuare il controllo sul formato immesso:
// this.nomecampo.mail = true;
// Per definire un campo URL ed effettuare il controllo sul formato immesso:
// this.nomecampo.url = true;



	// controllo se il campo contiene solo spazi bianchi
	function isblank(str) {
		for(var i=0; i < str.length; i++) {
			var c = str.charAt(i);
			if ( (c != '') && (c != '\n') && (c != '\t'))
				return false
		}
		return true;
	}

	// controllo se il valore del campo e.mail ha un formato corretto
	function ValidateEmail(theinput) {
		var s = theinput;
		if(s.search)
			return (s.search(new RegExp("^([-!#$%&'*+./0-9=?A-Z^_`a-z{|}~])+@([-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+\\.)+[a-zA-Z]{2,4}$","gi")) >= 0);
		if(s.indexOf) {
			var at_character = s.indexOf('@');
			if(at_character <= 0 || at_character + 4 > s.length)
				return false;
		}
		if(s.length < 6)
			return false;
		else
			return true;
	}	
	
	// controllo il formato corretto di un URL
	function ValidateUrl(theinput) {
		var url = /([w]{3}).([\w]{3,}).([\w]{2,})/i;
		var result = theinput.match(url);
		if(result != null)
			return true;
		else
			return false;
	}
	
	// Passo il nome del form
	function ValidateForm(form) { //v.01
		var msg = "_____________________________________________\n\n";
		msg += "    Attenzione!  Il form non sarà inviato.\n";
		msg += "_____________________________________________\n";
		msg += "Controllare i seguenti campi:\n\n";
		var err = "";
		for (var i=0; i < form.length; i++) {
			var element = form.elements[i];
			//controllo campi select
			if( ((element.type == "select-one") || (element.type == "select-multiple")) && !element.optional ) {// aggiungere se campo opzionale
				for(var j=0; j < element.options.length; j++) {
					if(element.options[j].selected) {
						if(j)
							continue;
						else
							err += "- " + element.name + "\n";
					}
							
				}
			}
			//controllo campi input e text area
			if( ((element.type == "text") || (element.type == "textarea")) && !element.optional) {
				if( (element.value == null) ||  (element.value == "") || isblank(element.value) ) {
					err += "- " + element.name + "\n"; 
					continue;
				}
			}
			//controllo formato campi e.mail 
			if(element.mail) {
				if(ValidateEmail(element.value))
					continue;
				else {
					err += "- " + element.name + ": Controllare il formato inserito.\n";
					continue;
				}
			}
		}
		if(err) {
			alert(msg + err);
			return false;
		}else
			return true;
	}
//===================== fine funzione controllo form =======================	


//===================== funzione stampa =======================	

function PrintW() {
	bV = parseInt(navigator.appVersion);
	if (bV >= 4) window.print();
}
//===================== fine funzione stampa =======================	

