Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- define(
- [
- 'jquery',
- 'Magento_Checkout/js/view/payment/default',
- 'Magento_Checkout/js/action/place-order',
- 'Magento_Checkout/js/action/select-payment-method',
- 'Magento_Customer/js/model/customer',
- 'Magento_Checkout/js/checkout-data',
- 'Magento_Checkout/js/model/payment/additional-validators',
- 'mage/url',
- ],
- function (
- $,
- Component,
- placeOrderAction,
- selectPaymentMethodAction,
- customer,
- checkoutData,
- additionalValidators,
- url) {
- return Component.extend({
- defaults: {
- template: 'Magekmf_Ccavenue/payment/ccavenue'
- },
- placeOrder: function (data, event) {
- if (event) {
- event.preventDefault();
- }
- var self = this,
- placeOrder,
- emailValidationResult = customer.isLoggedIn(),
- loginFormSelector = 'form[data-role=email-with-possible-login]';
- if (!customer.isLoggedIn()) {
- $(loginFormSelector).validation();
- emailValidationResult = Boolean($(loginFormSelector + ' input[name=username]').valid());
- }
- if (emailValidationResult && this.validate() && additionalValidators.validate()) {
- this.isPlaceOrderActionAllowed(false);
- placeOrder = placeOrderAction(this.getData(), true, this.messageContainer);
- $.when(placeOrder).fail(function () {
- self.isPlaceOrderActionAllowed(true);
- }).done(this.afterPlaceOrder.bind(this));
- return true;
- }
- return false;
- },
- selectPaymentMethod: function() {
- selectPaymentMethodAction(this.getData());
- checkoutData.setSelectedPaymentMethod(this.item.method);
- return true;
- },
- afterPlaceOrder: function () {
- window.location.replace(url.build('ccavenue/request'));
- },
- /** Returns send check to info */
- getMailingAddress: function() {
- return window.checkoutConfig.payment.checkmo.mailingAddress;
- }
- });
- }
- );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement