From: Coleman Watts Date: Mon, 16 Aug 2021 19:41:50 +0000 (-0400) Subject: SearchKit - Fix JS undefined variable error when clearing field in update dialog X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=f27b9421b2599c876d8cb62e5a348d01b5629040;p=civicrm-core.git SearchKit - Fix JS undefined variable error when clearing field in update dialog --- diff --git a/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInput.component.js b/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInput.component.js index c98d4705e5..b3bce0409d 100644 --- a/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInput.component.js +++ b/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInput.component.js @@ -21,7 +21,7 @@ } // If no search operator this is an input for e.g. the bulk update action // Return `true` if the field is multi-valued, else `null` - return ctrl.field.serialize || ctrl.field.data_type === 'Array' ? true : null; + return ctrl.field && (ctrl.field.serialize || ctrl.field.data_type === 'Array') ? true : null; }; this.$onInit = function() { diff --git a/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInputVal.component.js b/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInputVal.component.js index cd6dfe78cd..1e19729a71 100644 --- a/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInputVal.component.js +++ b/ext/search_kit/ang/crmSearchTasks/crmSearchInput/crmSearchInputVal.component.js @@ -85,28 +85,29 @@ }; this.getTemplate = function() { + var field = ctrl.field || {}; - if (ctrl.field.input_type === 'Date') { + if (field.input_type === 'Date') { return '~/crmSearchTasks/crmSearchInput/date.html'; } - if (ctrl.field.data_type === 'Boolean') { + if (field.data_type === 'Boolean') { return '~/crmSearchTasks/crmSearchInput/boolean.html'; } - if (ctrl.field.options) { + if (field.options) { return '~/crmSearchTasks/crmSearchInput/select.html'; } - if (ctrl.field.fk_entity || ctrl.field.name === 'id') { + if (field.fk_entity || field.name === 'id') { return '~/crmSearchTasks/crmSearchInput/entityRef.html'; } - if (ctrl.field.data_type === 'Integer') { + if (field.data_type === 'Integer') { return '~/crmSearchTasks/crmSearchInput/integer.html'; } - if (ctrl.field.data_type === 'Float') { + if (field.data_type === 'Float') { return '~/crmSearchTasks/crmSearchInput/float.html'; } @@ -114,7 +115,8 @@ }; this.getFieldOptions = function() { - return {results: formatForSelect2(ctrl.field.options, ctrl.optionKey || 'id', 'label', ['description', 'color', 'icon'])}; + var field = ctrl.field || {}; + return {results: formatForSelect2(field.options || [], ctrl.optionKey || 'id', 'label', ['description', 'color', 'icon'])}; }; }