discourse/lib/topic_query_params.rb
Michael Brown d9a02d1336
Revert "Revert "Merge branch 'master' of https://github.com/discourse/discourse""
This reverts commit 20780a1eee.

* SECURITY: re-adds accidentally reverted commit:
  03d26cd6: ensure embed_url contains valid http(s) uri
* when the merge commit e62a85cf was reverted, git chose the 2660c2e2 parent to land on
  instead of the 03d26cd6 parent (which contains security fixes)
2020-05-23 00:56:13 -04:00

26 lines
655 B
Ruby

# frozen_string_literal: true
module TopicQueryParams
def build_topic_list_options
options = {}
params[:tags] = [params[:tag_id]] if params[:tag_id].present? && guardian.can_tag_pms?
TopicQuery.public_valid_options.each do |key|
if params.key?(key)
val = options[key] = params[key]
if !TopicQuery.validate?(key, val)
raise Discourse::InvalidParameters.new key
end
end
end
# hacky columns get special handling
options[:topic_ids] = param_to_integer_list(:topic_ids)
if options[:no_subcategories] == 'true'
options[:no_subcategories] = true
end
options
end
end