container: container, paypal: { singleUse: <%= payment_method.preferred_store_payments_in_vault.eql?('do_not_store') %>, amount: <%= @order.order_total_after_store_credit %>, currency: "<%= current_currency %>", enableShippingAddress: true, shippingAddressOverride: { recipientName: '<%= "#{shipping_address.firstname} #{shipping_address.lastname}" %>', streetAddress: '<%= shipping_address.address1 %>', extendedAddress: '<%= shipping_address.address2 %>', locality: '<%= shipping_address.city %>', countryCodeAlpha2: '<%= shipping_address.country.try(:iso) %>', postalCode: '<%= shipping_address.zipcode %>', region: '<%= shipping_address.state.try(:abbr) %>', phone: '<%= shipping_address.phone %>', editable: false } }, onPaymentMethodReceived: function (result) { var formId = "#" + checkoutFormId; function submitWithAttributes(data) { switch (data.type) { case "CreditCard": $(formId).append(""); $(formId).append(""); break; case "PayPalAccount": $(formId).append(""); break; } if(SpreeBraintreeVzero.admin) $(formId).append(""); else $(formId).append(""); $(formId)[0].submit(); } if (SpreeBraintreeVzero.threeDSecure && result.type == "CreditCard") { var client = new braintree.api.Client({ clientToken: clientToken }); client.verify3DS({ amount: <%= @order.order_total_after_store_credit %>, creditCard: result.nonce }, function (error, response) { if (!error) { submitWithAttributes(response); } else { $(errorMessagesContainer).prepend("
<%= I18n.t(:gateway_error, scope: 'braintree.error') %>
") } }); } else { submitWithAttributes(result); } }, onReady: function (integration) { if(!SpreeBraintreeVzero.admin) SpreeBraintreeVzero.deviceData = integration.deviceData; <%= render partial: 'spree/checkout/payment/braintree_vzero/dropin_on_ready_callback', formats: [:js] %> }, onError: function (error) { SpreeBraintreeVzero.enableSubmitButton(); <%= render partial: 'spree/checkout/payment/braintree_vzero/dropin_on_error_callback', formats: [:js] %> }