mirror of
https://github.com/flarum/core.git
synced 2025-07-21 08:41:17 +02:00
Properly use ServiceProvider extender
This commit is contained in:
@@ -11,9 +11,8 @@ use Flarum\Extend;
|
|||||||
use Flarum\Post\Event\Posted;
|
use Flarum\Post\Event\Posted;
|
||||||
use Flarum\Pusher\Api\Controller\AuthController;
|
use Flarum\Pusher\Api\Controller\AuthController;
|
||||||
use Flarum\Pusher\Listener;
|
use Flarum\Pusher\Listener;
|
||||||
|
use Flarum\Pusher\Provider\PusherProvider;
|
||||||
use Flarum\Pusher\PusherNotificationDriver;
|
use Flarum\Pusher\PusherNotificationDriver;
|
||||||
use Flarum\Settings\SettingsRepositoryInterface;
|
|
||||||
use Illuminate\Contracts\Container\Container;
|
|
||||||
|
|
||||||
return [
|
return [
|
||||||
(new Extend\Frontend('forum'))
|
(new Extend\Frontend('forum'))
|
||||||
@@ -38,22 +37,6 @@ return [
|
|||||||
(new Extend\Event())
|
(new Extend\Event())
|
||||||
->listen(Posted::class, Listener\PushNewPost::class),
|
->listen(Posted::class, Listener\PushNewPost::class),
|
||||||
|
|
||||||
function (Container $container) {
|
(new Extend\ServiceProvider())
|
||||||
$container->bind(Pusher::class, function ($app) {
|
->register(PusherProvider::class),
|
||||||
$settings = $app->make(SettingsRepositoryInterface::class);
|
|
||||||
|
|
||||||
$options = [];
|
|
||||||
|
|
||||||
if ($cluster = $settings->get('flarum-pusher.app_cluster')) {
|
|
||||||
$options['cluster'] = $cluster;
|
|
||||||
}
|
|
||||||
|
|
||||||
return new Pusher(
|
|
||||||
$settings->get('flarum-pusher.app_key'),
|
|
||||||
$settings->get('flarum-pusher.app_secret'),
|
|
||||||
$settings->get('flarum-pusher.app_id'),
|
|
||||||
$options
|
|
||||||
);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
];
|
];
|
||||||
|
29
extensions/pusher/src/Provider/PusherProvider.php
Normal file
29
extensions/pusher/src/Provider/PusherProvider.php
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Flarum\Pusher\Provider;
|
||||||
|
|
||||||
|
use Flarum\Foundation\AbstractServiceProvider;
|
||||||
|
use Flarum\Settings\SettingsRepositoryInterface;
|
||||||
|
|
||||||
|
class PusherProvider extends AbstractServiceProvider
|
||||||
|
{
|
||||||
|
public function register()
|
||||||
|
{
|
||||||
|
$this->app->bind(\Pusher::class, function () {
|
||||||
|
$settings = $this->app->make(SettingsRepositoryInterface::class);
|
||||||
|
|
||||||
|
$options = [];
|
||||||
|
|
||||||
|
if ($cluster = $settings->get('flarum-pusher.app_cluster')) {
|
||||||
|
$options['cluster'] = $cluster;
|
||||||
|
}
|
||||||
|
|
||||||
|
return new \Pusher(
|
||||||
|
$settings->get('flarum-pusher.app_key'),
|
||||||
|
$settings->get('flarum-pusher.app_secret'),
|
||||||
|
$settings->get('flarum-pusher.app_id'),
|
||||||
|
$options
|
||||||
|
);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user