FIX: stop using regex to detect mentions

This commit is contained in:
Sam 2016-02-24 17:47:55 +11:00
parent 4ce870c17f
commit 833af461ab
2 changed files with 11 additions and 9 deletions

View File

@ -52,11 +52,17 @@ class PostAnalyzer
cooked_stripped.css("code").remove
cooked_stripped.css(".onebox").remove
@raw_mentions = cooked_stripped.to_html
.scan(PrettyText.mention_matcher)
.flatten
.map(&:downcase)
.uniq
raw_mentions = cooked_stripped.css('.mention').map do |e|
if name = e.inner_text
name = name[1..-1]
name.downcase! if name
name
end
end
raw_mentions.compact!
raw_mentions.uniq!
@raw_mention = raw_mentions
end
# from rack ... compat with ruby 2.2

View File

@ -72,10 +72,6 @@ module PrettyText
@mutex = Mutex.new
@ctx_init = Mutex.new
def self.mention_matcher
Regexp.new("\\W@([\\w\\-]{#{SiteSetting.min_username_length},#{SiteSetting.max_username_length}})\\b")
end
def self.app_root
Rails.root
end