diff --git a/app/controllers/forum_topics_controller.rb b/app/controllers/forum_topics_controller.rb index fc8e97830..2787c6971 100644 --- a/app/controllers/forum_topics_controller.rb +++ b/app/controllers/forum_topics_controller.rb @@ -78,7 +78,7 @@ class ForumTopicsController < ApplicationController @forum_topic = ForumTopic.find(params[:id]) @merged_topic = ForumTopic.find(params[:merged_id]) @forum_topic.merge(@merged_topic) - redirect_to forum_topic_path(@forum_topic) + redirect_to forum_topic_path(@merged_topic) end private diff --git a/app/models/forum_topic.rb b/app/models/forum_topic.rb index 9761466d0..45cfcd5c8 100644 --- a/app/models/forum_topic.rb +++ b/app/models/forum_topic.rb @@ -151,7 +151,8 @@ class ForumTopic < ActiveRecord::Base end def merge(topic) - ForumPost.where(:id => topic.posts.map(&:id)).update_all(:topic_id => id) - update_attribute(:is_deleted, true) + ForumPost.where(:id => self.posts.map(&:id)).update_all(:topic_id => topic.id) + topic.update_attribute(:response_count, topic.response_count + self.posts.length) + self.update_columns(:response_count => 0, :is_deleted => true) end end