
Kwo.Subscriptions = {
  
  onSubmit: function(args) {
    Kwo.exec("/account/push/subscriptions.set", args, 
             {disable:true, callback:Kwo.Account.refresh});
  },

  onSubmitEMV: function(args) {
    var hasselected = false;  
    $('subscription-select-form').getElements('checkbox').each(function(item){if(item.getValue()) hasselected = true;});  
    if(hasselected) {
        $('subscription-select-validate').show();
        $('subscription-select-error').hide();
        Kwo.exec("/push/subscriptions.emv", args,{disable:true, callback:Kwo.Subscriptions.onSubmitEMVCallback});
    }
    else 
      {
        $('subscription-select-error').show();
        $('subscription-select-validate').hide();
      }
  },
  onSubmitEMVCallback: function(res) {
    if (Kwo.hasError(res)) {
      return ;
    }else{
      if(res.result.unjoin){
        Kwo.go("/subscriptions.explain", {}, {});
      }
      //else Kwo.go("/", {}, {});
    }
  },
  onUnjoinExplain: function(args) {
    Kwo.exec("/push/unjoin.explain.save", args,
             {disable:true, callback:Kwo.Subscriptions.onUnjoinExplainCallback});
  },
  onUnjoinExplainCallback: function(res) {
    if (Kwo.hasError(res)) {
      return ;
    }else{
      Kwo.go("/subscriptions.finish", {'cas':res.result.cas}, {});
    }
  }
};

Kwo.Newsletter = {
  onCallback: function(res) {
    if (Kwo.hasError(res)) {
      if(res["result"]["type"] == 'site_newsletter_vp' && res["result"]["msg"] == "adresse déjà inscrite à la newsletter" || res["result"]["type"] == 'site_newsletter_vp_2' && res["result"]["msg"] == "adresse email invalide") {
         var dialog = Kwo.getDialog('dialog');
         if (Kwo.dialogs.size() == 1) {
           $(document.body).undoClipping();
         }
         dialog.shadow.remove();
         dialog.overlay.remove();
         Kwo.dialogs.unset(dialog.name);
         if (Prototype.Browser.IE && navigator.userAgent.indexOf("MSIE 6") > -1) {
           $$("SELECT").invoke("show");
         }
         Event.stopObserving('keyup', UAD.Dialog.escapeHandler);
      } else if ($(res["result"]["type"]+"-input")) {
        $(res["result"]["type"]+"-input").value = res["result"]["msg"];
      } return ;
    }
    Kwo.exec("/tracker/tags", {'zone':8, 'value':'email_id:'+res["result"]["emailid"]},{callback:function(res){$("newletter-tracking").innerHTML = res["result"]["tags"];}});
    $(res["result"]["type"]+"-input").value = 'Merci!';
    $(res["result"]["type"]+"-input").removeClassName("error-newsletter-email");
    // Fermeture du popup vente privée
    if(res["result"]["type"] == 'site_newsletter_vp_2'){
      var dialog = Kwo.getDialog('dialog');
      if (Kwo.dialogs.size() == 1) {
        $(document.body).undoClipping();
      }
      dialog.shadow.remove();
      dialog.overlay.remove();
      Kwo.dialogs.unset(dialog.name);
      if (Prototype.Browser.IE && navigator.userAgent.indexOf("MSIE 6") > -1) {
        $$("SELECT").invoke("show");
      }
      Event.stopObserving('keyup', UAD.Dialog.escapeHandler);
    }
  },
  
  onRecipientSave: function(elt) {
    Kwo.exec("/account/push/recipient.save", elt,
             {disable:true, callback:true});
  },

  onSubmit: function(elt) { 
    elt = $(elt);
    var input = elt.down("INPUT[data-placeholder]");
    if (input) {
      if (input.readAttribute("data-placeholder") == input.getValue()) {
        input.value = '';
        input.focus();
        return ;
      }
      var id = elt.down(".nextStep").readAttribute("data-action");
      if(id) { $(elt).hide(); $(id).show(); }
    }
    Kwo.exec("/push/newsletter.subscribe", elt, {callback: Kwo.Newsletter.onCallback.bind(elt)});
  }
  
};


Kwo.Class.Newsletter = Class.create(Kwo.Dialog, {

  initialize: function($super, args) {
    this.name = "newsletter";
    this.className = "layout-hbox";
    this.args = args;
    $super(this.refresh, this.args, {width: 500, height: 300});
  },
  
  refresh: function() {
    Kwo.exec("/push/newsletter.signup", this.args, 
             {container: this.support});
  }

});
