aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoas Schilling <nickvergessen@gmx.de>2012-03-16 00:14:20 +0100
committerJoas Schilling <nickvergessen@gmx.de>2012-08-01 10:17:06 +0200
commit433442b40261d7d18427b6cd21fbf9acb15edd93 (patch)
tree66373e717ae7cb28487bdd3d00264a4bdd3f5759
parentbd3024b31875b220f8f00cafd81846b1f6aeeff2 (diff)
downloadforums-433442b40261d7d18427b6cd21fbf9acb15edd93.tar
forums-433442b40261d7d18427b6cd21fbf9acb15edd93.tar.gz
forums-433442b40261d7d18427b6cd21fbf9acb15edd93.tar.bz2
forums-433442b40261d7d18427b6cd21fbf9acb15edd93.tar.xz
forums-433442b40261d7d18427b6cd21fbf9acb15edd93.zip
[feature/events] Adding ledge viewonline_get_userdata
Used by phpBB Gallery PHPBB3-9550
-rw-r--r--phpBB/viewonline.php23
1 files changed, 17 insertions, 6 deletions
diff --git a/phpBB/viewonline.php b/phpBB/viewonline.php
index e709955653..55d663de20 100644
--- a/phpBB/viewonline.php
+++ b/phpBB/viewonline.php
@@ -121,13 +121,24 @@ if (!$show_guests)
}
// Get user list
-$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_browser, s.session_viewonline, s.session_forum_id
- FROM ' . USERS_TABLE . ' u, ' . SESSIONS_TABLE . ' s
- WHERE u.user_id = s.session_user_id
+$sql_ary = array(
+ '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_browser, s.session_viewonline, s.session_forum_id',
+ 'FROM' => array(
+ USERS_TABLE => 'u',
+ SESSIONS_TABLE => 's',
+ ),
+ 'WHERE' => 'u.user_id = s.session_user_id
AND s.session_time >= ' . (time() - ($config['load_online_time'] * 60)) .
- ((!$show_guests) ? ' AND s.session_user_id <> ' . ANONYMOUS : '') . '
- ORDER BY ' . $order_by;
-$result = $db->sql_query($sql);
+ ((!$show_guests) ? ' AND s.session_user_id <> ' . ANONYMOUS : ''),
+ 'ORDER_BY' => $order_by,
+);
+
+$vars = array('sql_ary', 'show_guests');
+$event = new phpbb_event_data(compact($vars));
+$phpbb_dispatcher->dispatch('core.viewonline_get_userdata', $event);
+extract($event->get_data_filtered($vars));
+
+$result = $db->sql_query($db->sql_build_query('SELECT', $sql_ary));
$prev_id = $prev_ip = $user_list = array();
$logged_visible_online = $logged_hidden_online = $counter = 0;