﻿///////////////////////////////////////////////////////////////////////////////////////////////////////
// 00 - Supprime les espaces au début et fin de la chaine
// 10 - Ajoute un effet de surbrillance et de clignotement à l'objet, durant un temps x prédéfini
// 20 - Envoyer a un ami
// 30 - Contactez nous
// 40 - NewsLetter
// 50 - Obtenir le catalogue
// 60 - Newsletter / Désinscription
///////////////////////////////////////////////////////////////////////////////////////////////////////


// 00 - Supprime les espaces au début et fin de la chaine
///////////////////////////////////////////////////////////////////////////////////////////////////////
function trim(s)
{
    return s.replace(/^\s+/, '').replace(/\s+$/, '');
}


// 10 - Ajoute un effet de surbrillance et de clignotement à l'objet, durant un temps x prédéfini
///////////////////////////////////////////////////////////////////////////////////////////////////////
function Effet(objet)
{
    new Effect.Highlight(objet,{duration: 3});
    new Effect.Pulsate(objet,{duration: 3});
}


// 20 - Envoyer a un ami
///////////////////////////////////////////////////////////////////////////////////////////////////////
function EnvoyerAmi(numProduit,culture)
{ 
    // Récupération et préparation des données du formulaire                 
    var TXT_VotreNom = $("nom");       
    var TXT_VotreEmail = $("email");          
    var TXT_EmailAmi = $("emailAmi"); 
    var TXT_VotreMessage = $("message"); 
    var LBL_VotreNom = $("labelNom");       
    var LBL_VotreEmail = $("labelEmail");          
    var LBL_EmailAmi = $("labelEmailAmi"); 
    var LBL_VotreMessage = $("labelMessage");     
    
	TXT_VotreNom.value = trim(TXT_VotreNom.value);
	TXT_VotreEmail.value = trim(TXT_VotreEmail.value);
	TXT_EmailAmi.value = trim(TXT_EmailAmi.value);    
	TXT_VotreMessage.value = trim(TXT_VotreMessage.value);
	
	j = TXT_VotreNom.value.length;
	for (i=0; i<j; i++) { TXT_VotreNom.value = TXT_VotreNom.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
		
		
    // Vérification des données côté client
    erreur = 0;	
				
    if(TXT_VotreMessage && TXT_VotreMessage.value == "")
	{
        Effet(TXT_VotreMessage);	
	    TXT_VotreMessage.focus();
	    LBL_VotreMessage.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_VotreMessage.style.color = "#8d8d8d";		
	
	if(TXT_EmailAmi && TXT_EmailAmi.value == "")
	{
	    Effet(TXT_EmailAmi);	
        LBL_EmailAmi.style.color = "red";
		TXT_EmailAmi.focus();
		erreur = 1 ;
	}
	else
	{
		if(TXT_EmailAmi.value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/))
		{
		    LBL_EmailAmi.style.color = "#8d8d8d";
		}
		else
		{
	        Effet(TXT_EmailAmi);			
            LBL_EmailAmi.style.color = "red";
			TXT_EmailAmi.focus();
			erreur = 1 ;
		}
	}	
	
	if(TXT_VotreEmail && TXT_VotreEmail.value == "")
	{
        Effet(TXT_VotreEmail);		
        LBL_VotreEmail.style.color = "red";
		TXT_VotreEmail.focus();
		erreur = 1 ;
	}
	else
	{
		if(TXT_VotreEmail.value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/))
		{
		    LBL_VotreEmail.style.color = "#8d8d8d";
		}
		else
		{
	        Effet(TXT_VotreEmail);			
            LBL_VotreEmail.style.color = "red";
			TXT_VotreEmail.focus();
			erreur = 1 ;
		}
	}
	
    if(TXT_VotreNom && TXT_VotreNom.value == "")
	{
        Effet(TXT_VotreNom);	
	    TXT_VotreNom.focus();
	    LBL_VotreNom.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_VotreNom.style.color = "#8d8d8d";
			
			
    // Enregistrement des infos dans le profil de l'utilisateur
    if(erreur == 0)
    {
	    var data = $H({ 'CMD'               : 'COMMAND_ENVOI_AMI',
	                    'VOTRE_NOM'         : TXT_VotreNom.value,
	                    'VOTRE_EMAIL'       : TXT_VotreEmail.value,
	                    'EMAIL_AMI'         : TXT_EmailAmi.value,
	                    'NUM_PRODUIT'       : numProduit,
                        'CULTURE'           : culture,	                    	                                 	                    	                    	                    	                    	                    	                    	                    	                    	                    	                    	                    	                    	                	                	         
	                    'MESSAGE'           : TXT_VotreMessage.value }).toQueryString();	          	                
	      	                   
	    var path = BaseUrl + '/Includes/Ajax/AjaxFormulaire.aspx';
	    var DoAjax = new Ajax.Updater( 'AjaxEnvoiReponse' , path, { postBody: data , evalScripts:true } ); 
    }    			
} 


// 30 - Contactez nous
///////////////////////////////////////////////////////////////////////////////////////////////////////
function ContactezNous(MessPleaseWait,culture)
{     
    // Récupération et préparation des données du formulaire
    var RADIO_Monsieur = $("genderMonsieur");
    var RADIO_Mademoiselle = $("genderMademoiselle");
    var RADIO_Madame = $("genderMadame");
    var Gender;
    
    if(RADIO_Monsieur.checked == true)
        Gender = RADIO_Monsieur.value;
    if(RADIO_Mademoiselle.checked == true)
        Gender = RADIO_Mademoiselle.value;
    if(RADIO_Madame.checked == true)
        Gender = RADIO_Madame.value;
                     
    var TXT_Nom = $("nom");       
    var TXT_Prenom = $("prenom");                   
    var TXT_Telephone = $("telephone"); 
    var TXT_Email = $("email"); 
    var TXT_VotreDemande = $("objetDemandeSelect");              
    var TXT_Message = $("message"); 
    var LBL_Nom = $("labelNom");       
    var LBL_Prenom = $("labelPrenom");                  
    var LBL_Email = $("labelEmail");       
    var LBL_Message = $("labelMessage");                 
    var CHK_NewsLetter = $("newsletter"); 
                    
	TXT_Nom.value = trim(TXT_Nom.value);
	TXT_Prenom.value = trim(TXT_Prenom.value);
	TXT_Telephone.value = trim(TXT_Telephone.value);
	TXT_Email.value = trim(TXT_Email.value);
	TXT_Message.value = trim(TXT_Message.value);		
	
	j = TXT_Nom.value.length;
	for (i=0; i<j; i++) { TXT_Nom.value = TXT_Nom.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
	j = TXT_Prenom.value.length;
	for (i=0; i<j; i++) { TXT_Prenom.value = TXT_Prenom.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
	j = TXT_Telephone.value.length;
	for (i=0; i<j; i++) { TXT_Telephone.value = TXT_Telephone.value.replace(/[^0-9 -.()]/,'');}
				
    // Vérification des données côté client
    erreur = 0;	
    
    if(TXT_Message && TXT_Message.value == "")
	{
	    Effet(TXT_Message);	
	    TXT_Message.focus();
	    LBL_Message.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Message.style.color = "#8d8d8d"; 
       
	if(TXT_Email && TXT_Email.value == "")
	{
	    Effet(TXT_Email);	
        LBL_Email.style.color = "red";
		TXT_Email.focus();
		erreur = 1 ;
	}
	else
	{
		if(TXT_Email.value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/))
		{
		    LBL_Email.style.color = "#8d8d8d";
		}
		else
		{
	        Effet(TXT_Email);			
            LBL_Email.style.color = "red";
			TXT_Email.focus();
			erreur = 1 ;
		}
	}
	
    if(TXT_Prenom && TXT_Prenom.value == "")
	{
	    Effet(TXT_Prenom);	
	    TXT_Prenom.focus();
	    LBL_Prenom.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Prenom.style.color = "#8d8d8d";
	    
    if(TXT_Nom && TXT_Nom.value == "")
	{
	    Effet(TXT_Nom);	
	    TXT_Nom.focus();
	    LBL_Nom.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Nom.style.color = "#8d8d8d";
	 
	    
    // Enregistrement des infos dans le profil de l'utilisateur
    if(erreur == 0)
    {
        // Bloque le bouton le temps du traitement
        $("boutonValider").disabled = true;
    
        // Message d'attente
        $("AjaxFluxReponse").innerHTML = MessPleaseWait;
        
	    var data = $H({ 'CMD'           : 'COMMAND_CONTACTEZ_NOUS',
	                    'CIVILITE'      : Gender,
	                    'NOM'           : TXT_Nom.value,
	                    'PRENOM'        : TXT_Prenom.value,
	                    'TELEPHONE'     : TXT_Telephone.value,
	                    'EMAIL'         : TXT_Email.value,
	                    'DEMANDE'       : TXT_VotreDemande.value,
	                    'MESSAGE'       : TXT_Message.value,	
                        'CULTURE'       : culture,	                    	                                 	                    	                    	                    	                    	                    	                    	                    	                    	                    	                    	                                        
	                    'NEWSLETTER'    : CHK_NewsLetter.checked }).toQueryString();	          	                
	      	                   
	    var path = BaseUrl + '/Includes/Ajax/AjaxFormulaire.aspx';
	    var DoAjax = new Ajax.Updater( 'AjaxFluxReponse' , path, { postBody: data , evalScripts:true } );        
    }     	    			           
}


// 40 - NewsLetter
///////////////////////////////////////////////////////////////////////////////////////////////////////
function NewsLetter(MessPleaseWait,culture)
{     
    // Récupération et préparation des données du formulaire
    var RADIO_Monsieur = $("genderMonsieur");
    var RADIO_Mademoiselle = $("genderMademoiselle");
    var RADIO_Madame = $("genderMadame");
    var Gender;
    
    if(RADIO_Monsieur.checked == true)
        Gender = RADIO_Monsieur.value;
    if(RADIO_Mademoiselle.checked == true)
        Gender = RADIO_Mademoiselle.value;
    if(RADIO_Madame.checked == true)
        Gender = RADIO_Madame.value;
                     
    var TXT_Nom = $("nom");       
    var TXT_Prenom = $("prenom");                   
    var TXT_Email = $("email"); 
    var LBL_Nom = $("labelNom");       
    var LBL_Prenom = $("labelPrenom");                  
    var LBL_Email = $("labelEmail");       
                    
	TXT_Nom.value = trim(TXT_Nom.value);
	TXT_Prenom.value = trim(TXT_Prenom.value);
	TXT_Email.value = trim(TXT_Email.value);		
	
	j = TXT_Nom.value.length;
	for (i=0; i<j; i++) { TXT_Nom.value = TXT_Nom.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
	j = TXT_Prenom.value.length;
	for (i=0; i<j; i++) { TXT_Prenom.value = TXT_Prenom.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
					
    // Vérification des données côté client
    erreur = 0;	

	if(TXT_Email && TXT_Email.value == "")
	{
	    Effet(TXT_Email);	
        LBL_Email.style.color = "red";
		TXT_Email.focus();
		erreur = 1 ;
	}
	else
	{
		if(TXT_Email.value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/))
		{
		    LBL_Email.style.color = "#8d8d8d";
		}
		else
		{
	        Effet(TXT_Email);			
            LBL_Email.style.color = "red";
			TXT_Email.focus();
			erreur = 1 ;
		}
	}
	
    if(TXT_Prenom && TXT_Prenom.value == "")
	{
	    Effet(TXT_Prenom);	
	    TXT_Prenom.focus();
	    LBL_Prenom.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Prenom.style.color = "#8d8d8d";
	    
    if(TXT_Nom && TXT_Nom.value == "")
	{
	    Effet(TXT_Nom);	
	    TXT_Nom.focus();
	    LBL_Nom.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Nom.style.color = "#8d8d8d";
	 

    // Enregistrement des infos dans le profil de l'utilisateur
    if(erreur == 0)
    {
        // Bloque le bouton le temps du traitement
        $("boutonValider").disabled = true;
    
        // Message d'attente
        $("AjaxFluxReponse").innerHTML = MessPleaseWait;
        
	    var data = $H({ 'CMD'           : 'COMMAND_NEWSLETTER',
	                    'CIVILITE'      : Gender,
	                    'NOM'           : TXT_Nom.value,
	                    'PRENOM'        : TXT_Prenom.value,
	                    'CULTURE'       : culture,
	                    'EMAIL'         : TXT_Email.value }).toQueryString();	          	                
	      	                   
	    var path = BaseUrl + '/Includes/Ajax/AjaxFormulaire.aspx';
	    var DoAjax = new Ajax.Updater( 'AjaxFluxReponse' , path, { postBody: data , evalScripts:true } );        
    }
}


// 50 - Obtenir le catalogue
///////////////////////////////////////////////////////////////////////////////////////////////////////
function ObtenirCatalogue(MessPleaseWait,culture)
{
    // Récupération et préparation des données du formulaire
    var RADIO_Monsieur = $("genderMonsieur");
    var RADIO_Mademoiselle = $("genderMademoiselle");
    var RADIO_Madame = $("genderMadame");
    var Gender;

    var RADIO_CLIENT_OUI = $("clientOUI");
    var RADIO_CLIENT_NON = $("clientNON");
    var DejaClient;    
    
    if(RADIO_Monsieur.checked == true)
        Gender = RADIO_Monsieur.value;
    if(RADIO_Mademoiselle.checked == true)
        Gender = RADIO_Mademoiselle.value;
    if(RADIO_Madame.checked == true)
        Gender = RADIO_Madame.value;
        
    if(RADIO_CLIENT_OUI.checked == true)
        DejaClient = RADIO_CLIENT_OUI.value;
    if(RADIO_CLIENT_NON.checked == true)
        DejaClient = RADIO_CLIENT_NON.value; 
                              
                     
    var TXT_Nom = $("nom");       
    var TXT_Prenom = $("prenom");   
    var TXT_Adresse = $("adresse");   
    var TXT_ComplementAdr = $("complementAdresse");   
    var TXT_CP = $("cp");   
    var TXT_Ville = $("ville");   
    var TXT_Pays = $("pays");   
    var TXT_Telephone = $("tel");       
    var TXT_Email = $("email"); 
    var TXT_CodeCarte = $("codeCarte");     
    var DDL_CommentConnu = $("connuTectonaSelect");     
    var CHK_NewsLetter = $("newsletter");       
    var LBL_Nom = $("labelNom");       
    var LBL_Prenom = $("labelPrenom");                  
    var LBL_Adresse = $("labelAdresse");
    var LBL_CP = $("labelCP");
    var LBL_Ville = $("labelVille");
    var LBL_Pays = $("labelPays");
    var LBL_Email = $("labelEmail");        

	TXT_Nom.value = trim(TXT_Nom.value);
	TXT_Prenom.value = trim(TXT_Prenom.value);
	TXT_Adresse.value = trim(TXT_Adresse.value);		
	TXT_ComplementAdr.value = trim(TXT_ComplementAdr.value);
	TXT_CP.value = trim(TXT_CP.value);
	TXT_Ville.value = trim(TXT_Ville.value);
	TXT_Pays.value = trim(TXT_Pays.value);
	TXT_Telephone.value = trim(TXT_Telephone.value);
	TXT_Email.value = trim(TXT_Email.value);
	TXT_CodeCarte.value = trim(TXT_CodeCarte.value);						
	
	j = TXT_Nom.value.length;
	for (i=0; i<j; i++) { TXT_Nom.value = TXT_Nom.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
	j = TXT_Prenom.value.length;
	for (i=0; i<j; i++) { TXT_Prenom.value = TXT_Prenom.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
	j = TXT_Adresse.value.length;
	for (i=0; i<j; i++) { TXT_Adresse.value = TXT_Adresse.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
	j = TXT_ComplementAdr.value.length;
	for (i=0; i<j; i++) { TXT_ComplementAdr.value = TXT_ComplementAdr.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
	j = TXT_Ville.value.length;
	for (i=0; i<j; i++) { TXT_Ville.value = TXT_Ville.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}	
	j = TXT_Pays.value.length;
	for (i=0; i<j; i++) { TXT_Pays.value = TXT_Pays.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}		
	j = TXT_Telephone.value.length;
	for (i=0; i<j; i++) { TXT_Telephone.value = TXT_Telephone.value.replace(/[^0-9 -.()]/,'');}
	j = TXT_CodeCarte.value.length;
	for (i=0; i<j; i++) { TXT_CodeCarte.value = TXT_CodeCarte.value.replace(/[^A-Za-z -éëèêîïöôçùûü']/,'');}
					
    // Vérification des données côté client
    erreur = 0;	
 
	if(TXT_Email && TXT_Email.value == "")
	{
	    Effet(TXT_Email);		
        LBL_Email.style.color = "red";
		TXT_Email.focus();
		erreur = 1 ;
	}
	else
	{
		if(TXT_Email.value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/))
		{
		    LBL_Email.style.color = "#8d8d8d";
		}
		else
		{
	        Effet(TXT_Email);				
            LBL_Email.style.color = "red";
			TXT_Email.focus();
			erreur = 1 ;
		}
	}

    if(TXT_Pays && TXT_Pays.value == "")
	{
	    Effet(TXT_Pays);		
	    TXT_Pays.focus();
	    LBL_Pays.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Pays.style.color = "#8d8d8d";

    if(TXT_Ville && TXT_Ville.value == "")
	{
	    Effet(TXT_Ville);		
	    TXT_Ville.focus();
	    LBL_Ville.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Ville.style.color = "#8d8d8d";
	    
	if(TXT_CP && TXT_CP.value == "")
	{
	    Effet(TXT_CP);								
		LBL_CP.style.color = "red";
		TXT_CP.focus();
		erreur = 1 ;								
	}
	else
	{
//		if(TXT_CP.value.match(/^\d+$/))
//		{
	        LBL_CP.style.color = "#8d8d8d";	
//		}
//		else
//		{
//	        Effet(TXT_CP);				
//			TXT_CP.focus();
//			LBL_CP.style.color = "red";
//			erreur = 1 ;
//		}
	}	    
	        
    if(TXT_Adresse && TXT_Adresse.value == "")
	{
	    Effet(TXT_Adresse);		
	    TXT_Adresse.focus();
	    LBL_Adresse.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Adresse.style.color = "#8d8d8d";	    

    if(TXT_Prenom && TXT_Prenom.value == "")
	{
	    Effet(TXT_Prenom);		
	    TXT_Prenom.focus();
	    LBL_Prenom.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Prenom.style.color = "#8d8d8d";
	    
    if(TXT_Nom && TXT_Nom.value == "")
	{
	    Effet(TXT_Nom);		
	    TXT_Nom.focus();
	    LBL_Nom.style.color = "red";
        erreur = 1 ;
	}
	else
	    LBL_Nom.style.color = "#8d8d8d";
 	    
	// Enregistrement des infos dans le profil de l'utilisateur
    if(erreur == 0)
    {
        // Bloque le bouton le temps du traitement
        $("boutonValider").disabled = true;
    
        // Message d'attente
        $("AjaxFluxReponse").innerHTML = MessPleaseWait;
        
	    var data = $H({ 'CMD'          : 'COMMAND_OBTENIR_CATALOGUE',
	                    'CIVILITE'     : Gender,
	                    'NOM'          : TXT_Nom.value,
	                    'PRENOM'       : TXT_Prenom.value,
	                    'ADRESSE'      : TXT_Adresse.value,
	                    'COMPLEMENT'   : TXT_ComplementAdr.value,
	                    'CP'           : TXT_CP.value,
	                    'VILLE'        : TXT_Ville.value,
	                    'PAYS'         : TXT_Pays.value,
	                    'TELEPHONE'    : TXT_Telephone.value,
	                    'EMAIL'        : TXT_Email.value,	                    
	                    'DEJACLIENT'   : DejaClient,	                    	                    
	                    'COMMENTCONNU' : DDL_CommentConnu.value,
	                    'CODECARTE'    : TXT_CodeCarte.value, 
                        'CULTURE'      : culture,	                    	                                 	                    	                    	                    	                    	                    	                    	                    	                    	                    	                    
	                    'NEWSLETTER'   : CHK_NewsLetter.checked }).toQueryString();	          	                
	      	                   
	    var path = BaseUrl + '/Includes/Ajax/AjaxFormulaire.aspx';
	    var DoAjax = new Ajax.Updater( 'AjaxFluxReponse' , path, { postBody: data , evalScripts:true } );	     	    
    }          
}


// 60 - NewsLetter / Désinscription
///////////////////////////////////////////////////////////////////////////////////////////////////////
function NewsLetterDES(MessPleaseWait,culture)
{     
    // Récupération et préparation des données du formulaire    
                         
    var TXT_Email = $("emailDES");     
    var LBL_Email = $("labelEmailDES");       
                    	
	TXT_Email.value = trim(TXT_Email.value);				
					
    // Vérification des données côté client
    erreur = 0;	

	if(TXT_Email && TXT_Email.value == "")
	{
	    Effet(TXT_Email);	
        LBL_Email.style.color = "red";
		TXT_Email.focus();
		erreur = 1 ;
	}
	else
	{
		if(TXT_Email.value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/))
		{
		    LBL_Email.style.color = "#8d8d8d";
		}
		else
		{
	        Effet(TXT_Email);			
            LBL_Email.style.color = "red";
			TXT_Email.focus();
			erreur = 1 ;
		}
	}	   	 

    // Enregistrement des infos dans le profil de l'utilisateur
    if(erreur == 0)
    {
        // Bloque le bouton le temps du traitement
        $("boutonValiderDES").disabled = true;
    
        // Message d'attente
        $("AjaxFluxReponseDES").innerHTML = MessPleaseWait;
        
	    var data = $H({ 'CMD'           : 'COMMAND_NEWSLETTER_DESINSCRIPTION',	                    
	                    'CULTURE'       : culture,
	                    'EMAIL'         : TXT_Email.value }).toQueryString();	          	                
	      	                   
	    var path = BaseUrl + '/Includes/Ajax/AjaxFormulaire.aspx';
	    var DoAjax = new Ajax.Updater( 'AjaxFluxReponseDES' , path, { postBody: data , evalScripts:true } );        
    }
}