From a62020a3c2b6df6a3593e26b6f53c23f236fa4a6 Mon Sep 17 00:00:00 2001 From: Franz Liedke Date: Thu, 16 Jul 2015 00:35:41 +0200 Subject: [PATCH] Move extension loading to boot method This will likely have to be reverted, to make things like $this->app->extend() work reasonably well in extensions' service providers. For now, since we fetch the enabled extensions from the config, there is no other way for us to guarantee that the config is already available. --- .../Support/Extensions/ExtensionsServiceProvider.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/framework/core/src/Support/Extensions/ExtensionsServiceProvider.php b/framework/core/src/Support/Extensions/ExtensionsServiceProvider.php index f986dc062..606b9908e 100644 --- a/framework/core/src/Support/Extensions/ExtensionsServiceProvider.php +++ b/framework/core/src/Support/Extensions/ExtensionsServiceProvider.php @@ -11,13 +11,23 @@ class ExtensionsServiceProvider extends ServiceProvider * @return void */ public function register() + { + } + + /** + * Boot the service provider. + * + * @return void + */ + public function boot() { // Extensions will not be registered if Flarum is not installed yet if (!Core::isInstalled()) { return; } - $extensions = json_decode(Core::config('extensions_enabled'), true); + $config = $this->app->make('Flarum\Core\Settings\SettingsRepository')->get('extensions_enabled'); + $extensions = json_decode($config, true); $providers = []; foreach ($extensions as $extension) {