FEATURE: Inline (Mini) Oneboxing

see:
https://meta.discourse.org/t/mini-inline-onebox-support-rfc/66400?source_topic_id=66066
This commit is contained in:
Robin Ward
2017-07-19 15:08:54 -04:00
parent 44fb2a2833
commit 3882722195
18 changed files with 306 additions and 8 deletions

View File

@ -214,6 +214,23 @@ module Discourse
base_url_no_prefix + base_uri
end
def self.route_for(uri)
uri = URI(uri) rescue nil unless (uri.is_a?(URI))
return unless uri
path = uri.path || ""
if (uri.host == Discourse.current_hostname &&
path.start_with?(Discourse.base_uri)) ||
!uri.host
path.slice!(Discourse.base_uri)
return Rails.application.routes.recognize_path(path)
end
nil
end
READONLY_MODE_KEY_TTL ||= 60
READONLY_MODE_KEY ||= 'readonly_mode'.freeze
PG_READONLY_MODE_KEY ||= 'readonly_mode:postgres'.freeze