Browse Source

add pagination to admin/user page to support large numbers of users

tags/2.3beta1
Friendika 9 years ago
parent
commit
484b248f73
2 changed files with 17 additions and 5 deletions
  1. +1
    -1
      boot.php
  2. +16
    -4
      mod/admin.php

+ 1
- 1
boot.php View File

@@ -4,7 +4,7 @@ set_time_limit(0);
ini_set('pcre.backtrack_limit', 250000);


define ( 'FRIENDIKA_VERSION', '2.2.1013' );
define ( 'FRIENDIKA_VERSION', '2.2.1014' );
define ( 'DFRN_PROTOCOL_VERSION', '2.21' );
define ( 'DB_UPDATE_VERSION', 1063 );



+ 16
- 4
mod/admin.php View File

@@ -385,6 +385,13 @@ function admin_page_users(&$a){
LEFT JOIN `user` ON `register`.`uid` = `user`.`uid`;");
/* get users */

$total = q("SELECT count(*) as total FROM `user` where 1");
if(count($total)) {
$a->set_pager_total($total[0]['total']);
$a->set_pager_itemspage(100);
}

$users = q("SELECT `user` . * , `contact`.`name` , `contact`.`url` , `contact`.`micro` , `lastitem`.`changed` AS `lastitem_date`
FROM (
SELECT `item`.`changed` , `item`.`uid`
@@ -396,8 +403,12 @@ function admin_page_users(&$a){
WHERE `user`.`verified` =1
AND `contact`.`self` =1
AND `lastitem`.`uid` = `user`.`uid`
ORDER BY `contact`.`name`
");
ORDER BY `contact`.`name` LIMIT %d, %d
",
intval($a->pager['start']),
intval($a->pager['itemspage'])

);
function _setup_users($e){
$accounts = Array(
@@ -415,7 +426,7 @@ function admin_page_users(&$a){
$users = array_map("_setup_users", $users);
$t = get_markup_template("admin_users.tpl");
return replace_macros($t, array(
$o = replace_macros($t, array(
// strings //
'$title' => t('Administration'),
'$page' => t('Users'),
@@ -443,7 +454,8 @@ function admin_page_users(&$a){
'$pending' => $pending,
'$users' => $users,
));
$o .= paginate($a);
return $o;
}




Loading…
Cancel
Save