From ca823244cc832327147ab95d2c9bfbc9929e9962 Mon Sep 17 00:00:00 2001 From: Hypolite Petovan Date: Sat, 21 Nov 2020 23:19:03 -0500 Subject: [PATCH] Don't assume addons must have an *_install function - Module-only addons don't have any --- src/Core/Addon.php | 36 ++++++++++++++---------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/src/Core/Addon.php b/src/Core/Addon.php index 8b95af328c..511364b8ac 100644 --- a/src/Core/Addon.php +++ b/src/Core/Addon.php @@ -163,29 +163,21 @@ class Addon if (function_exists($addon . '_install')) { $func = $addon . '_install'; $func(DI::app()); - - $addon_admin = (function_exists($addon . "_addon_admin") ? 1 : 0); - - DBA::insert('addon', ['name' => $addon, 'installed' => true, - 'timestamp' => $t, 'plugin_admin' => $addon_admin]); - - // we can add the following with the previous SQL - // once most site tables have been updated. - // This way the system won't fall over dead during the update. - - if (file_exists('addon/' . $addon . '/.hidden')) { - DBA::update('addon', ['hidden' => true], ['name' => $addon]); - } - - if (!self::isEnabled($addon)) { - self::$addons[] = $addon; - } - - return true; - } else { - Logger::error("Addon {addon}: {action} failed", ['action' => 'install', 'addon' => $addon]); - return false; } + + DBA::insert('addon', [ + 'name' => $addon, + 'installed' => true, + 'timestamp' => $t, + 'plugin_admin' => function_exists($addon . '_addon_admin'), + 'hidden' => file_exists('addon/' . $addon . '/.hidden') + ]); + + if (!self::isEnabled($addon)) { + self::$addons[] = $addon; + } + + return true; } /**