
/************************************************************************************
**									DEVENIR MEMBRE							                                    *
************************************************************************************/

Event.observe(window, 'load',
              function() {
                new DevenirMembre();
              });

var DevenirMembre = Class.create({

	/**
	* Constructeur
	*/
	initialize: function() {
		var self = this;

		if ($('code_promo')) {
      new Form.Element.Observer(
        'code_promo',
        2,
        function(el, value) {
          self.checkCodePromo(value, '5.67', '7', '0', '0');
        }
      );
      
      this.checkCodePromo($('code_promo').value, '5.67', '7', '0', '0');
		}
  },

  /**
  * Verifie si le code promo en parametre est valide, et met a jour les totaux du panier
  */
  checkCodePromo: function(code_promo, sous_total_ht, sous_total_ttc, montant_livraison_ht, montant_livraison_ttc){
    new Ajax.Request(
			'javascript/ajax/checkCodePromo.php',
			{
				method: 'post', 
				parameters: 'code_promo=' + code_promo + '&sous_total_ht=' + sous_total_ht + '&sous_total_ttc=' + sous_total_ttc + '&montant_livraison_ht=' + montant_livraison_ht + '&montant_livraison_ttc=' + montant_livraison_ttc+"&checkCarteMembre=0",
				onComplete: function(transport) {

					// On parse le JSON
					var JSON = transport.responseText.evalJSON();

					switch(JSON) {
            case -1:
							// Erreur : tous les parametres n'ont pas ete renseignes, on n'affiche aucun picto
							$('code_promo_valide').style.display			= 'none';
							$('code_promo_erreur').style.display			= 'none';
							break;

						case -2:
							// le code promo n'est pas disponible
							$('code_promo_valide').style.display			= 'none';
							$('code_promo_erreur').style.display			= 'inline';
							break;

						case -3:
							// Variable session non instanciee
							$('code_promo_valide').style.display			= 'none';
							$('code_promo_erreur').style.display			= 'none';
							break;

						case -4:
							// Le montant minimum pour pouvoir beneficier de la reduc n'est pas atteint
							$('code_promo_valide').style.display			= 'none';
							$('code_promo_erreur').style.display			= 'inline';
							break;

						case -5:
							// Methode de calcul inconnue
							$('code_promo_valide').style.display			= "none";
							$('code_promo_erreur').style.display			= "none";
							break;

						default:
							// Le code est valide, on met à jour l'affichage
							$('code_promo_erreur').style.display			= "none";
							$('code_promo_valide').style.display			= "inline";
							break;
          }
				}
			}
		);
  }
});
