From ac7858bc917a5e9fbd6b4d471b42cf2f2404dfc3 Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Fri, 14 Jan 2022 10:17:43 -0500 Subject: [PATCH] [REF] CoreResources - Simplify disabled component check Now that component DAOs have a COMPONENT defined, checks like this are much easier. --- CRM/Core/Resources.php | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/CRM/Core/Resources.php b/CRM/Core/Resources.php index 0e4485c6ad..6d83c2aa97 100644 --- a/CRM/Core/Resources.php +++ b/CRM/Core/Resources.php @@ -501,22 +501,12 @@ class CRM_Core_Resources implements CRM_Core_Resources_CollectionAdderInterface 'filters' => [], 'links' => [], ]; - $config = CRM_Core_Config::singleton(); - - $disabledComponents = []; - $dao = CRM_Core_DAO::executeQuery("SELECT name, namespace FROM civicrm_component"); - while ($dao->fetch()) { - if (!in_array($dao->name, $config->enableComponents)) { - $disabledComponents[$dao->name] = $dao->namespace; - } - } + $enabledComponents = Civi::settings()->get('enable_components'); foreach (CRM_Core_DAO_AllCoreTables::daoToClass() as $entity => $daoName) { // Skip DAOs of disabled components - foreach ($disabledComponents as $nameSpace) { - if (strpos($daoName, $nameSpace) === 0) { - continue 2; - } + if (defined("$daoName::COMPONENT") && !in_array($daoName::COMPONENT, $enabledComponents, TRUE)) { + continue; } $baoName = str_replace('_DAO_', '_BAO_', $daoName); if (class_exists($baoName)) { -- 2.25.1