// JavaScript Document



///////////// CAMPI INPUT /////////////

var v = new Array();
	v["username"] = 'Utente'; // [nome del campo] = 'descrizione che volete compaia all'interno del campo'
	v["password"] = 'Password';
	v["passwordc"] = 'Password';
	v["nome"] = 'Nome';
	v["cognome"] = 'Cognome';
	v["cap"] = 'CAP';
	v["email"] = 'Email';
	v["cellulare"] = 'Cellulare';
	v["SearchedTxt"] = 'cerca nel sito';
	//v["SearchedTxt"] = '...';

function InputDel(campo) {
	if (campo.value.search(v[campo.name])== 0 ) {
		campo.value= '';
	}	
}

function InputFill(campo) {
	if (campo.value=='') {
		campo.value= v[campo.name];
	}	
}


///////////// CONTROLLI FORM /////////////

function check_login(theForm){
	if (theForm.username.value == "" || theForm.username.value == "utente") {
    	alert("Per favore inserire il proprio nome utente.\nGrazie.");
    	theForm.username.focus();
    	return (false);
	}
	if (theForm.password.value == "" || theForm.password.value == "password") {
    	alert("Per favore inserire la propria password.\nGrazie.");
    	theForm.password.focus();
    	return (false);
	}
}


function check_ricerca(theForm){
	if (theForm.SearchedTxt.value == "cerca nel sito" || theForm.SearchedTxt.value == " ") {
    	alert("E' necessario inserire il testo da ricercare.\nGrazie.");
    	theForm.SearchedTxt.focus();
    	return (false);
	}
}


function check_newsletter(theForm){	
	if (theForm.email.value == "") {
    	alert("Per favore inserire il proprio indirizzo Email, grazie.");
    	theForm.email.focus();
    	return (false);
	}
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(theForm.email.value))) {
		alert("Indirizzo E-Mail non valido, si prega di verificarlo.\nGrazie.");
		theForm.email.focus();
		return (false);
	}	
	if (!theForm.privacy.checked) {
	alert("Non e' possibile proseguire senza acconsentire al trattamento dei dati personali, grazie.");
	theForm.privacy.focus();		
	return (false);
	}  	
}


function check_contatti(theForm) {		
	if (theForm.nome.value == "") {
    	alert("Per favore inserire il proprio nome, grazie.");
    	theForm.nome.focus();
    	return (false);
		}
	if (theForm.cognome.value == "") {
    	alert("Per favore inserire il proprio cognome, grazie.");
    	theForm.cognome.focus();
    	return (false);
		}	
	if (theForm.email.value == "") {
    	alert("Per favore inserire il proprio indirizzo Email, grazie.");
    	theForm.email.focus();
    	return (false);
	}
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(theForm.email.value))) {
		alert("Indirizzo E-Mail non valido, si prega di verificarlo.\nGrazie.");
		theForm.email.focus();
		return (false);
	}	
	if (theForm.testo.value == "") {
    	alert("Per favore inserire il testo del messaggio, grazie.");
    	theForm.testo.focus();
    	return (false);
		}
	if (theForm.code.value == "") {
    	alert("Per favore inserire il codice di sicurezza, grazie.");
    	theForm.code.focus();
    	return (false);
		}
	if ((theForm.privacy) && theForm.privacy.type == 'checkbox') {
		if (!theForm.privacy.checked) {
		alert("Non è possibile proseguire senza acconsentire al trattamento dei dati personali, grazie.");
		theForm.privacy.focus();		
		return (false);
		}  	
	}
}


function check_registrazione(theForm) {		
	if (theForm.nome.value == "") {
    	alert("Per favore inserire il proprio nome, grazie.");
    	theForm.nome.focus();
    	return (false);
		}
	if (theForm.cognome.value == "") {
    	alert("Per favore inserire il proprio cognome, grazie.");
    	theForm.cognome.focus();
    	return (false);
		}	
	if (theForm.email.value == "") {
    	alert("Per favore inserire il proprio indirizzo Email, grazie.");
    	theForm.email.focus();
    	return (false);
	}
	if (theForm.cap.value == "") {
    	alert("Per favore inserire il proprio cap di residenza, grazie.");
    	theForm.cap.focus();
    	return (false);
		}
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(theForm.email.value))) {
		alert("Indirizzo E-Mail non valido, si prega di verificarlo.\nGrazie.");
		theForm.email.focus();
		return (false);
	}
	if (theForm.username.value == "") {
    	alert("Per favore inserire il proprio nome utente, grazie.");
    	theForm.username.focus();
    	return (false);
	}	
	if (theForm.password.value == "") {
    	alert("Per favore inserire la propria password, grazie.");
    	theForm.password.focus();
    	return (false);
	}
	if (theForm.passwordc.value == "") {
    	alert("Per favore confermare la propria password, grazie.");
    	theForm.passwordc.focus();
    	return (false);
	}
	if ((theForm.privacy) && theForm.privacy.type == 'checkbox') {
		if (!theForm.privacy.checked) {
		alert("Non è possibile proseguire senza acconsentire al trattamento dei dati personali, grazie.");
		theForm.privacy.focus();		
		return (false);
		}  	
	}
}


function check_commenti(theForm){			
	if (theForm.titolo.value == "") {
    	alert("Per favore inserire titolo del commento, grazie.");
    	theForm.titolo.focus();
    	return (false);
		}			
	if (theForm.autore.value == "") {
    	alert("Per favore inserire il proprio nome, grazie.");
    	theForm.autore.focus();
    	return (false);
		}
	if (theForm.email.value == "") {
    	alert("Per favore inserire il proprio indirizzo Email, grazie.");
    	theForm.email.focus();
    	return (false);
	}
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(theForm.email.value))) {
		alert("Indirizzo E-Mail non valido, si prega di verificarlo.\nGrazie.");
		theForm.email.focus();
		return (false);
	}	
	if (theForm.testo_rtf.value == "") {
	alert("Per favore inserire il proprio commento, grazie.");
	theForm.testo_rtf.focus();		
	return (false);
	}
	if (theForm.code.value == "") {
	alert("Per favore inserire il codice di sicurezza, grazie.");
	theForm.code.focus();		
	return (false);
	}  	
}


///////////// CALENDARIO /////////////

function goToDay(day, incr) {
  var oday = new String;
  oday += day;
  var year = oday.replace(/(.{4}).{2}.{2}/, "$1");
  var month = oday.replace(/.{4}(.{2}).{2}/, "$1");
  var day = oday.replace(/.{4}.{2}(.{2})/, "$1");
  var nday = new Date(year, month - 1, day);
  nday.setDate(nday.getDate() + incr);
  nday = nday.getFullYear() * 10000 + (nday.getMonth() + 1) * 100 + nday.getDate();
  document.location.href= "/adon.pl?act=Calendar&Mode=Src&day="+nday;
}


///////////// POP-UP /////////////

function PopUp(page) {
popwidth = 600;
popheight = 400;
OpenWin = this.open(page, "PopWin1", "toolbar=no, menubar=no, location=no, scrollbars=no, resizable=no, width="+popwidth+", height="+popheight+", left=" + Math.floor((screen.width - popwidth) / 2) + ", top=" + Math.floor((screen.height - popheight) / 2));
};

function PopupPic(sPicURL) { 
// dimensioni iniziali finestra prima che si riadatti
 popwidth = 250;
 popheight = 400;
 // apre il popup e passa la url immagine
 window.open( "/popups/pop_fit.html?"+sPicURL, "", 
 "left=" + Math.floor((screen.width - popwidth) / 2) + ",top=" + Math.floor((screen.height - popheight) / 2) +
 "toolbar=no,menubar=no,location=no,scrollbars=no,resizable=yes,width="+popwidth+",height="+popheight); 
}


function PopAmico(page) {
popwidth = 500;
popheight = 300;
OpenWin = this.open(page, "PopWin2", "toolbar=no, menubar=no, location=no, scrollbars=no, resizable=no, width="+popwidth+", height="+popheight+", left=" + Math.floor((screen.width - popwidth) / 2) + ", top=" + Math.floor((screen.height - popheight) / 2));
}


///////////// PRELOAD IMG /////////////

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];}}
}


///////////// ALTRI /////////////

function Credits(page) {
popwidth = 300;
popheight = 270;
OpenWin = this.open(page, "PopWin3", "toolbar=no, menubar=no, location=no, scrollbars=no, resizable=no, width="+popwidth+", height="+popheight+", left=" + Math.floor((screen.width - popwidth) / 2) + ", top=" + Math.floor((screen.height - popheight) / 2));
};



function URLEncode(s)
{
	var SAFECHARS = "0123456789" +					// Numeric
					"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +	// Alphabetic
					"abcdefghijklmnopqrstuvwxyz" +
					"-_.!~*'()";					// RFC2396 Mark characters
	var HEX = "0123456789ABCDEF";

	var plaintext = s;
	var encoded = "";
	for (var i = 0; i < plaintext.length; i++ ) {
		var ch = plaintext.charAt(i);
	    if (ch == " ") {
		    encoded += "+";				// x-www-urlencoded, rather than %20
		} else if (SAFECHARS.indexOf(ch) != -1) {
		    encoded += ch;
		} else {
		    var charCode = ch.charCodeAt(0);
			if (charCode > 255) {
			    alert( "Unicode Character '" 
                        + ch 
                        + "' cannot be encoded using standard URL encoding.\n" +
				          "(URL encoding only supports 8-bit characters.)\n" +
						  "A space (+) will be substituted." );
				encoded += "+";
			} else {
				encoded += "%";
				encoded += HEX.charAt((charCode >> 4) & 0xF);
				encoded += HEX.charAt(charCode & 0xF);
			}
		}
	} // for

	
	return encoded;
};



function URLDecode(s)
{
   // Replace + with ' '
   // Replace %xx with equivalent character
   // Put [ERROR] in output if %xx is invalid.
   var HEXCHARS = "0123456789ABCDEFabcdef"; 
   var encoded = s;
   var plaintext = "";
   var i = 0;
   while (i < encoded.length) {
       var ch = encoded.charAt(i);
	   if (ch == "+") {
	       plaintext += " ";
		   i++;
	   } else if (ch == "%") {
			if (i < (encoded.length-2) 
					&& HEXCHARS.indexOf(encoded.charAt(i+1)) != -1 
					&& HEXCHARS.indexOf(encoded.charAt(i+2)) != -1 ) {
				plaintext += unescape( encoded.substr(i,3) );
				i += 3;
			} else {
				alert( 'Bad escape combination near ...' + encoded.substr(i) );
				plaintext += "%[ERROR]";
				i++;
			}
		} else {
		   plaintext += ch;
		   i++;
		}
	} // while
   
   return plaintext;
};




