Gazelle/sections/ajax/usersearch.php

60 lines
1.4 KiB
PHP
Raw Normal View History

2011-10-31 08:00:12 +00:00
<?
/**********************************************************************
*>>>>>>>>>>>>>>>>>>>>>>>>>>> User search <<<<<<<<<<<<<<<<<<<<<<<<<<<<*
**********************************************************************/
authorize(true);
if (!empty($_GET['search'])) {
$_GET['username'] = $_GET['search'];
}
define('USERS_PER_PAGE', 30);
if(isset($_GET['username'])){
$_GET['username'] = trim($_GET['username']);
list($Page,$Limit) = page_limit(USERS_PER_PAGE);
$DB->query("SELECT SQL_CALC_FOUND_ROWS
ID,
Username,
Enabled,
PermissionID,
Donor,
Warned
FROM users_main AS um
JOIN users_info AS ui ON ui.UserID=um.ID
WHERE Username LIKE '%".db_string($_GET['username'])."%'
ORDER BY Username
LIMIT $Limit");
$Results = $DB->to_array();
$DB->query('SELECT FOUND_ROWS();');
list($NumResults) = $DB->next_record();
}
$JsonUsers = array();
foreach($Results as $Result) {
list($UserID, $Username, $Enabled, $PermissionID, $Donor, $Warned) = $Result;
$JsonUsers[] = array(
2011-11-26 08:00:20 +00:00
'userId' => (int) $UserID,
2011-10-31 08:00:12 +00:00
'username' => $Username,
2011-11-26 08:00:20 +00:00
'donor' => $Donor == 1,
'warned' => $Warned == 1,
2011-10-31 08:00:12 +00:00
'enabled' => ($Enabled == 2 ? false : true),
'class' => make_class_string($PermissionID)
);
}
print
json_encode(
array(
'status' => 'success',
'response' => array(
2011-11-26 08:00:20 +00:00
'currentPage' => (int) $Page,
2011-10-31 08:00:12 +00:00
'pages' => ceil($NumResults/USERS_PER_PAGE),
'results' => $JsonUsers
)
)
);