From 09bd156ba212f56cc62de85c53f14127c719522b Mon Sep 17 00:00:00 2001 From: Steven Wittens Date: Wed, 19 Jan 2005 01:46:25 +0000 Subject: - Fix tracker pager count query being wrong (it did not return a count but a set, and it counted nodes with more than 1 comment as multiple nodes). - Clean up various SQL queries: removing literally inserted data (db_escape_string is evil!), fixing single "%" which should be "%%", fixing integers being compared as strings. --- modules/tracker/tracker.module | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules/tracker/tracker.module') diff --git a/modules/tracker/tracker.module b/modules/tracker/tracker.module index db6a9057e..7c55cf27d 100644 --- a/modules/tracker/tracker.module +++ b/modules/tracker/tracker.module @@ -75,7 +75,7 @@ function tracker_page($uid = 0) { if ($uid) { $sql = 'SELECT n.nid, n.title, n.type, n.changed, n.uid, u.name, l.last_comment_timestamp AS last_post, l.comment_count FROM {node} n INNER JOIN {node_comment_statistics} l ON n.nid = l.nid INNER JOIN {users} u ON n.uid = u.uid LEFT JOIN {comments} c ON n.nid = c.nid AND (c.status = 0 OR c.status IS NULL) WHERE n.status = 1 AND (n.uid = %d OR c.uid = %d) ORDER BY last_post DESC'; $sql = node_rewrite_sql($sql); - $sql_count = 'SELECT n.nid FROM {node} n LEFT JOIN {comments} c ON n.nid = c.nid AND (c.status = 0 OR c.status IS NULL) WHERE n.status = 1 AND (n.uid = %d OR c.uid = %d)'; + $sql_count = 'SELECT COUNT(DISTINCT(n.nid)) FROM {node} n LEFT JOIN {comments} c ON n.nid = c.nid AND (c.status = 0 OR c.status IS NULL) WHERE n.status = 1 AND (n.uid = %d OR c.uid = %d)'; $sql_count = node_rewrite_sql($sql_count); $result = pager_query($sql, 25, 0, $sql_count, $uid, $uid); } -- cgit v1.2.3