#54098, forum "last post" column show oldest, not most recent, patch by Zen.
parent
ae5a0b9aa9
commit
717d6e30c5
|
@ -663,10 +663,6 @@ function _forum_format($topic) {
|
|||
*/
|
||||
function forum_get_forums($tid = 0) {
|
||||
|
||||
if (!$tid) {
|
||||
$tid = 0;
|
||||
}
|
||||
|
||||
$forums = array();
|
||||
$_forums = taxonomy_get_tree(variable_get('forum_nav_vocabulary', ''), $tid);
|
||||
|
||||
|
@ -699,7 +695,7 @@ function forum_get_forums($tid = 0) {
|
|||
// This query does not use full ANSI syntax since MySQL 3.x does not support
|
||||
// table1 INNER JOIN table2 INNER JOIN table3 ON table2_criteria ON table3_criteria
|
||||
// used to join node_comment_statistics to users.
|
||||
$sql = "SELECT n.nid, f.tid, n.title, n.sticky, u.name, u.uid, n.created AS timestamp, n.comment AS comment_mode, l.last_comment_timestamp, IF(l.last_comment_uid != 0, cu.name, l.last_comment_name) AS last_comment_name, l.last_comment_uid, l.comment_count AS num_comments FROM {node} n INNER JOIN {users} u ON n.uid = u.uid INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {forum} f ON n.vid = f.vid INNER JOIN {node_comment_statistics} l ON n.nid = l.nid INNER JOIN {users} cu ON l.last_comment_uid = cu.uid WHERE n.status = 1 AND r.tid = %d";
|
||||
$sql = "SELECT ncs.last_comment_timestamp, IF (ncs.last_comment_uid != 0, u2.name, ncs.last_comment_name) AS last_comment_name, ncs.last_comment_uid FROM {node} n INNER JOIN {users} u1 ON n.uid = u1.uid INNER JOIN {term_node} tn ON n.nid = tn.nid INNER JOIN {node_comment_statistics} ncs ON n.nid = ncs.nid INNER JOIN users u2 ON ncs.last_comment_uid=u2.uid WHERE n.status = 1 AND tn.tid = %d ORDER BY ncs.last_comment_timestamp DESC";
|
||||
$sql = db_rewrite_sql($sql);
|
||||
$topic = db_fetch_object(db_query_range($sql, $forum->tid, 0, 1));
|
||||
|
||||
|
|
|
@ -663,10 +663,6 @@ function _forum_format($topic) {
|
|||
*/
|
||||
function forum_get_forums($tid = 0) {
|
||||
|
||||
if (!$tid) {
|
||||
$tid = 0;
|
||||
}
|
||||
|
||||
$forums = array();
|
||||
$_forums = taxonomy_get_tree(variable_get('forum_nav_vocabulary', ''), $tid);
|
||||
|
||||
|
@ -699,7 +695,7 @@ function forum_get_forums($tid = 0) {
|
|||
// This query does not use full ANSI syntax since MySQL 3.x does not support
|
||||
// table1 INNER JOIN table2 INNER JOIN table3 ON table2_criteria ON table3_criteria
|
||||
// used to join node_comment_statistics to users.
|
||||
$sql = "SELECT n.nid, f.tid, n.title, n.sticky, u.name, u.uid, n.created AS timestamp, n.comment AS comment_mode, l.last_comment_timestamp, IF(l.last_comment_uid != 0, cu.name, l.last_comment_name) AS last_comment_name, l.last_comment_uid, l.comment_count AS num_comments FROM {node} n INNER JOIN {users} u ON n.uid = u.uid INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {forum} f ON n.vid = f.vid INNER JOIN {node_comment_statistics} l ON n.nid = l.nid INNER JOIN {users} cu ON l.last_comment_uid = cu.uid WHERE n.status = 1 AND r.tid = %d";
|
||||
$sql = "SELECT ncs.last_comment_timestamp, IF (ncs.last_comment_uid != 0, u2.name, ncs.last_comment_name) AS last_comment_name, ncs.last_comment_uid FROM {node} n INNER JOIN {users} u1 ON n.uid = u1.uid INNER JOIN {term_node} tn ON n.nid = tn.nid INNER JOIN {node_comment_statistics} ncs ON n.nid = ncs.nid INNER JOIN users u2 ON ncs.last_comment_uid=u2.uid WHERE n.status = 1 AND tn.tid = %d ORDER BY ncs.last_comment_timestamp DESC";
|
||||
$sql = db_rewrite_sql($sql);
|
||||
$topic = db_fetch_object(db_query_range($sql, $forum->tid, 0, 1));
|
||||
|
||||
|
|
Loading…
Reference in New Issue