$(function() {
    $('.tooltipo').tooltip();
});

function build_form_by_email(elem){
    var email = elem.value;
    var monreg = new RegExp("^[a-zA-Z][a-zA-Z0-9._-]*@[a-zA-Z][a-zA-Z0-9._-]+[.][a-zA-Z]{2,4}$","g");
    var ret = monreg.test(email);
    if(ret){        
        var reponse = ajax('../ajax/check_email.php','POST','email='+email);
        if(reponse == 'ok'){
            document.getElementById('confirm_pass').innerHTML = '';
            document.getElementById('confirm_pass2').style.display = 'block';
        }else{            
            document.getElementById('confirm_pass').innerHTML = '<P><span class="text1" >Confirmer Mot de passe :</span> <input name="pass2" type="password" id="pass2" value="" maxlength="20" class="formulaire3" /></P>';
            document.getElementById('confirm_pass2').style.display = 'none';
        }
    }
}

function clear_on_focus(elem,defaut)
{
    if(elem.value == defaut)
    {
        elem.value = '';
    }    
}

function reset_on_blur(elem,defaut)
{
    if( elem.value == '')
    {
       elem.value=defaut;
    }
}
         

function valid_form_n_redirect() {
	//var ptn=document.getElementById('ptn').value;
	//var ext_code=document.getElementById('ext_code').value;
	//var t2c=document.getElementById('t2c').value;
    var email = '';    
    email=document.getElementById('email').value;
    
    
        
    var mode=document.getElementById('mode').value;
	//var version=document.getElementById('version').value;

    var path = '';
    var formulaire = document.getElementById("formulaire");
    var url_dyn = '';
    var inputs = formulaire.getElementsByTagName("input");
    var i = 0;
    while (inputs[i])
    {
        if(inputs[i].type == 'hidden')
        {
            url_dyn += inputs[i].name+'='+ escape(inputs[i].value)+'&';
        }
        i++;

    }
    //alert(url_dyn);
    if(in_minisite_dyn == 'yes')
        path = base_domaine+'/minisite/';

	if(test_google())
	{
		if(is_an_valid_email('frfr'))
		{
			//var fournisseur=document.getElementById('fournisseur').options[document.getElementById('fournisseur').selectedIndex].value;
			var fournisseur=document.getElementById('fournisseur').value;

			// INTERNET+
			if ((fournisseur=='orange') || (fournisseur == 'free') || (fournisseur == 'alice') || (fournisseur == 'bouygues_telecom')) {
				window.location.href=path+'redirect_iplus.php?fournisseur=' + fournisseur  +  '&email=' + email+'&'+url_dyn;
			}
            // INTERENT+ SFR
            else if(fournisseur == 'sfr'){
                window.location.href=path+'redirect_iplus.php?fournisseur=' + fournisseur  +  '&email=' + email+'&'+url_dyn;
            }
			// SMS-PAYPAL
			else {
				var params='fournisseur=' + fournisseur + '&email=' + email +'&'+url_dyn /*+ '&type=' + type*/;
				document.location.href=path+"redirect_sms_paypal.php?" + params;
			}
		}
		else
		{
			//alert("Email invalide!");
			return false;
		}
	}
	else
	{
		alert("Pour passer a l'etape suivante merci d'accepter les Conditions Generales d'Utilisation en cochant la case située au dessus du bouton \" Valider \"");
		return false;
	}
	return false;
}

function valid_form_n_redirect_eses() {
	var email=document.getElementById('email').value;	

    var path = '';
    var formulaire = document.getElementById("formulaire");
    var msisdn = document.getElementById("msisdn").value;
    var url_dyn = '';
    var inputs = formulaire.getElementsByTagName("input");
    var i = 0;
    while (inputs[i])
    {
        if(inputs[i].type == 'hidden')
        {
            url_dyn += inputs[i].name+'='+ escape(inputs[i].value)+'&';
        }
        i++;

    }    

    //alert(url_dyn);
    if(in_minisite_dyn == 'yes')
        path = base_domaine+'/minisite/';

	
    if(is_an_valid_email('eses') && is_valid_msisdn_eses(msisdn))
    {
        var operateur=document.getElementById('operateur').options[document.getElementById('operateur').selectedIndex].value;        
        var params='msisdn='+msisdn+'&'+'operateur=' + operateur + '&email=' + email +'&'+url_dyn /*+ '&type=' + type*/;
        document.location.href=path+"redirect_nop.php?" + params;
    }
    else{        
        return false;
    }
	
	return false;
}

function valid_form_confirmation(lang)
{
    var retour='';    
    // Si on est dans le cadre d'un nouveau compte sans mot de passe
    if(document.getElementById("pass2"))
    {
        var email = document.getElementById("email").value;
        var monreg = new RegExp("^[a-zA-Z][a-zA-Z0-9._-]*@[a-zA-Z][a-zA-Z0-9._-]+[.][a-zA-Z]{2,4}$","g");
        var ret = monreg.test(email);
        if(!ret)
        {
            if(lang == 'frfr')
                alert("Email invalide!");
            if(lang == 'eses')
                alert("?Dirección de correo electrónico incorrecta !");

            retour =  false;
        }
        else if(document.getElementById("pass1").value != document.getElementById("pass2").value)
        {
            if(lang == 'eses'){
                alert("Atención a la confirmación de su contraseña.");
            }else{
                alert("Attention a la confirmation de votre mot de passe.");
            }
            retour =  false;
        }
        else if(document.getElementById("pass1").value == '')
        {
            if(lang == 'eses'){
                alert("Su contraseña no puede estar vacío.");
            }else{
                alert("Votre mot de passe ne peut pas etre vide.");
            }
            retour = false;
        }
        else
        {
            retour = true;
        }
    }
    // Sinon on check si le password est bon
    else
    {        
        var email = document.getElementById("email").value;
        var pass = document.getElementById("pass1").value;
        var msg_ajax = ajax("../ajax/check_account.php",'POST',"email="+email+"&pass="+pass);
        if(msg_ajax == 'ok')
        {            
            retour = true;
        }
        else
        {
            if(lang=='eses'){
                alert("cuenta no existe, revise su contraseña.");
            }else{
                alert("Ce compte n'existe pas! Verifiez votre mot de passe.");  
            }                      
            retour = false;
        }       
    }
    
    return retour;
}

function submit_confirm_form(lang)
{
    if(valid_form_confirmation(lang))
    {
        document.getElementById("form_confim").submit();
    }    
}

function test_google()
{
	if(document.getElementById('optin'))
	{
		//alert('mode facebook');
		if(document.getElementById('optin').checked)
			return true;
		else
			return false;
	}
	else
		return true;
}

function is_valid_msisdn_eses(msisdn)
{
    var monreg = new RegExp("^(6|346)[0-9]{8}$","g");    
    if(monreg.test(msisdn)){
        return true;
    }else{
        alert("Número de teléfono no válido");
        return false;
    }
}

function is_an_valid_email(zone)
{
    var email = '';
    //Pour le cas du mot de passe recuper on essaie avec le email 2
    if(document.getElementById('email2'))
    {
        email = document.getElementById('email2').value;
    }
    else
    {
        email = document.getElementById('email').value;
    }

    var monreg = new RegExp("^[a-zA-Z][a-zA-Z0-9._-]*@[a-zA-Z][a-zA-Z0-9._-]+[.][a-zA-Z]{2,4}$","g");

    var ret = monreg.test(email);
    if(!ret)
    {
        if(zone == 'frfr')
            alert("Email invalide!");
        if(zone == 'eses')
            alert("?Dirección de correo electrónico incorrecta !");
    }

	return ret;
    //alert(monreg.test(email));
    //return true;
}


function is_valid_mobn(mobn,pays) {

	if(pays == 'France')
	{
	    // 10 chiffres commencant par 06
	    if ((mobn.length != 10) || (isNaN(mobn) == true) || ((mobn.substr(0, 2) != '06')&&(mobn.substr(0, 2) != '07'))) {
	        return false;
	    } else {
	        return true;
	    }
	}
	else if(pays == 'Maroc')
	{
		// 10 chiffres commencant par 06
	    if ((mobn.length != 10) || (isNaN(mobn) == true) || (mobn.substr(0, 2) != '06')) {
	        return false;
	    } else {
	        return true;
	    }
	}
	else if(pays == 'Suisse')
	{
		// 10 chiffres commencant par 07
		if ((mobn.length != 10) || (isNaN(mobn) == true) || (mobn.substr(0, 2) != '07')) {
	        return false;
	    } else {
	        return true;
	    }
	}
	else if(pays == 'Belgique')
	{
		// 10 chiffres commencant par 04
		if ((mobn.length != 10) || (isNaN(mobn) == true) || (mobn.substr(0, 2) != '04')) {
	        return false;
	    } else {
	        return true;
	    }
	}
	else
	{
		// au moins 7 chiffres pour ts les autres numeros
		if ((mobn.length < 7) || (isNaN(mobn) == true)) {
	        return false;
	    } else {
	        return true;
	    }
	}
}

function remove_element_at(tab, pos) {
    var ret = new Array();
    for (i = 0; i < tab.length; i++) {
        if (i != pos) {
            ret[ret.length] = tab[i];
        }
    }
    return ret;
}

// Connexion au serveur http
function getXhr()
{
  var xhr;
  if(window.XMLHttpRequest)         // Firefox et autres
    xhr = new XMLHttpRequest();
  else if(window.ActiveXObject)     // Internet Explorer
  {
    try
    {
      xhr = new ActiveXObject("Msxml2.XMLHTTP"); // IE version > 5
    }
    catch(e)
    {
      xhr = new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  else // XMLHttpRequest non supporté par le navigateur
  {
    alert("Votre navigateur ne supporte pas les objets XMLHttpRequest !");
    xhr = false;
  }

  return xhr;

} // getXhr()

// Modification du contenu d'un identificateur id suivant le programme php
function ajax(php, method, param)
{
  //var c = document.getElementById(id);
  //c.innerHTML = '<p><img src="../../Images/loading.gif" alt="Chargement" />Chargement en cours</p>';

  var xhr = getXhr();  // Récup?re la connexion au serveur http

  xhr.open(method, php, false);  //  Ouvre la connexion avec le serveur http avec comme url php
  if ('POST' == method)       // Encodage si méthode POST
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

  xhr.send(param);            //  Envoie l'url php pour exécution au serveur http avec les parametres param
                              //  si method = POST, sinon NULL

  // Exécution de la fonction d?s que l'on obtient une réponse du serveur http
  xhr.onreadystatechange = function()
  {
    // Si on a tout reçu (4) et que le serveur est ok (200)
    // Modifie l'élément ayant pour identificateur id suivant le programme php
    if(xhr.readyState == 4 && xhr.status == 200)
    {
      // Si on a du javascript on identifie les scripts et on force la valuation eval()
	  /*var allscript = c.getElementsByTagName('script');
	  for (var i=0; i<allscript.length; ++i)
	  {
	    window.eval(allscript[i].text);
	  }*/
    }
  }

  return xhr.responseText;
} // ajax()
