mirror of
https://github.com/flarum/framework.git
synced 2025-06-07 09:04:33 +08:00
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:
@ -24,17 +24,11 @@ class ExtensionsServiceProvider extends ServiceProvider
|
|||||||
$config = $this->app->make('Flarum\Core\Settings\SettingsRepository')->get('extensions_enabled');
|
$config = $this->app->make('Flarum\Core\Settings\SettingsRepository')->get('extensions_enabled');
|
||||||
$extensions = json_decode($config, true);
|
$extensions = json_decode($config, true);
|
||||||
|
|
||||||
$events = $this->app->make('events');
|
|
||||||
|
|
||||||
foreach ($extensions as $extension) {
|
foreach ($extensions as $extension) {
|
||||||
if (file_exists($file = public_path().'/extensions/'.$extension.'/bootstrap.php')) {
|
if (file_exists($file = public_path().'/extensions/'.$extension.'/bootstrap.php')) {
|
||||||
$provider = require $file;
|
$bootstrapper = require $file;
|
||||||
|
|
||||||
if (is_string($provider)) {
|
$bootstrapper($this->app);
|
||||||
$this->app->register($provider)->listen($events);
|
|
||||||
} elseif (is_callable($provider)) {
|
|
||||||
$provider($events);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user