<?php use App\Application; use App\ControllerProvider\ApiControllerProvider; use App\ControllerProvider\PageControllerProvider; use Cekurte\Environment\Environment; use Cekurte\Silex\Manager\Provider\ManagerServiceProvider; use Symfony\Component\HttpFoundation\Request; $app = new Application(); $app['debug'] = Environment::get('APP_DEBUG'); $app['cekurte.manager.providers'] = (require CONFIG_PATH . DS . 'manager.php'); $app->register(new ManagerServiceProvider()); Request::enableHttpMethodParameterOverride(); require CONFIG_PATH . DS . 'error.php'; $app->mount('/', new PageControllerProvider()); $app->mount('/api', new ApiControllerProvider()); $app->after($app["cors"]); return $app;
public function loadRoutes(Application $app) { $app->mount('/', new Controller\ClientController()); }
public function loadRoutes(Application $app) { $app['home.controller'] = function () use($app) { return new Controller\HomeController(); }; $app->mount('/admin', new Controller\Admin\BlogController()); $app->get('/test/rr', "home.controller:test"); $app->get('/', "home.controller:indexAction"); $app->get('/record', "home.controller:record"); $app->get('/test2', "home.controller:test2")->method('get|post'); $app->get('/tracks', "home.controller:tracksAction"); $app->get('/one/', function () use($app) { return $app->json(['a' => 'b']); })->bind('sidebar'); $app->get('/admin/login', function (Request $request) use($app) { return $app['twig']->render('admin/login.twig', ['error' => $app['security.last_error']($request), 'last_username' => $app['session']->get('_security.last_username')]); }); $app->get('/admin/', function () use($app) { return 'admin'; }); /** * редирект для всех несуществующих роутов в админку */ $app->get('/admin/{all}', function () use($app) { return $app->redirect('/admin/'); })->assert('all', '.*'); $app['security.firewalls'] = ['login' => ['pattern' => '^/admin/login$'], 'secured_area' => ['pattern' => '^/admin', 'form' => ['login_path' => '/admin/login', 'check_path' => '/admin/check_login', 'always_use_default_target_path' => true, 'default_target_path' => 'post'], 'logout' => ['logout_path' => '/admin/logout', 'target' => '/', 'invalidate_session' => true], 'users' => ['admin' => ['ROLE_ADMIN', '5FZ2Z8QIkA7UTZ4BYkoC+GsReLf569mSKDsfods6LYQ8t+a8EW9oaircfMpmaLbPBh4FOBiiFyLfuZmTSUwzZg==']]]]; }
/** * Attach application mount points to specified controllers. * * @return void */ private function mount() { foreach ($this->getMountPoints() as $mount) { $this->app->mount($mount->mountPoint, new $mount->controller()); } }