
$j(function() {

  $j('input.text-input').css({backgroundColor:"#FFFFFF"});
  $j('input.text-input').focus(function(){
    $j(this).css({backgroundColor:"#FFDDAA"});
  });
  $j('input.text-input').blur(function(){
    $j(this).css({backgroundColor:"#FFFFFF"});
  });
  

  $j(".button").click(function() {
		// validate and process form
		// first hide any error messages
    $j('.error').hide();
    
  

//Inizializzo l'oggetto xmlHttpReq
var xmlHttpReq = false;
var mailok = {rispmail: ''};

// qui valutiamo la tipologia di browser utilizzato per selezionare la tipologia di oggetto da creare.
// Se sono in un browser Mozilla/Safari, utilizzo l'oggetto XMLHttpRequest per lo scambio di dati tra browser e server.
if (window.XMLHttpRequest) {
self.xmlHttpReq = new XMLHttpRequest();
}
// Se sono in un Browser di Microsoft (IE), utilizzo Microsoft.XMLHTTP
//che rappresenta la classe di riferimento per questo browser
else if (window.ActiveXObject) {
self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
//Apro il canale di connessione per regolare il tipo di richiesta.
//Passo come parametri il tipo di richiesta, url e se è o meno un operazione asincrona (isAsync)
self.xmlHttpReq.open('POST', 'sezione/enter/request.php', true);

//setto l'header dell'oggetto
self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

/* Passo alla richiesta i valori del form in modo da generare l'output desiderato*/
self.xmlHttpReq.send(recuperaValore());

/* Valuto lo stato della richiesta */
self.xmlHttpReq.onreadystatechange = function() {

/*Gli stai di una richiesta possono essere 5
* 0 - UNINITIALIZED
* 1 - LOADING
* 2 - LOADED
* 3 - INTERACTIVE
* 4 - COMPLETE*/

//Se lo stato è completo
if (self.xmlHttpReq.readyState == 4) {
/* Aggiorno la pagina con la risposta ritornata dalla precendete richiesta dal web server.Quando la richiesta è terminata il responso della richiesta è disponibie come responseText.*/
aggiornaPagina(self.xmlHttpReq.responseText);
}
}

function aggiornaPagina(stringa){
    mailok.rispmail=stringa.substr(0,2); 
}


/*Questa funzione recupera i dati dal form.*/
function recuperaValore() {
var reg = document.forms['frmCaptcha'];
var email = reg.email.value;
valore = 'email=' + escape(email);
return valore;
}

// rimuovi spazi bianchi
function removeSpaces(string) {
 return string.split(' ').join('');
}


var emailpre = $j("input#email").val();
var email =removeSpaces(emailpre);
var password = $j("input#password").val();
var name = $j("input#name").val();
var surname = $j("input#surname").val();
var filter = /^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-z]{2,4})$/;
var sex = $j("select#sex").val();
var aaaa = $j("select#aaaa").val();
var mm = $j("select#mm").val();
var gg = $j("select#gg").val();
var citta = $j("input#id_citta").val();
var prov= $j("#provenienza").val();

// checkPatternChars : checks a specific pattern of typed chars
function checkPatternChars(nm,vlu,pattern,required){
  if ( required === undefined ) {
      required = false;
   } 
  if(!required && vlu==""){
    return true;
  }
  if (!pattern.test(vlu)){
    return false;
  }
  else { 
    return true; 
  }
}


// controlli sul nome
// Nome (caratteri, lettere accentate apostrofo e un solo spazio fra le parole)
  pattern = /^([a-zA-Z\xE0\xE8\xE9\xF9\xF2\xEC\x27]\s?)+$j/;
/*
    if(!checkPatternChars('Nome',name,pattern))
    {
      $j("div#name_invalid").show();
      $j("input#name").focus();
      return false;
    }
*/
		if (name == "") {
      $j("div#name_error").show();
      $j("input#name").focus();
      return false;
    }
		if (name.length < 3) {
      $j("div#name_incorrect").show();
      $j("input#name").focus();
      return false;
    }

// controlli sul cognome
/*
    if(!checkPatternChars('Cognome',surname,pattern))
    {
      $j("div#surname_invalid").show();
      $j("input#name").focus();
      return false;
    }
*/
		if (surname == "") {
      $j("div#surname_error").show();
      $j("input#surname").focus();
      return false;
    }
    
    if (surname == name) {
      $j("div#uguale_error").show();
      $j("input#surname").focus();
      return false;
    }
    

		if (surname <3) {
      $j("div#surname_incorrect").show();
      $j("input#surname").focus();
      return false;
    }    
// controlli su email
	  
    if(!filter.test(email)){
    $j("div#email_incorrect").show();
    $j("input#email").focus();
    return false;
    }
    
// controlli su password

  // Password (min 6, max 12 di caratteri, numeri, _ * - + ! ? , : ; .
  // e lettere accentate)
  pattern = /^[a-zA-Z0-9\_\*\-\+\!\?\,\:\;\.\xE0\xE8\xE9\xF9\xF2\xEC\x27]{6,16}/;
  if(!checkPatternChars('Password',password,pattern,true))
  {
      $j("div#password_invalid").show();
      $j("input#password").focus();
   return false;
  }

		if (password == "") {
      $j("div#password_error").show();
      $j("input#password").focus();
      return false;
    }    

// controlli sul sesso
		
		if (sex == "") {
      $j("div#sex_error").show();
      $j("select#sex").focus();
      return false;
    }
    
// controlli sulla data
		
		if (aaaa == "") {
      $j("div#data_error").show();
      $j("select#aaaa").focus();
      return false;
    }
		
		if (mm == "") {
      $j("div#data_error").show();
      $j("select#mm").focus();
      return false;
    }
		
		if (gg == "") {
      $j("div#data_error").show();
      $j("select#gg").focus();
      return false;
    } 
	
		if (citta == "") {
      $j("div#citta_error").show();
      $j("input#citta").focus();
      return false;
    } 	
	
    $j('#load_img').fadeIn();
    		
		$j('#load_img').fadeOut(1000, function() {
		if (mailok.rispmail == "si") {
    $j("div#mail_esistente").show();
    $j('span#email_reg').html(email)
    $j("input#email").focus();
      return false;
    }		

    $j('#reg_form').hide();
    $j('#sceltareg').hide();
    $j('#facebookdiv').hide();
    $j('#reg_form2').fadeIn(1000);        
        }); // fine dopo immagine load
    return false;
	}); // pulsante submit chiusura
});// chiusura funzione iniziale
runOnLoad(function(){
  $j("input#name").select().focus();
});

function back(){
        $j('#reg_form2').hide();
        $j('#reg_form').fadeIn(1000);  
}

function getParam(theForm){
var prov= $j("#provenienza").val();
var url = 'captcha/captcha.php';
var postStr = theForm.txtCaptcha.name + "=" + encodeURIComponent( theForm.txtCaptcha.value ) +"&name=" +  theForm.name.value +"&surname=" +  theForm.surname.value + "&email=" +  theForm.email.value + "&password=" +  theForm.password.value + "&sex=" +  theForm.sex.value+"&gg=" +  theForm.gg.value +"&mm=" +  theForm.mm.value +"&aaaa=" +  theForm.aaaa.value +"&citta=" +  theForm.id_citta.value+"&tipo=" + theForm.tipo.value;
$j('#load_img2').fadeIn();
$j('#load_img2').fadeOut(1000, function() {
		                              $j.ajax({ // APRI FUNZIONE JQUERY
                                      type: 'post',
                                      url: url,
                                      data: postStr,
                                      cache: false,
                                      success: function(html){
                                            if(html!="ok"){
                                                    $j("div#codice_errato").show();
                                                    $j('span#result').html(html)      
                                                    img.src = 'captcha/create_image.php?' + Math.random();
                                            }else{
                                                    if(prov=="regvetrine"){
                                                          location.href="index.php?sezione=vetrine&oper=newpre"
                                                    }else
                                                    if(prov=="regmatrimonio"){
                                                          location.href="index.php?sezione=matrimonio"
                                                    }                                                    
                                                    else{
                                                    window.location="index.php?sezione=home&oper=primo_accesso&sub=step1";
                                                    }
                                                    document.getElementById('result').innerHTML = "ok";
                                            }
			                                }
		                              }); // funzione jquery close  
}); // fine dopo immagine load
}


