From 76d3692d9e0f95374961ec4c47041da771e9bf25 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Thu, 6 Aug 2015 13:48:23 +0100 Subject: [PATCH] Added the ability for admins to delete users. Closes #791 --- app/Http/Controllers/Admin/TeamController.php | 15 +++++++++++++++ app/Http/Routes/AdminRoutes.php | 1 + resources/lang/en/dashboard.php | 4 ++++ resources/views/dashboard/team/edit.blade.php | 5 ++++- 4 files changed, 24 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/Admin/TeamController.php b/app/Http/Controllers/Admin/TeamController.php index 4bc94648..a6219e0c 100644 --- a/app/Http/Controllers/Admin/TeamController.php +++ b/app/Http/Controllers/Admin/TeamController.php @@ -106,4 +106,19 @@ class TeamController extends Controller return Redirect::back() ->withSuccess(sprintf('%s %s', trans('dashboard.notifications.awesome'), trans('dashboard.team.edit.success'))); } + + /** + * Delete a user. + * + * @param \CachetHQ\Cachet\Models\User $user + * + * @return \Illuminate\Http\RedirectResponse + */ + public function deleteUser(User $user) + { + $user->delete(); + + return Redirect::route('dashboard.team') + ->withSuccess(sprintf('%s %s', trans('dashboard.notifications.awesome'), trans('dashboard.team.delete.success'))); + } } diff --git a/app/Http/Routes/AdminRoutes.php b/app/Http/Routes/AdminRoutes.php index dc714804..e57159fd 100644 --- a/app/Http/Routes/AdminRoutes.php +++ b/app/Http/Routes/AdminRoutes.php @@ -177,6 +177,7 @@ class AdminRoutes $router->get('{user}', 'TeamController@showTeamMemberView'); $router->post('add', 'TeamController@postAddUser'); $router->post('{user}', 'TeamController@postUpdateUser'); + $router->delete('{user}/delete', 'TeamController@deleteUser'); }); }); diff --git a/resources/lang/en/dashboard.php b/resources/lang/en/dashboard.php index 0b380303..f44e0be5 100755 --- a/resources/lang/en/dashboard.php +++ b/resources/lang/en/dashboard.php @@ -149,6 +149,10 @@ return [ 'success' => 'Profile updated.', 'failure' => 'Something went wrong when updating.', ], + 'delete' => [ + 'success' => 'User updated.', + 'failure' => 'Something went wrong when deleting this user.', + ], ], // Settings diff --git a/resources/views/dashboard/team/edit.blade.php b/resources/views/dashboard/team/edit.blade.php index a5db1072..f8ea6f47 100644 --- a/resources/views/dashboard/team/edit.blade.php +++ b/resources/views/dashboard/team/edit.blade.php @@ -33,7 +33,10 @@
@if($current_user->isAdmin) - {{ trans('cachet.api.revoke') }} + {{ trans('cachet.api.revoke') }} + @if($current_user->id != $user->id) + {{ trans('forms.delete') }} + @endif @endif