Skip to content

Commit a7012aa

Browse files
authored
Improving the endpoint validations (#1200)
1 parent 02cb3ab commit a7012aa

29 files changed

Lines changed: 179 additions & 72 deletions

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/__tests__/paypalExpress.test.js

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,9 @@ describe('paypal express', () => {
2828
global.$.spinner = jest.fn(() => {return {
2929
start: start
3030
}})
31-
global.fetch = jest.fn().mockResolvedValueOnce({
32-
ok: true,
33-
json: jest.fn(() => {return {action: {}}})
34-
})
31+
global.$.ajax = jest.fn().mockImplementation(({ success }) => {
32+
success({ action : {}})
33+
});
3534
const component = {
3635
handleError: jest.fn(),
3736
handleAction: jest.fn()
@@ -46,10 +45,9 @@ describe('paypal express', () => {
4645
global.$.spinner = jest.fn(() => {return {
4746
start: start
4847
}})
49-
global.fetch = jest.fn().mockResolvedValueOnce({
50-
ok: true,
51-
json: jest.fn(() => {return {}})
52-
})
48+
global.$.ajax = jest.fn().mockImplementation(({ success }) => {
49+
success({})
50+
});
5351
const component = {
5452
handleError: jest.fn(),
5553
handleAction: jest.fn()

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/adyenAccount.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,16 @@ function handleAction(action) {
3333

3434
// confirm onAdditionalDetails event and paymentsDetails response
3535
store.checkoutConfiguration.onAdditionalDetails = (state) => {
36+
const requestData = JSON.stringify({
37+
data: state.data,
38+
});
3639
$.ajax({
3740
type: 'POST',
38-
url: 'Adyen-PaymentsDetails',
39-
data: JSON.stringify({ data: state.data }),
40-
contentType: 'application/json; charset=utf-8',
41+
url: window.paymentsDetailsURL,
42+
data: {
43+
csrf_token: $('#adyen-token').val(),
44+
data: requestData,
45+
},
4146
async: false,
4247
success(data) {
4348
if (data.isSuccessful) {

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/adyenGiving.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ function handleOnDonate(state, component) {
1010
amountCurrency: selectedAmount.currency,
1111
orderNo: window.orderNo,
1212
orderToken: window.orderToken,
13+
csrf_token: $('#adyen-token').val(),
1314
};
1415

1516
$.ajax({

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/adyen_checkout/checkoutConfiguration.js

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -181,11 +181,14 @@ function getGiftCardConfig() {
181181
store.updateSelectedPayment(constants.GIFTCARD, 'stateData', state.data);
182182
},
183183
onBalanceCheck: (resolve, reject, requestData) => {
184+
const payload = {
185+
csrf_token: $('#adyen-token').val(),
186+
data: JSON.stringify(requestData),
187+
};
184188
$.ajax({
185189
type: 'POST',
186190
url: window.checkBalanceUrl,
187-
data: JSON.stringify(requestData),
188-
contentType: 'application/json; charset=utf-8',
191+
data: payload,
189192
async: false,
190193
success: (data) => {
191194
giftcardBalance = data.balance;
@@ -248,8 +251,10 @@ function getGiftCardConfig() {
248251
$.ajax({
249252
type: 'POST',
250253
url: window.partialPaymentsOrderUrl,
251-
data: JSON.stringify(requestData),
252-
contentType: 'application/json; charset=utf-8',
254+
data: {
255+
csrf_token: $('#adyen-token').val(),
256+
data: JSON.stringify(requestData),
257+
},
253258
async: false,
254259
success: (data) => {
255260
if (data.resultCode === 'Success') {
@@ -293,14 +298,17 @@ const actionHandler = async (action) => {
293298
};
294299

295300
function handleOnAdditionalDetails(state) {
301+
const requestData = JSON.stringify({
302+
data: state.data,
303+
orderToken: window.orderToken,
304+
});
296305
$.ajax({
297306
type: 'POST',
298307
url: window.paymentsDetailsURL,
299-
data: JSON.stringify({
300-
data: state.data,
301-
orderToken: window.orderToken,
302-
}),
303-
contentType: 'application/json; charset=utf-8',
308+
data: {
309+
csrf_token: $('#adyen-token').val(),
310+
data: requestData,
311+
},
304312
async: false,
305313
success(data) {
306314
if (!data.isFinal && typeof data.action === 'object') {

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/adyen_checkout/helpers.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ function paymentFromComponent(data, component = {}) {
3333
url: window.paymentFromComponentURL,
3434
type: 'post',
3535
data: {
36+
csrf_token: $('#adyen-token').val(),
3637
data: JSON.stringify(requestData),
3738
paymentMethod: document.querySelector('#adyenPaymentMethodName').value,
3839
},

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/adyen_checkout/makePartialPayment.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@ function makePartialPayment(requestData) {
77
$.ajax({
88
url: window.partialPaymentUrl,
99
type: 'POST',
10-
data: JSON.stringify(requestData),
11-
contentType: 'application/json; charset=utf-8',
10+
data: {
11+
csrf_token: $('#adyen-token').val(),
12+
data: JSON.stringify(requestData),
13+
},
1214
})
1315
.done((response) => {
1416
if (response.error) {

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/adyen_checkout/renderGiftcardComponent.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,10 @@ function removeGiftCards() {
5656
$.ajax({
5757
type: 'POST',
5858
url: window.cancelPartialPaymentOrderUrl,
59-
data: JSON.stringify(card),
60-
contentType: 'application/json; charset=utf-8',
59+
data: {
60+
csrf_token: $('#adyen-token').val(),
61+
data: JSON.stringify(card),
62+
},
6163
async: false,
6264
success(res) {
6365
const adyenPartialPaymentsOrder = document.querySelector(

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/amazonPayCheckout.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ function paymentFromComponent(data, component) {
4242
url: window.paymentFromComponentURL,
4343
type: 'post',
4444
data: {
45+
csrf_token: $('#adyen-token').val(),
4546
data: JSON.stringify(requestData),
4647
paymentMethod: 'amazonpay',
4748
merchantReference: document.querySelector('#merchantReference').value,
@@ -80,14 +81,17 @@ async function mountAmazonPayComponent() {
8081
},
8182
onAdditionalDetails: (state) => {
8283
state.data.paymentMethod = 'amazonpay';
84+
const requestData = JSON.stringify({
85+
data: state.data,
86+
orderToken: window.orderToken,
87+
});
8388
$.ajax({
8489
type: 'post',
8590
url: window.paymentsDetailsURL,
86-
data: JSON.stringify({
87-
data: state.data,
88-
orderToken: window.orderToken,
89-
}),
90-
contentType: 'application/json; charset=utf-8',
91+
data: {
92+
csrf_token: $('#adyen-token').val(),
93+
data: requestData,
94+
},
9195
success(data) {
9296
if (data.isSuccessful) {
9397
handleAuthorised(data);

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/amazonPayExpressPart2.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ function saveShopperDetails(details) {
55
url: window.saveShopperDetailsURL,
66
type: 'post',
77
data: {
8+
csrf_token: $('#adyen-token').val(),
89
shopperDetails: JSON.stringify(details),
910
paymentMethod: 'amazonpay',
1011
},

src/cartridges/app_adyen_SFRA/cartridge/client/default/js/applePayExpress.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ function callPaymentFromComponent(data, resolveApplePay, rejectApplePay) {
9090
url: window.paymentFromComponentURL,
9191
type: 'post',
9292
data: {
93+
csrf_token: $('#adyen-token').val(),
9394
data: JSON.stringify(data),
9495
paymentMethod: APPLE_PAY,
9596
},

0 commit comments

Comments
 (0)