mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-05 05:55:15 +02:00
Merge remote-tracking branch 'github-bantu/ticket/9995' into develop-olympus
* github-bantu/ticket/9995: [ticket/9995] Do not run forum SQL query when marking the whole board read. [ticket/9995] Always continue when harvesting $forum_ids for markread(). [ticket/9995] Remove useless statement from display_forums()
This commit is contained in:
commit
d602f74866
@ -51,6 +51,27 @@ function display_forums($root_data = '', $display_moderators = true, $return_mod
|
|||||||
$sql_where = 'left_id > ' . $root_data['left_id'] . ' AND left_id < ' . $root_data['right_id'];
|
$sql_where = 'left_id > ' . $root_data['left_id'] . ' AND left_id < ' . $root_data['right_id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Handle marking everything read
|
||||||
|
if ($mark_read == 'all')
|
||||||
|
{
|
||||||
|
$redirect = build_url(array('mark', 'hash'));
|
||||||
|
meta_refresh(3, $redirect);
|
||||||
|
|
||||||
|
if (check_link_hash(request_var('hash', ''), 'global'))
|
||||||
|
{
|
||||||
|
markread('all');
|
||||||
|
|
||||||
|
trigger_error(
|
||||||
|
$user->lang['FORUMS_MARKED'] . '<br /><br />' .
|
||||||
|
sprintf($user->lang['RETURN_INDEX'], '<a href="' . $redirect . '">', '</a>')
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
trigger_error(sprintf($user->lang['RETURN_PAGE'], '<a href="' . $redirect . '">', '</a>'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Display list of active topics for this category?
|
// Display list of active topics for this category?
|
||||||
$show_active = (isset($root_data['forum_flags']) && ($root_data['forum_flags'] & FORUM_FLAG_ACTIVE_TOPICS)) ? true : false;
|
$show_active = (isset($root_data['forum_flags']) && ($root_data['forum_flags'] & FORUM_FLAG_ACTIVE_TOPICS)) ? true : false;
|
||||||
|
|
||||||
@ -120,13 +141,14 @@ function display_forums($root_data = '', $display_moderators = true, $return_mod
|
|||||||
$forum_id = $row['forum_id'];
|
$forum_id = $row['forum_id'];
|
||||||
|
|
||||||
// Mark forums read?
|
// Mark forums read?
|
||||||
if ($mark_read == 'forums' || $mark_read == 'all')
|
if ($mark_read == 'forums')
|
||||||
{
|
{
|
||||||
if ($auth->acl_get('f_list', $forum_id))
|
if ($auth->acl_get('f_list', $forum_id))
|
||||||
{
|
{
|
||||||
$forum_ids[] = $forum_id;
|
$forum_ids[] = $forum_id;
|
||||||
continue;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Category with no members
|
// Category with no members
|
||||||
@ -152,8 +174,6 @@ function display_forums($root_data = '', $display_moderators = true, $return_mod
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
$forum_ids[] = $forum_id;
|
|
||||||
|
|
||||||
if ($config['load_db_lastread'] && $user->data['is_registered'])
|
if ($config['load_db_lastread'] && $user->data['is_registered'])
|
||||||
{
|
{
|
||||||
$forum_tracking_info[$forum_id] = (!empty($row['mark_time'])) ? $row['mark_time'] : $user->data['user_lastmark'];
|
$forum_tracking_info[$forum_id] = (!empty($row['mark_time'])) ? $row['mark_time'] : $user->data['user_lastmark'];
|
||||||
@ -255,24 +275,16 @@ function display_forums($root_data = '', $display_moderators = true, $return_mod
|
|||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
// Handle marking posts
|
// Handle marking posts
|
||||||
if ($mark_read == 'forums' || $mark_read == 'all')
|
if ($mark_read == 'forums')
|
||||||
{
|
{
|
||||||
$redirect = build_url(array('mark', 'hash'));
|
$redirect = build_url(array('mark', 'hash'));
|
||||||
$token = request_var('hash', '');
|
$token = request_var('hash', '');
|
||||||
if (check_link_hash($token, 'global'))
|
if (check_link_hash($token, 'global'))
|
||||||
{
|
{
|
||||||
if ($mark_read == 'all')
|
// Add 0 to forums array to mark global announcements correctly
|
||||||
{
|
$forum_ids[] = 0;
|
||||||
markread('all');
|
markread('topics', $forum_ids);
|
||||||
$message = sprintf($user->lang['RETURN_INDEX'], '<a href="' . $redirect . '">', '</a>');
|
$message = sprintf($user->lang['RETURN_FORUM'], '<a href="' . $redirect . '">', '</a>');
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Add 0 to forums array to mark global announcements correctly
|
|
||||||
$forum_ids[] = 0;
|
|
||||||
markread('topics', $forum_ids);
|
|
||||||
$message = sprintf($user->lang['RETURN_FORUM'], '<a href="' . $redirect . '">', '</a>');
|
|
||||||
}
|
|
||||||
meta_refresh(3, $redirect);
|
meta_refresh(3, $redirect);
|
||||||
trigger_error($user->lang['FORUMS_MARKED'] . '<br /><br />' . $message);
|
trigger_error($user->lang['FORUMS_MARKED'] . '<br /><br />' . $message);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user