From e3ef9391ce0cf948d00d21d16aff50bc833495ca Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Tue, 3 Oct 2023 11:28:58 +0300 Subject: [PATCH] fix link field --- client/src/views/fields/link-multiple.js | 17 ++++++++++++++--- client/src/views/fields/link.js | 19 +++++++++++++++---- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/client/src/views/fields/link-multiple.js b/client/src/views/fields/link-multiple.js index 80a7a968d4..407f51455e 100644 --- a/client/src/views/fields/link-multiple.js +++ b/client/src/views/fields/link-multiple.js @@ -981,8 +981,21 @@ class LinkMultipleFieldView extends BaseFieldView { _getSelectFilters() { const handler = this.panelDefs.selectHandler; + const localBoolFilterList = this.getSelectBoolFilterList(); + if (!handler || this.isSearchMode()) { - return Promise.resolve({}); + const boolFilterList = (localBoolFilterList || this.panelDefs.selectBoolFilterList) ? + [ + ...(localBoolFilterList || []), + ...(this.panelDefs.selectBoolFilterList || []), + ] : + undefined; + + return Promise.resolve({ + primary: this.getSelectPrimaryFilterName() || this.panelDefs.selectPrimaryFilterName, + bool: boolFilterList, + advanced: this.getSelectFilters() || undefined, + }); } return new Promise(resolve => { @@ -996,8 +1009,6 @@ class LinkMultipleFieldView extends BaseFieldView { const primaryFilter = this.getSelectPrimaryFilterName() || filters.primary || this.panelDefs.selectPrimaryFilterName; - const localBoolFilterList = this.getSelectBoolFilterList(); - const boolFilterList = (localBoolFilterList || filters.bool || this.panelDefs.selectBoolFilterList) ? [ ...(localBoolFilterList || []), diff --git a/client/src/views/fields/link.js b/client/src/views/fields/link.js index e62074594a..89edc4d1bc 100644 --- a/client/src/views/fields/link.js +++ b/client/src/views/fields/link.js @@ -99,7 +99,7 @@ class LinkFieldView extends BaseFieldView { * @protected * @type {boolean} */ - createButton = true + createButton = false /** * Force create button even is disabled in clientDefs > relationshipPanels. @@ -1084,8 +1084,21 @@ class LinkFieldView extends BaseFieldView { _getSelectFilters() { const handler = this.panelDefs.selectHandler; + const localBoolFilterList = this.getSelectBoolFilterList(); + if (!handler || this.isSearchMode()) { - return Promise.resolve({}); + const boolFilterList = (localBoolFilterList || this.panelDefs.selectBoolFilterList) ? + [ + ...(localBoolFilterList || []), + ...(this.panelDefs.selectBoolFilterList || []), + ] : + undefined; + + return Promise.resolve({ + primary: this.getSelectPrimaryFilterName() || this.panelDefs.selectPrimaryFilterName, + bool: boolFilterList, + advanced: this.getSelectFilters() || undefined, + }); } return new Promise(resolve => { @@ -1099,8 +1112,6 @@ class LinkFieldView extends BaseFieldView { const primaryFilter = this.getSelectPrimaryFilterName() || filters.primary || this.panelDefs.selectPrimaryFilterName; - const localBoolFilterList = this.getSelectBoolFilterList(); - const boolFilterList = (localBoolFilterList || filters.bool || this.panelDefs.selectBoolFilterList) ? [ ...(localBoolFilterList || []),