FEATURE: add context for cross topic links

This commit is contained in:
Sam
2015-09-25 14:52:43 +10:00
parent 150ad01111
commit fc2d61136d
3 changed files with 28 additions and 6 deletions

View File

@@ -245,7 +245,21 @@ class CookedPostProcessor
}
# apply oneboxes
Oneboxer.apply(@doc) { |url| Oneboxer.onebox(url, args) }
Oneboxer.apply(@doc) { |url|
# hack urls to create proper expansions
if url =~ Regexp.new("^#{Discourse.base_url.gsub(".","\\.")}.*$", true)
uri = URI.parse(url) rescue nil
if uri && uri.path
route = Rails.application.routes.recognize_path(uri.path) rescue nil
if route && route[:controller] == 'topics'
url += (url =~ /\?/ ? "&" : "?") + "&source_topic_id=#{@post.topic_id}"
end
end
end
Oneboxer.onebox(url, args)
}
# make sure we grab dimensions for oneboxed images
oneboxed_images.each { |img| limit_size!(img) }