diff options
| author | Paul S. Owen <psotfx@users.sourceforge.net> | 2003-06-23 14:00:57 +0000 |
|---|---|---|
| committer | Paul S. Owen <psotfx@users.sourceforge.net> | 2003-06-23 14:00:57 +0000 |
| commit | 7661a5d040a3827e9ab39b825b47a8f036cda21b (patch) | |
| tree | 8201c04116534dea228aa05d6f8e0f6a01943ffb /phpBB/viewforum.php | |
| parent | 36685677dd8a7a607629394c3f6d238efe689139 (diff) | |
| download | forums-7661a5d040a3827e9ab39b825b47a8f036cda21b.tar forums-7661a5d040a3827e9ab39b825b47a8f036cda21b.tar.gz forums-7661a5d040a3827e9ab39b825b47a8f036cda21b.tar.bz2 forums-7661a5d040a3827e9ab39b825b47a8f036cda21b.tar.xz forums-7661a5d040a3827e9ab39b825b47a8f036cda21b.zip | |
Global announcements ... sort of work ... well they seem to, need to look at possbility of splitting topics table in two
git-svn-id: file:///svn/phpbb/trunk@4167 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/viewforum.php')
| -rw-r--r-- | phpBB/viewforum.php | 37 |
1 files changed, 16 insertions, 21 deletions
diff --git a/phpBB/viewforum.php b/phpBB/viewforum.php index 80285cbe74..1cec5b663d 100644 --- a/phpBB/viewforum.php +++ b/phpBB/viewforum.php @@ -217,7 +217,8 @@ if ($forum_data['forum_type'] == FORUM_POST) $sql = 'SELECT COUNT(topic_id) AS num_topics FROM ' . TOPICS_TABLE . " WHERE forum_id = $forum_id - AND (topic_last_post_time >= $min_post_time) + AND topic_type <> " . POST_ANNOUNCE . " + AND topic_last_post_time >= $min_post_time " . (($auth->acl_get('m_approve', $forum_id)) ? '' : 'AND t.topic_approved = 1'); $result = $db->sql_query($sql); @@ -304,7 +305,6 @@ if ($forum_data['forum_type'] == FORUM_POST) $total_topics = 0; $row_ary = array(); - switch (SQL_LAYER) { case 'oracle': @@ -320,9 +320,9 @@ if ($forum_data['forum_type'] == FORUM_POST) $sql = "SELECT t.* $sql_select FROM $sql_from WHERE t.forum_id IN ($forum_id, 0) - AND t.topic_type = " . POST_ANNOUNCE . " + AND t.topic_type IN (" . POST_ANNOUNCE . ', ' . POST_GLOBAL . ") ORDER BY $sql_sort_order"; - $result = $db->sql_query_limit($sql, $config['topics_per_page']); + $result = $db->sql_query($sql); while($row = $db->sql_fetchrow($result)) { @@ -366,7 +366,6 @@ if ($forum_data['forum_type'] == FORUM_POST) { $topic_id = $row['topic_id']; - if ($config['load_db_lastread']) { $mark_time_topic = $row['mark_time']; @@ -374,7 +373,8 @@ if ($forum_data['forum_type'] == FORUM_POST) else { $topic_id36 = base_convert($topic_id, 10, 36); - $mark_time_topic = (isset($tracking_topics[$forum_id][$topic_id36])) ? base_convert($tracking_topics[$forum_id][$topic_id36], 36, 10) + $config['board_startdate'] : 0; + $forum_id36 = ($row['topic_type'] == POST_GLOBAL) ? 0 : $row['forum_id']; + $mark_time_topic = (isset($tracking_topics[$forum_id36][$topic_id36])) ? base_convert($tracking_topics[$forum_id36][$topic_id36], 36, 10) + $config['board_startdate'] : 0; } @@ -465,20 +465,20 @@ if ($forum_data['forum_type'] == FORUM_POST) // Goto message generation - if (($replies + 1) > intval($config['posts_per_page'])) + if (($replies + 1) > $config['posts_per_page']) { - $total_pages = ceil(($replies + 1) / intval($config['posts_per_page'])); + $total_pages = ceil(($replies + 1) / $config['posts_per_page']); $goto_page = ' [ ' . $user->img('icon_post', 'GOTO_PAGE') . $user->lang['GOTO_PAGE'] . ': '; $times = 1; - for($j = 0; $j < $replies + 1; $j += intval($config['posts_per_page'])) + for($j = 0; $j < $replies + 1; $j += $config['posts_per_page']) { $goto_page .= "<a href=\"viewtopic.$phpEx$SID&f=$forum_id&t=$topic_id&start=$j\">$times</a>"; if ($times == 1 && $total_pages > 4) { $goto_page .= ' ... '; $times = $total_pages - 3; - $j += ($total_pages - 4) * intval($config['posts_per_page']); + $j += ($total_pages - 4) * $config['posts_per_page']; } else if ($times < $total_pages) { @@ -505,26 +505,21 @@ if ($forum_data['forum_type'] == FORUM_POST) $last_post_author = ($row['topic_last_poster_id'] == ANONYMOUS) ? (($row['topic_last_poster_name'] != '') ? $row['topic_last_poster_name'] . ' ' : $user->lang['GUEST'] . ' ') : "<a href=\"memberlist.$phpEx$SID&mode=viewprofile&u=" . $row['topic_last_poster_id'] . '">' . $row['topic_last_poster_name'] . '</a>'; - $first_post_time = $user->format_date($row['topic_time'], $config['board_timezone']); - - $last_post_time = $user->format_date($row['topic_last_post_time']); - - $last_view_time = $user->format_date($row['topic_last_view_time']); // This will allow the style designer to output a different header // or even seperate the list of announcements from sticky and normal // topics - $s_type_switch_test = ($row['topic_type'] == POST_ANNOUNCE) ? 1 : 0; + $s_type_switch_test = ($row['topic_type'] == POST_ANNOUNCE || $row['topic_type'] == POST_GLOBAL) ? 1 : 0; // Send vars to template $template->assign_block_vars('topicrow', array( 'FORUM_ID' => $forum_id, 'TOPIC_ID' => $topic_id, 'TOPIC_AUTHOR' => $topic_author, - 'FIRST_POST_TIME' => $first_post_time, - 'LAST_POST_TIME' => $last_post_time, + 'FIRST_POST_TIME' => $user->format_date($row['topic_time'], $config['board_timezone']), + 'LAST_POST_TIME' => $user->format_date($row['topic_last_post_time']), + 'LAST_VIEW_TIME' => $user->format_date($row['topic_last_view_time']), 'LAST_POST_AUTHOR' => $last_post_author, - 'LAST_VIEW_TIME' => $last_view_time, 'GOTO_PAGE' => $goto_page, 'REPLIES' => ($auth->acl_get('m_approve')) ? $row['topic_replies_real'] : $row['topic_replies'], 'VIEWS' => $row['topic_views'], @@ -542,13 +537,13 @@ if ($forum_data['forum_type'] == FORUM_POST) 'S_TOPIC_TYPE' => $row['topic_type'], 'S_USER_POSTED' => (!empty($row['mark_type'])) ? true : false, - 'S_TOPIC_REPORTED' => (!empty($row['topic_reported']) && $auth->acl_gets('m_', $forum_id)) ? TRUE : FALSE, + 'S_TOPIC_REPORTED' => (!empty($row['topic_reported']) && $auth->acl_gets('m_', $forum_id)) ? TRUE : FALSE, 'S_TOPIC_UNAPPROVED' => (!$row['topic_approved'] && $auth->acl_gets('m_approve', $forum_id)) ? TRUE : FALSE, 'U_VIEW_TOPIC' => $view_topic_url) ); - $s_type_switch = ($row['topic_type'] == POST_ANNOUNCE) ? 1 : 0; + $s_type_switch = ($row['topic_type'] == POST_ANNOUNCE || $row['topic_type'] == POST_GLOBAL) ? 1 : 0; $i++; |
