From cefabcef2dca129b53425ebd19e9e2523b094f62 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Fri, 7 Aug 2015 14:52:44 +0100 Subject: [PATCH] Clean up all route files, alias routes etc. --- .../Controllers/Admin/ComponentController.php | 2 +- .../Controllers/Admin/IncidentController.php | 4 +- app/Http/Controllers/AuthController.php | 6 +- app/Http/Routes/ApiRoutes.php | 5 + app/Http/Routes/AuthRoutes.php | 60 ++++---- app/Http/Routes/DashboardRoutes.php | 142 +++++++++++------- app/Http/Routes/FeedRoutes.php | 15 +- app/Http/Routes/SetupRoutes.php | 5 + app/Http/Routes/StatusPageRoutes.php | 18 ++- app/Http/Routes/SubscribeRoutes.php | 10 +- resources/views/auth/login.blade.php | 2 +- .../views/auth/two-factor-auth.blade.php | 2 + .../partials/dashboard/sidebar.blade.php | 18 +-- resources/views/partials/footer.blade.php | 4 +- 14 files changed, 183 insertions(+), 110 deletions(-) diff --git a/app/Http/Controllers/Admin/ComponentController.php b/app/Http/Controllers/Admin/ComponentController.php index fc44308e..ec4cdb2c 100644 --- a/app/Http/Controllers/Admin/ComponentController.php +++ b/app/Http/Controllers/Admin/ComponentController.php @@ -29,7 +29,7 @@ class ComponentController extends Controller $this->subMenu = [ 'components' => [ 'title' => trans('dashboard.components.components'), - 'url' => route('dashboard.components'), + 'url' => route('dashboard.components.index'), 'icon' => 'ion-outlet', 'active' => false, ], diff --git a/app/Http/Controllers/Admin/IncidentController.php b/app/Http/Controllers/Admin/IncidentController.php index a17826ae..58d608fc 100644 --- a/app/Http/Controllers/Admin/IncidentController.php +++ b/app/Http/Controllers/Admin/IncidentController.php @@ -44,13 +44,13 @@ class IncidentController extends Controller $this->subMenu = [ 'incidents' => [ 'title' => trans('dashboard.incidents.incidents'), - 'url' => route('dashboard.incidents'), + 'url' => route('dashboard.incidents.index'), 'icon' => 'ion-android-checkmark-circle', 'active' => true, ], 'schedule' => [ 'title' => trans('dashboard.schedule.schedule'), - 'url' => route('dashboard.schedule'), + 'url' => route('dashboard.schedule.index'), 'icon' => 'ion-android-calendar', 'active' => false, ], diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index 7b0fb074..a38ade11 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -50,7 +50,7 @@ class AuthController extends Controller // Temporarily store the user. Session::put('2fa_id', Auth::user()->id); - return Redirect::route('two-factor'); + return Redirect::route('auth.two-factor'); } // We probably want to add support for "Remember me" here. @@ -98,11 +98,11 @@ class AuthController extends Controller // Failed login, log back out. Auth::logout(); - return Redirect::route('login')->withError(trans('forms.login.invalid-token')); + return Redirect::route('auth.login')->withError(trans('forms.login.invalid-token')); } } - return Redirect::route('login')->withError(trans('forms.login.invalid-token')); + return Redirect::route('auth.login')->withError(trans('forms.login.invalid-token')); } /** diff --git a/app/Http/Routes/ApiRoutes.php b/app/Http/Routes/ApiRoutes.php index 9446785b..4906133e 100644 --- a/app/Http/Routes/ApiRoutes.php +++ b/app/Http/Routes/ApiRoutes.php @@ -13,6 +13,11 @@ namespace CachetHQ\Cachet\Http\Routes; use Illuminate\Contracts\Routing\Registrar; +/** + * This is the api routes class. + * + * @author James Brooks + */ class ApiRoutes { /** diff --git a/app/Http/Routes/AuthRoutes.php b/app/Http/Routes/AuthRoutes.php index e9a7eb06..932fcb0f 100644 --- a/app/Http/Routes/AuthRoutes.php +++ b/app/Http/Routes/AuthRoutes.php @@ -13,6 +13,11 @@ namespace CachetHQ\Cachet\Http\Routes; use Illuminate\Contracts\Routing\Registrar; +/** + * This is the auth routes class. + * + * @author James Brooks + */ class AuthRoutes { /** @@ -22,36 +27,39 @@ class AuthRoutes */ public function map(Registrar $router) { - $router->group(['prefix' => 'auth'], function ($router) { - $router->group(['middleware' => 'app.hasSetting', 'setting' => 'app_name'], function ($router) { - // Login routes - $router->get('login', [ - 'middleware' => 'guest', - 'as' => 'login', - 'uses' => 'AuthController@showLogin', - ]); + $router->group([ + 'as' => 'auth.', + 'middleware' => 'app.hasSetting', + 'prefix' => 'auth', + 'setting' => 'app_name', + ], function ($router) { + $router->get('login', [ + 'middleware' => 'guest', + 'as' => 'login', + 'uses' => 'AuthController@showLogin', + ]); - $router->post('login', [ - 'middleware' => ['guest', 'csrf', 'throttling:10,10'], - 'as' => 'login', - 'uses' => 'AuthController@postLogin', - ]); + $router->post('login', [ + 'middleware' => ['guest', 'csrf', 'throttling:10,10'], + 'uses' => 'AuthController@postLogin', + ]); - // Two factor authorization - $router->get('2fa', [ - 'as' => 'two-factor', - 'uses' => 'AuthController@showTwoFactorAuth', - ]); + // Two factor authorization + $router->get('2fa', [ + 'as' => 'two-factor', + 'uses' => 'AuthController@showTwoFactorAuth', + ]); - $router->post('2fa', 'AuthController@postTwoFactor'); - }); + $router->post('2fa', [ + 'middleware' => ['csrf', 'throttling:10,10'], + 'uses' => 'AuthController@postTwoFactor', + ]); - $router->group(['middleware' => 'auth'], function ($router) { - $router->get('logout', [ - 'as' => 'logout', - 'uses' => 'AuthController@logoutAction', - ]); - }); + $router->get('logout', [ + 'as' => 'logout', + 'uses' => 'AuthController@logoutAction', + 'middleware' => 'auth', + ]); }); } } diff --git a/app/Http/Routes/DashboardRoutes.php b/app/Http/Routes/DashboardRoutes.php index a5884881..32e315ec 100644 --- a/app/Http/Routes/DashboardRoutes.php +++ b/app/Http/Routes/DashboardRoutes.php @@ -13,6 +13,11 @@ namespace CachetHQ\Cachet\Http\Routes; use Illuminate\Contracts\Routing\Registrar; +/** + * This is the dashboard routes class. + * + * @author James Brooks + */ class DashboardRoutes { /** @@ -26,152 +31,172 @@ class DashboardRoutes 'middleware' => 'auth', 'prefix' => 'dashboard', 'namespace' => 'Admin', + 'as' => 'dashboard.', ], function ($router) { // Dashboard $router->get('/', [ - 'as' => 'dashboard', + 'as' => 'index', 'uses' => 'DashboardController@showDashboard', ]); // Components - $router->group(['prefix' => 'components'], function ($router) { + $router->group([ + 'as' => 'components.', + 'prefix' => 'components', + ], function ($router) { $router->get('/', [ - 'as' => 'dashboard.components', + 'as' => 'index', 'uses' => 'ComponentController@showComponents', ]); $router->get('add', [ - 'as' => 'dashboard.components.add', + 'as' => 'add', 'uses' => 'ComponentController@showAddComponent', ]); $router->post('add', 'ComponentController@createComponentAction'); $router->get('groups', [ - 'as' => 'dashboard.components.groups', + 'as' => 'groups', 'uses' => 'ComponentController@showComponentGroups', ]); $router->get('groups/add', [ - 'as' => 'dashboard.components.groups.add', + 'as' => 'groups.add', 'uses' => 'ComponentController@showAddComponentGroup', ]); $router->get('groups/edit/{component_group}', [ - 'as' => 'dashboard.components.groups.edit', + 'as' => 'groups.edit', 'uses' => 'ComponentController@showEditComponentGroup', ]); $router->post('groups/edit/{component_group}', 'ComponentController@updateComponentGroupAction'); - $router->delete('groups/{component_group}/delete', 'ComponentController@deleteComponentGroupAction'); $router->post('groups/add', 'ComponentController@postAddComponentGroup'); + $router->get('{component}/edit', [ + 'as' => 'edit', + 'uses' => 'ComponentController@showEditComponent', + ]); $router->delete('{component}/delete', 'ComponentController@deleteComponentAction'); - $router->get('{component}/edit', 'ComponentController@showEditComponent'); $router->post('{component}/edit', 'ComponentController@updateComponentAction'); }); // Incidents - $router->group(['prefix' => 'incidents'], function ($router) { + $router->group([ + 'as' => 'incidents.', + 'prefix' => 'incidents', + ], function ($router) { $router->get('/', [ - 'as' => 'dashboard.incidents', + 'as' => 'index', 'uses' => 'IncidentController@showIncidents', ]); $router->get('add', [ - 'as' => 'dashboard.incidents.add', + 'as' => 'add', 'uses' => 'IncidentController@showAddIncident', ]); $router->post('add', 'IncidentController@createIncidentAction'); $router->delete('{incident}/delete', 'IncidentController@deleteIncidentAction'); - $router->get('{incident}/edit', 'IncidentController@showEditIncidentAction'); + $router->get('{incident}/edit', [ + 'as' => 'edit', + 'uses' => 'IncidentController@showEditIncidentAction', + ]); $router->post('{incident}/edit', 'IncidentController@editIncidentAction'); }); // Scheduled Maintenance - $router->group(['prefix' => 'schedule'], function ($router) { - $router->get('/', ['as' => 'dashboard.schedule', 'uses' => 'ScheduleController@showIndex']); - + $router->group([ + 'as' => 'schedule.', + 'prefix' => 'schedule', + ], function ($router) { + $router->get('/', [ + 'as' => 'index', + 'uses' => 'ScheduleController@showIndex', + ]); $router->get('add', [ - 'as' => 'dashboard.schedule.add', + 'as' => 'add', 'uses' => 'ScheduleController@showAddSchedule', ]); $router->post('add', 'ScheduleController@addScheduleAction'); - $router->get('{incident}/edit', [ - 'as' => 'dashboard.schedule.edit', + 'as' => 'edit', 'uses' => 'ScheduleController@showEditSchedule', ]); $router->post('{incident}/edit', 'ScheduleController@editScheduleAction'); - $router->delete('{incident}/delete', [ - 'as' => 'dashboard.schedule.delete', + 'as' => 'delete', 'uses' => 'ScheduleController@deleteScheduleAction', ]); }); // Incident Templates - $router->group(['prefix' => 'templates'], function ($router) { + $router->group([ + 'as' => 'templates.', + 'prefix' => 'templates', + ], function ($router) { $router->get('/', [ - 'as' => 'dashboard.templates', + 'as' => 'index', 'uses' => 'IncidentController@showTemplates', ]); - $router->get('add', [ - 'as' => 'dashboard.templates.add', + 'as' => 'add', 'uses' => 'IncidentController@showAddIncidentTemplate', ]); $router->post('add', 'IncidentController@createIncidentTemplateAction'); - - $router->get('{incident_template}/edit', 'IncidentController@showEditTemplateAction'); + $router->get('{incident_template}/edit', [ + 'as' => 'edit', + 'uses' => 'IncidentController@showEditTemplateAction', + ]); $router->post('{incident_template}/edit', 'IncidentController@editTemplateAction'); $router->delete('{incident_template}/delete', 'IncidentController@deleteTemplateAction'); }); // Subscribers - $router->group(['prefix' => 'subscribers'], function ($router) { + $router->group([ + 'as' => 'subscribers.', + 'prefix' => 'subscribers', + ], function ($router) { $router->get('/', [ - 'as' => 'dashboard.subscribers', + 'as' => 'index', 'uses' => 'SubscriberController@showSubscribers', ]); - $router->get('add', [ - 'as' => 'dashboard.subscribers.add', + 'as' => 'add', 'uses' => 'SubscriberController@showAddSubscriber', ]); $router->post('add', 'SubscriberController@createSubscriberAction'); - $router->delete('{subscriber}/delete', 'SubscriberController@deleteSubscriberAction'); }); // Metrics - $router->group(['prefix' => 'metrics'], function ($router) { + $router->group([ + 'as' => 'metrics.', + 'prefix' => 'metrics', + ], function ($router) { $router->get('/', [ - 'as' => 'dashboard.metrics', + 'as' => 'index', 'uses' => 'MetricController@showMetrics', ]); - $router->get('add', [ - 'as' => 'dashboard.metrics.add', + 'as' => 'add', 'uses' => 'MetricController@showAddMetric', ]); $router->post('add', 'MetricController@createMetricAction'); $router->delete('{metric}/delete', 'MetricController@deleteMetricAction'); - $router->get('{metric}/edit', 'MetricController@showEditMetricAction'); + $router->get('{metric}/edit', [ + 'as' => 'edit', + 'uses' => 'MetricController@showEditMetricAction', + ]); $router->post('{metric}/edit', 'MetricController@editMetricAction'); }); - // Notifications - $router->group(['prefix' => 'notifications'], function ($router) { - $router->get('/', [ - 'as' => 'dashboard.notifications', - 'uses' => 'DashboardController@showNotifications', - ]); - }); - // Team Members - $router->group(['prefix' => 'team'], function ($router) { + $router->group([ + 'as' => 'team.', + 'prefix' => 'team', + ], function ($router) { $router->get('/', [ - 'as' => 'dashboard.team', + 'as' => 'index', 'uses' => 'TeamController@showTeamView', ]); $router->group(['middleware' => 'admin'], function ($router) { $router->get('add', [ - 'as' => 'dashboard.team.add', + 'as' => 'add', 'uses' => 'TeamController@showAddTeamMemberView', ]); $router->get('{user}', 'TeamController@showTeamMemberView'); @@ -182,21 +207,24 @@ class DashboardRoutes }); // Settings - $router->group(['prefix' => 'settings'], function ($router) { + $router->group([ + 'as' => 'settings.', + 'prefix' => 'settings', + ], function ($router) { $router->get('setup', [ - 'as' => 'dashboard.settings.setup', + 'as' => 'setup', 'uses' => 'SettingsController@showSetupView', ]); $router->get('security', [ - 'as' => 'dashboard.settings.security', + 'as' => 'security', 'uses' => 'SettingsController@showSecurityView', ]); $router->get('theme', [ - 'as' => 'dashboard.settings.theme', + 'as' => 'theme', 'uses' => 'SettingsController@showThemeView', ]); $router->get('stylesheet', [ - 'as' => 'dashboard.settings.stylesheet', + 'as' => 'stylesheet', 'uses' => 'SettingsController@showStylesheetView', ]); $router->post('/', 'SettingsController@postSettings'); @@ -205,15 +233,17 @@ class DashboardRoutes // User Settings $router->group(['prefix' => 'user'], function ($router) { $router->get('/', [ - 'as' => 'dashboard.user', + 'as' => 'user', 'uses' => 'UserController@showUser', ]); $router->post('/', 'UserController@postUser'); $router->get('{user}/api/regen', 'UserController@regenerateApiKey'); }); - // Internal API. - // This should only be used for making requests within the dashboard. + /* + * Internal API. + * This should only be used for making requests within the dashboard. + */ $router->group(['prefix' => 'api'], function ($router) { $router->get('incidents/templates', 'ApiController@getIncidentTemplate'); $router->post('components/groups/order', 'ApiController@postUpdateComponentGroupOrder'); diff --git a/app/Http/Routes/FeedRoutes.php b/app/Http/Routes/FeedRoutes.php index c812efa6..c6da03b1 100644 --- a/app/Http/Routes/FeedRoutes.php +++ b/app/Http/Routes/FeedRoutes.php @@ -13,6 +13,11 @@ namespace CachetHQ\Cachet\Http\Routes; use Illuminate\Contracts\Routing\Registrar; +/** + * This is the feed routes class. + * + * @author James Brooks + */ class FeedRoutes { /** @@ -24,8 +29,14 @@ class FeedRoutes { // Prevent access until the app is setup. $router->group(['middleware' => 'app.hasSetting', 'setting' => 'app_name'], function ($router) { - $router->get('/atom/{component_group?}', 'AtomController@feedAction'); - $router->get('/rss/{component_group?}', 'RssController@feedAction'); + $router->get('/atom/{component_group?}', [ + 'as' => 'feed.atom', + 'uses' => 'AtomController@feedAction', + ]); + $router->get('/rss/{component_group?}', [ + 'as' => 'feed.rss', + 'uses' => 'RssController@feedAction', + ]); }); } } diff --git a/app/Http/Routes/SetupRoutes.php b/app/Http/Routes/SetupRoutes.php index 2f9ed252..1d11c216 100644 --- a/app/Http/Routes/SetupRoutes.php +++ b/app/Http/Routes/SetupRoutes.php @@ -13,6 +13,11 @@ namespace CachetHQ\Cachet\Http\Routes; use Illuminate\Contracts\Routing\Registrar; +/** + * This is the setup routes class. + * + * @author James Brooks + */ class SetupRoutes { /** diff --git a/app/Http/Routes/StatusPageRoutes.php b/app/Http/Routes/StatusPageRoutes.php index b65dd0c6..43e77855 100644 --- a/app/Http/Routes/StatusPageRoutes.php +++ b/app/Http/Routes/StatusPageRoutes.php @@ -13,6 +13,11 @@ namespace CachetHQ\Cachet\Http\Routes; use Illuminate\Contracts\Routing\Registrar; +/** + * This is the status page routes class. + * + * @author James Brooks + */ class StatusPageRoutes { /** @@ -22,12 +27,11 @@ class StatusPageRoutes */ public function map(Registrar $router) { - // Prevent access until the app is setup. - $router->group(['middleware' => 'app.hasSetting', 'setting' => 'app_name'], function ($router) { - $router->get('/', [ - 'as' => 'status-page', - 'uses' => 'HomeController@showIndex', - ]); - }); + $router->get('/', [ + 'middleware' => 'app.hasSetting', + 'setting' => 'app_name', + 'as' => 'status-page', + 'uses' => 'HomeController@showIndex', + ]); } } diff --git a/app/Http/Routes/SubscribeRoutes.php b/app/Http/Routes/SubscribeRoutes.php index 501e3c4d..0f70e47d 100644 --- a/app/Http/Routes/SubscribeRoutes.php +++ b/app/Http/Routes/SubscribeRoutes.php @@ -13,6 +13,11 @@ namespace CachetHQ\Cachet\Http\Routes; use Illuminate\Contracts\Routing\Registrar; +/** + * This is the subscriber routes class. + * + * @author James Brooks + */ class SubscribeRoutes { /** @@ -22,7 +27,10 @@ class SubscribeRoutes */ public function map(Registrar $router) { - $router->group(['middleware' => 'app.hasSetting', 'setting' => 'app_name'], function ($router) { + $router->group([ + 'middleware' => 'app.hasSetting', + 'setting' => 'app_name', + ], function ($router) { $router->group(['middleware' => 'app.subscribers'], function ($router) { $router->get('subscribe', [ 'as' => 'subscribe-page', diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php index bdd31345..d8340111 100644 --- a/resources/views/auth/login.blade.php +++ b/resources/views/auth/login.blade.php @@ -22,7 +22,7 @@
-
+ @if(Session::has('error')) diff --git a/resources/views/auth/two-factor-auth.blade.php b/resources/views/auth/two-factor-auth.blade.php index 29fe03d8..ee7b7992 100644 --- a/resources/views/auth/two-factor-auth.blade.php +++ b/resources/views/auth/two-factor-auth.blade.php @@ -21,6 +21,8 @@ + +

{{ trans('dashboard.login.two-factor') }}

diff --git a/resources/views/partials/dashboard/sidebar.blade.php b/resources/views/partials/dashboard/sidebar.blade.php index 14415a30..b75c9053 100644 --- a/resources/views/partials/dashboard/sidebar.blade.php +++ b/resources/views/partials/dashboard/sidebar.blade.php @@ -12,7 +12,7 @@ {{ trans('dashboard.team.profile') }}
  • - {{ trans('dashboard.logout') }} + {{ trans('dashboard.logout') }}
  • @@ -26,45 +26,45 @@ diff --git a/resources/views/partials/footer.blade.php b/resources/views/partials/footer.blade.php index b4f511ea..1d8434bc 100644 --- a/resources/views/partials/footer.blade.php +++ b/resources/views/partials/footer.blade.php @@ -14,8 +14,8 @@ @if($current_user) {{ trans('dashboard.logout') }} @endif - {{ trans('cachet.rss-feed') }} - {{ trans('cachet.atom-feed') }} + {{ trans('cachet.rss-feed') }} + {{ trans('cachet.atom-feed') }}