protected static function declareServices() { /* Registering default services. */ /** * Autoload */ Autoload::register(); /** * Biome default logger service. */ if (!Biome::hasService('logger')) { Biome::registerService('logger', function () { return new \Psr\Log\NullLogger(); }); } /** * Biome default request. */ if (!Biome::hasService('request')) { Biome::registerService('request', function () { return Request::createFromGlobals(); }); } /** * Biome default lang service. */ if (!Biome::hasService('lang')) { Biome::registerService('lang', function () { $languages = Biome::getService('request')->getLanguages(); $lang = new \Biome\Core\Lang\XMLLang($languages); return $lang; }); } /** * Biome default view service. */ if (!Biome::hasService('view')) { Biome::registerService('view', function () { $view = new \Biome\Core\View(); $app_name = Biome::getService('lang')->get('app_name'); $view->setTitle($app_name); return $view; }); } /** * Biome default rights service. */ if (!Biome::hasService('rights')) { Biome::registerService('rights', function () { $auth = \Biome\Core\Collection::get('auth'); if ($auth->isAuthenticated()) { $admin_id = 1; // Default value of the Admin role id. if (Biome::hasService('config')) { $admin_id = Biome::getService('config')->get('ADMIN_ROLE_ID', 1); } $roles = $auth->user->roles; foreach ($roles as $role) { /* If Admin. */ if ($role->role_id == $admin_id) { return new \Biome\Core\Rights\FreeRights(); } $rights = AccessRights::loadFromJSON($role->role_rights); } return $rights; } $rights = AccessRights::loadFromArray(array()); $rights->setAttribute('User', 'firstname', TRUE, TRUE)->setAttribute('User', 'lastname', TRUE, TRUE)->setAttribute('User', 'mail', TRUE, TRUE)->setAttribute('User', 'password', TRUE, TRUE)->setRoute('GET', 'index', 'index')->setRoute('GET', 'auth', 'login')->setRoute('POST', 'auth', 'signin')->setRoute('POST', 'auth', 'signup'); return $rights; }); } /** * Biome default route service. */ if (!Biome::hasService('router')) { Biome::registerService('router', function () { $router = new Route(); $router->autoroute(); return $router; }); } /** * Biome default dispatch service. */ if (!Biome::hasService('dispatcher')) { Biome::registerService('dispatcher', function () { return Biome::getService('router')->getDispatcher(); }); } Logger::info('Services registered!'); }
<?php $objects = \Biome\Core\ORM\ObjectLoader::getObjects(); $router = \Biome\Biome::getService('router'); $routes = $router->getRoutes(); $rights = \Biome\Core\Rights\AccessRights::loadFromJSON($this->getValue()); ?> <div id="<?php echo $this->getId(); ?> "> <ul class="nav nav-tabs" role="tablist"> <li role="presentation" class="active"><a href="#role_routes" aria-controls="role_routes" role="tab" data-toggle="tab">Routes</a></li> <li role="presentation"><a href="#role_objects" aria-controls="role_objects" role="tab" data-toggle="tab">Objects</a></li> </ul> <div class="tab-content"> <div role="tabpanel" class="tab-pane fade in active" id="role_routes"> <table id="table_routes" class="table table-striped table-hover table-condensed"> <thead> <tr> <th>Method</th> <th>Route</th> <th>Description</th> <th><input type="checkbox" onClick="toggleCheckboxColumn(this, 'table_routes', 'rights-routes');"/> <span> Access</span></th> </tr> </thead> <tbody> <?php foreach ($routes as $r) { $method = $r['method'];