FIX: ensures topic’s category allows topics tags (#7060)

This commit is contained in:
Joffrey JAFFEUX
2019-02-26 11:21:55 +01:00
committed by GitHub
parent a206c7f5d5
commit 7ccb0b882f
3 changed files with 52 additions and 0 deletions

View File

@ -288,6 +288,18 @@ class TopicsController < ApplicationController
else
return render_json_error(I18n.t('category.errors.not_found'))
end
if category && topic_tags = (params[:tags] || topic.tags.pluck(:name))
allowed_tags = category.tags.pluck(:name)
if topic_tags.present? && allowed_tags.present?
invalid_tags = topic_tags - allowed_tags
if !invalid_tags.empty?
return render_json_error(I18n.t('category.errors.disallowed_topic_tags', tags: invalid_tags.join(", ")))
end
end
end
end
changes = {}