Skip to content

Commit

Permalink
v5.5.0 - CyberSource mixin to stopLoader
Browse files Browse the repository at this point in the history
  • Loading branch information
ebanolopes committed Aug 24, 2023
1 parent 7047d40 commit 310b601
Show file tree
Hide file tree
Showing 2 changed files with 86 additions and 0 deletions.
3 changes: 3 additions & 0 deletions view/base/requirejs-config.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ var config = {
},
"Holacash_Payment/js/view/payment/method-renderer/holacash_gateway": {
'Signifyd_Connect/js/model/holacash-cc-method-mixin': true,
},
'CyberSource_SecureAcceptance/js/view/payment/method-renderer/sa/redirect': {
'Signifyd_Connect/js/model/cyber-redirect-mixin': true
}
}
}
Expand Down
83 changes: 83 additions & 0 deletions view/frontend/web/js/model/cyber-redirect-mixin.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
define(
[
'jquery',
'Magento_Ui/js/modal/modal',
'mage/url',
'Magento_Payment/js/view/payment/iframe',
'Magento_Checkout/js/model/payment/additional-validators',
'Magento_Checkout/js/action/set-payment-information',
'Magento_Checkout/js/model/full-screen-loader',
'Magento_Vault/js/view/payment/vault-enabler'],
function($, modal, urlBuilder, Component, additionalValidators, setPaymentInformationAction, fullScreenLoader, VaultEnabler) {
'use strict';

return function (target) {
return target.extend({
/**
* List all Adyen billing agreements
* Set up installments
*
* @returns {Array}
*/
placeOrder: function () {
if (!this.validateHandler() || !additionalValidators.validate()) {
return;
}
var isEnabled = window.checkoutConfig.cybersource_recaptcha && window.checkoutConfig.cybersource_recaptcha.enabled.cybersource;
var recaptcha_invisible = window.checkoutConfig.payment.chcybersource.recaptcha_invisible;
if(isEnabled && recaptcha_invisible != "invisible"){
var options = {
type: 'popup',
responsive: true,
innerScroll: true,
buttons: [{
text: $.mage.__('OK'),
class: 'mymodal1',
click: function () {
$('body').trigger('processStart');
var url = urlBuilder.build("checkout");
window.location = url;
this.closeModal();
}
}]
};

var popup = modal(options, $('#sa-recaptcha'));
var rresponse = jQuery('#g-recaptcha-response').val();
if(rresponse.length == 0) {
$("#sa-recaptcha").modal("openModal");
$('.action-close').css('display', 'none');
this.isPlaceOrderActionAllowed(false);
return false;
}
$('#sa-recaptcha').on('modalclosed', function() {
$('body').trigger('processStart');
var url = urlBuilder.build("checkout");
window.location = url;
});
}

fullScreenLoader.startLoader();

this.isPlaceOrderActionAllowed(false);

this.getPlaceOrderDeferredObject()
//fail added in case of failure on checkout
.fail(
function (response) {
//stop loader added
fullScreenLoader.stopLoader();
return response;
}
).then(this.placeOrderHandler)
.then(this.initTimeoutHandler.bind(this))
.always(
function () {
this.isPlaceOrderActionAllowed(true);
}.bind(this)
)
;
}
});
};
});

0 comments on commit 310b601

Please sign in to comment.