Sha256: 3d35b12654ddfd0252cb8f4c70a4c9e54772803aa5c14a0225024a42f2d5f550

Contents?: true

Size: 1.37 KB

Versions: 5

Compression:

Stored size: 1.37 KB

Contents

SolidusBraintree.HostedForm = function(paymentMethodId, useDataCollector) {
  this.paymentMethodId = paymentMethodId;
  this.useDataCollector = useDataCollector;
  this.client = null;
};

SolidusBraintree.HostedForm.prototype.initialize = function() {
  this.client = SolidusBraintree.createClient({
    paymentMethodId: this.paymentMethodId,
    useThreeDSecure: (typeof(window.threeDSecureOptions) !== 'undefined'),
    useDataCollector: this.useDataCollector,
  });

  return this.client.initialize().
    then(this._createHostedFields.bind(this));
};

SolidusBraintree.HostedForm.prototype._createHostedFields = function () {
  if (!this.client) {
    throw new Error("Client not initialized, please call initialize first!");
  }

  var opts = {
    _solidusClient: this.client,
    client: this.client.getBraintreeInstance(),

    fields: {
      number: {
        selector: "#card_number" + this.paymentMethodId,
        placeholder: placeholder_text["number"]
      },

      cvv: {
        selector: "#card_code" + this.paymentMethodId,
        placeholder: placeholder_text["cvv"]
      },

      expirationDate: {
        selector: "#card_expiry" + this.paymentMethodId,
        placeholder: placeholder_text["expirationDate"]
      }
    },

    styles: credit_card_fields_style
  };

  return SolidusBraintree.PromiseShim.convertBraintreePromise(braintree.hostedFields.create, [opts]);
};

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
solidus_braintree-3.3.0 lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/hosted_form.js
solidus_braintree-3.2.0 lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/hosted_form.js
solidus_braintree-3.1.0 lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/hosted_form.js
solidus_braintree-3.0.1 lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/hosted_form.js
solidus_braintree-3.0.0 lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/hosted_form.js