diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index d59fd67a65..756754ddeb 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -202,7 +202,6 @@
  • [Fix] Make sure only logs for existing users are displayed and user-specific logs removed on user deletion. (Bug #49855)
  • [Fix] Only show "Add friend" and "Add foe" links if the specific module is enabled. (Bug #50475)
  • [Fix] Correctly display list items in forum description in prosilver and administration. (Bug #48055 - Patch by leviatan21)
  • -
  • [Fix] Fix handling of bookmarks and subscriptions on "split topics", "merge topics" and "merge posts". (Bug #50035)
  • [Fix] Only embed cron.php if there is no cron lock present to reduce overhead. (Bug #45725 - Patch by TerryE)
  • [Fix] Add header gradient back into subsilver2 but keep site logo easily replaceable with smaller and bigger ones. (Bug #11142 - Patch by dark/Rain and Raimon)
  • [Fix] Send activation email when activating user from user settings. (Bug #43145)
  • diff --git a/phpBB/includes/mcp/mcp_forum.php b/phpBB/includes/mcp/mcp_forum.php index acb7aa4ac0..b70601b479 100644 --- a/phpBB/includes/mcp/mcp_forum.php +++ b/phpBB/includes/mcp/mcp_forum.php @@ -416,14 +416,11 @@ function merge_topics($forum_id, $topic_ids, $to_topic_id) // If the topic no longer exist, we will update the topic watch table. // To not let it error out on users watching both topics, we just return on an error... - // Same for Bookmarks $db->sql_return_on_error(true); $db->sql_query('UPDATE ' . TOPICS_WATCH_TABLE . ' SET topic_id = ' . (int) $to_topic_id . ' WHERE ' . $db->sql_in_set('topic_id', $topic_ids)); - $db->sql_query('UPDATE ' . BOOKMARKS_TABLE . ' SET topic_id = ' . (int) $to_topic_id . ' WHERE ' . $db->sql_in_set('topic_id', $topic_ids)); $db->sql_return_on_error(false); $db->sql_query('DELETE FROM ' . TOPICS_WATCH_TABLE . ' WHERE ' . $db->sql_in_set('topic_id', $topic_ids)); - $db->sql_query('DELETE FROM ' . BOOKMARKS_TABLE . ' WHERE ' . $db->sql_in_set('topic_id', $topic_ids)); // Link to the new topic $return_link .= (($return_link) ? '

    ' : '') . sprintf($user->lang['RETURN_NEW_TOPIC'], '', ''); diff --git a/phpBB/includes/mcp/mcp_topic.php b/phpBB/includes/mcp/mcp_topic.php index eb3d6d3970..abdb839e7b 100644 --- a/phpBB/includes/mcp/mcp_topic.php +++ b/phpBB/includes/mcp/mcp_topic.php @@ -504,45 +504,6 @@ function split_topic($action, $topic_id, $to_forum_id, $subject) // Update forum statistics set_config_count('num_topics', 1, true); - // Add new topic to bookmarks - $bookmarks = array(); - $sql = 'SELECT user_id - FROM ' . BOOKMARKS_TABLE . ' - WHERE topic_id = ' . $topic_id; - $result = $db->sql_query($sql); - while ($row = $db->sql_fetchrow($result)) - { - $bookmarks[] = array( - 'user_id' => (int) $row['user_id'], - 'topic_id' => $to_topic_id, - ); - } - $db->sql_freeresult($result); - if (sizeof($bookmarks)) - { - $db->sql_multi_insert(BOOKMARKS_TABLE, $bookmarks); - } - - // Add new topic to watch-list - $notifications = array(); - $sql = 'SELECT user_id, notify_status - FROM ' . TOPICS_WATCH_TABLE . ' - WHERE topic_id = ' . $topic_id; - $result = $db->sql_query($sql); - while ($row = $db->sql_fetchrow($result)) - { - $notifications[] = array( - 'user_id' => (int) $row['user_id'], - 'topic_id' => $to_topic_id, - 'notify_status' => (int) $row['notify_status'], - ); - } - $db->sql_freeresult($result); - if (sizeof($notifications)) - { - $db->sql_multi_insert(TOPICS_WATCH_TABLE, $notifications); - } - // Link back to both topics $return_link = sprintf($user->lang['RETURN_TOPIC'], '', '') . '

    ' . sprintf($user->lang['RETURN_NEW_TOPIC'], '', ''); } @@ -636,65 +597,17 @@ function merge_posts($topic_id, $to_topic_id) if ($row) { - // Add new topic to bookmarks - $bookmarks = array(); - $sql = 'SELECT user_id - FROM ' . BOOKMARKS_TABLE . ' - WHERE topic_id = ' . (int) $topic_id; - $result = $db->sql_query($sql); - while ($row = $db->sql_fetchrow($result)) - { - $bookmarks[] = array( - 'user_id' => (int) $row['user_id'], - 'topic_id' => (int) $to_topic_id, - ); - } - $db->sql_freeresult($result); - if (sizeof($bookmarks)) - { - // To not let it error out on users, who already bookmarked the topic, we just return on an error... - $db->sql_return_on_error(true); - $db->sql_multi_insert(BOOKMARKS_TABLE, $bookmarks); - $db->sql_return_on_error(false); - } - - // Add new topic to notifications - $notifications = array(); - $sql = 'SELECT user_id, notify_status - FROM ' . TOPICS_WATCH_TABLE . ' - WHERE topic_id = ' . (int) $topic_id; - $result = $db->sql_query($sql); - while ($row = $db->sql_fetchrow($result)) - { - $notifications[] = array( - 'user_id' => (int) $row['user_id'], - 'topic_id' => (int) $to_topic_id, - 'notify_status' => (int) $row['notify_status'], - ); - } - $db->sql_freeresult($result); - if (sizeof($notifications)) - { - // To not let it error out on users, who already watch the topic, we just return on an error... - $db->sql_return_on_error(true); - $db->sql_multi_insert(TOPICS_WATCH_TABLE, $notifications); - $db->sql_return_on_error(false); - } - $return_link .= sprintf($user->lang['RETURN_TOPIC'], '', ''); } else { // If the topic no longer exist, we will update the topic watch table. // To not let it error out on users watching both topics, we just return on an error... - // Same for bookmarks $db->sql_return_on_error(true); $db->sql_query('UPDATE ' . TOPICS_WATCH_TABLE . ' SET topic_id = ' . (int) $to_topic_id . ' WHERE topic_id = ' . (int) $topic_id); - $db->sql_query('UPDATE ' . BOOKMARKS_TABLE . ' SET topic_id = ' . (int) $to_topic_id . ' WHERE topic_id = ' . (int) $topic_id); $db->sql_return_on_error(false); $db->sql_query('DELETE FROM ' . TOPICS_WATCH_TABLE . ' WHERE topic_id = ' . (int) $topic_id); - $db->sql_query('DELETE FROM ' . BOOKMARKS_TABLE . ' WHERE topic_id = ' . (int) $topic_id); } // Link to the new topic