diff --git a/mod/forum/lib.php b/mod/forum/lib.php index 676b5f89b08..3211d3ffc52 100644 --- a/mod/forum/lib.php +++ b/mod/forum/lib.php @@ -1278,7 +1278,9 @@ function forum_get_discussions($forum="0", $forumsort="d.timemodified DESC", $umtable = ' LEFT JOIN '.$CFG->prefix.'user um on (d.usermodified = um.id)'; } - return get_records_sql("SELECT $postdata, d.name, d.timemodified, d.usermodified, d.groupid, + //TODO: there must be a nice way to do this that keeps both postgres and mysql 3.2x happy but I can't find it right now. + if ($CFG->dbtype == 'postgres7') { + return get_records_sql("SELECT $postdata, d.name, d.timemodified, d.usermodified, d.groupid, u.firstname, u.lastname, u.email, u.picture $umfields FROM {$CFG->prefix}forum_discussions d JOIN {$CFG->prefix}forum_posts p ON p.discussion = d.id @@ -1288,6 +1290,19 @@ function forum_get_discussions($forum="0", $forumsort="d.timemodified DESC", AND p.parent = 0 $groupselect $userselect ORDER BY $forumsort $limit"); + } else { + return get_records_sql("SELECT $postdata, d.name, d.timemodified, d.usermodified, d.groupid, + u.firstname, u.lastname, u.email, u.picture $umfields + FROM {$CFG->prefix}forum_discussions d, + {$CFG->prefix}forum_posts p, + {$CFG->prefix}user u + $umtable + WHERE d.forum = '$forum' + AND p.discussion = d.id + AND p.parent = 0 + AND p.userid = u.id $groupselect $userselect + ORDER BY $forumsort $limit"); + } }