// Number of forum topics per page. $threads_per_page = 50; // print links to other pages in this forum // If there are more than the threshold number of threads on the page, // show only the first $thread_per_page and display links to the rest // // function show_page_nav($forum) { global $threads_per_page; if ($forum->threads > $threads_per_page) { $totalPages = floor($forum->threads / $threads_per_page); $curPage = floor($_GET['start'] / $threads_per_page); $pages = array(0, 1, 2); for ($i = -1 ; $i <= 1 ; $i++) { if ($curPage + $i > 0 && $curPage + $i < $totalPages - 1) { array_push($pages, $curPage + $i); } } for ($i = -3 ; $i <= -1 ; $i++) { if ($totalPages + $i > 0) { array_push($pages, $totalPages + $i); } } $pages = array_unique($pages); natsort($pages); $pages = array_values($pages); $gotoStr = '
Go to page ';
if ($curPage == 0) {
$gotoStr .= '1';
} else {
$gotoStr .= '1';
}
for ($i = 1 ; $i < count($pages)-1 ; $i++) {
if ($curPage == $pages[$i]) {
$gotoStr .= ($i > 0 && $pages[$i-1] == $pages[$i] - 1)?', ':' ... ';
$gotoStr .= ''.($pages[$i]+1).'';
} else {
$gotoStr .= ($i > 0 && $pages[$i-1] == $pages[$i] - 1)?', ':' ... ';
$gotoStr .= '';
}
}
if ($curPage == $totalPages-1) {
$gotoStr .= ', '.$totalPages.'';
} else {
$gotoStr .= ', ';
$gotoStr .= 'is_helpdesk) {
start_forum_table(array("Question", "Answers"));
} else {
start_forum_table(array("Threads", "Posts", "Author", "Views", "Last post"));
}
$threads = getThreads($forum->id, $start, $threads_per_page, $sort_style);
$n = 0;
while ($thread = mysql_fetch_object($threads)) {
$user = lookup_user_id($thread->owner);
$first_post = getFirstPost($thread->id);
$excerpt = sub_sentence($first_post->content, ' ', EXCERPT_LENGTH, true);
echo "
";
}
end_forum_table();
if ($forum->threads > $n) {
echo $gotoStr;
}
}
?>
id, "\">", strip_tags(stripslashes($thread->title)), " ";
$x = time_diff_str($thread->timestamp, time());
if ($category->is_helpdesk) {
if ($thread->replies == 0) $x = "---";
echo "
";
$n = ($n+1)%2;
if ($category->is_helpdesk) {
echo strip_tags(stripslashes($excerpt));
$na = $thread->sufferers + 1;
$x = time_diff_str($first_post->timestamp, time());
echo "
Asked $x; asked $na times";
}
echo "
Total: $thread->replies
";
} else {
echo "
Last: $x
", $thread->replies+1, "
", user_links($user, "../"), "
", $thread->views, "
", $x, "
";
}
echo "