share(function (PhraseaApplication $app) { return new DataboxesController($app); }); } public function boot(Application $app) { } public function connect(Application $app) { $controllers = $this->createAuthenticatedCollection($app); $firewall = $this->getFirewall($app); $controllers->before(function () use ($firewall) { $firewall->requireAccessToModule('admin'); }); $controllers->get('/', 'controller.admin.databoxes:getDatabases') ->bind('admin_databases'); $controllers->post('/', 'controller.admin.databoxes:createDatabase') ->bind('admin_database_new') ->before(function () use ($firewall) { $firewall->requireAdmin(); }); $controllers->post('/mount/', 'controller.admin.databoxes:databaseMount') ->bind('admin_database_mount') ->before(function () use ($firewall) { $firewall->requireAdmin(); }); return $controllers; } }