mirror of
https://github.com/cydrobolt/polr.git
synced 2024-09-19 15:11:40 +02:00
Remove hacky fixes for API data and DRY
This commit is contained in:
parent
5e21f2efc0
commit
e2314dd8ff
@ -7,10 +7,10 @@ use App\Helpers\CryptoHelper;
|
||||
use App\Helpers\UserHelper;
|
||||
|
||||
class UserFactory {
|
||||
public static function createUser($username, $email, $password, $active=0, $ip='127.0.0.1', $api_key=false, $api_active=0, $role='') {
|
||||
public static function createUser($username, $email, $password, $active=0, $ip='127.0.0.1', $api_key=false, $api_active=0, $role=UserHelper::USER_ROLES['default']) {
|
||||
$hashed_password = Hash::make($password);
|
||||
|
||||
$recovery_key = CryptoHelper::generateRandomHex(50);
|
||||
|
||||
$user = new User;
|
||||
$user->username = $username;
|
||||
$user->password = $hashed_password;
|
||||
@ -18,14 +18,11 @@ class UserFactory {
|
||||
$user->recovery_key = $recovery_key;
|
||||
$user->active = $active;
|
||||
$user->ip = $ip;
|
||||
$role = ($role == '') ? UserHelper::USER_ROLES['default'] : $role;
|
||||
$user->role = $role;
|
||||
|
||||
$user->api_key = $api_key;
|
||||
$user->api_active = $api_active;
|
||||
|
||||
$user->save();
|
||||
|
||||
return $user;
|
||||
}
|
||||
|
||||
|
@ -109,8 +109,4 @@ class UserHelper {
|
||||
public static function getUserByEmail($email, $inactive=false) {
|
||||
return self::getUserBy('email', $email, $inactive);
|
||||
}
|
||||
|
||||
public static function canonicalUserRole($role) {
|
||||
return self::USER_ROLES[$role];
|
||||
}
|
||||
}
|
||||
|
@ -31,7 +31,7 @@ class AdminController extends Controller {
|
||||
|
||||
return view('admin', [
|
||||
'role' => $role,
|
||||
'admin_role' => UserHelper::canonicalUserRole('admin'),
|
||||
'admin_role' => UserHelper::USER_ROLES['admin'],
|
||||
'user_roles' => UserHelper::USER_ROLES,
|
||||
'api_key' => $user->api_key,
|
||||
'api_active' => $user->api_active,
|
||||
|
@ -22,7 +22,7 @@ class AdminPaginationController extends Controller {
|
||||
->addColumn('api_action', function ($user) {
|
||||
// Add "API Info" action button
|
||||
return '<a class="activate-api-modal btn btn-sm btn-info"
|
||||
ng-click="openAPIModal($event, \'' . $user->username . '\', \'' . $user->id . '\')" id="api_info_btn_' . $user->id . '" data-api-active="' . $user->api_active . '" data-api-key="' . $user->api_key . '" data-api-quota="' . $user->api_quota . '">
|
||||
ng-click="openAPIModal($event, \'' . $user->username . '\', \'' . $user->api_key . '\', \'' . $user->api_active . '\', \'' . $user->api_quota . '\', \'' . $user->id . '\')">
|
||||
API info
|
||||
</a>';
|
||||
})
|
||||
@ -42,8 +42,7 @@ class AdminPaginationController extends Controller {
|
||||
$btn_color_class = ' btn-danger';
|
||||
}
|
||||
|
||||
return '<a class="btn btn-sm status-display' . $btn_color_class . $btn_class . '" ng-click="toggleUserActiveStatus($event)" '
|
||||
. 'data-user-id="' . $user->id . '">' . $active_text . '</a>';
|
||||
return '<a class="btn btn-sm status-display' . $btn_color_class . $btn_class . '" ng-click="toggleUserActiveStatus($event, ' . $user->id . ')">' . $active_text . '</a>';
|
||||
})
|
||||
->addColumn('change_role', function ($user) {
|
||||
// Add "change role" select box
|
||||
|
@ -96,9 +96,8 @@ polr.controller('AdminCtrl', function($scope, $compile) {
|
||||
/*
|
||||
User Management
|
||||
*/
|
||||
$scope.toggleUserActiveStatus = function($event) {
|
||||
$scope.toggleUserActiveStatus = function($event, user_id) {
|
||||
var el = $($event.target);
|
||||
var user_id = el.data('user-id');
|
||||
|
||||
apiCall('admin/toggle_user_active', {
|
||||
'user_id': user_id,
|
||||
@ -118,7 +117,6 @@ polr.controller('AdminCtrl', function($scope, $compile) {
|
||||
var response = true;
|
||||
|
||||
$('.new-user-fields input').each(function () {
|
||||
console.log($(this).attr('id'));
|
||||
if ($(this).val().trim() == '' || response == false) {
|
||||
response = false;
|
||||
}
|
||||
@ -192,7 +190,6 @@ polr.controller('AdminCtrl', function($scope, $compile) {
|
||||
} else {
|
||||
status_display_elem.text(new_status);
|
||||
}
|
||||
$('a#api_info_btn_' + user_id).attr('data-api-key', new_status);
|
||||
});
|
||||
};
|
||||
|
||||
@ -204,7 +201,6 @@ polr.controller('AdminCtrl', function($scope, $compile) {
|
||||
apiCall('admin/toggle_api_active', {
|
||||
'user_id': user_id,
|
||||
}, function(new_status) {
|
||||
$('a#api_info_btn_' + user_id).attr('data-api-active', new_status);
|
||||
new_status = res_value_to_text(new_status);
|
||||
status_display_elem.text(new_status);
|
||||
});
|
||||
@ -219,19 +215,13 @@ polr.controller('AdminCtrl', function($scope, $compile) {
|
||||
'user_id': user_id,
|
||||
'new_quota': parseInt(new_quota)
|
||||
}, function(next_action) {
|
||||
$('a#api_info_btn_' + user_id).attr('data-api-quota', new_quota);
|
||||
toastr.success("Quota successfully changed.", "Success");
|
||||
});
|
||||
};
|
||||
|
||||
// Open user API settings menu
|
||||
$scope.openAPIModal = function($event, username, user_id) {
|
||||
$scope.openAPIModal = function($event, username, api_key, api_active, api_quota, user_id) {
|
||||
var el = $($event.target);
|
||||
|
||||
api_active = $('a#api_info_btn_' + user_id).attr('data-api-active');
|
||||
api_key = $('a#api_info_btn_' + user_id).attr('data-api-key');
|
||||
api_quota = $('a#api_info_btn_' + user_id).attr('data-api-quota');
|
||||
|
||||
var markup = $('#api-modal-template').html();
|
||||
|
||||
var modal_id = "api-modal-" + username;
|
||||
|
Loading…
Reference in New Issue
Block a user