FIX: allow both meta_data and custom_fields when creating a topic

For some reasons, we have two ways of associating "custom fields" to a new topic:
using 'meta_data' and 'custom_fields'.

However, if we were to provide both arguments, the 'meta_data' would be overwritten
by any 'custom_fields' provided.

This commit ensures we can use both and merges the 'custom_fields' with the 'meta_data'.
This commit is contained in:
Régis Hanol
2020-02-05 10:32:03 +01:00
parent 5133e03b99
commit 13d4b05963
2 changed files with 14 additions and 1 deletions

View File

@ -35,8 +35,9 @@ class TopicCreator
def create
topic = Topic.new(setup_topic_params)
setup_tags(topic)
if fields = @opts[:custom_fields]
topic.custom_fields = fields
topic.custom_fields.merge!(fields)
end
DiscourseEvent.trigger(:before_create_topic, topic, self)