misuzu/public/manage/users/index.php

44 lines
1.3 KiB
PHP
Raw Normal View History

2019-06-09 22:10:59 +00:00
<?php
2019-09-28 22:38:39 +00:00
namespace Misuzu;
2019-06-09 22:10:59 +00:00
require_once '../../../misuzu.php';
if(!perms_check_user(MSZ_PERMS_USER, user_session_current('user_id'), MSZ_PERM_USER_MANAGE_USERS)) {
echo render_error(403);
return;
}
2019-09-28 22:38:39 +00:00
$manageUsersCount = (int)DB::query('
2019-06-09 22:10:59 +00:00
SELECT COUNT(`user_id`)
FROM `msz_users`
')->fetchColumn();
$usersPagination = new Pagination($manageUsersCount, 30);
2019-06-09 22:10:59 +00:00
if(!$usersPagination->hasValidOffset()) {
2019-06-09 22:10:59 +00:00
echo render_error(404);
return;
}
2019-09-28 22:38:39 +00:00
$getManageUsers = DB::prepare('
2019-06-09 22:10:59 +00:00
SELECT
u.`user_id`, u.`username`, u.`user_country`, r.`role_id`,
u.`user_created`, u.`user_active`, u.`user_deleted`,
INET6_NTOA(u.`register_ip`) AS `register_ip`, INET6_NTOA(u.`last_ip`) AS `last_ip`,
COALESCE(u.`user_title`, r.`role_title`, r.`role_name`) AS `user_title`,
COALESCE(u.`user_colour`, r.`role_colour`) AS `user_colour`
FROM `msz_users` AS u
LEFT JOIN `msz_roles` AS r
ON u.`display_role` = r.`role_id`
ORDER BY `user_id`
LIMIT :offset, :take
');
$getManageUsers->bind('offset', $usersPagination->getOffset());
$getManageUsers->bind('take', $usersPagination->getRange());
2019-09-28 22:38:39 +00:00
$manageUsers = $getManageUsers->fetchAll();
2019-06-09 22:10:59 +00:00
Template::render('manage.users.users', [
2019-06-09 22:10:59 +00:00
'manage_users' => $manageUsers,
'manage_users_pagination' => $usersPagination,
]);