From 2b2c130df0bee04944f7f5f1731dc4c41efa7bcb Mon Sep 17 00:00:00 2001 From: colemanw Date: Sun, 3 Sep 2023 12:06:35 -0400 Subject: [PATCH] SearchKit - Fix assigning searchDisplay tab count Incorectly fixed with https://github.com/civicrm/civicrm-core/pull/23759, this is the correct fix. Enables assignment of the value (because you can't assign scalar values using one-way binding) but avoids the $compile:nonassign error by making it optional. See https://docs.angularjs.org/api/ng/service/#-scope- --- .../crmSearchAdminSegmentListing.component.js | 2 +- .../crmSearchDisplay/traits/searchDisplayBaseTrait.service.js | 2 +- .../ang/crmSearchDisplayGrid/crmSearchDisplayGrid.component.js | 2 +- .../ang/crmSearchDisplayList/crmSearchDisplayList.component.js | 2 +- .../crmSearchDisplayTable/crmSearchDisplayTable.component.js | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ext/search_kit/ang/crmSearchAdmin/searchSegmentListing/crmSearchAdminSegmentListing.component.js b/ext/search_kit/ang/crmSearchAdmin/searchSegmentListing/crmSearchAdminSegmentListing.component.js index 9cf52d621b..30dd813ae6 100644 --- a/ext/search_kit/ang/crmSearchAdmin/searchSegmentListing/crmSearchAdminSegmentListing.component.js +++ b/ext/search_kit/ang/crmSearchAdmin/searchSegmentListing/crmSearchAdminSegmentListing.component.js @@ -5,7 +5,7 @@ angular.module('crmSearchAdmin').component('crmSearchAdminSegmentListing', { bindings: { filters: '<', - totalCount: '=' + totalCount: '=?' }, templateUrl: '~/crmSearchDisplayTable/crmSearchDisplayTable.html', controller: function($scope, $element, crmApi4, searchMeta, searchDisplayBaseTrait, searchDisplaySortableTrait) { diff --git a/ext/search_kit/ang/crmSearchDisplay/traits/searchDisplayBaseTrait.service.js b/ext/search_kit/ang/crmSearchDisplay/traits/searchDisplayBaseTrait.service.js index 617a8a841a..1afb4aa559 100644 --- a/ext/search_kit/ang/crmSearchDisplay/traits/searchDisplayBaseTrait.service.js +++ b/ext/search_kit/ang/crmSearchDisplay/traits/searchDisplayBaseTrait.service.js @@ -45,7 +45,7 @@ // FIXME: Additional hack to directly update tabHeader for contact summary tab. It would be better to // decouple the contactTab code into a separate directive that checks totalCount. var contactTab = $element.closest('.crm-contact-page .ui-tabs-panel').attr('id'); - if (contactTab || typeof ctrl.totalCount !== 'undefined') { + if (contactTab || ctrl.hasOwnProperty('totalCount')) { $scope.$watch('$ctrl.rowCount', function(rowCount) { // Update totalCount only if no user filters are set if (typeof rowCount === 'number' && angular.equals({}, ctrl.getAfformFilters())) { diff --git a/ext/search_kit/ang/crmSearchDisplayGrid/crmSearchDisplayGrid.component.js b/ext/search_kit/ang/crmSearchDisplayGrid/crmSearchDisplayGrid.component.js index 8ad0c26797..6c01a82d2f 100644 --- a/ext/search_kit/ang/crmSearchDisplayGrid/crmSearchDisplayGrid.component.js +++ b/ext/search_kit/ang/crmSearchDisplayGrid/crmSearchDisplayGrid.component.js @@ -9,7 +9,7 @@ apiParams: '<', settings: '<', filters: '<', - totalCount: '=' + totalCount: '=?' }, require: { afFieldset: '?^^afFieldset' diff --git a/ext/search_kit/ang/crmSearchDisplayList/crmSearchDisplayList.component.js b/ext/search_kit/ang/crmSearchDisplayList/crmSearchDisplayList.component.js index 2fcc90ffaa..e30106e748 100644 --- a/ext/search_kit/ang/crmSearchDisplayList/crmSearchDisplayList.component.js +++ b/ext/search_kit/ang/crmSearchDisplayList/crmSearchDisplayList.component.js @@ -9,7 +9,7 @@ apiParams: '<', settings: '<', filters: '<', - totalCount: '=' + totalCount: '=?' }, require: { afFieldset: '?^^afFieldset' diff --git a/ext/search_kit/ang/crmSearchDisplayTable/crmSearchDisplayTable.component.js b/ext/search_kit/ang/crmSearchDisplayTable/crmSearchDisplayTable.component.js index 7530c34153..89396df133 100644 --- a/ext/search_kit/ang/crmSearchDisplayTable/crmSearchDisplayTable.component.js +++ b/ext/search_kit/ang/crmSearchDisplayTable/crmSearchDisplayTable.component.js @@ -8,7 +8,7 @@ display: '<', settings: '<', filters: '<', - totalCount: '<' + totalCount: '=?' }, require: { afFieldset: '?^^afFieldset' -- 2.25.1