Skip to content

Commit 4a331f8

Browse files
committed
MC-35103: Tracking Page Builder actions
- Refactor: WIP Extract getAction
1 parent 97bd6a4 commit 4a331f8

File tree

1 file changed

+44
-19
lines changed
  • app/code/Magento/PageBuilderAdminAnalytics/view/adminhtml/web/js/page-builder

1 file changed

+44
-19
lines changed

app/code/Magento/PageBuilderAdminAnalytics/view/adminhtml/web/js/page-builder/events-mixin.js

Lines changed: 44 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ define(['underscore'], function (_underscore) {
1010
var originalTarget = target.trigger,
1111
isAdminAnalyticsEnabled,
1212
action = '',
13+
getAction,
1314
event;
1415

1516
/**
@@ -25,8 +26,6 @@ define(['underscore'], function (_underscore) {
2526
!_underscore.isUndefined(window.digitalData) &&
2627
!_underscore.isUndefined(window._satellite);
2728

28-
console.log(name, args);
29-
3029
if (name.indexOf('readyAfter') !== -1 && isAdminAnalyticsEnabled) {
3130
window.digitalData.page.url = window.location.href;
3231
window.digitalData.page.attributes = {
@@ -35,26 +34,13 @@ define(['underscore'], function (_underscore) {
3534
window._satellite.track('page');
3635
}
3736

38-
if (name.indexOf('duplicateAfter') !== -1) action='duplicate';
39-
if (name.indexOf('removeAfter') !== -1) action='remove';
40-
if (name.indexOf('createAfter') !== -1) action='create';
41-
42-
if (name.indexOf('updateAfter') !== -1 &&
43-
!_underscore.isUndefined(args) &&
44-
!_underscore.isUndefined(args.dataStore) &&
45-
!_underscore.isUndefined(args.dataStore.previousState) &&
46-
!_underscore.isUndefined(args.dataStore.state)
47-
) {
48-
console.log('hiding/showing');
49-
if (args.dataStore.previousState.display === true &&
50-
args.dataStore.state.display === false) action = 'hide';
51-
if (args.dataStore.previousState.display === false &&
52-
args.dataStore.state.display === true) action = 'show';
53-
}
37+
console.log("antes", name);
38+
action = getAction(name, args);
5439

5540
if (!_underscore.isUndefined(args) && !_underscore.isUndefined(args.contentType) &&
5641
!_underscore.isUndefined(args.contentType.config && action !== '')
5742
) {
43+
console.log('justo antes de event');
5844
event = {
5945
element: args.contentType.config.label,
6046
type: args.contentType.config.name,
@@ -66,7 +52,7 @@ define(['underscore'], function (_underscore) {
6652
feature: 'page-builder-tracker'
6753
};
6854

69-
console.log('EVENT:', event);
55+
console.log('dentro', event);
7056

7157
if (isAdminAnalyticsEnabled && !_underscore.isUndefined(window.digitalData.event)) {
7258
window.digitalData.event.push(event);
@@ -75,6 +61,45 @@ define(['underscore'], function (_underscore) {
7561
}
7662
};
7763

64+
getAction = function (name, args) {
65+
var triggeredAction = '',
66+
arrayName,
67+
arrayNameObject,
68+
state,
69+
previousState;
70+
71+
if (name.indexOf('duplicateAfter') !== -1) triggeredAction = 'duplicate';
72+
73+
if (name.indexOf('removeAfter') !== -1) triggeredAction = 'remove';
74+
75+
if (name.indexOf('createAfter') !== -1) triggeredAction = 'create';
76+
77+
if (name.indexOf('renderAfter') !== -1) triggeredAction = 'edit';
78+
79+
if (name.indexOf('updateAfter') !== -1) {
80+
arrayName = name.split(':');
81+
82+
if (arrayName.length === 3) {
83+
arrayNameObject = arrayName[1];
84+
85+
if (!_underscore.isUndefined(args[arrayNameObject]) &&
86+
!_underscore.isUndefined(args[arrayNameObject]).dataStore
87+
) {
88+
previousState = !_underscore.isUndefined(args[arrayNameObject].dataStore.previousState) ?
89+
args[arrayNameObject].dataStore.previousState.display : '';
90+
state = !_underscore.isUndefined(args[arrayNameObject].dataStore.state) ?
91+
args[arrayNameObject].dataStore.state.display : '';
92+
93+
if (previousState === true && state === false) triggeredAction = 'hide';
94+
else if (previousState === false && state === true) triggeredAction = 'show';
95+
else triggeredAction = '';
96+
}
97+
}
98+
}
99+
100+
return triggeredAction;
101+
};
102+
78103
return target;
79104
};
80105
});

0 commit comments

Comments
 (0)