FIX: onebox local topic when using slug-less URL
When linking to a topic in the same Discourse, we try to onebox the link to show the title and other various information depending on whether it's a "standard" or "inline" onebox. However, we were not properly detecting links to topics that had no slugs (eg. https://meta.discourse.org/t/1234).
This commit is contained in:
parent
50ea3c8743
commit
91c89df68a
|
@ -219,9 +219,7 @@ module Oneboxer
|
|||
end
|
||||
end
|
||||
|
||||
topic = Topic.find_by(id: route[:topic_id])
|
||||
|
||||
return unless topic
|
||||
return unless topic = Topic.find_by(id: route[:id] || route[:topic_id])
|
||||
return if topic.private_message?
|
||||
|
||||
if current_category.blank? || current_category.id != topic.category_id
|
||||
|
|
|
@ -69,6 +69,9 @@ describe Oneboxer do
|
|||
expect(onebox).to include(%{data-post="2"})
|
||||
expect(onebox).to include(PrettyText.avatar_img(replier.avatar_template, "tiny"))
|
||||
|
||||
short_url = "#{Discourse.base_uri}/t/#{public_topic.id}"
|
||||
expect(preview(short_url, user, public_category)).to include(public_topic.title)
|
||||
|
||||
onebox = preview(public_moderator_action.url, user, public_category)
|
||||
expect(onebox).to include(public_moderator_action.excerpt)
|
||||
expect(onebox).to include(%{data-post="4"})
|
||||
|
|
Loading…
Reference in New Issue