From a4e950520862b7d830264a8a9f2946e1efeade91 Mon Sep 17 00:00:00 2001 From: colemanw <coleman@civicrm.org> Date: Sun, 17 Sep 2023 15:59:42 -0400 Subject: [PATCH] DAO - addSelectWhereClause should always return an array --- CRM/Activity/BAO/Activity.php | 2 +- CRM/Case/BAO/Case.php | 2 +- CRM/Case/BAO/CaseContact.php | 2 +- CRM/Contact/BAO/Contact.php | 2 +- CRM/Contact/BAO/Group.php | 2 +- CRM/Contact/BAO/Query.php | 2 +- CRM/Contact/BAO/RelationshipCache.php | 2 +- CRM/Core/BAO/CustomValue.php | 2 +- CRM/Core/BAO/File.php | 2 +- CRM/Core/BAO/UFJoin.php | 2 +- CRM/Core/BAO/UFMatch.php | 2 +- CRM/Core/DAO.php | 2 +- ext/oauth-client/CRM/OAuth/BAO/OAuthContactToken.php | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/CRM/Activity/BAO/Activity.php b/CRM/Activity/BAO/Activity.php index 4aaa2e596d2..3d320dafb8f 100644 --- a/CRM/Activity/BAO/Activity.php +++ b/CRM/Activity/BAO/Activity.php @@ -803,7 +803,7 @@ class CRM_Activity_BAO_Activity extends CRM_Activity_DAO_Activity { /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { $clauses = []; $permittedActivityTypeIDs = self::getPermittedActivityTypes(); $allActivityTypes = self::buildOptions('activity_type_id', 'validate'); diff --git a/CRM/Case/BAO/Case.php b/CRM/Case/BAO/Case.php index aaa7fab22b6..68cc1c1a7ff 100644 --- a/CRM/Case/BAO/Case.php +++ b/CRM/Case/BAO/Case.php @@ -3015,7 +3015,7 @@ WHERE id IN (' . implode(',', $copiedActivityIds) . ')'; /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { // We always return an array with these keys, even if they are empty, // because this tells the query builder that we have considered these fields for acls $clauses = [ diff --git a/CRM/Case/BAO/CaseContact.php b/CRM/Case/BAO/CaseContact.php index af7086c7c28..d1fa6ceb254 100644 --- a/CRM/Case/BAO/CaseContact.php +++ b/CRM/Case/BAO/CaseContact.php @@ -73,7 +73,7 @@ class CRM_Case_BAO_CaseContact extends CRM_Case_DAO_CaseContact implements \Civi /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { return [ // Reuse case acls 'case_id' => CRM_Utils_SQL::mergeSubquery('Case'), diff --git a/CRM/Contact/BAO/Contact.php b/CRM/Contact/BAO/Contact.php index f443fef15f5..f5635b1e5ee 100644 --- a/CRM/Contact/BAO/Contact.php +++ b/CRM/Contact/BAO/Contact.php @@ -3411,7 +3411,7 @@ LEFT JOIN civicrm_address ON ( civicrm_address.contact_id = civicrm_contact.id ) /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { // We always return an array with these keys, even if they are empty, // because this tells the query builder that we have considered these fields for acls $clauses = [ diff --git a/CRM/Contact/BAO/Group.php b/CRM/Contact/BAO/Group.php index e39077b4db3..617d09e4ef7 100644 --- a/CRM/Contact/BAO/Group.php +++ b/CRM/Contact/BAO/Group.php @@ -312,7 +312,7 @@ class CRM_Contact_BAO_Group extends CRM_Contact_DAO_Group { /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { $clauses = []; if (!CRM_Core_Permission::check([['edit all contacts', 'view all contacts']])) { $allowedGroups = CRM_Core_Permission::group(NULL, FALSE); diff --git a/CRM/Contact/BAO/Query.php b/CRM/Contact/BAO/Query.php index 8642c163bc6..9f015588926 100644 --- a/CRM/Contact/BAO/Query.php +++ b/CRM/Contact/BAO/Query.php @@ -5080,7 +5080,7 @@ civicrm_relationship.start_date > {$today} if (isset($this->_tables['civicrm_activity'])) { $bao = new CRM_Activity_BAO_Activity(); $clauses = $subclauses = []; - foreach ((array) $bao->addSelectWhereClause() as $field => $vals) { + foreach ($bao->addSelectWhereClause() as $field => $vals) { if ($vals && $field !== 'id') { $clauses[] = $bao->tableName() . ".$field " . $vals; } diff --git a/CRM/Contact/BAO/RelationshipCache.php b/CRM/Contact/BAO/RelationshipCache.php index 54906ee2e91..b7fbaa26909 100644 --- a/CRM/Contact/BAO/RelationshipCache.php +++ b/CRM/Contact/BAO/RelationshipCache.php @@ -158,7 +158,7 @@ class CRM_Contact_BAO_RelationshipCache extends CRM_Contact_DAO_RelationshipCach /** * @return array */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { // Permission for this entity depends on access to the two related contacts. $contactClause = CRM_Utils_SQL::mergeSubquery('Contact'); $clauses = [ diff --git a/CRM/Core/BAO/CustomValue.php b/CRM/Core/BAO/CustomValue.php index 88024d0b86c..9a00a61b684 100644 --- a/CRM/Core/BAO/CustomValue.php +++ b/CRM/Core/BAO/CustomValue.php @@ -214,7 +214,7 @@ class CRM_Core_BAO_CustomValue extends CRM_Core_DAO { * ACL clause for an APIv4 custom pseudo-entity (aka multi-record custom group extending Contact). * @return array */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { $clauses = [ 'entity_id' => CRM_Utils_SQL::mergeSubquery('Contact'), ]; diff --git a/CRM/Core/BAO/File.php b/CRM/Core/BAO/File.php index 98b5abd38ad..6c24a6078da 100644 --- a/CRM/Core/BAO/File.php +++ b/CRM/Core/BAO/File.php @@ -837,7 +837,7 @@ HEREDOC; /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { // TODO: This seemded like a good idea... piggybacking off the ACL clause of EntityFile // however that's too restrictive because entityFile ACLs are limited to just attachments, // so this would prevent access to other file fields (e.g. custom fields) diff --git a/CRM/Core/BAO/UFJoin.php b/CRM/Core/BAO/UFJoin.php index 493594176dc..d89e2cd46b0 100644 --- a/CRM/Core/BAO/UFJoin.php +++ b/CRM/Core/BAO/UFJoin.php @@ -180,7 +180,7 @@ class CRM_Core_BAO_UFJoin extends CRM_Core_DAO_UFJoin { * * @return array */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { $clauses = []; CRM_Utils_Hook::selectWhereClause($this, $clauses); return $clauses; diff --git a/CRM/Core/BAO/UFMatch.php b/CRM/Core/BAO/UFMatch.php index d3ef5951493..4c2317222c9 100644 --- a/CRM/Core/BAO/UFMatch.php +++ b/CRM/Core/BAO/UFMatch.php @@ -618,7 +618,7 @@ AND domain_id = %4 /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { // Prevent default behavior of joining ACLs onto the contact_id field. $clauses = []; CRM_Utils_Hook::selectWhereClause($this, $clauses); diff --git a/CRM/Core/DAO.php b/CRM/Core/DAO.php index b980479fcbd..fd0b562fd60 100644 --- a/CRM/Core/DAO.php +++ b/CRM/Core/DAO.php @@ -3068,7 +3068,7 @@ SELECT contact_id * * @return array */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { $clauses = []; $fields = $this->fields(); // Notes should check permissions on the entity_id field, not the contact_id field diff --git a/ext/oauth-client/CRM/OAuth/BAO/OAuthContactToken.php b/ext/oauth-client/CRM/OAuth/BAO/OAuthContactToken.php index 69228fb6225..6fbe616ac61 100644 --- a/ext/oauth-client/CRM/OAuth/BAO/OAuthContactToken.php +++ b/ext/oauth-client/CRM/OAuth/BAO/OAuthContactToken.php @@ -99,7 +99,7 @@ class CRM_OAuth_BAO_OAuthContactToken extends CRM_OAuth_DAO_OAuthContactToken { /** * @inheritDoc */ - public function addSelectWhereClause() { + public function addSelectWhereClause(): array { $clauses = []; $loggedInContactID = CRM_Core_Session::getLoggedInContactID(); -- GitLab