diff options
author | Graham Eames <grahamje@users.sourceforge.net> | 2006-09-23 12:27:51 +0000 |
---|---|---|
committer | Graham Eames <grahamje@users.sourceforge.net> | 2006-09-23 12:27:51 +0000 |
commit | cbece78f7b180253af95071ab859c468ed061ff5 (patch) | |
tree | 420dcaac9aadf3144a4a65ced3f1bd25be10054e /phpBB/includes/functions_admin.php | |
parent | 36fa521f9230d2b2a8bbb6dc79185cfc17112f39 (diff) | |
download | forums-cbece78f7b180253af95071ab859c468ed061ff5.tar forums-cbece78f7b180253af95071ab859c468ed061ff5.tar.gz forums-cbece78f7b180253af95071ab859c468ed061ff5.tar.bz2 forums-cbece78f7b180253af95071ab859c468ed061ff5.tar.xz forums-cbece78f7b180253af95071ab859c468ed061ff5.zip |
A reworking of how we handle inactive users
git-svn-id: file:///svn/phpbb/trunk@6394 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/functions_admin.php')
-rw-r--r-- | phpBB/includes/functions_admin.php | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/phpBB/includes/functions_admin.php b/phpBB/includes/functions_admin.php index 2f2e333c78..1d5ec9ee68 100644 --- a/phpBB/includes/functions_admin.php +++ b/phpBB/includes/functions_admin.php @@ -2331,6 +2331,52 @@ function update_foes() } /** +* Lists inactive users +*/ +function view_inactive_users(&$users, &$user_count, $limit = 0, $offset = 0, $limit_days = 0, $sort_by = 'user_inactive_time DESC') +{ + global $db, $user; + + $sql = 'SELECT user_id, username, user_regdate, user_lastvisit, user_inactive_time, user_inactive_reason + FROM ' . USERS_TABLE . ' + WHERE user_type = ' . USER_INACTIVE . + (($limit_days) ? "AND user_inactive_time >= $limit_days" : '') . " + ORDER BY $sort_by"; + $result = $db->sql_query_limit($sql, $limit, $offset); + + while ($row = $db->sql_fetchrow($result)) + { + $row['inactive_reason'] = $user->lang['INACTIVE_REASON_UNKNOWN']; + switch ($row['user_inactive_reason']) + { + case INACTIVE_REGISTER: + $row['inactive_reason'] = $user->lang['INACTIVE_REASON_REGISTER']; + break; + + case INACTIVE_PROFILE: + $row['inactive_reason'] = $user->lang['INACTIVE_REASON_PROFILE']; + break; + + case INACTIVE_MANUAL: + $row['inactive_reason'] = $user->lang['INACTIVE_REASON_MANUAL']; + break; + } + + $users[] = $row; + } + + $sql = 'SELECT count(user_id) AS user_count + FROM ' . USERS_TABLE . ' + WHERE user_type = ' . USER_INACTIVE . + (($limit_days) ? "AND user_inactive_time >= $limit_days" : ''); + $result = $db->sql_query($sql); + $user_count = (int) $db->sql_fetchfield('user_count'); + $db->sql_freeresult($result); + + return; +} + +/** * Lists warned users */ function view_warned_users(&$users, &$user_count, $limit = 0, $offset = 0, $limit_days = 0, $sort_by = 'user_warnings DESC') |