/* Copyright(C) A.Trigiani * All Rights Reserved. mod */

//register 
var request = false; 
function securityCodeCheckHandler() { 

if (request.readyState == 4 && request.status == 200) { 
var response = request.responseText;
if (response.indexOf("OK") != -1) { 
document.registerform.submit(); 
} 
else {
alert("Codice di sicurezza errato!"); 
warnField("code"); 
} } }

function generalAjaxHandler(field,message,onErrorFunction,onSuccessFunction) { 
	if (request.readyState == 4 && request.status == 200) 
	{ 
	var response = request.responseText;
	//alert(response);
	if (response.indexOf("OK") != -1) {
	onSuccessFunction(); } 
	else { 
	if (onErrorFunction == null) { alert(message); warnField3(field,"registerform"); } 
	else {
	onErrorFunction(); 
	} 
	ableButton(); 
	} 
} } 
function generalAjaxHandler2(field,message,onErrorFunction) { 
	if (request.readyState == 4 && request.status == 200) 
	{ 
	var response = request.responseText;
	var resp1 = response.substring(0,2);
//	alert ("resp1:"+resp1);
	var resp2 = response.substring(3,response.length);
//	alert ("resp2:"+resp2);
	if (resp1 == 'ER') {
//	document.getElementById('forgotaccount').style.display = 'block';
	document.getElementById("idresponse").innerHTML = "<p style=\"color:#ff0000;\">Il codice per verificare che tu non sia un robot risulta errato. Aggiornalo e riprova.</p>";
	ableButton(); 
	}
	else if(resp1 == 'OK') {
	document.getElementById("regform").innerHTML = resp2;
	}
	else {
//	document.getElementById('forgotaccount').style.display = 'block';
	document.getElementById("idresponse").innerHTML = "<p style=\"color:#ff0000;\">Errore di comunicazione..</p>";
	ableButton();
	}
	} 
	else {	ableButton();	}
} 

function generalAjaxHandler3(field,message,onErrorFunction,onSuccessFunction) { 
	if (request.readyState == 4 && request.status == 200) 
	{ 
	var response = request.responseText;
	var resp1 = response.substring(0,2);
	var resp2 = response.substring(3,response.length);
	if (resp1 == 'E1') {
	document.getElementById("idresponse").innerHTML = "<p style='color:#ff0000;'>Username gia' presente nel sistema.</p>";
	ableButton(); 
	}
	else if (resp1 == 'E2') {
	document.getElementById("idresponse").innerHTML = "<p style='color:#ff0000;'>Email gia' presente nel sistema.</p>";
	ableButton(); 
	}
	else if(resp1 == 'OK') {
	onSuccessFunction();
//	document.getElementById("userok").innerHTML = "<span style='color:green;'>OK</span>";
	}
	else {
	document.getElementById("idresponse").innerHTML = "<p style='color:#ff0000;'>Errore di comunicazione..</p>";
	ableButton();
	}
	} 
	else {	ableButton();	}
} 

function submitForm() {var myfunc = function() {generalAjaxHandler2("user_name","ERRORE NELLA RICHIESTA.",showForgotAccountUsername);} 
request = CreateXmlHttpReq(myfunc);
request.open("POST","/register2.php?user_name="+document.registerform.user_name.value+"&informativa=1&condizioni_contratto=1&user_pass="+document.registerform.user_pass.value+"&email="+document.registerform.email.value+"&recaptcha_challenge_field="+document.registerform.recaptcha_challenge_field.value+"&recaptcha_response_field="+document.registerform.recaptcha_response_field.value+"&rand="+escape(Math.random()));request.send(null); }

function checkUsername() { var myfunc = function() {generalAjaxHandler3("user_name","Il nick da te scelto e' gia' in uso.",showForgotAccountUsername,xcheckEmail);} 
request = CreateXmlHttpReq(myfunc);request.open("GET","/ajax-web2/checkuser-rev1.php?user_name="+document.registerform.user_name.value+"&rand="+escape(Math.random()));request.send(null); }


function xcheckEmail() {
var myfunc = function() {
generalAjaxHandler3("email","La email da te scelta e' gia' in uso.",showForgotAccountUsername,submitForm);
} 
request = CreateXmlHttpReq(myfunc);request.open("GET","/ajax-web2/checkuser-rev1.php?email="+document.registerform.email.value+"&rand="+escape(Math.random()));
request.send(null); }

function showForgotAccountUsername() { var text='L\'username da te scelto risulta gia\' in uso e non puo\' '; text +='essere utilizzato piu\' volte.'; text +='Inserire uno username diverso per continuare '; text +='con la registrazione. '; text +='*Se hai dimenticato l\'username e la password del tuo account*'; text +='<a href="http://www.technotizie.it/forgetpass">clicca qui</a> e segui le istruzioni.';	document.getElementById('forgotaccount').style.display = 'block';	document.getElementById('forgotaccountText').innerHTML = "<p style=\"color:#ff0000;\">"+text+"</p>"; }

function showForgotAccountEmail() { var text='*L\'email da te scelta risulta già in uso* e non puo\' '; text +='essere utilizzata pi&ugrave volte. '; text +='Inserisci un indirizzo email diverso per continuare '; text +='con la registrazione.'; text +='*Se hai dimenticato l\'username e la password dell\'account*associato '; text +='al tuo indirizzo email <a href="/forgetpass">clicca qui</a> e segui le istruzioni.';text +='Se hai problemi con la registrazione, ti preghiamo di segnalarcelo immediatamente' ;text +='attraverso <a href="/feedback">questa form</a> in forma anonima.';	document.getElementById('forgotaccount').style.display = 'block';	document.getElementById('forgotaccountText').innerHTML = "<p style=\"color:#ff0000;\">"+text+"</p>";showForgotAccount(text,'email');ableButton(); } 

function showForgotAccount(text,field){ div = document.getElementById("forgotaccount"); div.style.visibility = 'visible'; div.style.display = 'block';document.getElementById('forgotaccountText').innerHTML=text;warnField(field); } 
function checkForm() { 
disableButton();
clearFields3(new Array("user_name","email","user_pass"), new Array("forgotaccount"),'registerform'); 
if (!validate3(document.registerform.user_name.value, "^[A-z0-9]+$", "Il nick non puo' contenere caratteri speciali o essere vuoto \n.","user_name","registerform")){ ableButton(); warnField3("user_name","registerform"); return false; } 

if (!validate3(document.registerform.user_pass.value, "^[A-z0-9_.,\\-!;:?=]{5,}$", "La password non puo' contenere caretteri speciali oltre a lettere, numeri e caratteri di punteggiatura, essere vuota o piu' corta di 5 caratteri","user_pass","registerform")){ ableButton(); warnField3("user_pass","registerform"); return false; } 

if (!isValidEmail(document.registerform.email.value,"registerform")) { alert("Email non valida!");warnField3("email","registerform"); ableButton(); return false; }
if(document.registerform.informativa.checked==false){alert('Per proseguire devi dichiarare di aver letto e preso visione dell\'informativa privacy'); ableButton();document.registerform.informativa.focus(); return false; }
if(document.registerform.condizioni_contratto[0].checked==false){ alert('Dichiarare di aver letto e preso visione e di accettare espressamente le condizioni del contratto'); ableButton(); return false; } 
if (!checkUsername()){return false; ableButton();}
if (!xcheckEmail()){return false; ableButton();}
return false;
} 



function checkFormForget() { 
disableButton2();
if (!validate(document.registerform.user_name.value, "^[a-z0-9]+$", "Il nick non puo' contenere caratteri speciali o essere vuoto. \n Solo caratteri minuscoli ammessi.","user_name"))
{ableButton2(); return false; } 
if (!isValidEmail(document.registerform.email.value)) { alert("Email non valida!");warnField3("email"); ableButton(); return false;}
checkUsername();
return false;}

function disableButton2(){document.getElementById("forgetButton").disabled=true;document.getElementById("forgetButton").value="Attendere..."; }
function ableButton2(){document.getElementById("forgetButton").disabled=false;document.getElementById("forgetButton").value="Recupera Password"; }

function disableButton(){document.getElementById("registerButton").disabled=true;document.getElementById("registerButton").value="Attendere..."; }
function ableButton(){document.getElementById("registerButton").disabled=false;document.getElementById("registerButton").value="Registrami"; }


