From bfcf6a1de5181a0b26b247f8cb9e181b8c83ff90 Mon Sep 17 00:00:00 2001 From: Ruslan Uzdenov Date: Mon, 22 Jun 2009 14:36:04 +0000 Subject: [PATCH] Fix bug #46765 - View unread posts Authorised by: acydburn git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9653 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/docs/CHANGELOG.html | 1 + phpBB/includes/functions.php | 1 + phpBB/language/en/common.php | 1 + phpBB/search.php | 5 +++++ phpBB/styles/prosilver/template/index_body.html | 2 +- phpBB/styles/subsilver2/template/overall_header.html | 2 +- 6 files changed, 10 insertions(+), 2 deletions(-) diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index f9d3fd73eb..27fcf1d530 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -159,6 +159,7 @@
  • [Feature] Enhance obtain_users_online_string to be able to return user-lists for other session-items (Bug #31975 - Patch by nickvergessen)
  • [Feature] Add unapproved topic icon for moderators on forum list (Bug #46865 - Patch by nickvergessen)
  • [Feature] Add confirm-box when deleting permissions (Bug #13673 - Patch by nickvergessen)
  • +
  • [Feature] Add unread posts quick search option (Bug #46765 - Patch by rxu)
  • 1.ii. Changes since 3.0.4

    diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index 14e1dde92f..12b9363ec4 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -3840,6 +3840,7 @@ function page_header($page_title = '', $display_online_list = true) 'U_SEARCH_SELF' => append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=egosearch'), 'U_SEARCH_NEW' => append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=newposts'), 'U_SEARCH_UNANSWERED' => append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=unanswered'), + 'U_SEARCH_UNREAD' => append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=unreadposts'), 'U_SEARCH_ACTIVE_TOPICS'=> append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=active_topics'), 'U_DELETE_COOKIES' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=delete_cookies'), 'U_TEAM' => ($user->data['user_id'] != ANONYMOUS && !$auth->acl_get('u_viewprofile')) ? '' : append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=leaders'), diff --git a/phpBB/language/en/common.php b/phpBB/language/en/common.php index 6f3433892a..a2b8eafd52 100644 --- a/phpBB/language/en/common.php +++ b/phpBB/language/en/common.php @@ -522,6 +522,7 @@ $lang = array_merge($lang, array( 'SEARCH_SELF' => 'View your posts', 'SEARCH_TOPIC' => 'Search this topic…', 'SEARCH_UNANSWERED' => 'View unanswered posts', + 'SEARCH_UNREAD' => 'View unread posts', 'SECONDS' => 'Seconds', 'SELECT' => 'Select', 'SELECT_ALL_CODE' => 'Select all', diff --git a/phpBB/search.php b/phpBB/search.php index 5e2a7c2836..e5fd852e0d 100644 --- a/phpBB/search.php +++ b/phpBB/search.php @@ -348,6 +348,7 @@ if ($keywords || $author || $author_id || $search_id || $submit) break; case 'newposts': + case 'unreadposts': $l_search_title = $user->lang['SEARCH_NEW']; // force sorting $show_results = (request_var('sr', 'topics') == 'posts') ? 'posts' : 'topics'; @@ -803,6 +804,10 @@ if ($keywords || $author || $author_id || $search_id || $submit) topic_status($row, $replies, (isset($topic_tracking_info[$forum_id][$row['topic_id']]) && $row['topic_last_post_time'] > $topic_tracking_info[$forum_id][$row['topic_id']]) ? true : false, $folder_img, $folder_alt, $topic_type); $unread_topic = (isset($topic_tracking_info[$forum_id][$row['topic_id']]) && $row['topic_last_post_time'] > $topic_tracking_info[$forum_id][$row['topic_id']]) ? true : false; + if ($search_id == 'unreadposts' && !$unread_topic) + { + continue; + } $topic_unapproved = (!$row['topic_approved'] && $auth->acl_get('m_approve', $forum_id)) ? true : false; $posts_unapproved = ($row['topic_approved'] && $row['topic_replies'] < $row['topic_replies_real'] && $auth->acl_get('m_approve', $forum_id)) ? true : false; diff --git a/phpBB/styles/prosilver/template/index_body.html b/phpBB/styles/prosilver/template/index_body.html index 43d8ad0309..9cb4d2067d 100644 --- a/phpBB/styles/prosilver/template/index_body.html +++ b/phpBB/styles/prosilver/template/index_body.html @@ -6,7 +6,7 @@ diff --git a/phpBB/styles/subsilver2/template/overall_header.html b/phpBB/styles/subsilver2/template/overall_header.html index 6099a12338..c605871f0b 100644 --- a/phpBB/styles/subsilver2/template/overall_header.html +++ b/phpBB/styles/subsilver2/template/overall_header.html @@ -201,7 +201,7 @@ function marklist(id, name, state)