diff options
author | Joas Schilling <nickvergessen@gmx.de> | 2012-03-16 00:14:20 +0100 |
---|---|---|
committer | Joas Schilling <nickvergessen@gmx.de> | 2012-08-01 10:17:06 +0200 |
commit | 433442b40261d7d18427b6cd21fbf9acb15edd93 (patch) | |
tree | 66373e717ae7cb28487bdd3d00264a4bdd3f5759 | |
parent | bd3024b31875b220f8f00cafd81846b1f6aeeff2 (diff) | |
download | forums-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.php | 23 |
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; |