Fix forum_post_id not being saved by alias/implication requests.

`forum_post_id` failed to save due to mass-assignment protection.

This caused alias approval messages ("The tag alias foo -> bar (forum #1234) has been approved.")
to not include the "(forum #1234)" bit because the forum id was nil.
This commit is contained in:
evazion
2017-11-15 16:38:18 -06:00
parent b5d602836c
commit 3cf753c540
3 changed files with 12 additions and 2 deletions

View File

@@ -31,7 +31,9 @@ class TagAliasRequest
@forum_topic = build_forum_topic(@tag_alias.id)
@forum_topic.save
@tag_alias.update_attributes(forum_topic_id: @forum_topic.id, forum_post_id: @forum_topic.posts.first.id)
@tag_alias.forum_topic_id = @forum_topic.id
@tag_alias.forum_post_id = @forum_topic.posts.first.id
@tag_alias.save
end
end

View File

@@ -31,7 +31,9 @@ class TagImplicationRequest
@forum_topic = build_forum_topic(@tag_implication.id)
@forum_topic.save
@tag_implication.update_attributes(:forum_topic_id => @forum_topic.id, :forum_post_id => @forum_topic.posts.first.id)
@tag_implication.forum_topic_id = @forum_topic.id
@tag_implication.forum_post_id = @forum_topic.posts.first.id
@tag_implication.save
end
end

View File

@@ -46,5 +46,11 @@ class TagAliasRequestTest < ActiveSupport::TestCase
tar.create
end
end
should "save the forum post id" do
tar = TagAliasRequest.new(:antecedent_name => "aaa", :consequent_name => "bbb", :reason => "reason", :skip_secondary_validations => true)
tar.create
assert_equal(tar.forum_topic.posts.first.id, tar.tag_alias.forum_post.id)
end
end
end