[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/webroot/rsrc/js/application/phortune/ -> phortune-credit-card-form.js (source)

   1  /**
   2   * @provides phortune-credit-card-form
   3   * @requires javelin-install
   4   *           javelin-dom
   5   *           javelin-json
   6   *           javelin-workflow
   7   *           javelin-util
   8   * @javelin
   9   */
  10  
  11  /**
  12   * Simple wrapper for credit card forms generated by `PhortuneCreditCardForm`.
  13   *
  14   * To construct an object for a form:
  15   *
  16   *   new JX.PhortuneCreditCardForm(form_root_node, submit_callback);
  17   *
  18   */
  19  JX.install('PhortuneCreditCardForm', {
  20    construct : function(root, onsubmit) {
  21      this._root = root;
  22      this._submitCallback = onsubmit;
  23      JX.DOM.listen(root, 'submit', null, JX.bind(this, this._onsubmit));
  24    },
  25  
  26    members : {
  27      _root : null,
  28      _submitCallback : null,
  29  
  30      _getCardData : function() {
  31        var root = this._root;
  32  
  33        return {
  34          number : JX.DOM.find(root, 'input',  'number-input').value,
  35          cvc    : JX.DOM.find(root, 'input',  'cvc-input'   ).value,
  36          month  : JX.DOM.find(root, 'select', 'month-input' ).value,
  37          year   : JX.DOM.find(root, 'select', 'year-input'  ).value
  38        };
  39      },
  40  
  41      submitForm : function(errors, token) {
  42        var params = {
  43          errors: JX.JSON.stringify(errors),
  44          token: JX.JSON.stringify(token || {})
  45        };
  46  
  47        JX.Workflow
  48          .newFromForm(this._root, params)
  49          .start();
  50      },
  51  
  52      _onsubmit : function(e) {
  53        e.kill();
  54        this._submitCallback(this._getCardData());
  55      }
  56  
  57    }
  58  
  59  });


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1