Skip to content

Commit 27fdc6b

Browse files
author
Olexii Korshenko
committed
MAGETWO-39501: Resolve checkout behavior for expired session
1 parent 5d24341 commit 27fdc6b

File tree

11 files changed

+55
-40
lines changed

11 files changed

+55
-40
lines changed

app/code/Magento/Checkout/view/frontend/web/js/action/get-totals.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ define(
99
'jquery',
1010
'../model/quote',
1111
'Magento_Checkout/js/model/resource-url-manager',
12-
'Magento_Ui/js/model/messageList',
12+
'Magento_Checkout/js/model/error-processor',
1313
'mage/storage',
1414
'Magento_Checkout/js/model/totals'
1515
],
16-
function ($, quote, resourceUrlManager, messageList, storage, totals) {
16+
function ($, quote, resourceUrlManager, errorProcessor, storage, totals) {
1717
"use strict";
1818
return function (callbacks, deferred) {
1919
deferred = deferred || $.Deferred();
@@ -36,9 +36,8 @@ define(
3636
).error(
3737
function (response) {
3838
totals.isLoading(false);
39-
var error = JSON.parse(response.responseText);
40-
messageList.addErrorMessage(error);
4139
deferred.reject();
40+
errorProcessor.process(response);
4241
}
4342
);
4443

app/code/Magento/Checkout/view/frontend/web/js/action/place-order.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ define(
88
'Magento_Checkout/js/model/url-builder',
99
'mage/storage',
1010
'mage/url',
11-
'Magento_Ui/js/model/messageList',
11+
'Magento_Checkout/js/model/error-processor',
1212
'Magento_Customer/js/model/customer',
1313
'underscore'
1414
],
15-
function (quote, urlBuilder, storage, url, messageList, customer, _) {
15+
function (quote, urlBuilder, storage, url, errorProcessor, customer, _) {
1616
'use strict';
1717

1818
return function (paymentData, redirectOnSuccess) {
@@ -50,8 +50,7 @@ define(
5050
}
5151
).fail(
5252
function (response) {
53-
var error = JSON.parse(response.responseText);
54-
messageList.addErrorMessage(error);
53+
errorProcessor.process(response);
5554
}
5655
);
5756
};

app/code/Magento/Checkout/view/frontend/web/js/action/set-payment-information.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ define(
77
'Magento_Checkout/js/model/quote',
88
'Magento_Checkout/js/model/url-builder',
99
'mage/storage',
10-
'Magento_Ui/js/model/messageList',
10+
'Magento_Checkout/js/model/error-processor',
1111
'Magento_Customer/js/model/customer'
1212
],
13-
function (quote, urlBuilder, storage, messageList, customer) {
13+
function (quote, urlBuilder, storage, errorProcessor, customer) {
1414
'use strict';
1515

1616
return function () {
@@ -47,8 +47,7 @@ define(
4747
}
4848
).fail(
4949
function (response) {
50-
var error = JSON.parse(response.responseText);
51-
messageList.addErrorMessage(error);
50+
errorProcessor.process(response);
5251
}
5352
);
5453
};
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/**
2+
* Copyright © 2015 Magento. All rights reserved.
3+
* See COPYING.txt for license details.
4+
*/
5+
define(
6+
[
7+
'mage/url',
8+
'Magento_Ui/js/model/messageList'
9+
],
10+
function (url, messageList) {
11+
'use strict';
12+
13+
return {
14+
process: function (response) {
15+
if (response.status == 401) {
16+
window.location.replace(url.build('customer/account/login/'));
17+
} else {
18+
var error = JSON.parse(response.responseText);
19+
messageList.addErrorMessage(error);
20+
}
21+
}
22+
};
23+
}
24+
);

app/code/Magento/Checkout/view/frontend/web/js/model/shipping-rate-processor/customer-address.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ define(
1010
'mage/storage',
1111
'Magento_Checkout/js/model/shipping-service',
1212
'Magento_Checkout/js/model/shipping-rate-registry',
13-
'Magento_Ui/js/model/messageList'
13+
'Magento_Checkout/js/model/error-processor'
1414
],
15-
function (resourceUrlManager, quote, storage, shippingService, rateRegistry, messageList) {
15+
function (resourceUrlManager, quote, storage, shippingService, rateRegistry, errorProcessor) {
1616
"use strict";
1717
return {
1818
getRates: function(address) {
@@ -35,9 +35,8 @@ define(
3535

3636
).fail(
3737
function(response) {
38-
var error = JSON.parse(response.responseText);
39-
messageList.addErrorMessage(error);
40-
shippingService.setShippingRates([])
38+
shippingService.setShippingRates([]);
39+
errorProcessor.process(response);
4140
}
4241
).always(
4342
function () {

app/code/Magento/Checkout/view/frontend/web/js/model/shipping-rate-processor/new-address.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ define(
99
'mage/storage',
1010
'Magento_Checkout/js/model/shipping-service',
1111
'Magento_Checkout/js/model/shipping-rate-registry',
12-
'Magento_Ui/js/model/messageList'
12+
'Magento_Checkout/js/model/error-processor'
1313
],
14-
function (resourceUrlManager, quote, storage, shippingService, rateRegistry, messageList) {
14+
function (resourceUrlManager, quote, storage, shippingService, rateRegistry, errorProcessor) {
1515
'use strict';
1616

1717
return {
@@ -45,9 +45,8 @@ define(
4545
}
4646
).fail(
4747
function (response) {
48-
var error = JSON.parse(response.responseText);
49-
messageList.addErrorMessage(error);
5048
shippingService.setShippingRates([]);
49+
errorProcessor.process(response);
5150
}
5251
).always(
5352
function () {

app/code/Magento/Checkout/view/frontend/web/js/model/shipping-save-processor/default.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ define(
1111
'mage/storage',
1212
'Magento_Checkout/js/model/payment-service',
1313
'Magento_Checkout/js/model/payment/method-converter',
14-
'Magento_Ui/js/model/messageList'
14+
'Magento_Checkout/js/model/error-processor'
1515
],
16-
function (ko, quote, resourceUrlManager, storage, paymentService, methodConverter, messageList) {
16+
function (ko, quote, resourceUrlManager, storage, paymentService, methodConverter, errorProcessor) {
1717
'use strict';
1818

1919
return {
@@ -36,8 +36,7 @@ define(
3636
}
3737
).fail(
3838
function (response) {
39-
var error = JSON.parse(response.responseText);
40-
messageList.addErrorMessage(error);
39+
errorProcessor.process(response);
4140
}
4241
);
4342
}

app/code/Magento/Customer/view/frontend/web/js/model/customer.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,9 @@ define(
88
'jquery',
99
'ko',
1010
'underscore',
11-
'mage/storage',
1211
'./address-list'
1312
],
14-
function($, ko, _, storage, addressList) {
13+
function($, ko, _, addressList) {
1514
"use strict";
1615
var isLoggedIn = ko.observable(window.isCustomerLoggedIn),
1716
customerData = {};

app/code/Magento/GiftMessage/view/frontend/web/js/action/gift-options.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@ define(
88
'../model/url-builder',
99
'mage/storage',
1010
'Magento_Ui/js/model/messageList',
11+
'Magento_Checkout/js/model/error-processor',
1112
'mage/url'
1213
],
13-
function(urlBuilder, storage, messageList, url) {
14+
function(urlBuilder, storage, messageList, errorProcessor, url) {
1415
"use strict";
1516
return function(giftMessage, remove) {
1617
url.setBaseUrl(giftMessage.getConfigValue('baseUrl'));
@@ -48,8 +49,7 @@ define(
4849
}
4950
).fail(
5051
function(response) {
51-
var error = JSON.parse(response.responseText);
52-
messageList.addErrorMessage(error);
52+
errorProcessor.process(response);
5353
}
5454
);
5555
};

app/code/Magento/SalesRule/view/frontend/web/js/action/cancel-coupon.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ define(
1414
'Magento_Checkout/js/model/quote',
1515
'Magento_Checkout/js/model/resource-url-manager',
1616
'Magento_Checkout/js/model/payment-service',
17-
'Magento_Ui/js/model/messageList',
17+
'Magento_Checkout/js/model/error-processor',
1818
'mage/storage',
1919
'Magento_Checkout/js/action/get-totals'
2020
],
21-
function (ko, $, quote, urlManager, paymentService, messageList, storage, getTotalsAction) {
21+
function (ko, $, quote, urlManager, paymentService, errorProcessor, storage, getTotalsAction) {
2222
'use strict';
2323
return function (isApplied, isLoading) {
2424
var quoteId = quote.getQuoteId();
@@ -39,11 +39,10 @@ define(
3939
);
4040
});
4141
}
42-
).error(
42+
).fail(
4343
function (response) {
4444
isLoading(false);
45-
var error = JSON.parse(response.responseText);
46-
messageList.addErrorMessage(error);
45+
errorProcessor.process(response);
4746
}
4847
);
4948
};

0 commit comments

Comments
 (0)