summaryrefslogtreecommitdiff
path: root/modules/forum
diff options
context:
space:
mode:
authorAngie Byron <webchick@24967.no-reply.drupal.org>2010-06-20 23:55:08 +0000
committerAngie Byron <webchick@24967.no-reply.drupal.org>2010-06-20 23:55:08 +0000
commit2cca6c575488f25d37bdcdd984cc4e960776d45a (patch)
tree6cf2e4f739edd991f3e978bcbd6edbd78a76517b /modules/forum
parentf0a18039e24efb6677557ac32eb1f156d3566867 (diff)
downloadbrdo-2cca6c575488f25d37bdcdd984cc4e960776d45a.tar.gz
brdo-2cca6c575488f25d37bdcdd984cc4e960776d45a.tar.bz2
#831070 by Josh Waihi: Fixed PostgreSQL breaks on forums with IF() syntax.
Diffstat (limited to 'modules/forum')
-rw-r--r--modules/forum/forum.module4
1 files changed, 2 insertions, 2 deletions
diff --git a/modules/forum/forum.module b/modules/forum/forum.module
index 9984787e6..720ee514f 100644
--- a/modules/forum/forum.module
+++ b/modules/forum/forum.module
@@ -816,7 +816,7 @@ function forum_forum_load($tid = NULL) {
$query->join('forum', 'f', 'n.vid = f.vid AND f.tid = :tid', array(':tid' => $forum->tid));
$query->join('node_comment_statistics', 'ncs', 'n.nid = ncs.nid');
$query->join('users', 'u2', 'ncs.last_comment_uid = u2.uid');
- $query->addExpression('IF (ncs.last_comment_uid != 0, u2.name, ncs.last_comment_name)', 'last_comment_name');
+ $query->addExpression('CASE ncs.last_comment_uid WHEN 0 THEN ncs.last_comment_name ELSE u2.name END', 'last_comment_name');
$topic = $query
->fields('ncs', array('last_comment_timestamp', 'last_comment_uid'))
@@ -902,7 +902,7 @@ function forum_get_topics($tid, $sortby, $forum_per_page) {
$nids[] = $record->nid;
}
if ($nids) {
- $result = db_query("SELECT n.title, n.nid, n.type, n.sticky, n.created, n.uid, n.comment AS comment_mode, ncs.*, f.tid AS forum_tid, u.name, IF (ncs.last_comment_uid != 0, u2.name, ncs.last_comment_name) AS last_comment_name FROM {node} n INNER JOIN {node_comment_statistics} ncs ON n.nid = ncs.nid INNER JOIN {forum} f ON n.vid = f.vid INNER JOIN {users} u ON n.uid = u.uid INNER JOIN {users} u2 ON ncs.last_comment_uid = u2.uid WHERE n.nid IN (:nids)", array(':nids' => $nids));
+ $result = db_query("SELECT n.title, n.nid, n.type, n.sticky, n.created, n.uid, n.comment AS comment_mode, ncs.*, f.tid AS forum_tid, u.name, CASE ncs.last_comment_uid WHEN 0 THEN ncs.last_comment_name ELSE u2.name END AS last_comment_name FROM {node} n INNER JOIN {node_comment_statistics} ncs ON n.nid = ncs.nid INNER JOIN {forum} f ON n.vid = f.vid INNER JOIN {users} u ON n.uid = u.uid INNER JOIN {users} u2 ON ncs.last_comment_uid = u2.uid WHERE n.nid IN (:nids)", array(':nids' => $nids));
}
else {
$result = array();