From 7e59d8ee54a02bfe05d494960f995fa1c41a4ad0 Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Wed, 12 Aug 2020 14:50:37 -0400 Subject: [PATCH] Cleanup CRM_Utils_Check version safeguard with APIv4 --- CRM/Utils/Check/Component.php | 12 +++--------- CRM/Utils/Check/Message.php | 25 +++++++++---------------- 2 files changed, 12 insertions(+), 25 deletions(-) diff --git a/CRM/Utils/Check/Component.php b/CRM/Utils/Check/Component.php index 37a7171cab..2f57004ade 100644 --- a/CRM/Utils/Check/Component.php +++ b/CRM/Utils/Check/Component.php @@ -28,15 +28,9 @@ abstract class CRM_Utils_Check_Component { */ public function getChecksConfig() { if (!isset(Civi::$statics[__FUNCTION__])) { - // TODO: Remove this check when MINIMUM_UPGRADABLE_VERSION goes to 4.7. - if (CRM_Utils_System::version() !== CRM_Core_BAO_Domain::version() && !CRM_Core_DAO::checkTableExists('civicrm_status_pref')) { - Civi::$statics[__FUNCTION__] = []; - } - else { - Civi::$statics[__FUNCTION__] = (array) StatusPreference::get(FALSE) - ->addWhere('domain_id', '=', 'current_domain') - ->execute()->indexBy('name'); - } + Civi::$statics[__FUNCTION__] = (array) StatusPreference::get(FALSE) + ->addWhere('domain_id', '=', 'current_domain') + ->execute()->indexBy('name'); } return Civi::$statics[__FUNCTION__]; } diff --git a/CRM/Utils/Check/Message.php b/CRM/Utils/Check/Message.php index 94f51db49d..e0a7d51d7b 100644 --- a/CRM/Utils/Check/Message.php +++ b/CRM/Utils/Check/Message.php @@ -246,32 +246,25 @@ class CRM_Utils_Check_Message { * @throws \CiviCRM_API3_Exception */ private function checkStatusPreference() { - // TODO: Remove this check when MINIMUM_UPGRADABLE_VERSION goes to 4.7. - if (CRM_Utils_System::version() !== CRM_Core_BAO_Domain::version() && !CRM_Core_DAO::checkTableExists('civicrm_status_pref')) { - return FALSE; - } - $this->hiddenUntil = FALSE; // Debug & info can't be hidden if ($this->level < 2) { return FALSE; } - $statusPreferenceParams = [ - 'name' => $this->getName(), - 'domain_id' => CRM_Core_Config::domainID(), - 'sequential' => 1, + $where = [ + ['name', '=', $this->getName()], + ['domain_id', '=', CRM_Core_Config::domainID()], ]; // Check if there's a StatusPreference matching this name/domain. - $statusPreference = civicrm_api3('StatusPreference', 'get', $statusPreferenceParams); - $prefs = CRM_Utils_Array::value('values', $statusPreference, []); - if ($prefs) { + $pref = civicrm_api4('StatusPreference', 'get', ['checkPermissions' => FALSE, 'where' => $where])->first(); + if ($pref) { // If so, compare severity to StatusPreference->severity. - if ($this->level <= $prefs[0]['ignore_severity']) { - if (isset($prefs[0]['hush_until'])) { + if ($this->level <= $pref['ignore_severity']) { + if (isset($pref['hush_until'])) { // Time-based hush. - $this->hiddenUntil = $prefs[0]['hush_until']; + $this->hiddenUntil = $pref['hush_until']; $today = new DateTime(); - $snoozeDate = new DateTime($prefs[0]['hush_until']); + $snoozeDate = new DateTime($pref['hush_until']); return !($today > $snoozeDate); } else { -- 2.25.1