/*
	Fonctions de manipulation et de vérifications des formulaires de gestion de client
*/

function Step3LoadForm(sValue) {
	var reMain = new RegExp("[|]", "g");
	var reSub = new RegExp("[~]", "g");

	aValue = sValue.split(reMain);
	
	for(i = 0; i < aValue.length; i++) {
		aItem = aValue[i].split(reSub);
		if($(aItem[0]) != null) {
			$(aItem[0]).val(aItem[1]);
		}
	}
}

$(document).ready(function(){
	if($("#return_message").html() != null) {
		if($("#return_message").html().length <= 15) {
			$("#return_message").hide();
		} else {
			$("#return_message").show("slow");
		};
	}
	
	$("#account_not_logon").find("a").click(function () {
		$("#account_not_logon").hide("slow");
	});

	$("#forgot_password").find("a").click(function () {
		if(TestFieldString($("#forgot_email").val(), 0, 100) && TestEmailAddress($("#forgot_email").val())) {
			$("#forgot_password").submit();
			return true;
		 } else {
			$("#return_message").html(TradMes("L'adresse email n'est pas valide") + ".").show("slow");
			return false;
		 }
	});

	// Fonction de copie des coordonnées de facturation dans les coordonnées de livraison
	$("#copy_invoice_shipping").click(function () { 
		$("#shipping_name").val($("#invoice_name").val());
		$("#shipping_address").val($("#invoice_address").val());
		$("#shipping_postcode").val($("#invoice_postcode").val());
		$("#shipping_city").val($("#invoice_city").val());
		$("#shipping_country").val($("#invoice_country").val());
	});

	$("input").change(function () {
		$("#return_message").hide("slow");
	});
	
	$("#login").find("form").submit(function () {
		if(TestFieldString($("#account_email").val(), 0, 100) && TestFieldString($("#account_pswd").val(), 0, 50)) {
			return true;
		} else {
			$("#login").find("input:text").blur(); 
			$("#login").find("input:password").blur(); 
			return false;	
		}
	});
	
	$("#account_connect").click(function () {
		if(TestFieldString($("#step3a_email").val(), 0, 100) && TestFieldString($("#step3a_pswd").val(), 0, 50)) {
			$("#account_email").val($("#step3a_email").val());
			$("#account_pswd").val($("#step3a_pswd").val());
			$("#login").find("form").submit();
		}
	});

	$("#step3a_2_step3b").click(function () {
		$("#2_step3b").submit();
	});

	$("#step3a_2_step3b_menu").click(function () {
		$("#2_step3b").submit();
	});

	// validation du formulaire
	$("#add_new_account").submit(function () {
		var sErrorInvoice = "";
		var sErrorShipping = "";
		var sErrorContact = "";
		var sErrorAccount = "";

		if(!TestFieldString($("#invoice_name").val(), 0, 50)) {
			sErrorInvoice += TradMes("Le nom n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_address").val(), 0, 100)) {
			sErrorInvoice += TradMes("L'adresse n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_postcode").val(), 0, 20)) {
			sErrorInvoice += TradMes("Le code postal n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_city").val(), 0, 50)) {
			sErrorInvoice += TradMes("La ville n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_country").val(), 0, 50)) {
			sErrorInvoice += TradMes("Le pays n'est pas valide") + ".<br />";
		}

		if(!TestFieldString($("#shipping_name").val(), 0, 50)) {
			sErrorShipping += TradMes("Le nom n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_address").val(), 0, 100)) {
			sErrorShipping += TradMes("L'adresse n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_postcode").val(), 0, 20)) {
			sErrorShipping += TradMes("Le code postal n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_city").val(), 0, 50)) {
			sErrorShipping += TradMes("La ville n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_country").val(), 0, 50)) {
			sErrorShipping += TradMes("Le pays n'est pas valide") + ".<br />";
		}

		if(!TestFieldString($("#invoice_telephone").val(), 0, 50)) {
			sErrorContact += TradMes("Le numéro de téléphone n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_telefax").val(), -1, 50)) {
			sErrorContact += TradMes("Le numéro de fax n'est pas valide") + ".<br />";
		}

		if(!TestFieldString($("#invoice_email").val(), 0, 100) || !TestEmailAddress($("#invoice_email").val())) {
			sErrorAccount += TradMes("L'adresse email n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_password").val(), 0, 50) || $("#invoice_password").val() != $("#validate_password").val()) {
			sErrorAccount += TradMes("Le mot de passe n'est pas valide") + ".<br />";
		}

		var sError = "";
		if(sErrorInvoice.length > 0) {
			sError += "<b><u>" + TradMes("Données de facturation") + ":</u></b><br />" + sErrorInvoice + "<br />";
		}
		if(sErrorShipping.length > 0) {
			sError += "<b><u>" + TradMes("Données de livraison") + ":</u></b><br />" + sErrorShipping + "<br />";
		}
		if(sErrorContact.length > 0) {
			sError += "<b><u>" + TradMes("Données de contact") + ":</u></b><br />" + sErrorContact + "<br />";
		}
		if(sErrorAccount.length > 0) {
			sError += "<b><u>" + TradMes("Mon compte") + ":</u></b><br />" + sErrorAccount + "<br />";
		}

		if(sError.length > 6) {
			sError = sError.substr(0, sError.length - 6);
			$("#return_message").html(sError).show("slow");
			return false;
		} else {
			return true;
		}
	});	

	$("#step3b_nextstep").click(function () {
		$("#step3_account").submit();
	  });

	$("#step3b_send").click(function () {
		$("#step3_account").submit();
	  });

	// validation du formulaire
	$("#step3_account").submit(function () {
		var sErrorInvoice = "";
		var sErrorShipping = "";
		var sErrorContact = "";
		var sErrorAccount = "";
		var sErrorOther = "";

		if(!TestFieldString($("#invoice_name").val(), 0, 50)) {
			sErrorInvoice += TradMes("Le nom n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_address").val(), 0, 100)) {
			sErrorInvoice += TradMes("L'adresse n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_postcode").val(), 0, 20)) {
			sErrorInvoice += TradMes("Le code postal n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_city").val(), 0, 50)) {
			sErrorInvoice += TradMes("La ville n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_country").val(), 0, 50)) {
			sErrorInvoice += TradMes("Le pays n'est pas valide") + ".<br />";
		}
		
		if($("#shipping_order").val() == "True") {
			if(!TestFieldString($("#shipping_name").val(), 0, 50)) {
				sErrorShipping += TradMes("Le nom n'est pas valide") + ".<br />";
			}
			if(!TestFieldString($("#shipping_address").val(), 0, 100)) {
				sErrorShipping += TradMes("L'adresse n'est pas valide") + ".<br />";
			}
			if(!TestFieldString($("#shipping_postcode").val(), 0, 20)) {
				sErrorShipping += TradMes("Le code postal n'est pas valide") + ".<br />";
			}
			if(!TestFieldString($("#shipping_city").val(), 0, 50)) {
				sErrorShipping += TradMes("La ville n'est pas valide") + ".<br />";
			}
			if(!TestFieldString($("#shipping_country").val(), 0, 50)) {
				sErrorShipping += TradMes("Le pays n'est pas valide") + ".<br />";
			}
		}

		if(!TestFieldString($("#invoice_telephone").val(), 0, 50)) {
			sErrorContact += TradMes("Le numéro de téléphone n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_telefax").val(), -1, 50)) {
			sErrorContact += TradMes("Le numéro de fax n'est pas valide") + ".<br />";
		}

		if($("#registred").val() == 1) {
			if(!TestFieldString($("#invoice_email").val(), 0, 100) || !TestEmailAddress($("#invoice_email").val())) {
				sErrorAccount += TradMes("L'adresse email n'est pas valide") + ".<br />";
			}
			if(!TestFieldString($("#invoice_password").val(), 0, 50) || $("#invoice_password").val() != $("#validate_password").val()) {
				sErrorAccount += TradMes("Le mot de passe n'est pas valide") + ".<br />";
			}
		} else {
			if(!TestFieldString($("#invoice_email").val(), 0, 100) || !TestEmailAddress($("#invoice_email").val())) {
				sErrorContact += TradMes("L'adresse email n'est pas valide") + ".<br />";
			}
		}

		if(!$("#validate_conditions").attr('checked')) {
			sErrorOther += TradMes("Vous n'avez pas accepté les conditions de ventes") + ".<br />";
		}
										 
		var sError = "";
		if(sErrorInvoice.length > 0) {
			sError += "<b><u>" + TradMes("Données de facturation") + ":</u></b><br />" + sErrorInvoice + "<br />";
		}
		if(sErrorShipping.length > 0) {
			sError += "<b><u>" + TradMes("Données de livraison") + ":</u></b><br />" + sErrorShipping + "<br />";
		}
		if(sErrorContact.length > 0) {
			sError += "<b><u>" + TradMes("Données de contact") + ":</u></b><br />" + sErrorContact + "<br />";
		}
		if(sErrorAccount.length > 0) {
			sError += "<b><u>" + TradMes("Mon compte") + ":</u></b><br />" + sErrorAccount + "<br />";
		}
		if(sErrorOther.length > 0) {
			sError += "<b>" + sErrorOther + "</b><br />";
		}

		if(sError.length > 6) {
			sError = sError.substr(0, sError.length - 6);
			$("#return_message").html(sError).show("slow");
			return false;
		} else {
			return true;
		}
	});	

	$("#edit_account").submit(function () {
		var sErrorInvoice = "";
		var sErrorShipping = "";
		var sErrorContact = "";
		var sErrorAccount = "";
		var sErrorOther = "";

		if(!TestFieldString($("#invoice_name").val(), 0, 50)) {
			sErrorInvoice += TradMes("Le nom n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_address").val(), 0, 100)) {
			sErrorInvoice += TradMes("L'adresse n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_postcode").val(), 0, 20)) {
			sErrorInvoice += TradMes("Le code postal n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_city").val(), 0, 50)) {
			sErrorInvoice += TradMes("La ville n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_country").val(), 0, 50)) {
			sErrorInvoice += TradMes("Le pays n'est pas valide") + ".<br />";
		}
		
		if(!TestFieldString($("#shipping_name").val(), 0, 50)) {
			sErrorShipping += TradMes("Le nom n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_address").val(), 0, 100)) {
			sErrorShipping += TradMes("L'adresse n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_postcode").val(), 0, 20)) {
			sErrorShipping += TradMes("Le code postal n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_city").val(), 0, 50)) {
			sErrorShipping += TradMes("La ville n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#shipping_country").val(), 0, 50)) {
			sErrorShipping += TradMes("Le pays n'est pas valide") + ".<br />";
		}

		if(!TestFieldString($("#invoice_telephone").val(), 0, 50)) {
			sErrorContact += TradMes("Le numéro de téléphone n'est pas valide") + ".<br />";
		}
		if(!TestFieldString($("#invoice_telefax").val(), -1, 50)) {
			sErrorContact += TradMes("Le numéro de fax n'est pas valide") + ".<br />";
		}
										 
		var sError = "";
		if(sErrorInvoice.length > 0) {
			sError += "<b><u>" + TradMes("Données de facturation") + ":</u></b><br />" + sErrorInvoice + "<br />";
		}
		if(sErrorShipping.length > 0) {
			sError += "<b><u>" + TradMes("Données de livraison") + ":</u></b><br />" + sErrorShipping + "<br />";
		}
		if(sErrorContact.length > 0) {
			sError += "<b><u>" + TradMes("Données de contact") + ":</u></b><br />" + sErrorContact + "<br />";
		}
		if(sErrorAccount.length > 0) {
			sError += "<b><u>" + TradMes("Mon compte") + ":</u></b><br />" + sErrorAccount + "<br />";
		}
		if(sErrorOther.length > 0) {
			sError += "<b>" + sErrorOther + "</b><br />";
		}

		if(sError.length > 6) {
			sError = sError.substr(0, sError.length - 6);
			$("#return_message").html(sError).show("slow");
			return false;
		} else {
			return true;
		}
	});	
	
	$("#edit_account_email").submit(function () {
		if(TestFieldString($("#invoice_email").val(), 0, 100) && TestEmailAddress($("#invoice_email").val())) {
			return true;
		 } else {
			$("#return_message").html(TradMes("L'adresse email n'est pas valide") + ".").show("slow");
			return false;
		 }
	});	

	$("#edit_account_password").submit(function () {
		if(!TestFieldString($("#invoice_password").val(), 0, 50) || $("#invoice_password").val() != $("#validate_password").val()) {
			$("#return_message").html(TradMes("Le mot de passe n'est pas valide") + ".").show("slow");
			return false;
		} else {
			return true;
		}
	});	
});



