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

Kwo.Newsletter = {
  
  button: null,
  
  signup: function(code) {
    new Kwo.Dialog("/push/newsletter.signup", {"code": code});
  },
  
  onSubmit: function(args) {
    Kwo.Newsletter.button = $(args).select("input[type=submit]")[0].disable();
    //    Kwo.Newsletter.button.disable();
    Kwo.exec("/push/newsletter.subscribe", args,
             {"callback": Kwo.Newsletter.onCallback});
  },
  
  onCallback: function(res) {
    if (Kwo.hasError(res)) {
      Kwo.Newsletter.button.enable();
      return Kwo.error(res);
    }
    Kwo.Newsletter.button.up("FORM").select(".base-description")[0].hide();
    Kwo.Newsletter.button.up("FORM").select(".base-confirmation")[0].show();
  }
  
};