theme_forum_topic_list
Definition
theme_forum_topic_list($tid, $topics, $sortby, $forum_per_page)
modules/forum.module, line 888
Description
Format the topic listing.
Related topics
| Name | Description |
|---|---|
| Themeable functions | Functions that display HTML, and which can be customized by themes. |
Code
<?php
function theme_forum_topic_list($tid, $topics, $sortby, $forum_per_page) {
global $forum_topic_list_header;
if ($topics) {
foreach ($topics as $topic) {
// folder is new if topic is new or there are new comments since last visit
if ($topic->tid != $tid) {
$rows[] = array(
array('data' => _forum_icon($topic->new, $topic->num_comments, $topic->comment_mode, $topic->sticky), 'class' => 'icon'),
array('data' => check_plain($topic->title), 'class' => 'title'),
array('data' => l(t('This topic has been moved'), "forum/$topic->tid"), 'colspan' => '3')
);
}
else {
$rows[] = array(
array('data' => _forum_icon($topic->new, $topic->num_comments, $topic->comment_mode, $topic->sticky), 'class' => 'icon'),
array('data' => l($topic->title, "node/$topic->nid"), 'class' => 'topic'),
array('data' => $topic->num_comments . ($topic->new_replies ? '<br />'. l(t('%a new', array('%a' => $topic->new_replies)), "node/$topic->nid", NULL, NULL, 'new') : ''), 'class' => 'replies'),
array('data' => _forum_format($topic), 'class' => 'created'),
array('data' => _forum_format($topic->last_reply), 'class' => 'last-reply')
);
}
}
if ($pager = theme('pager', NULL, $forum_per_page, 0, tablesort_pager())) {
$rows[] = array(array('data' => $pager, 'colspan' => '5', 'class' => 'pager'));
}
}
$output .= theme('table', $forum_topic_list_header, $rows);
return $output;
}
?> 