From e2491680e696d2c285a798ec4c66b26d2748df66 Mon Sep 17 00:00:00 2001 From: R Tucker Date: Tue, 9 May 2017 22:47:25 -0400 Subject: Handle hashtags in spoiler_texts (partial fix for #699) (#2683) * services: scan spoiler_text for hashtags (#699) * views: link hashtags from spoiler_texts This covers linking hashtags from within the spoiler text on the server-generated pages. * services: fix string concat going into hashtag RE Cleaner Ruby syntax, may handle immutable strings better --- app/services/process_hashtags_service.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'app/services/process_hashtags_service.rb') diff --git a/app/services/process_hashtags_service.rb b/app/services/process_hashtags_service.rb index 617a381590e..eab033d50d6 100644 --- a/app/services/process_hashtags_service.rb +++ b/app/services/process_hashtags_service.rb @@ -2,7 +2,8 @@ class ProcessHashtagsService < BaseService def call(status, tags = []) - tags = status.text.scan(Tag::HASHTAG_RE).map(&:first) if status.local? + text = [status.text, status.spoiler_text].reject(&:empty?).join(' ') + tags = text.scan(Tag::HASHTAG_RE).map(&:first) if status.local? tags.map { |str| str.mb_chars.downcase }.uniq(&:to_s).each do |tag| status.tags << Tag.where(name: tag).first_or_initialize(name: tag) -- cgit v1.2.3