<?php namespace Modules; use Venom\Core\Config; use Venom\Core\Module; use Venom\Helper\AdminHelper; use Venom\Routing\Route; use Venom\Routing\Router; use Venom\Venom; class RoleModule implements Module, Route { public function register(Venom $venom): bool { if (Config::getInstance()->isAdmin()) { $this->registerAdminRoutes($venom); } return true; } public function init(): void { } private function registerAdminRoutes(Venom $venom) { $venom->getRouter(Router::ADMIN_ROUTER)->addRoutes([ '/roles' => [ 'cl' => RoleModule::class, 'roles' => ['ROLE_ADMIN'], 'routes' => [ '*' => [ "GET" => 'get', ], '1' => [ "GET" => 'getById', "POST" => 'update', "PUT" => 'insert', ] ] ] ]); } public function get() { AdminHelper::getResponse([ 'roles' => [ ['id' => 1, 'name' => 'Admin', 'icon' => 'vt-visibility'], ['id' => 2, 'name' => 'Moderator', 'icon' => 'vt-edit'], ['id' => 3, 'name' => 'Gast', 'icon' => 'vt-edit'], ] ]); } public function update(): bool { return false; } public function insert(): bool { return false; } public function getById($id) { AdminHelper::getResponse([ 'caseName' => 'ROLE_ADMIN', 'id' => $id, 'name' => 'Admin', 'icon' => 'vt-visibility' ]); } }