﻿function getDataForm (conteneurForm) {
	//fonction qui permet de récupérer toutes les données d'un formulaire
	var data = "";
	var dataAdd = "";
	$("#"+conteneurForm+" textarea, #"+conteneurForm+" input[type=text], #"+conteneurForm+" input[type=password], #"+conteneurForm+" input[type=hidden], #"+conteneurForm+" input:checked, #"+conteneurForm+" select option:selected").each(function(currentElt) {	
		dataAdd = "";
		//alert("test"+this.tagName);
		if (this.tagName=="OPTION") {
			dataAdd=$(this).closest('select').attr("name")+"="+$(this).attr("value");
		}
		else {
			dataAdd=$(this).attr("name")+"="+$(this).attr("value");
		}
		if (data!="" && dataAdd!="") {
			data+="&";
		}
		data+=dataAdd;
	});
	return data;
}

function displayErreurServeur (dataErreur,blocForm) {
	for(Prop in dataErreur){
		clearField(Prop);
		$("#"+blocForm+" ."+Prop+" ."+Prop).html(dataErreur[Prop]);
		$("#"+blocForm+" ."+Prop+" ."+Prop).css("display","inline");
		displayStatutImage('#f-'+Prop, "bad");
		$('#f-'+Prop).addClass('erreur2');		
	}
}

function displayErreur(ligName, fName, msg, fClass) {
	$("p.erreur03."+fName).html(msg);
	$('p.erreur03.'+fName).css('display', 'inline');		
	if (fClass!='') $('#f-'+fName).addClass(fClass);
}

function displayStatutImage(elt, state) {
	$(elt+' + img').remove();
	if (state!="clear") {
		if (elt!='') $(elt).after('<img class="status" src="/img/fr/portail/images/picto-verif-'+state+'.png" alt="" />');
	}
}

function clearField(field) {
	$("p.erreur03."+field).css('display','none');
	$("#f-"+field).removeClass('focus erreur1 erreur2 erreur3');	
	displayStatutImage("#f-"+field, 'clear');
}

function verifNombre(str) {
	var exp=new RegExp("^[0-9]*$","g");
	return exp.test(str);
} 

function verifFloat(str) {
	var exp=new RegExp("^[0-9]+([\.,]{1}[0-9]+){0,1}$","g");
	return exp.test(str);
} 

function trimNombre(str) {
	if (str.substring(0,1)=='0') {
		return str.substring(1);
	}
	else return str;
}

function verifEmail(str) {
	var exp=new RegExp("^[a-zA-Z0-9\-_]+[a-zA-Z0-9\-_\.]*@[a-zA-Z0-9\-_]+[\.]{1,1}[a-zA-Z\-_\.]{1,}[a-zA-Z\-_]+$","g");
	return exp.test(str);
} 
function initDob(fName) {
	switch(fName) {
		case "dob-j": if ($('#f-dob-j').attr('value') == 'JJ') $('#f-dob-j').attr('value', ''); break;
		case "dob-m": if ($('#f-dob-m').attr('value') == 'MM') $('#f-dob-m').attr('value', ''); break;
		case "dob-a": if ($('#f-dob-a').attr('value') == 'AAAA') $('#f-dob-a').attr('value', ''); break;
	}		
}
function isNumeric(form_value) 
{ 
    if (form_value.match(/^\d+$/) == null) 
        return false; 
    else 
        return true; 
} 
function verifField(ligName, fName) {
	var today = new Date();
	clearField(fName);
	switch(fName) {
		case 'nom':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre nom', 'erreur3');			
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'prenom':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre prénom', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'societe':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre raison sociale', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'tva':
			tva = $('#f-'+fName).attr('value');
			if (tva == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre numéro de tva', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			else if (!verifNombre(tva)) {
				displayErreur(ligName, fName, 'Le numéro de TVA doit être un nombre', 'erreur2');				
				displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'civilite':
			isCivilite = false;
			$.each($('div.lig.civilite input'), function() {
        if ($(this).attr('checked')) isCivilite = true;
      });
			if (!isCivilite) {
				displayErreur(ligName, 'civilite', 'Veuillez renseigner votre civilité', '');
				displayStatutImage('#f-civilite3 + label', 'bad');					
				return false;
			}	
			displayStatutImage('#f-civilite3 + label', 'ok');				
			break;
		case 'dob-j':	
			dob_j = $('#f-dob-j').attr('value');
			if (dob_j == '') {
				displayErreur(ligName, fName, 'Veuillez saisir votre jour de naissance', 'erreur3');									
				//displayStatutImage('#f-dob-a', 'bad');
				erreurDobJ = true;
				return false;
			}
			else if (!verifNombre(dob_j) || dob_j.length<2 || parseInt(trimNombre(dob_j))<1 || parseInt(trimNombre(dob_j))>31) {
				displayErreur(ligName, fName, 'Vous devez saisir une valeur entre 01 et 31', 'erreur2');				
				displayStatutImage('#f-dob-a', 'bad');
				erreurDobJ = true;
				return false;
			}
			erreurDobJ = false;
			if (!(erreurDobM || erreurDobA)) displayStatutImage('#f-dob-a', 'ok');
			break;
		case "dob-m":				
			dob_m = $('#f-dob-m').attr('value');				
			if (dob_m == '') {
				displayErreur(ligName, fName, 'Veuillez saisir votre mois de naissance', 'erreur3');				
				//displayStatutImage('#f-dob-a', 'bad');
				erreurDobM = true;					
				return false;
			}
			else if (!verifNombre(dob_m) || dob_m.length<2 || parseInt(trimNombre(dob_m))<1 || parseInt(trimNombre(dob_m))>12) {
				displayErreur(ligName, fName, 'Vous devez saisir une valeur entre 01 et 12', 'erreur2');				
				displayStatutImage('#f-dob-a', 'bad');
				erreurDobM = true;
				return false;
			}	
			erreurDobM = false;
			if (!(erreurDobJ || erreurDobA)) displayStatutImage('#f-dob-a', 'ok');
			break;
		case "dob-a":		
			dob_a = trimNombre($('#f-dob-a').attr('value'));
			if (dob_a == '') {
				displayErreur(ligName, fName, 'Veuillez saisir votre année de naissance', 'erreur3');									
				//displayStatutImage('#f-dob-a', 'bad');
				erreurDobA = true;
				return false;
			}
			else if (!verifNombre(dob_a) || dob_a.length!=4) {
				displayErreur(ligName, fName, 'L\'année doit contenir 4 chiffres', 'erreur2');		
				displayStatutImage('#f-dob-a', 'bad');
				erreurDobA = true;
				return false;
			}				
			else if (dob_a > (today.getFullYear()-16)) {
				displayErreur(ligName, fName, 'Vous devez avoir plus de 16 ans', 'erreur2');		
				displayStatutImage('#f-dob-a', 'bad');
				erreurDobA = true;
				return false;
			}
			erreurDobA = false;
			if (!(erreurDobM || erreurDobJ)) displayStatutImage('#f-dob-a', 'ok');
			break;
		case 'adr1':				
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre adresse', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');					
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');								
			break;
		case 'adr2':
		case 'adr3':
		case 'adr4':
			adr = $('#f-'+fName).attr('value');
			if (adr != "") {
				displayStatutImage('#f-'+fName, 'ok');				
			}				
			else {
				displayStatutImage('#f-'+fName, 'clear');
			}
			break;		
		case 'cp':
			cp = $('#f-'+fName).attr('value');
			if (cp == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre code postal', 'erreur3');	
				//displayStatutImage('#f-ville', 'bad');					
				return false;
			}
			else if (!verifNombre(cp) || cp.length<4 || cp.length>5) {
				displayErreur(ligName, fName, 'Le code postal est invalide', 'erreur2');				
				displayStatutImage('#f-ville', 'bad');
				return false;
			}
			displayStatutImage('#f-ville', 'ok');				
			break;
		case 'ville':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre ville', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');					
				return false;
			}				
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'pays':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre pays', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'tel1':
			tel1 = $('#f-'+fName).attr('value');
			if (tel1 == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre téléphone principal', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');					
				return false;
			}
			else if (!(verifNombre(tel1))) {
				displayErreur(ligName, fName, 'Votre numéro de téléphone ne peut contenir que des chiffres sans espace', 'erreur2');				
				displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'tel2':
			tel2 = $('#f-'+fName).attr('value');
			if (tel2 != "") {
				if (!(verifNombre(tel2))) {
					displayErreur(ligName, fName, 'Votre numéro de téléphone ne peut contenir que des chiffres sans espace', 'erreur2');				
					displayStatutImage('#f-'+fName, 'bad');
					return false;
				}					
				displayStatutImage('#f-'+fName, 'ok');					
			}				
			else {
				displayStatutImage('#f-'+fName, 'clear');
			}
			break;
		case 'tel':
			tel = $('#f-'+fName).attr('value');
			if (tel != "") {
				if (!(verifNombre(tel))) {
					displayErreur(ligName, fName, 'Votre numéro de téléphone ne peut contenir que des chiffres sans espace', 'erreur2');				
					displayStatutImage('#f-'+fName, 'bad');
					return false;
				}					
				displayStatutImage('#f-'+fName, 'ok');					
			}				
			else {
				displayStatutImage('#f-'+fName, 'clear');
			}
			break;
		case 'email':
			email = $('#f-'+fName).attr('value');
			if (email == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre adresse email', 'erreur3');				
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			else if (!verifEmail(email)) {
				displayErreur(ligName, fName, 'Votre adresse email est invalide', 'erreur2');				
				displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'mdp':
			mdp = $('#f-'+fName).attr('value');
			if (mdp == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre mot de passe', 'erreur3');		
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			else if (mdp.length<8) {
				displayErreur(ligName, fName, 'Votre mot de passe doit contenir au minimum 8 caractères', 'erreur2');		
				displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'mdp2':				
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez confirmer votre mot de passe', 'erreur3');		
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			else if ($('#f-'+fName).attr('value') != $('#f-mdp').attr('value')) {
				displayErreur(ligName, fName, 'Les mots de passe ne correspondent pas', 'erreur2');		
				displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case "new_liste":
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez nommer votre liste', 'erreur2');
				displayStatutImage('#f-'+fName, 'bad');	
				return false;
			}
			break;
		case "produit":
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir le nom d’un produit', 'erreur3');				
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'message2':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre message', 'erreur3');			
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'objet':
			if ($('#f-'+fName).attr('value') == "" || $('#f-'+fName).attr('value') == "0") {
				displayErreur(ligName, fName, 'Sélectionnez l\'objet de votre message', 'erreur3');		
				//displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'marque':
		case 'format':
		case 'message':
			val = $('#f-'+fName).attr('value');
			if (val != "") {
				displayStatutImage('#f-'+fName, 'ok');					
			}				
			else {
				displayStatutImage('#f-'+fName, 'clear');
			}
			break;
		case 'num_cb' :
			val = $('#f-'+fName).val();
			if (val == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre numéro de carte bancaire', 'erreur3');
				return false;
			}
			else if ($('.form input[name=type_carte]:checked').val() == "accord" && (val.length != 19 || !verifNombre(val) || val.substr(0,6) != "503202") ) { 
				//carte accord
				displayStatutImage('#f-'+fName, 'bad');
				displayErreur(ligName, fName, 'Votre numéro de carte Accord est invalide', 'erreur2');				
				return false;
			}
			else if ($('.form input[name=type_carte]:checked').val() != "accord" && (val != '' && val.length != 16 || !verifNombre(val) || val.substr(0,6) == "503202")) {
				// autre carte
				displayStatutImage('#f-'+fName, 'bad');
				displayErreur(ligName, fName, 'Votre numéro de carte bancaire est invalide', 'erreur2');				
				return false;
			}else{
				displayStatutImage('#f-'+fName, 'ok');
			}
			break;
		case 'code_secu' :
			val = $('#f-'+fName).val();
			if (val == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre code de sécurité', 'erreur3');	
				return false;
			} else if (val != '' && val.length != 3 || !verifNombre(val)) {
				displayStatutImage('#f-'+fName, 'bad');
				displayErreur(ligName, fName, 'Votre code de sécurité est invalide', 'erreur2');
				return false;
			}				
			else {
				displayStatutImage('#f-'+fName, 'ok');
			}
			break;
		case 'nom_carte' :
			val = $('#f-'+fName).val();
			if (val == "") {
				displayErreur(ligName, fName, 'Veuillez nommer votre carte', 'erreur3');					
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');			
			break;
		case 'type_carte':
			isTypeCarte = false;
			$.each($('div.lig.'+fName+' input'), function() {
					//alert($(this).attr('id')+' et check ou pas : '+$(this).attr('checked'));
					if ($(this).attr('checked')) {
						isTypeCarte = true;
						if ($(this).attr('id') == "carte_accord") {
							//si c'est la carte accord alors pas de code de securite
							$('.form div.code_secu').css('display','none');
						}
						else {
							$('.form div.code_secu').css('display','block');
						}
					}
			});
			if (!isTypeCarte) {
				displayErreur(ligName, fName, 'Veuillez sélectionner votre type de carte bancaire', '');
				displayStatutImage('.'+fName+'.last img', 'bad');
				return false;
			}	
			displayStatutImage('.'+fName+'.last img', 'ok');				
			break;
		case "date_exp_mois":
			dateExpMonth = $('#f-'+fName).val();
			erreurDateExpM = false;
			if (dateExpMonth == 'mois') {
				displayErreur(ligName, fName, 'Veuillez sélectionnez le mois d\'expiration', 'erreur3');
				displayStatutImage('#f-'+fName, 'bad');
				erreurDateExpM = true;
				return false;
			}
			if (!erreurDateExpM) displayStatutImage('#f-'+fName, 'ok');
			break;
		case "date_exp_annee":
			dateExpYear = $('#f-'+fName).val();
			erreurDateExpA = false;
			if (dateExpYear == 'annee') {
				displayErreur(ligName, fName, 'Veuillez sélectionnez l\'année d\'expiration', 'erreur3');									
				displayStatutImage('#f-'+fName, 'bad');
				erreurDateExpA = true;
				return false;
			}
			if (!erreurDateExpA) displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'don':			
			cagnotte = $('#cagnotte').val();
			val = $('#f-'+fName).attr('value');
			if (val == "") {
				displayErreur(ligName, fName, 'Veuillez saisir le montant de votre don');								
				return false;
			}
			else if (!verifFloat(val)) {
				displayErreur(ligName, fName, 'Le montant doit être un nombre');								
				return false;
			}	
			else if (val>cagnotte) {
				displayErreur(ligName, fName, 'Veuillez saisir un montant inférieur à '+cagnotte+' &euro;');	
				return false;
			}				
			break;
		case 'login':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre numéro de client', 'erreur3');			
				displayStatutImage('#f-'+fName, '');
				return false;
			}			
			else if (!verifNombre($('#f-'+fName).attr('value'))){
				displayErreur(ligName, fName, 'Ce numéro de client est invalide', 'erreur2');			
				displayStatutImage('#f-'+fName, 'bad');
				return false;
			}
			displayStatutImage('#f-'+fName, 'ok');
			break;
		case 'password':
			if ($('#f-'+fName).attr('value') == "") {
				displayErreur(ligName, fName, 'Veuillez saisir votre mot de passe', 'erreur3');			
				displayStatutImage('#f-'+fName, '');
				return false;
			}
			/*else if ($('#f-'+fName).attr('value').length < 8) {
				displayErreur(ligName, fName, 'Votre mot de passe est invalide', 'erreur2');			
				displayStatutImage('#f-'+fName, 'bad');
				return false;
			} */
			displayStatutImage('#f-'+fName, 'ok');
			break;			
	}
	return true;
}

$('#f-statut1').click( function() {		
		$('div.lig.societe').css('display', 'none');
		$('div.lig.tva').css('display', 'none');
		$('#l-nom').html('Nom <span>*</span> :');
		$('#l-prenom').html('Prénom <span>*</span> :');			
	});
$('#f-statut2').click( function() {
		$('div.lig.societe').css('display', 'block');
		$('div.lig.tva').css('display', 'block');
		$('#l-nom').html('Nom interlocuteur <span>*</span> :');
		$('#l-prenom').html('Prénom interlocuteur <span>*</span> :');			
});

var erreurDobJ = true;
var erreurDobM = true;
var erreurDobA = true;

$('#f-nom').blur(function() 	{verifField('nom','nom')});
$('#f-prenom').blur(function() 	{verifField('prenom','prenom')});
$('#f-societe').blur(function() {verifField('societe','societe')});
$('#f-tva').blur(function() 	{verifField('tva','tva')});
$('#f-dob-j').blur(function() 	{verifField('dob','dob-j')});
$('#f-dob-m').blur(function() 	{verifField('dob','dob-m')});
$('#f-dob-a').blur(function() 	{verifField('dob','dob-a')});	
$('#f-adr1').blur(function() 	{verifField('adr1','adr1')});
$('#f-adr2').blur(function() 	{verifField('adr2','adr2')});
$('#f-adr3').blur(function() 	{verifField('adr3','adr3')});
$('#f-adr4').blur(function() 	{verifField('adr4','adr4')});
$('#f-cp').blur(function() 		{verifField('ville','cp')});
$('#f-ville').blur(function() 	{verifField('ville','ville')});
$('#f-pays').change(function() 	{verifField('pays','pays')});	
$('#f-tel1').blur(function() 	{verifField('tel1','tel1')});	
$('#f-tel2').blur(function() 	{verifField('tel2','tel2')});	
$('#f-tel').blur(function() 	{verifField('tel','tel')});	
$('#f-mdp').blur(function() 	{verifField('mdp','mdp')});
$('#f-mdp2').blur(function() 	{verifField('mdp','mdp2')});
$('#f-email').blur(function() 	{verifField('email','email')});

$('#f-login').blur(function() 	{verifField('login','login')});
$('#f-password').blur(function() 	{verifField('password','password')});

$('#f-produit').blur(function() {verifField('produit','produit')});
$('#f-format').blur(function() {verifField('format','format')});
$('#f-marque').blur(function() {verifField('marque','marque')});
$('#f-message').blur(function() {verifField('message','message')});
$('#f-message2').blur(function() {verifField('message2','message2')});
$('#f-objet').blur(function() {verifField('objet','objet')});
$('#f-objet').change(function() {verifField('objet','objet')});

$('#f-dob-j').focus(function() 	{initDob('dob-j')});
$('#f-dob-m').focus(function() 	{initDob('dob-m')});
$('#f-dob-a').focus(function() 	{initDob('dob-a')});

$('input[name=type_carte]').click(function() {verifField('type_carte','type_carte')});
$('#f-num_cb').blur(function() {verifField('num_cb','num_cb')});
$('#f-code_secu').blur(function() {verifField('code_secu','code_secu')});
$('#f-nom_carte').blur(function() {verifField('nom_carte','nom_carte')});
$('#f-date_exp_mois').change(function() {verifField('date_exp_mois','date_exp_mois')});
$('#f-date_exp_annee').change(function() {verifField('date_exp_annee','date_exp_annee')});
$('#f-date_exp_mois').blur(function() {verifField('date_exp_mois','date_exp_mois')});
$('#f-date_exp_annee').blur(function() {verifField('date_exp_annee','date_exp_annee')});

$('div.lig.civilite input.radio').click(function() {$("p.erreur03.civilite").remove(); verifField('civilite','civilite')});

$('div.lig input.text').focus(function() {
	$('div.lig input.text').each( function() { 
		$(this).removeClass('focus');
		});
	$(this).addClass('focus');	
	});
$('div.lig textarea').focus(function() {
	$('div.lig textarea').removeClass('focus');
	$(this).addClass('focus');	
});
$("p.erreur03").css('display','none');

$('a.retour').bind('click' , function() {
	tb_remove();	
});	

function initFormCard(formId){
	//alert(formId);
	$('#f-num_cb').attr('autocomplete', 'off');
	$('#f-code_secu').attr('autocomplete', 'off');
	$('#'+formId).bind('submit', function(event){
		if (event.preventDefault){ 
			event.preventDefault(); 
		}
		event.returnValue="false";
		var isValide = true;
		
		$(".form input.erreur1").removeClass('erreur1');
		$(".form input.erreur2").removeClass('erreur2');
		$(".form input.erreur3").removeClass('erreur3');
		
		isValide = (verifField('type_carte','type_carte') && isValide);
		if ($('.form input[name=type_carte]:checked').val() != "accord") {
			//Si ce n'est pas une carte accord alors il faut verifier le code de sécurité
			isValide = (verifField('code_secu','code_secu') && isValide);
		}
		isValide = (verifField('num_cb','num_cb') && isValide);
		isValide = (verifField('date_exp','date_exp_mois') && isValide);
		isValide = (verifField('date_exp','date_exp_annee') && isValide);
		
		isValide = (verifField('nom_carte','nom_carte') && isValide);
		
		numListe = $('#list_paiement li:last .paiementNum').html();
		
		if (isValide){	
			/***/
			cardType = $('div.lig.type_carte input:checked').val();
			cardNumber = $('#f-num_cb').val();
			dExpMonth = $('#f-date_exp_mois').val();
			dExpYear = $('#f-date_exp_annee').val();
			securityCode = $('#f-code_secu').val();
			cardName = $('#f-nom_carte').val();
			/***/
			var cardId = null;
			if(formId == 'form_modif_carte') cardId = $('#idCarte').val();
			if(cardId!=null){
				linkAjax = $('#lienAjax_modifCard').val();
			}else{
				linkAjax = $('#lienAjax_addCard').val();
			}
			
			$.post(linkAjax, { idCard : cardId , type : cardType , number : cardNumber , month : dExpMonth ,year : dExpYear , code : securityCode , name : cardName, numero : numListe}, 
			function success(data){
					if(data == ''){
						if(cardId){
							alert('Ajout de la carte de paiement non autorisé');
						}else{
							alert('Modification de la carte de paiement non autorisée');
						}
					}else{
						//alert(linkAjax);
						$('#ajout_carte input[type=text]').attr('value','');
						$('#ajout_carte input[type=radio]').attr('checked','');
						$('#ajout_carte select option').attr('selected','');
						$('#ajout_carte img.status').remove();
						$('#list_paiement').html(data);
						initBtListeMoyens('moyens_paiement');
						if(cardId){
							//modification d'un moyen de paiement
							if(formId == 'form_modif_carte'){
								var formModifCarte = $('#ajout_carte #form_modif_carte');
								var btSaveCard = $('#ajout_carte #bt_save_card');
								//on va réinitialiser le formulaire en vidant les champs et en lui redonnant les bons intulés de bouton et le titre
								formModifCarte.unbind('submit');
								//$('#ajout_carte #form_modif_carte #lienAjax_modifCard').attr('value','ajax/test_ajout_carte_paiement_ok.html');
								//$('#ajout_carte #form_modif_carte #lienAjax_modifCard').attr('id','lienAjax_addCard');
								$('#ajout_carte h3').html('Ajouter une carte de paiement :');
								formModifCarte.attr('name','form_ajout_carte');
								formModifCarte.attr('id','form_ajout_carte');
								btSaveCard.attr('src','images/bt-enregistrer-carte.png');		
								btSaveCard.attr('title','Enregistrer ma carte');
								initFormCard('form_ajout_carte');
							}
							alert('La carte de paiement a été modifiée');
						}else{
							//ajout d'un moyen de paiement
							alert('La carte de paiement a été ajoutée');
						}
					}
			});
		}
	});
}

$('#form_modif_mdp').unbind('submit');
$('#form_modif_mdp').bind('submit', function(event){
	var isValide = true;
	if (event.preventDefault){ 
		event.preventDefault(); 
	}
	event.returnValue = false;
	$(".form input.erreur1").removeClass('erreur1');
	$(".form input.erreur2").removeClass('erreur2');
	$(".form input.erreur3").removeClass('erreur3');
	
	isValide = (verifField('mdp','mdp') && isValide);
	isValide = (verifField('mdp2','mdp2') && isValide);
	
	if (isValide){
		var dataSend = getDataForm("form_modif_mdp");
		$.getJSON($('#form_modif_mdp').attr("action")+"?"+dataSend,{},
		function success(data){ 
			//alert("test3"+data);
			// Au succès on renvoie le résultat de la requête			
			if (data.noerror) {
				$("#form_modif_mdp img.status").remove();
				$("#form_modif_mdp .text").val('');
				alert('Votre mot de passe a bien été modifié.');
				//le formulaire est validé on va donc demander de récupérer les infos à présenter
				window.scrollTo(0,0);
			}
			else {
				//alert("test2"+data);
				window.scrollTo(0,0);
				displayErreurServeur(data,"form_modif_mdp");
			}
		});
	}
	return false;
});


//}

// erreur 3 pour oubli
// erreur 2 pour erreur
$('#form_modif_infos').bind('submit', function(event){
	var isValide = true;
		$(".form input.erreur1").removeClass('erreur1');
		$(".form input.erreur2").removeClass('erreur2');
		
		if ($('#f-statut2').attr('checked')) {
			isValide = (verifField('societe','societe') && isValide);
			isValide = (verifField('tva','tva') && isValide);
		}
		
		//Après vérication serveur, des propositions sont affich"ou non, ici si ville = neville, on propose
		if ($('#f-ville').attr('value').toLowerCase()=="neville") {
			displayErreur('pays', 'proposition', 'La commune que vous avez renseigné pu être vérifiée.<br />Veuillez compléter ou confirmer votre commune, ou choisir parmi les différentes propositions ci-dessous :', '');
			$('div.lig.proposition').css('display', 'block');	
			$('div.lig.separ.propo').css('display', 'none');		
		}
		else {
			clearField('proposition');
			$('div.lig.proposition').css('display', 'none');	
			$('div.lig.separ.propo').css('display', 'block');	
		}
		
		isValide = (verifField('nom','nom') && isValide);
		isValide = (verifField('prenom','prenom') && isValide);
		isValide = (verifField('civilite','civilite') && isValide);
		isValide = (verifField('dob','dob-j') && isValide);
		isValide = (verifField('dob','dob-m') && isValide);
		isValide = (verifField('dob','dob-a') && isValide);
		isValide = (verifField('adr1','adr1') && isValide);
		isValide = (verifField('ville','cp') && isValide);			
		isValide = (verifField('ville','ville') && isValide);
		isValide = (verifField('pays','pays') && isValide);
		isValide = (verifField('email','email') && isValide);
		isValide = (verifField('tel1','tel1') && isValide);
		isValide = (verifField('tel2','tel2') && isValide);
		isValide = (verifField('mdp','mdp') && isValide);
		isValide = (verifField('mdp','mdp2') && isValide);
		
		if (isValide) {
			$('.form-inscription').css('display', 'none');
			$('p.confirm').css('display', 'block');		
			window.scrollTo(0,0);
			setTimeout(tb_remove, 4000);			
		}
		return false;
});

$('#form-inscription').unbind('submit');
$('#form-inscription').bind('submit', function(event) {
		var isValide = true;
		$(".form input.erreur1").removeClass('erreur1');
		$(".form input.erreur2").removeClass('erreur2');
		
		if ($('#f-statut2').attr('checked')) {
			isValide = (verifField('societe','societe') && isValide);
			isValide = (verifField('tva','tva') && isValide);
		}
		
		isValide = (verifField('nom','nom') && isValide);
		isValide = (verifField('prenom','prenom') && isValide);
		isValide = (verifField('civilite','civilite') && isValide);
		isValide = (verifField('dob','dob-j') && isValide);
		isValide = (verifField('dob','dob-m') && isValide);
		isValide = (verifField('dob','dob-a') && isValide);
		isValide = (verifField('adr1','adr1') && isValide);
		isValide = (verifField('adr2','adr2') && isValide);
		isValide = (verifField('adr3','adr3') && isValide);
		isValide = (verifField('adr4','adr4') && isValide);
		isValide = (verifField('ville','cp') && isValide);			
		isValide = (verifField('ville','ville') && isValide);
		isValide = (verifField('pays','pays') && isValide);
		isValide = (verifField('email','email') && isValide);
		isValide = (verifField('tel1','tel1') && isValide);
		isValide = (verifField('tel2','tel2') && isValide);
		isValide = (verifField('mdp','mdp') && isValide);
		isValide = (verifField('mdp','mdp2') && isValide);			
		
		if (isValide) {		
			var dataSend = getDataForm("form-inscription");				
			$.getJSON($(this).attr("action")+"?"+dataSend,{},
			function success(data){ 								
				//si l'email existe deja
				if (data.emailexist) {
					window.scrollTo(0,0);
					$('#form-inscription').css('display', 'none');
					$('#notify-existmail').css('display', 'block');					
					$('#notify-existmail').find('.email').html(data.emailexist);
					$('#notify-existmail .bt-valider').unbind('click');
					$('#notify-existmail .bt-recevoir').unbind('click');
					$('#notify-existmail .bt-valider').bind('click', function() {
						$('#notify-existmail').css('display', 'none');					
						$('p.confirm').css('display', 'block');		
						window.scrollTo(0,0);
						setTimeout(tb_remove, 4000);	
						});
					$('#notify-existmail .bt-recevoir').bind('click', function() {
						$('#notify-existmail').css('display', 'none');					
						$('p.confirm2').css('display', 'block');		
						window.scrollTo(0,0);
						setTimeout(tb_remove, 4000);	
						});
				}
				//si pas d'erreur serveurs
				else if (data.noerror) {
					var dataSend = getDataForm("form-inscription");				
					$.getJSON($('#verifAdrUrl').val()+"?"+dataSend,{},
					function success(data2){ 							
						if (data2.noresult) {
							clearField('proposition');
							$('div.lig.proposition,#form-inscription').css('display', 'none');	
							$('div.lig.separ.propo,p.confirm').css('display', 'block');
							
							//$('#form-inscription').css('display', 'none');
							//$('p.confirm').css('display', 'block');		
							window.scrollTo(0,0);
							var imgGC = document.createElement('img');
							$(imgGC)
								.css({'height':'1px', 'width':'1px', 'border-style':'none'})
								.attr({'alt':'', 'src':'https://www.googleadservices.com/pagead/conversion/1034985505/?label=dO4jCIeO1gEQocDC7QM&amp;value=10&amp;guid=ON&amp;script=0'});
							$('#TB_innerHtml>.content').append($(imgGC));
							
              if($('#fromPrehome'))//si on est sur la prehome on renvoit vers le magasin selectionne
              {
		pageTracker._trackPageview("/creation_compte_confirmation");
                id_mag = $('#fromPrehome').val();
                id_mag = id_mag.substr(6, 4);
                url_mag = "/index.jsp?shopId="+id_mag+"&cookie=modif";
                document.location.href = url_mag;
              }
              else //sinon on ferme la popup
              {
                setTimeout(tb_remove, 4000);
              }
						}
						else {
							displayErreur('pays', 'proposition', 'La commune que vous avez renseignée n\'a pu être vérifiée.<br />Veuillez compléter ou confirmer votre commune, ou choisir parmi les différentes propositions ci-dessous :', '');
							$('div.lig.proposition .colD').html(getPropositions(data2));
							$('div.lig.proposition').css('display', 'block');	
							$('div.lig.separ.propo').css('display', 'none');	
							setTimeout(initPropositions, 300);					
						}
					});																
				}
				//si il y a des erreurs coté serveur
				else {
					window.scrollTo(0,0);
					displayErreurServeur(data,"form-inscription");					
				}
			});			
		}		
		return false;
	});
	
$('#form-save-liste').bind('submit', function(event) {
		var isValide = true;
		$(".form input.erreur1").removeClass('erreur1');		
		
		isValide = (verifField('new_liste','new_liste') && isValide);
		
		if (isValide) {
			tb_remove();
			if (event.preventDefault){ 
				event.preventDefault(); 
			}
			event.returnValue = false;
			tb_show("Enregistrement de votre liste", "layer_change_magasin_confirm.html?height=300&width=480&layername=layer02");			
		}
		return false;
});
	
$('#form-suggestion').bind('submit', function(event) {
		var isValide = true;
		$(".form input.erreur1").removeClass('erreur1');
		$(".form input.erreur2").removeClass('erreur2');
		
		isValide = (verifField('nom','nom') && isValide);
		isValide = (verifField('civilite','civilite') && isValide);
		isValide = (verifField('email','email') && isValide);
		isValide = (verifField('produit','produit') && isValide);
		isValide = (verifField('format','format') && isValide);
		isValide = (verifField('marque','marque') && isValide);
		isValide = (verifField('message','message') && isValide);
		
		if (isValide) {
			var dataSend = getDataForm("form-suggestion");				
			$.getJSON($(this).attr("action")+"?"+dataSend,{},
				function success(data){ 	
					if (data.noerror) {
						$('#form-suggestion').hide();
						$('.suggestion .confirm').show();
					}
					else {
						alert('Une erreur est survenue lors de l\'envoi de votre suggestion');						
						//displayErreurServeur(data,"form-suggestion");
					}
				});
		}
		return false;
	});
	
$('#form-contact').bind('submit', function(event) {
		var isValide = true;
		$(".form input.erreur1").removeClass('erreur1');
		$(".form input.erreur2").removeClass('erreur2');
		
		isValide = (verifField('nom','nom') && isValide);
		isValide = (verifField('prenom','prenom') && isValide);
		isValide = (verifField('civilite','civilite') && isValide);
		isValide = (verifField('email','email') && isValide);
		isValide = (verifField('tel','tel') && isValide);
		isValide = (verifField('objet','objet') && isValide);
		isValide = (verifField('message2','message2') && isValide);
		
		if (isValide) {
			var dataSend = getDataForm("form-contact");				
			$.getJSON($(this).attr("action")+"?"+dataSend,{},
				function success(data){ 	
					if (data.noerror) {
						$('#form-contact').hide();
						$('.contact .confirm').show();
						window.scrollTo(0,0);
						setTimeout(tb_remove, 4000);	
					}
					else {
						alert('Une erreur est survenue lors de l\'envoi de votre message');						
						//displayErreurServeur(data,"form-contact");
					}
				});			
		}
		return false;
	});
	
$('#form-don').bind('submit', function(event) {
		var isValide = true;
		$(".form input.erreur1").removeClass('erreur1');
		$(".form input.erreur2").removeClass('erreur2');
		
		isValide = (verifField('don','don') && isValide);		
		
		if (isValide) {	
			var exp=new RegExp("[\.]+","g");		
			var exp2=new RegExp("[,]+","g");
			var fsolde = $('#cagnotte');
			var fdon = $('#f-don');
			solde 	= parseFloat(fsolde.val().replace(exp2, "."));				
			don 	= parseFloat(fdon.val().replace(exp2, "."));				
			//solde -= don;			
			$.getJSON($(this).attr('action'),{ 'solde': solde, 'don': don },
				function success(data){ // Au succès on renvoie le résultat de la requête			
					if (data.noerror) {						
						var solde = parseFloat(data.solde);
						$('#cagnotte').val(solde.toString());
						$('span.solde').html(solde.toString().replace(exp, ",") +' &euro;');					
						$('#form-don').hide();			
						$('.don .confirm').show();			
					}
					else {
						displayErreurServeur(data,"form_confirm_infos");
					}
				});	
		}
		return false;
	});
	
$('#form-login').bind('submit', function(event) {
	var isValide = true;
	if (event.preventDefault){ 
		event.preventDefault(); 
	}
	event.returnValue="false";
	
	isValide = (verifField('login','login') && isValide);
	isValide = (verifField('password','password') && isValide);			
	
	if (isValide) {
		var fLogin = $('#f-login').val();
		var fMdp = $('#f-password').val();
		$.getJSON($(this).attr('action'),{ 'login': fLogin, 'mdp':fMdp },
		function success(data){ // Au succès on renvoie le résultat de la requête			
			var erreurAjax = 0;
			if (data.erreurLogin != '') {
				displayErreur('login', 'login', data.erreurLogin, 'erreur2');			
				displayStatutImage('#f-login', 'bad');				
				erreurAjax = 1;
			}
			if (data.erreurMdp != '') {
				displayErreur('password', 'password', data.erreurMdp, 'erreur2');			
				displayStatutImage('#f-password', 'bad');				
				erreurAjax = 1;
			}	
			if (erreurAjax == 0) {		
				event.returnValue="true";
				$('#hi strong').text('Carine');
				$('#slickboxhp').toggle(400);
				var linkMyAccount = $('#linkMyAccount').val();
				tb_remove();
				//tb_show("Mon compte", linkMyAccount);
				document.location.href = linkMyAccount;
			}
		});						
	}
	return false;	
});

$('#form_confirm_infos').unbind('submit');
$('#form_confirm_infos').bind('submit', function(event){
	var isValide = true;
	if (event.preventDefault){ 
		event.preventDefault(); 
	}
	event.returnValue="false";
	$("#form_confirm_infos .form input.erreur1").removeClass('erreur1');
	$("#form_confirm_infos .form input.erreur2").removeClass('erreur2');
	$("#form_confirm_infos .form input.erreur3").removeClass('erreur3');
	
	if ($('#f-statut2').attr('checked')) {
		isValide = (verifField('societe','societe') && isValide);
		isValide = (verifField('tva','tva') && isValide);
	}
	
	isValide = (verifField('nom','nom') && isValide);
	isValide = (verifField('prenom','prenom') && isValide);
	isValide = (verifField('civilite','civilite') && isValide);
	isValide = (verifField('dob','dob-j') && isValide);
	isValide = (verifField('dob','dob-m') && isValide);
	isValide = (verifField('dob','dob-a') && isValide);
	isValide = (verifField('adr1','adr1') && isValide);
	isValide = (verifField('adr2','adr2') && isValide);
	isValide = (verifField('adr3','adr3') && isValide);
	isValide = (verifField('adr4','adr4') && isValide);
	isValide = (verifField('ville','cp') && isValide);			
	isValide = (verifField('ville','ville') && isValide);
	isValide = (verifField('pays','pays') && isValide);
	isValide = (verifField('email','email') && isValide);
	isValide = (verifField('tel1','tel1') && isValide);
	isValide = (verifField('tel2','tel2') && isValide);
	
	if (isValide) {		
		var dataSend = getDataForm("form_confirm_infos");
		$.getJSON($('#form_confirm_infos').attr("action")+"?"+dataSend,{},
		function success(data){ 
			//alert("test3"+data);
			// Au succès on renvoie le résultat de la requête			
			if (data.noerror) {
				var dataSend = getDataForm("form_confirm_infos");							
				$.getJSON($('#verifAdrUrl').val()+"?"+dataSend,{},
					function success(data2){ 	
						if (data2.noresult) {
							clearField('proposition');
							$('div.lig.proposition').css('display', 'none');	
							$('div.lig.separ.propo').css('display', 'block');
							
							var offreChrono= $('#f-news-chrono').is(':checked');
							var offrePartenaire = $('#f-news-autres').is(':checked');
							
							//le formulaire est validé on va donc demander de récupérer les infos à présenter
							$.post($('#pageDetailClient').attr("value"), {idClient : $('#idCli').attr("value"), offreC : offreChrono, offreP : offrePartenaire},
							function success(data3){
								if(data3 != ""){
									$('#form_modif_infos .form-inscription').html(data3);
									$('#form_modif_infos #offreChrono,#form_modif_infos #offrePartenaires').css('display', 'block');
									//$('#form_modif_infos #offrePartenaires').css('display', 'block');
									if(!offreChrono)	$('#form_modif_infos #offreChrono').css('display', 'none');
									if(!offrePartenaire)	$('#form_modif_infos #offrePartenaires').css('display', 'none');
								}
							});
							$('#form_confirm_infos').css('display', 'none');
							$('#form_modif_infos').css('display', 'block');
							window.scrollTo(0,0);
						}
						else {
							displayErreur('pays', 'proposition', 'La commune que vous avez renseignée n\'a pu être vérifiée.<br />Veuillez compléter ou confirmer votre commune, ou choisir parmi les différentes propositions ci-dessous :', '');
							$('div.lig.proposition .colD').html(getPropositions(data2));
							$('div.lig.proposition').css('display', 'block');	
							$('div.lig.separ.propo').css('display', 'none');	
							setTimeout(initPropositions, 300);				
						}
					});	
			}
			else {
				//alert("test2"+data);
				window.scrollTo(0,0);
				displayErreurServeur(data,"form_confirm_infos");
			}
		});
	}
});

$('#form-oubli').bind('submit', function(event) {
		var isValide = true;
		if (event.preventDefault){ 
			event.preventDefault(); 
		}
		event.returnValue="false";		
		var modeRecup = $('#choix-recup input:checked').attr('value');
		$(".form input.erreur1").removeClass('erreur1');
		$(".form input.erreur2").removeClass('erreur2');
		var fLogin = $('#f-login').val();
		var fEmail = $('#f-email').val();
		switch(modeRecup) {			
			case "2":
				isValide = (verifField('login','login') && isValide); 				
				break;
			case "1":
			default:				
				isValide = (verifField('email','email') && isValide); break;
		}
		if (isValide) {	
			$.getJSON($(this).attr('action'),{ 'login': fLogin, 'email':fEmail },
			function success(data){ // Au succès on renvoie le résultat de la requête			
				var erreurAjax = 0;				
				if (data.erreurLogin != '' && modeRecup==2) {
					displayErreur('login', 'login', data.erreurLogin, 'erreur2');			
					displayStatutImage('#f-login', 'bad');				
					erreurAjax = 1;
				}
				if (data.erreurEmail != '' && modeRecup==1) {
					displayErreur('email', 'email', data.erreurEmail, 'erreur2');			
					displayStatutImage('#f-email', 'bad');				
					erreurAjax = 1;
				}	
				if (erreurAjax == 0) {
					event.returnValue="true";
					$('.oublimdp form').hide();			
					$('.oublimdp .confirm').show();
				}
			});				
		}
		return false;
});

function getPropositions(pData) {
	var htmlCode = '';
	if ($.isArray(pData.propositions)) {
		$(pData.propositions).each(function(i) {
			htmlCode += '<div class="lig">';
			htmlCode += '<input class="radio" type="radio" id="f-propo'+i+'" name="proposition" value="'+i+'" />';
			htmlCode += '<label class="label03" for="f-propo'+i+'">'+pData.propositions[i].adresse+'</label>';
			htmlCode += '</div>';				
		});
	}
	return htmlCode;
}

function initPropositions() {
	$('div.lig.proposition input.radio').click(function() {
	var exp=new RegExp("[|]+","g");
	radioid = $(this).attr('id');
	myPropo = $('#'+radioid+' + label');
	myPropoValue = $(myPropo).text().split(exp);
	if (myPropoValue.length==1) {
		$('#f-ville').val($.trim(myPropoValue[0]));
		verifField('ville','ville');
	}
	if (myPropoValue.length==2) {
		$('#f-ville').val($.trim(myPropoValue[1]));
		$('#f-cp').val($.trim(myPropoValue[0]));
		verifField('ville','cp');
		verifField('ville','ville');
	}
	if (myPropoValue.length==3) {
		var exp2=new RegExp("[;]+","g");
		myAdrLine = $.trim(myPropoValue[0]).split(exp2);
		$('#f-ville').val($.trim(myPropoValue[2]));
		$('#f-cp').val($.trim(myPropoValue[1]));
		$('#f-adr1').val($.trim(myAdrLine[0]));
		if (myAdrLine.length>1) $('#f-adr2').val($.trim(myAdrLine[1]));
		if (myAdrLine.length>2) $('#f-adr3').val($.trim(myAdrLine[2]));
		if (myAdrLine.length>3) $('#f-adr4').val($.trim(myAdrLine[3]));
		verifField('adr1','adr1');
		verifField('ville','cp');
		verifField('ville','ville');
	}
	});
}
