Skip to content
This repository was archived by the owner on Mar 23, 2021. It is now read-only.

Commit aab6288

Browse files
committed
Quick Activate/Deactivate buttons for User Management, UX with AJAX
1 parent 64230e8 commit aab6288

File tree

3 files changed

+33
-2
lines changed

3 files changed

+33
-2
lines changed

app/Http/Controllers/UserController.php

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,4 +213,28 @@ public function showUsers()
213213
return redirect('home');
214214
}
215215
}
216+
217+
public function activate($id, Request $request){
218+
$user = \App\User::findOrFail($id);
219+
$user->isActivated = 1;
220+
$user->save();
221+
$notif = 'toastr["success"]("User <b>' . $user->name . '</b> was successfully activated")';
222+
$msg = '<script>'.'$("#" + ' . $id . ').remove();'.$notif.'</script>';
223+
224+
if ($request->ajax()){
225+
return $msg;
226+
}
227+
}
228+
229+
public function deactivate($id, Request $request){
230+
$user = \App\User::findOrFail($id);
231+
$user->isActivated = 0;
232+
$user->save();
233+
$notif = 'toastr["info"]("User <b>' . $user->name . '</b> was deactivated")';
234+
$msg = '<script>'.'$("#" + ' . $id . ').remove();'.$notif.'</script>';
235+
236+
if ($request->ajax()) {
237+
return $msg;
238+
}
239+
}
216240
}

resources/views/users/index.blade.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,13 @@
3333
@endif
3434
</td>
3535
<td>
36-
<a data-toggle="tooltip" title="Edit user information." href="{{url('users/edit')}}/{{$user->id}}" class = 'btn btn-primary btn-sm'><i class="fa fa-pencil-square-o" aria-hidden="true"></i></a>
37-
<a data-toggle="tooltip" title="Delete User." data-toggle="modal" data-target="#myModal" class = 'delete btn btn-danger btn-sm' data-link = "/users/{{$user->id}}/deleteMsg" ><i class="fa fa-trash-o" aria-hidden="true"></i></a>
36+
<a data-toggle="tooltip" title="Edit user information." href="{{url('users/edit')}}/{{$user->id}}" class = 'btn btn-primary btn-m'><i class="fa fa-pencil-square-o" aria-hidden="true"></i></a>
37+
<a data-toggle="tooltip" title="Delete User." class = 'delete btn btn-danger btn-m' data-link = "/users/{{$user->id}}/deleteMsg" ><i class="fa fa-trash-o" aria-hidden="true"></i></a>
38+
@if($user->isActivated)
39+
<a data-toggle="tooltip" title="Deactivate User." class = 'update btn btn-warning btn-m' data-link = "/users/{{$user->id}}/deactivate" ><i class="fa fa-question" aria-hidden="true"></i> Deactivate</a>
40+
@else
41+
<a data-toggle="tooltip" title="Activate User." class = 'update btn btn-success btn-m' data-link = "/users/{{$user->id}}/activate" ><i class="fa fa-check" aria-hidden="true"></i> Activate</a>
42+
@endif
3843
</td>
3944
</tr>
4045
@endforeach

routes/web.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@
5555
Route::resource('users', '\App\Http\Controllers\UserController');
5656
Route::post('users/store/','\App\Http\Controllers\UserController@store');
5757
Route::post('users/update/','\App\Http\Controllers\UserController@update');
58+
Route::get('users/{id}/activate','\App\Http\Controllers\UserController@activate');
59+
Route::get('users/{id}/deactivate','\App\Http\Controllers\UserController@deactivate');
5860
Route::get('users/edit/{id}','\App\Http\Controllers\UserController@edit');
5961
Route::get('users/delete/{id}','\App\Http\Controllers\UserController@destroy');
6062
Route::get('users/{id}/deleteMsg','\App\Http\Controllers\UserController@DeleteMsg');

0 commit comments

Comments
 (0)