aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/ucp.php
diff options
context:
space:
mode:
authorDavid M <davidmj@users.sourceforge.net>2006-05-05 22:06:17 +0000
committerDavid M <davidmj@users.sourceforge.net>2006-05-05 22:06:17 +0000
commit3d2a45ab049606701172c11552aa0c1006d2fbf1 (patch)
treeea65a291ac3901d723f33446c54e449e3218ea13 /phpBB/ucp.php
parentb6ffae82b938eb3c40395234f14d79b53ba003c4 (diff)
downloadforums-3d2a45ab049606701172c11552aa0c1006d2fbf1.tar
forums-3d2a45ab049606701172c11552aa0c1006d2fbf1.tar.gz
forums-3d2a45ab049606701172c11552aa0c1006d2fbf1.tar.bz2
forums-3d2a45ab049606701172c11552aa0c1006d2fbf1.tar.xz
forums-3d2a45ab049606701172c11552aa0c1006d2fbf1.zip
I hope nothing broke!
- Added a query builder, it is currently only used for complex queries that involve a FROM clause with two tables and a left join - Changed some function calls in the DBAL - Made the viewtopic queries nicer git-svn-id: file:///svn/phpbb/trunk@5885 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/ucp.php')
-rwxr-xr-xphpBB/ucp.php29
1 files changed, 22 insertions, 7 deletions
diff --git a/phpBB/ucp.php b/phpBB/ucp.php
index 95e2d55b78..36b7afadfc 100755
--- a/phpBB/ucp.php
+++ b/phpBB/ucp.php
@@ -244,13 +244,28 @@ if (!$user->data['is_registered'])
// Output listing of friends online
$update_time = $config['load_online_time'] * 60;
-$sql = 'SELECT DISTINCT u.user_id, u.username, u.user_allow_viewonline, MAX(s.session_time) as online_time, MIN(s.session_viewonline) AS viewonline
- FROM (' . USERS_TABLE . ' u, ' . ZEBRA_TABLE . ' z)
- LEFT JOIN ' . SESSIONS_TABLE . ' s ON (s.session_user_id = z.zebra_id)
- WHERE z.user_id = ' . $user->data['user_id'] . '
- AND z.friend = 1
- AND u.user_id = z.zebra_id
- GROUP BY z.zebra_id, u.user_id, u.username, u.user_allow_viewonline';
+$sql = $db->sql_build_query('SELECT_DISTINCT', array(
+ 'SELECT' => 'u.user_id, u.username, u.user_allow_viewonline, MAX(s.session_time) as online_time, MIN(s.session_viewonline) AS viewonline',
+
+ 'FROM' => array(
+ USERS_TABLE => 'u',
+ ZEBRA_TABLE => 'z'
+ ),
+
+ 'LEFT_JOIN' => array(
+ array(
+ 'FROM' => array(SESSIONS_TABLE => 's'),
+ 'ON' => 's.session_user_id = z.zebra_id'
+ )
+ ),
+
+ 'WHERE' => 'z.user_id = ' . $user->data['user_id'] . '
+ AND z.friend = 1
+ AND u.user_id = z.zebra_id',
+
+ 'GROUP_BY' => 'z.zebra_id, u.user_id, u.username, u.user_allow_viewonline'
+));
+
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))