<?php
/**
* Sample group routing with user check in middleware
*/
Route::group(
'/admin',
function(){
if(!Sentry::check()){
if(Request::isAjax()){
Response::headers()->set('Content-Type', 'application/json');
Response::setBody(json_encode(
array(
'success' => false,
'message' => 'Session expired or unauthorized access.',
'code' => 401
)
));
App::stop();
}else{
$redirect = Request::getResourceUri();
Response::redirect(App::urlFor('login').'?redirect='.base64_encode($redirect));
}
}
},
function() use ($app) {
/** sample namespaced controller */
Route::get('/', 'Admin\AdminController:index')->name('admin');
foreach (Module::getModules() as $module) {
$module->registerAdminRoute();
}
}
);
Route::get('/login', 'Admin\AdminController:login')->name('login');
Route::get('/logout', 'Admin\AdminController:logout')->name('logout');
Route::post('/login', 'Admin\AdminController:doLogin');
/** Route to documentation */
Route::get('/doc(/:page+)', 'DocController:index');
foreach (Module::getModules() as $module) {
$module->registerPublicRoute();
}
/** default routing */
Route::get('/', 'HomeController:welcome');
|