From 7bb28bf7804eadbaeac05e7adb8123a8fb6c5d02 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 5 Nov 2016 22:09:51 +0100 Subject: Improve @mention regex --- app/models/account.rb | 2 +- app/services/process_hashtags_service.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'app') diff --git a/app/models/account.rb b/app/models/account.rb index 9999f05dd..cb186b465 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -1,7 +1,7 @@ class Account < ApplicationRecord include Targetable - MENTION_RE = /(?:^|\s|\.|>)@([a-z0-9_]+(?:@[a-z0-9\.\-]+)?)/i + MENTION_RE = /(?:^|[\s\.>*+])@([a-z0-9_]+(?:@[a-z0-9\.\-]+)?)/i IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze # Local users diff --git a/app/services/process_hashtags_service.rb b/app/services/process_hashtags_service.rb index 8c68ce989..df30f73ae 100644 --- a/app/services/process_hashtags_service.rb +++ b/app/services/process_hashtags_service.rb @@ -4,7 +4,7 @@ class ProcessHashtagsService < BaseService tags = status.text.scan(Tag::HASHTAG_RE).map(&:first) end - tags.map(&:downcase).each do |tag| + tags.map(&:downcase).uniq.each do |tag| status.tags << Tag.where(name: tag).first_or_initialize(name: tag) end end -- cgit