From 9d2be97c326b587ff223809719f6f937a6e57ef3 Mon Sep 17 00:00:00 2001 From: Nabil Adouani Date: Wed, 28 Oct 2020 12:26:09 +0100 Subject: [PATCH] #309 Fix the analyzer/responder/config modals to correctly evaluate false default values --- .../analyzers/analyzer.edit.controller.js | 11 +++++++---- .../analyzers/config-list.controller.js | 15 ++++++--------- .../responders/responder.edit.controller.js | 11 +++++++---- 3 files changed, 20 insertions(+), 17 deletions(-) diff --git a/www/src/app/pages/admin/organizations/components/analyzers/analyzer.edit.controller.js b/www/src/app/pages/admin/organizations/components/analyzers/analyzer.edit.controller.js index 3fe66ad97..7a37ef011 100644 --- a/www/src/app/pages/admin/organizations/components/analyzers/analyzer.edit.controller.js +++ b/www/src/app/pages/admin/organizations/components/analyzers/analyzer.edit.controller.js @@ -40,10 +40,13 @@ export default class AnalyzerEditController { const property = item.name, configValue = (this.configuration.config || {})[property]; - analyzer.configuration[property] = - configValue || - item.defaultValue || - (item.multi ? [undefined] : undefined); + if(configValue !== undefined) { + analyzer.configuration[property] = configValue; + } else if (item.defaultValue !== undefined) { + analyzer.configuration[property] = item.defaultValue; + } else { + analyzer.configuration[property] = item.multi ? [undefined] : undefined; + } }); // Handle TLP default config diff --git a/www/src/app/pages/admin/organizations/components/analyzers/config-list.controller.js b/www/src/app/pages/admin/organizations/components/analyzers/config-list.controller.js index 967fbbfa8..474b9c273 100644 --- a/www/src/app/pages/admin/organizations/components/analyzers/config-list.controller.js +++ b/www/src/app/pages/admin/organizations/components/analyzers/config-list.controller.js @@ -30,18 +30,15 @@ export default class OrganizationConfigsController { size: 'lg', resolve: { configuration: () => { - // let defaultValues = { - // string: null, - // number: 0, - // boolean: true - // }; let conf = angular.copy(config); _.forEach(conf.configurationItems, item => { - conf.config[item.name] = - conf.config[item.name] !== undefined ? - conf.config[item.name] : - item.defaultValue || (item.multi ? [undefined] : undefined); + if(conf.config[item.name] === undefined) { + if (item.defaultValue !== undefined) { + conf.config[item.name] = item.defaultValue; + } else { + conf.config[item.name] = item.multi ? [undefined] : undefined; + } }); return conf; diff --git a/www/src/app/pages/admin/organizations/components/responders/responder.edit.controller.js b/www/src/app/pages/admin/organizations/components/responders/responder.edit.controller.js index d0510a64c..151842fd7 100644 --- a/www/src/app/pages/admin/organizations/components/responders/responder.edit.controller.js +++ b/www/src/app/pages/admin/organizations/components/responders/responder.edit.controller.js @@ -39,10 +39,13 @@ export default class ResponderEditController { const property = item.name, configValue = (this.configuration.config || {})[property]; - responder.configuration[property] = - configValue || - item.defaultValue || - (item.multi ? [undefined] : undefined); + if(configValue !== undefined) { + responder.configuration[property] = configValue; + } else if (item.defaultValue !== undefined) { + responder.configuration[property] = item.defaultValue; + } else { + responder.configuration[property] = item.multi ? [undefined] : undefined; + } }); // Handle TLP default config