mirror of
https://github.com/cydrobolt/polr.git
synced 2024-09-19 15:11:40 +02:00
Toggle User 'Active' status in Admin panel
This commit is contained in:
parent
51a9413b92
commit
f55a47f89a
@ -116,6 +116,30 @@ class AjaxController extends Controller {
|
||||
return "OK";
|
||||
}
|
||||
|
||||
public function toggleUserActive(Request $request) {
|
||||
self::ensureAdmin();
|
||||
|
||||
$user_id = $request->input('user_id');
|
||||
$user = UserHelper::getUserById($user_id, true);
|
||||
|
||||
if (!$user) {
|
||||
abort(404, 'User not found.');
|
||||
}
|
||||
$current_status = $user->active;
|
||||
|
||||
if ($current_status == 1) {
|
||||
$new_status = 0;
|
||||
}
|
||||
else {
|
||||
$new_status = 1;
|
||||
}
|
||||
|
||||
$user->active = $new_status;
|
||||
$user->save();
|
||||
|
||||
return $user->active;
|
||||
}
|
||||
|
||||
public function deleteUser(Request $request) {
|
||||
self::ensureAdmin();
|
||||
|
||||
|
@ -46,6 +46,7 @@ $app->group(['prefix' => '/api/v2', 'namespace' => 'App\Http\Controllers'], func
|
||||
$app->post('admin/toggle_api_active', ['as' => 'api_toggle_api_active', 'uses' => 'AjaxController@toggleAPIActive']);
|
||||
$app->post('admin/generate_new_api_key', ['as' => 'api_generate_new_api_key', 'uses' => 'AjaxController@generateNewAPIKey']);
|
||||
$app->post('admin/edit_api_quota', ['as' => 'api_edit_quota', 'uses' => 'AjaxController@editAPIQuota']);
|
||||
$app->post('admin/toggle_user_active', ['as' => 'api_generate_new_api_key', 'uses' => 'AjaxController@toggleUserActive']);
|
||||
$app->post('admin/delete_user', ['as' => 'api_generate_new_api_key', 'uses' => 'AjaxController@deleteUser']);
|
||||
$app->post('admin/toggle_link', ['as' => 'api_toggle_link', 'uses' => 'AjaxController@toggleLink']);
|
||||
$app->post('admin/delete_link', ['as' => 'api_delete_link', 'uses' => 'AjaxController@deleteLink']);
|
||||
|
@ -26,6 +26,24 @@ polr.controller('AdminCtrl', function($scope, $compile) {
|
||||
el.parent().parent().slideUp();
|
||||
};
|
||||
|
||||
$scope.toggleUserActiveStatus = function($event) {
|
||||
var el = $($event.target);
|
||||
var user_id = el.data('user-id');
|
||||
|
||||
apiCall('admin/toggle_user_active', {
|
||||
'user_id': user_id,
|
||||
}, function(new_status) {
|
||||
new_status = res_value_to_text(new_status);
|
||||
el.text(new_status);
|
||||
if (el.hasClass('btn-success')) {
|
||||
el.removeClass('btn-success').addClass('btn-danger');
|
||||
}
|
||||
else {
|
||||
el.removeClass('btn-danger').addClass('btn-success');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$scope.deleteUser = function($event) {
|
||||
var el = $($event.target);
|
||||
var user_id = el.data('user-id');
|
||||
|
@ -12,7 +12,11 @@
|
||||
<td class='wrap-text'>{{$user->username}}</td>
|
||||
<td class='wrap-text'>{{$user->email}}</td>
|
||||
<td>{{$user->created_at}}</td>
|
||||
<td>{{$user->active ? 'true' : 'false'}}</td>
|
||||
<td>
|
||||
<a ng-click="toggleUserActiveStatus($event)" class='btn btn-sm status-display @if ($user->active)btn-success @else btn-danger @endif @if (session('username') == $user->username)disabled @endif' data-user-id='{{$user->id}}'>
|
||||
{{$user->active ? 'true' : 'false'}}
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
@if ($user->active)
|
||||
<a class='activate-api-modal btn btn-sm btn-info'
|
||||
|
Loading…
Reference in New Issue
Block a user