From 8dce91577ac9d6757bbf0f9b8456566d3ee5d88d Mon Sep 17 00:00:00 2001 From: mikepsinn Date: Sat, 3 Jul 2021 15:24:51 -0500 Subject: [PATCH 1/2] validateVariables --- src/js/qmHelpers.js | 10 ++++++---- src/js/services/qmService.js | 24 ++++++++++++++---------- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/src/js/qmHelpers.js b/src/js/qmHelpers.js index f0817d8fe1..72bff275de 100644 --- a/src/js/qmHelpers.js +++ b/src/js/qmHelpers.js @@ -11930,11 +11930,11 @@ var qm = { qmLog.error("no variables provided to putManualTrackingFirst"); return; } - var manualTracking = variables.filter(function(variableToCheck){ - return variableToCheck.manualTracking === true; + var manualTracking = variables.filter(function(v){ + return v.manualTracking === true; }); - var nonManual = variables.filter(function(variableToCheck){ - return variableToCheck.manualTracking !== true; + var nonManual = variables.filter(function(v){ + return v.manualTracking !== true; }); return manualTracking.concat(nonManual); }, @@ -11977,6 +11977,7 @@ var qm = { var q = params.name || params.searchPhrase || null; if(q){variables = qm.variablesHelper.putExactMatchFirst(variables, q);} } + qm.variablesHelper.validateVariables(variables) return variables; }, getUserAndCommonVariablesFromLocalStorage: function(params){ @@ -12067,6 +12068,7 @@ var qm = { } } if(userVariables.length){ + qm.variablesHelper.validateVariables(userVariables) qm.localForage.saveWithUniqueId(qm.items.userVariables, userVariables); } if(commonVariables.length){ diff --git a/src/js/services/qmService.js b/src/js/services/qmService.js index 7754ad90e9..adebf1946f 100644 --- a/src/js/services/qmService.js +++ b/src/js/services/qmService.js @@ -408,15 +408,15 @@ angular.module('starter').factory('qmService', ["$http", "$q", "$rootScope", "$i qmService.showMaterialAlert("Barcode scan failed!", "Couldn't identify your barcode, but I'll look into it. Please try a manual search in the meantime. "); }, scannerConfig); }, - addUpcToVariableObject: function(variableObject){ - if(!variableObject){ + addUpcToVariableObject: function(v){ + if(!v){ return; } if(qmService.barcodeScanner.upcToAttach){ - variableObject.upc = qmService.barcodeScanner.upcToAttach; + v.upc = qmService.barcodeScanner.upcToAttach; qmService.barcodeScanner.upcToAttach = null; } - return variableObject; + return v; }, quaggaScan: function(){ navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || @@ -2267,6 +2267,7 @@ angular.module('starter').factory('qmService', ["$http", "$q", "$rootScope", "$i self.finish = function(){ self.items = null; $scope.variable = qmService.barcodeScanner.addUpcToVariableObject($scope.variable); + qm.variablesHelper.validateVariables($scope.variable); $mdDialog.hide($scope.variable); }; self.scanBarcode = function(deferred){ @@ -2440,6 +2441,7 @@ angular.module('starter').factory('qmService', ["$http", "$q", "$rootScope", "$i item.variable.barcode = item.variable.upc = self.barcode; item.variable.barcodeFormat = self.barcodeFormat; } + qm.variablesHelper.validateVariables(item.variable) $scope.variable = item.variable; item.variable.lastSelectedAt = qm.timeHelper.getUnixTimestampInSeconds(); qm.variablesHelper.setLastSelectedAtAndSave(item.variable); @@ -2973,11 +2975,9 @@ angular.module('starter').factory('qmService', ["$http", "$q", "$rootScope", "$i var hasMeasurementsOrIsAdmin = hasMeasurements || (u && u.administrator); if(hasMeasurementsOrIsAdmin){buttons.push(allButtons.variableSettings);} if(v){buttons.push(allButtons.compare);} - if(v && v.outcome){ - buttons.push(allButtons.predictors); - }else{ - buttons.push(allButtons.outcomes); - } + qm.variablesHelper.validateVariables(v); + if(v && v.outcome){buttons.push(allButtons.predictors);} + if(v && v.predictor){buttons.push(allButtons.outcomes);} var actions = v.actionArray; if(actions){ for(var i = 0; i < actions.length; i++){ @@ -2987,7 +2987,11 @@ angular.module('starter').factory('qmService', ["$http", "$q", "$rootScope", "$i var ionIcon = item.ionIcon || ionIcons.recordMeasurement; qmLog.debug("Action array item: ", item); if(item.action === "track"){ - buttons.push({action: item, id: id, text: '' + text + ''}); + buttons.push({ + action: item, + id: id, + text: '' + text + '' + }); } if(buttons.length > 8){break;} } From 0c04503143dc7a27041bece8b4f7a84f192b8ee4 Mon Sep 17 00:00:00 2001 From: mikepsinn Date: Sun, 4 Jul 2021 21:24:12 -0500 Subject: [PATCH 2/2] if(v && v.variableId === 1398 && !v.outcome) --- src/js/qmHelpers.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/js/qmHelpers.js b/src/js/qmHelpers.js index 9db7fb0fab..9b67999718 100644 --- a/src/js/qmHelpers.js +++ b/src/js/qmHelpers.js @@ -12116,7 +12116,7 @@ var qm = { validateVariables: function(variables){ if(!Array.isArray(variables)){variables = [variables];} variables.map(function (v){ - if(v && v.variableId === 1398){ + if(v && v.variableId === 1398 && !v.outcome){ qmLog.errorAndExceptionTestingOrDevelopment("why isn't mood an outcome: "+v.outcome, v) } });