Remove ability for extensions to register a service provider

The concept of returning a bootstrapper function is simpler and the use of service providers had no advantage over it.
This commit is contained in:
Toby Zerner 2015-10-02 17:54:53 +09:30
parent 91aab4cd21
commit f96ef33973

View File

@ -24,17 +24,11 @@ class ExtensionsServiceProvider extends ServiceProvider
$config = $this->app->make('Flarum\Core\Settings\SettingsRepository')->get('extensions_enabled');
$extensions = json_decode($config, true);
$events = $this->app->make('events');
foreach ($extensions as $extension) {
if (file_exists($file = public_path().'/extensions/'.$extension.'/bootstrap.php')) {
$provider = require $file;
$bootstrapper = require $file;
if (is_string($provider)) {
$this->app->register($provider)->listen($events);
} elseif (is_callable($provider)) {
$provider($events);
}
$bootstrapper($this->app);
}
}
}