From 52f5c7d1ee6a9cfe7bd1a0b3a5d7262feebe6dc8 Mon Sep 17 00:00:00 2001 From: Henry Sudhof Date: Tue, 3 Jul 2007 15:14:20 +0000 Subject: [PATCH] #12955 hideonline/viewonline again (minor) git-svn-id: file:///svn/phpbb/trunk@7828 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/docs/CHANGELOG.html | 1 + phpBB/ucp.php | 6 +++--- phpBB/viewonline.php | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index 4f52a4358d..72b8a17608 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -216,6 +216,7 @@ p a {
  • [Fix] Minor language and style fixes (Bugs #12235, #12493, #11949)
  • [Feature] Added backlinks to mcp_report (Bug #12905)
  • [Fix] Only check usernames in guest posts upon edit (Bug #11349)
  • +
  • [Fix] Consider viewonline permission when viewing friends/foes (Bug #12955)
  • [Fix] Added proper unicode support to ban reasons (Bug #12947)
  • diff --git a/phpBB/ucp.php b/phpBB/ucp.php index b63c07ef2a..774f0e5651 100755 --- a/phpBB/ucp.php +++ b/phpBB/ucp.php @@ -256,7 +256,7 @@ if ($module->is_active('zebra', 'friends')) $update_time = $config['load_online_time'] * 60; $sql = $db->sql_build_query('SELECT_DISTINCT', array( - 'SELECT' => 'u.user_id, u.username, u.username_clean, u.user_colour, u.user_allow_viewonline, MAX(s.session_time) as online_time, MIN(s.session_viewonline) AS viewonline', + 'SELECT' => 'u.user_id, u.username, u.username_clean, u.user_colour, MAX(s.session_time) as online_time, MIN(s.session_viewonline) AS viewonline', 'FROM' => array( USERS_TABLE => 'u', @@ -274,7 +274,7 @@ if ($module->is_active('zebra', 'friends')) AND z.friend = 1 AND u.user_id = z.zebra_id', - 'GROUP_BY' => 'z.zebra_id, u.user_id, u.username_clean, u.user_allow_viewonline, u.user_colour, u.username', + 'GROUP_BY' => 'z.zebra_id, u.user_id, u.username_clean, u.user_colour, u.username', 'ORDER_BY' => 'u.username_clean ASC', )); @@ -283,7 +283,7 @@ if ($module->is_active('zebra', 'friends')) while ($row = $db->sql_fetchrow($result)) { - $which = (time() - $update_time < $row['online_time'] && $row['viewonline'] && $row['user_allow_viewonline']) ? 'online' : 'offline'; + $which = (time() - $update_time < $row['online_time'] && ($row['viewonline'] || $auth->acl_get('u_viewonline'))) ? 'online' : 'offline'; $template->assign_block_vars("friends_{$which}", array( 'USER_ID' => $row['user_id'], diff --git a/phpBB/viewonline.php b/phpBB/viewonline.php index f655718d7e..3bd6bfd51d 100644 --- a/phpBB/viewonline.php +++ b/phpBB/viewonline.php @@ -117,7 +117,7 @@ if (!$show_guests) } // Get user list -$sql = 'SELECT u.user_id, u.username, u.username_clean, u.user_type, u.user_allow_viewonline, u.user_colour, s.session_id, s.session_time, s.session_page, s.session_ip, s.session_viewonline +$sql = 'SELECT u.user_id, u.username, u.username_clean, u.user_type, u.user_colour, s.session_id, s.session_time, s.session_page, s.session_ip, s.session_viewonline FROM ' . USERS_TABLE . ' u, ' . SESSIONS_TABLE . ' s WHERE u.user_id = s.session_user_id AND s.session_time >= ' . (time() - ($config['load_online_time'] * 60)) .