diff --git a/extensions/tags/bootstrap.php b/extensions/tags/bootstrap.php index f5111f809..0b4e61272 100644 --- a/extensions/tags/bootstrap.php +++ b/extensions/tags/bootstrap.php @@ -10,7 +10,9 @@ */ use Flarum\Extend; +use Flarum\Forum\Controller\FrontendController; use Flarum\Tags\Access; +use Flarum\Tags\Api\Controller; use Flarum\Tags\Listener; use Illuminate\Contracts\Events\Dispatcher; @@ -23,11 +25,18 @@ return [ ->asset(__DIR__.'/js/admin/dist/extension.js') ->asset(__DIR__.'/less/admin/extension.less') ->bootstrapper('flarum/tags/main'), + (new Extend\Routes('forum')) + ->get('/t/{slug}', 'tag', FrontendController::class) + ->get('/tags', 'tags', FrontendController::class), + (new Extend\Routes('api')) + ->get('/tags', 'tags.index', Controller\ListTagsController::class) + ->post('/tags', 'tags.create', Controller\CreateTagController::class) + ->post('/tags/order', 'tags.order', Controller\OrderTagsController::class) + ->patch('/tags/{id}', 'tags.update', Controller\UpdateTagController::class) + ->delete('/tags/{id}', 'tags.delete', Controller\DeleteTagController::class), function (Dispatcher $events) { - $events->subscribe(Listener\AddClientAssets::class); $events->subscribe(Listener\AddDiscussionTagsRelationship::class); $events->subscribe(Listener\AddForumTagsRelationship::class); - $events->subscribe(Listener\AddTagsApi::class); $events->subscribe(Listener\CreatePostWhenTagsAreChanged::class); $events->subscribe(Listener\FilterDiscussionListByTags::class); $events->subscribe(Listener\FilterPostsQueryByTag::class); diff --git a/extensions/tags/src/Listener/AddClientAssets.php b/extensions/tags/src/Listener/AddClientAssets.php deleted file mode 100755 index 4addd83b3..000000000 --- a/extensions/tags/src/Listener/AddClientAssets.php +++ /dev/null @@ -1,35 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Flarum\Tags\Listener; - -use Flarum\Event\ConfigureForumRoutes; -use Illuminate\Contracts\Events\Dispatcher; - -class AddClientAssets -{ - /** - * @param Dispatcher $events - */ - public function subscribe(Dispatcher $events) - { - $events->listen(ConfigureForumRoutes::class, [$this, 'addRoutes']); - } - - /** - * @param ConfigureForumRoutes $routes - */ - public function addRoutes(ConfigureForumRoutes $routes) - { - $routes->get('/t/{slug}', 'tag'); - $routes->get('/tags', 'tags'); - } -} diff --git a/extensions/tags/src/Listener/AddTagsApi.php b/extensions/tags/src/Listener/AddTagsApi.php deleted file mode 100755 index 6190202e6..000000000 --- a/extensions/tags/src/Listener/AddTagsApi.php +++ /dev/null @@ -1,33 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Flarum\Tags\Listener; - -use Flarum\Event\ConfigureApiRoutes; -use Flarum\Tags\Api\Controller; -use Illuminate\Contracts\Events\Dispatcher; - -class AddTagsApi -{ - public function subscribe(Dispatcher $events) - { - $events->listen(ConfigureApiRoutes::class, [$this, 'configureApiRoutes']); - } - - public function configureApiRoutes(ConfigureApiRoutes $event) - { - $event->get('/tags', 'tags.index', Controller\ListTagsController::class); - $event->post('/tags', 'tags.create', Controller\CreateTagController::class); - $event->post('/tags/order', 'tags.order', Controller\OrderTagsController::class); - $event->patch('/tags/{id}', 'tags.update', Controller\UpdateTagController::class); - $event->delete('/tags/{id}', 'tags.delete', Controller\DeleteTagController::class); - } -}