diff --git a/lib/oneboxer.rb b/lib/oneboxer.rb index d3625f19d8..eb5067cae9 100644 --- a/lib/oneboxer.rb +++ b/lib/oneboxer.rb @@ -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 diff --git a/spec/components/oneboxer_spec.rb b/spec/components/oneboxer_spec.rb index c5bc2dca86..f1681e5bc2 100644 --- a/spec/components/oneboxer_spec.rb +++ b/spec/components/oneboxer_spec.rb @@ -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"})