Skip to content

Commit 31fb824

Browse files
committed
Fix null checks
1 parent 8de5e46 commit 31fb824

File tree

1 file changed

+39
-37
lines changed

1 file changed

+39
-37
lines changed

api/utils/requestProcessor.js

Lines changed: 39 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1011,44 +1011,46 @@ const processRequest = (params) => {
10111011
catch (SyntaxError) {
10121012
update_array.overview = []; console.log('Parse ' + params.qstring.event_overview + ' JSON failed', params.req.url, params.req.body);
10131013
}
1014-
if (update_array.overview && Array.isArray(update_array.overview) && update_array.overview.length > 12) {
1015-
common.returnMessage(params, 400, "You can't add more than 12 items in overview");
1016-
return;
1017-
}
1018-
//sanitize overview
1019-
var allowedEventKeys = event.list;
1020-
var allowedProperties = ['dur', 'sum', 'count'];
1021-
var propertyNames = {
1022-
'dur': 'Dur',
1023-
'sum': 'Sum',
1024-
'count': 'Count'
1025-
};
1026-
for (let i = 0; i < update_array.overview.length; i++) {
1027-
update_array.overview[i].order = i;
1028-
update_array.overview[i].eventKey = update_array.overview[i].eventKey || "";
1029-
update_array.overview[i].eventProperty = update_array.overview[i].eventProperty || "";
1030-
if (allowedEventKeys.indexOf(update_array.overview[i].eventKey) === -1 || allowedProperties.indexOf(update_array.overview[i].eventProperty) === -1) {
1031-
update_array.overview.splice(i, 1);
1032-
i = i - 1;
1033-
}
1034-
else {
1035-
update_array.overview[i].is_event_group = (typeof update_array.overview[i].is_event_group === 'boolean' && update_array.overview[i].is_event_group) || false;
1036-
update_array.overview[i].eventName = update_array.overview[i].eventName || update_array.overview[i].eventKey;
1037-
update_array.overview[i].propertyName = propertyNames[update_array.overview[i].eventProperty];
1038-
}
1039-
}
1040-
//check for duplicates
1041-
var overview_map = Object.create(null);
1042-
for (let p = 0; p < update_array.overview.length; p++) {
1043-
if (!overview_map[update_array.overview[p].eventKey]) {
1044-
overview_map[update_array.overview[p].eventKey] = {};
1014+
if (update_array.overview && Array.isArray(update_array.overview)) {
1015+
if (update_array.overview.length > 12) {
1016+
common.returnMessage(params, 400, "You can't add more than 12 items in overview");
1017+
return;
10451018
}
1046-
if (!overview_map[update_array.overview[p].eventKey][update_array.overview[p].eventProperty]) {
1047-
overview_map[update_array.overview[p].eventKey][update_array.overview[p].eventProperty] = 1;
1019+
//sanitize overview
1020+
var allowedEventKeys = event.list;
1021+
var allowedProperties = ['dur', 'sum', 'count'];
1022+
var propertyNames = {
1023+
'dur': 'Dur',
1024+
'sum': 'Sum',
1025+
'count': 'Count'
1026+
};
1027+
for (let i = 0; i < update_array.overview.length; i++) {
1028+
update_array.overview[i].order = i;
1029+
update_array.overview[i].eventKey = update_array.overview[i].eventKey || "";
1030+
update_array.overview[i].eventProperty = update_array.overview[i].eventProperty || "";
1031+
if (allowedEventKeys.indexOf(update_array.overview[i].eventKey) === -1 || allowedProperties.indexOf(update_array.overview[i].eventProperty) === -1) {
1032+
update_array.overview.splice(i, 1);
1033+
i = i - 1;
1034+
}
1035+
else {
1036+
update_array.overview[i].is_event_group = (typeof update_array.overview[i].is_event_group === 'boolean' && update_array.overview[i].is_event_group) || false;
1037+
update_array.overview[i].eventName = update_array.overview[i].eventName || update_array.overview[i].eventKey;
1038+
update_array.overview[i].propertyName = propertyNames[update_array.overview[i].eventProperty];
1039+
}
10481040
}
1049-
else {
1050-
update_array.overview.splice(p, 1);
1051-
p = p - 1;
1041+
//check for duplicates
1042+
var overview_map = Object.create(null);
1043+
for (let p = 0; p < update_array.overview.length; p++) {
1044+
if (!overview_map[update_array.overview[p].eventKey]) {
1045+
overview_map[update_array.overview[p].eventKey] = {};
1046+
}
1047+
if (!overview_map[update_array.overview[p].eventKey][update_array.overview[p].eventProperty]) {
1048+
overview_map[update_array.overview[p].eventKey][update_array.overview[p].eventProperty] = 1;
1049+
}
1050+
else {
1051+
update_array.overview.splice(p, 1);
1052+
p = p - 1;
1053+
}
10521054
}
10531055
}
10541056
}
@@ -3657,7 +3659,7 @@ const restartRequest = (params, initiator, done, try_times, fail) => {
36573659
*/
36583660
function processUser(params, initiator, done, try_times) {
36593661
return new Promise((resolve) => {
3660-
if (!params.app_user.uid) {
3662+
if (params && params.app_user && !params.app_user.uid) {
36613663
//first time we see this user, we need to id him with uid
36623664
countlyApi.mgmt.appUsers.getUid(params.app_id, function(err, uid) {
36633665
plugins.dispatch("/i/app_users/create", {

0 commit comments

Comments
 (0)