/* 
 * JavaScript by JsDir.com
 * ********************** */

function Trim() {
   return this.replace(/\s+$|^\s+/g,"");
   }
	
String.prototype.Trim=Trim;	

// --- Controllo lato client per l'esattezza dei dati inseriti per la registrazione
// --- --- RegExp alla URL http://www.jsdir.com/tutorials/remail.asp
function ValidaFormRegistrazione(freg)
	{
	var EmailAddr = freg.email.value;
	var Filtro = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
	var DatiOk=(freg.userid.value.length > 7  && freg.pwd.value.length > 7);
	var EmailOk=Filtro.test(EmailAddr);
	
	if (!DatiOk)
		{
		alert("Controlla UserId e Password.");
		return false;
		}
	else
		if (!EmailOk)
			return confirm("L'indirizzo e-mail che hai inserito potrebbe essere errato.\nLo confermi?");
	return true;
	}
 
// -- Check modulo LOGIN
function CheckLoginForm(Modulo)
	{
	if (Modulo.UserLogin.value.length<8 || Modulo.PwdLogin.value.length<8)
		{
		alert("Correggi i dati.\nUno dei campi e' vuoto o contieme meno di 8 caratteri.");
		return false;
		}
	else
		return true;
	}

// -- Check modulo Cambio indirizzo e-mail
function CheckNuovaEmail(Modulo)
	{
	var check = Modulo.ProfNuovoEmail.value == Modulo.ProfNuovoEmailControllo.value && Modulo.ProfNuovoEmail.value.length != 0;
	if (!check)
		{
		alert("Correggi i dati: i due indirizzi inseriti non sono uguali.");
		return false;
		}
	else
		return true;
	}

// -- Check modulo Cambio password
function CheckNuovaPwd(Modulo)
	{
	var check = Modulo.ProfPwdNuova.value == Modulo.ProfPwdNuovaControllo.value && Modulo.ProfPwdNuova.value.length > 7 && Modulo.ProfPwdVecchia.value.length > 7;
	if (!check)
		{
		alert("Correggi i dati: uno dei campi e' vuoto oppure la nuova password non e' uguale a quella inserita per controllo.");
		return false;
		}
	else
		return true;
	}

// -- Controlla il numero di caratteri nella textarea in fase di modifica messaggi guestbook
function ControllaTextarea(Modulo)
	{
	return Modulo.testo.value.length<255?true:confirm("Ci sono piu' di 255 caratteri nel testo del messaggio.\nI caratteri eccedenti verranno troncati.\n\nConfermi?");
	}	

function GoSearchInGuestbook(params)
	{
	var f=document.forms[1];
	var optsel=f.campo.options[f.campo.selectedIndex].value;
	var stringa=f.stringadacercare.value;
	var tipo=f.tipo.options[f.tipo.selectedIndex].value;
	location.href=params+"&stringa="+escape(stringa)+"&campo="+optsel+"&tipo="+tipo;
	}

// --- DemoServizi Counter&Stats
function CheckDatiCreaAccountPWStats(Modulo)
	{
	var usr=Modulo.userid.value.Trim();
	var pwd=Modulo.password.value.Trim();
	var pwdcheck=Modulo.passwordcheck.value.Trim();
	return (usr.length!=""&&pwd.length!=""&&pwdcheck.length!="")
	}

function CheckDatiLoginPWStats(Modulo)
	{
	var usr=Modulo.userid.value.Trim();
	var pwd=Modulo.password.value.Trim();
	return (usr.length!=""&&pwd.length!="")
	}

function CheckApici_d2s(campo)
	{
	campo.value=campo.value.replace(/\"/g,"''");
	}

function CheckApici_s2d(campo)
	{
	campo.value=campo.value.replace(/\'\'/g,'"');
	}

// --- Manutenzione utenti per servizio Password
function VerificaCancellazioneUtente(Url)
	{
	if (confirm("Sei sicuro di voler eliminare l'utente?\nVerranno CANCELLATI anche tutti i dati di accesso (statistiche) e NON SARA' PIU' POSSIBILE IL RECUPERO.\n\n"))
		location.href = Url;
	}


// --- Manutenzione pagine per servizio SiteSearch
function VerificaCancellazionePagina(Url)
	{
	if (confirm("Sei sicuro di voler eliminare la pagina?\nVerranno CANCELLATI anche i contatori e NON SARA' PIU' POSSIBILE IL RECUPERO.\n\n"))
		location.href = Url;
	}

// --- Anteprima immagine per la configurazione SendPage
function CheckImageSendPage(Modulo)
	{
	if (Modulo.tipo[0].checked)
		alert("Se hai scelto un link di tipo \"Testo\" non e' necessario alcun controllo.\n\nIl testo utilizato per il link e': "+Modulo.txtimg.value);
	else
		window.open(Modulo.txtimg.value,"ProvaImmagine","width=200,height=200,top=100,left=100,resizable=yes");
	}

// --- Generica: toglie dal campo i caratteri non consentiti
function PulisciCampo(campo)
	{
	campo.value=campo.value.replace(/[^a-zA-Z0-9]/g,"");
	}
	
// -------------------------------------------------------------------------------------------------
// --- Da qui in poi workarounds per risolvere i bugs e incompatibilita' di IE ed Opera
// -------------------------------------------------------------------------------------------------

var Browser=navigator.userAgent.toLowerCase(),BodyRef="";

function sposta() /* -- Tnx Zer0 - it.comp.lang.javascript -- */ {
	var pos=eval("document."+BodyRef+".clientHeight+document."+BodyRef+".scrollTop-26");
	setTimeout("document.getElementById('MicroLogo').style.top="+pos,100); }


function works()
	{
	if (Browser.indexOf("gecko")!=-1 && document.getElementById("MicroLogo") ) {
		document.getElementById("MicroLogo").style.position="fixed";
		document.getElementById("MicroLogo").style.visibility="visible";
		}

	if (Browser.indexOf("msie")!=-1&&Browser.indexOf("opera")==-1) 
		document.all.MicroLogo.style.visibility="visible";

	Browser.indexOf("msie")!=-1?Browser.indexOf("msie 5")!=-1?(BodyRef="body",onscroll=sposta):Browser.indexOf("msie 6")!=-1?(BodyRef="documentElement",onscroll=sposta):null:null;
	
	}

window.onload=works;


