We will be off from 27/1 (Monday) to 31/1 (Friday) (GMT +7) for our Tet Holiday (Lunar New Year) in our country

Commit cea55f4b authored by Rik ter Beek's avatar Rik ter Beek

#89 add support for devicefingerprint to support ratepay

parent 6b457dcd
......@@ -297,9 +297,13 @@ class Redirect extends \Magento\Payment\Block\Form
$formFields['deliveryAddressType'] = "1";
// make setting to make this optional
$adyFields['shopperType'] = "1";
$formFields['shopperType'] = "1";
}
if ($this->_order->getPayment()->getAdditionalInformation("df_value") != "") {
$formFields['dfValue'] = $this->_order->getPayment()->getAdditionalInformation("df_value");
}
// Sort the array by key using SORT_STRING order
ksort($formFields, SORT_STRING);
......
......@@ -36,6 +36,7 @@ class AdyenHppDataAssignObserver extends AbstractDataAssignObserver
const GENDER = 'gender';
const DOB = 'dob';
const TELEPHONE = 'telephone';
const DF_VALUE = 'df_value';
/**
......@@ -46,7 +47,8 @@ class AdyenHppDataAssignObserver extends AbstractDataAssignObserver
self::ISSUER_ID,
self::GENDER,
self::DOB,
self::TELEPHONE
self::TELEPHONE,
self::DF_VALUE
];
/**
......
......@@ -6,7 +6,8 @@
/*global alert*/
var config = {
paths: {
'adyen/encrypt' : 'Adyen_Payment/js/view/payment/adyen.encrypt.min'
'adyen/encrypt' : 'Adyen_Payment/js/view/payment/adyen.encrypt.min',
'adyen/df' : 'https://live.adyen.com/hpp/js/df'
},
config: {
mixins: {
......
......@@ -35,12 +35,14 @@ define(
'Magento_Checkout/js/model/url-builder',
'Adyen_Payment/js/model/adyen-payment-service',
'Magento_Customer/js/model/customer',
'Magento_Checkout/js/model/full-screen-loader'
'Magento_Checkout/js/model/full-screen-loader',
'adyen/df'
],
function (ko, $, Component, setPaymentMethodAction, selectPaymentMethodAction, quote, checkoutData, additionalValidators, storage, urlBuilder, adyenPaymentService, customer, fullScreenLoader) {
function (ko, $, Component, setPaymentMethodAction, selectPaymentMethodAction, quote, checkoutData, additionalValidators, storage, urlBuilder, adyenPaymentService, customer, fullScreenLoader, deviceFingerprint) {
'use strict';
var brandCode = ko.observable(null);
var paymentMethod = ko.observable(null);
var dfValue = ko.observable(null);
return Component.extend({
self: this,
......@@ -55,7 +57,8 @@ define(
'issuerId',
'gender',
'dob',
'telephone'
'telephone',
'dfValue'
]);
return this;
},
......@@ -89,6 +92,12 @@ define(
).done(
function (response) {
adyenPaymentService.setPaymentMethods(response);
// set device fingerprint value
dfSet('dfValue', 0);
// propagate this manually to knockoutjs otherwise it would not work
dfValue($('#dfValue').val());
fullScreenLoader.stopLoader();
}
).fail(function(error) {
......@@ -114,7 +123,6 @@ define(
return self.validate();
}
if(value.brandCode == "ideal") {
result.issuerIds = value.issuers;
result.issuerId = ko.observable(null);
......@@ -155,13 +163,12 @@ define(
if (this.validate() && additionalValidators.validate()) {
var data = {};
data.method = self.method;
data.po_number = null;
var additionalData = {};
additionalData.brand_code = self.value;
additionalData.df_value = dfValue();
if(brandCode() == "ideal") {
additionalData.issuer_id = this.issuerId();
......@@ -187,7 +194,7 @@ define(
"method": self.method,
"po_number": null,
"additional_data": {
brand_code: self.value,
brand_code: self.value
}
};
......@@ -205,7 +212,7 @@ define(
isBrandCodeChecked: ko.computed(function () {
if(!quote.paymentMethod()) {
return null;
return null;
}
if(quote.paymentMethod().method == paymentMethod()) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment