diff options
author | Gábor Hojtsy <gabor@hojtsy.hu> | 2007-08-09 10:37:41 +0000 |
---|---|---|
committer | Gábor Hojtsy <gabor@hojtsy.hu> | 2007-08-09 10:37:41 +0000 |
commit | 323fa356bd2137f873386191a061bdfaeffa7ae7 (patch) | |
tree | 5570029eee58e17149574bb7f01f23864fbb7b06 /modules | |
parent | 22a37e6fb26e08dc63c147ec8b274478ff7d0edd (diff) | |
download | brdo-323fa356bd2137f873386191a061bdfaeffa7ae7.tar.gz brdo-323fa356bd2137f873386191a061bdfaeffa7ae7.tar.bz2 |
#110511 by bjaspan: poll listing page should have a 'count_sql' because the original query uses group by, so it is not countable properly
Diffstat (limited to 'modules')
-rw-r--r-- | modules/poll/poll.module | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/modules/poll/poll.module b/modules/poll/poll.module index 325101bdf..b7bafdcc8 100644 --- a/modules/poll/poll.module +++ b/modules/poll/poll.module @@ -413,10 +413,12 @@ function poll_view($node, $teaser = FALSE, $page = FALSE, $block = FALSE) { * Menu callback to provide a simple list of all polls available. */ function poll_page() { - // List all polls + // List all polls. $sql = "SELECT n.nid, n.title, p.active, n.created, SUM(c.chvotes) AS votes FROM {node} n INNER JOIN {poll} p ON n.nid = p.nid INNER JOIN {poll_choices} c ON n.nid = c.nid WHERE n.status = 1 GROUP BY n.nid, n.title, p.active, n.created ORDER BY n.created DESC"; + // Count all polls for the pager. + $count_sql = 'SELECT COUNT(*) FROM {node} n INNER JOIN {poll} p ON n.nid = p.nid WHERE n.status = 1'; $sql = db_rewrite_sql($sql); - $result = pager_query($sql, 15); + $result = pager_query($sql, 15, 0, $count_sql); $output = '<ul>'; while ($node = db_fetch_object($result)) { $output .= '<li>'. l($node->title, "node/$node->nid") .' - '. format_plural($node->votes, '1 vote', '@count votes') .' - '. ($node->active ? t('open') : t('closed')) .'</li>'; |