Skip to content

Commit 2013594

Browse files
authored
Merge pull request #11 from SalesforceCommerceCloud/202109_typos
More unused code removed
2 parents 7d34493 + 4c223f4 commit 2013594

7 files changed

Lines changed: 37 additions & 86 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ bumped for multiple releases during one month.
1111
- Order Confirmation event will now correctly fire for orders with coupons.
1212
##### Updated
1313
- Rename sendEmail function to trackEvent
14+
- Fix grammar/typos in comments and docstrings
15+
- Remove unused functions from Core and SG cartridges
16+
- sendOrderEmail from Core emailUtils
17+
- sendKlaviyoShipmentEmail from SG Klaviyo.js controller
1418

1519
### [21.7.0] - 2021-7-27
1620
##### Updated

cartridges/int_klaviyo/cartridge/controllers/Klaviyo.js

Lines changed: 22 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -9,40 +9,40 @@ var ISML = require('dw/template/ISML');
99

1010

1111
/**
12-
* Controller that will send the necessary data required for klaviyo to track the user event's
13-
* such as checkout,order confirmation,searching etc and renders the renders the klaviyoTag isml file
12+
* Controller that sends the necessary data required for klaviyo to track user events
13+
* such as checkout, order confirmation, searching etc and renders the renders the klaviyoTag isml file
1414
*
1515
* @module controllers/Klaviyo
1616
*/
1717

1818

19-
var RenderKlaviyo = function () {
20-
if (!dw.system.Site.getCurrent().getCustomPreferenceValue('klaviyo_enabled')) {
21-
return;
22-
}
23-
var logger = Logger.getLogger('renderKlaviyo', 'Klaviyo - Render Klaviyo Controller');
24-
try {
25-
var klaviyoUtils = require('*/cartridge/scripts/utils/klaviyo/klaviyoUtils');
26-
var klaviyoTags = require('*/cartridge/scripts/utils/klaviyo/klaviyoOnSiteTags.js').klaviyoOnSiteTags;
27-
28-
var klaviyoDataLayer = klaviyoUtils.buildDataLayer();
29-
var sendToDom = klaviyoTags(klaviyoDataLayer);
30-
31-
ISML.renderTemplate('klaviyo/klaviyoTag', {
32-
klaviyoData: sendToDom
33-
});
34-
} catch (e) {
35-
logger.debug('error rendering klaviyo ' + e.message + ' at ' + e.lineNumber);
36-
}
19+
var RenderKlaviyo = function () {
20+
if (!dw.system.Site.getCurrent().getCustomPreferenceValue('klaviyo_enabled')) {
21+
return;
22+
}
23+
var logger = Logger.getLogger('renderKlaviyo', 'Klaviyo - Render Klaviyo Controller');
24+
try {
25+
var klaviyoUtils = require('*/cartridge/scripts/utils/klaviyo/klaviyoUtils');
26+
var klaviyoTags = require('*/cartridge/scripts/utils/klaviyo/klaviyoOnSiteTags.js').klaviyoOnSiteTags;
27+
28+
var klaviyoDataLayer = klaviyoUtils.buildDataLayer();
29+
var sendToDom = klaviyoTags(klaviyoDataLayer);
30+
31+
ISML.renderTemplate('klaviyo/klaviyoTag', {
32+
klaviyoData: sendToDom
33+
});
34+
} catch (e) {
35+
logger.debug('error rendering klaviyo ' + e.message + ' at ' + e.lineNumber);
36+
}
3737
};
3838

3939
/**
40-
* Controller that will send the necessary data to klaviyo when an add to cart event happens
40+
* Controller that sends the necessary data to klaviyo when an add to cart event happens
4141
* @module controllers/Klaviyo
4242
*/
4343

4444

45-
var RenderKlaviyoAddToCart = function () {
45+
var RenderKlaviyoAddToCart = function () {
4646
if (!dw.system.Site.getCurrent().getCustomPreferenceValue('klaviyo_enabled')) {
4747
return;
4848
}
@@ -58,29 +58,7 @@ var RenderKlaviyoAddToCart = function () {
5858
};
5959

6060

61-
/**
62-
*end point for testing shipping confirmation event
63-
*
64-
*/
65-
66-
function sendKlaviyoShipmentEmail() {
67-
var parameterMap = request.httpParameterMap;
68-
var orderID = null;
69-
if (!empty(parameterMap)) {
70-
orderID = parameterMap.orderID.stringValue;
71-
}
72-
if (orderID) {
73-
var klaviyoUtils = require('*/cartridge/scripts/utils/klaviyo/klaviyoUtils');
74-
if (klaviyoUtils.sendMailForShipmentConfirmation(orderID)) {
75-
r.renderJSON({ status: 'success' });
76-
} else {
77-
r.renderJSON({ status: 'failed sending email' });
78-
}
79-
}
80-
}
81-
8261
/** Handles the form submission for subscription.
8362
* @see {@link module:controllers/Klaviyo~Subscribe} */
84-
exports.sendKlaviyoShipmentEmail = guard.ensure(['get'], sendKlaviyoShipmentEmail);
8563
exports.RenderKlaviyo = guard.ensure(['get'], RenderKlaviyo);
8664
exports.RenderKlaviyoAddToCart = guard.ensure(['get'], RenderKlaviyoAddToCart);

cartridges/int_klaviyo_core/cartridge/scripts/utils/klaviyo/emailUtils.js

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,6 @@ var URLUtils = require('dw/web/URLUtils');
66
var productMgr = require('dw/catalog/ProductMgr');
77
var imageSize = Site.getCurrent().getCustomPreferenceValue('klaviyo_image_size') || null;
88

9-
/**
10-
* Sends an order to Klaviyo with the order email type.
11-
*
12-
* @param order
13-
* @param mailType
14-
* @returns
15-
*/
16-
function sendOrderEmail(order, mailType) {
17-
var logger = Logger.getLogger('Klaviyo', 'emailUtils - sendOrderEmail()');
18-
try {
19-
var isFutureOrder = (mailType == 'Auto Delivery Order Confirmation');
20-
var orderPayload = prepareOrderPayload(order, isFutureOrder, mailType);
21-
require('*/cartridge/scripts/utils/klaviyo/klaviyoUtils').trackEvent(order.getCustomerEmail(), orderPayload, mailType);
22-
} catch (e) {
23-
logger.error('sendOrderEmail() failed for order: ' + order.getOrderNo() + ', mailType: ' + mailType + '. Error: ' + e.message);
24-
}
25-
}
26-
27-
289
/**
2910
* Prepares the order in JSON format for email send.
3011
* @param order
@@ -369,6 +350,5 @@ function prepareOrderPayload(order, isFutureOrder, mailType) {
369350
}
370351

371352
module.exports = {
372-
sendOrderEmail : sendOrderEmail,
373-
prepareOrderPayload : prepareOrderPayload
353+
prepareOrderPayload : prepareOrderPayload,
374354
};

cartridges/int_klaviyo_core/cartridge/scripts/utils/klaviyo/klaviyoTagUtils.js

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66

77

8-
// prepare viewed product event's data for klaviyo
8+
// Prepare viewed product event data for klaviyo
99

1010
function prepareViewedProductObject(klData) {
1111
var viewedProductObj = new Object();
@@ -23,7 +23,7 @@ function prepareViewedProductObject(klData) {
2323
}
2424

2525

26-
// prepare checkout product event's data for klaviyo
26+
// Prepare checkout product event data for klaviyo
2727

2828
function prepareCheckoutObj(klData) {
2929
var checkoutObj = new Object();
@@ -35,7 +35,7 @@ function prepareCheckoutObj(klData) {
3535
return checkoutObj;
3636
}
3737

38-
// prepare checkout add to cart event's data for klaviyo
38+
// Prepare checkout add to cart event data for klaviyo
3939

4040
function prepareAddToCartObj(klData) {
4141
var cartObj = new Object();
@@ -45,12 +45,11 @@ function prepareAddToCartObj(klData) {
4545
cartObj['Primary Categories'] = klData.primaryCategories;
4646
cartObj.$value = klData.basketGross;
4747
cartObj['Item Count'] = klData.itemCount.toString();
48-
return cartObj;
48+
return cartObj;
4949
}
5050

5151

52-
// Setting customer basic details and information to klaviyo
53-
52+
// Sends customer basic details and information to klaviyo
5453

5554
function setCustomerDetails(currentUser) {
5655
var klCustomer = new Object();

cartridges/int_klaviyo_core/cartridge/scripts/utils/klaviyo/klaviyoUtils.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ var WHITELISTED_EVENTS = ['Searched Site', 'Viewed Product', 'Viewed Category',
1616
* (please see metadata/klaviyo-services.xml) and executes a get call with the payload generated from the
1717
* preparePayload() method.
1818
*
19-
* This is a track API call. Please refer https://www.klaviyo.com/docs/http-api
19+
* This is a track API call. Please refer https://apidocs.klaviyo.com/reference/track-identify#track-get
2020
*
2121
* @param email
2222
* @param data
@@ -59,7 +59,7 @@ function trackEvent(email, data, event) {
5959

6060
/**
6161
* Prepares Track API Payload Data in format per
62-
* https://www.klaviyo.com/docs/http-api
62+
* https://apidocs.klaviyo.com/reference/track-identify#track-get
6363
*
6464
* @param email
6565
* @param data
@@ -107,7 +107,7 @@ function preparegiftCardObject(giftCard) {
107107

108108
/**
109109
* Prepares Product Object and set necessary product details
110-
* https://www.klaviyo.com/docs/http-api
110+
* https://apidocs.klaviyo.com/reference/track-identify#track-get
111111
*
112112
* @param lineItem
113113
* @param basketProduct
@@ -402,8 +402,9 @@ var buildDataLayer = function () {
402402

403403
return klData;
404404
};
405+
405406
/**
406-
* Prepare data's needs to be send to klaviyo in klData object for add to cart
407+
* Prepare data to be sent to klaviyo in klData object for add to cart
407408
*/
408409
var buildCartDataLayer = function () {
409410
var klData = {};

test/mocks/EmailUtils.js

Lines changed: 0 additions & 9 deletions
This file was deleted.

test/unit/KlaviyoUtils.spec.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ var StringUtils = require('../mocks/dw/util/StringUtils');
88
var LocalServiceRegistry = require('../mocks/dw/svc/LocalServiceRegistry');
99
var URLUtils = require('../mocks/dw/web/URLUtils');
1010
var ProductMgr = require('../mocks/dw/catalog/ProductMgr');
11-
var EmailUtils = require('../mocks/EmailUtils');
1211
var BasketMgr = require('../mocks/dw/order/BasketMgr')
1312
var OrderMgr = require('../mocks/dw/order/OrderMgr');
1413

@@ -29,7 +28,6 @@ describe('klaviyoUtils.js script', function() {
2928
'dw/util/StringUtils': StringUtils,
3029
'dw/svc/LocalServiceRegistry': LocalServiceRegistry,
3130
'dw/web/URLUtils': URLUtils,
32-
'~/cartridge/scripts/utils/klaviyo/EmailUtils': EmailUtils,
3331
'dw/order/OrderMgr': OrderMgr,
3432
'dw/order/BasketMgr': BasketMgr,
3533
'dw/catalog/ProductMgr': ProductMgr

0 commit comments

Comments
 (0)