mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
SPEC: add spec to ensure discobot works in French
PERF: memoize cooked triggers
Follow-up to 3c31884b
This commit is contained in:
@@ -222,9 +222,15 @@ module DiscourseNarrativeBot
|
||||
end
|
||||
end
|
||||
|
||||
@@cooked_triggers = {}
|
||||
|
||||
def cook(trigger)
|
||||
@@cooked_triggers[trigger] ||= PrettyText.cook("@#{self.discobot_username} #{trigger}")
|
||||
end
|
||||
|
||||
def match_trigger?(trigger)
|
||||
# we remove the leading <p> to allow for trigger to be at the end of a paragraph
|
||||
cooked_trigger = PrettyText.cook("@#{self.discobot_username} #{trigger}")[3..-1]
|
||||
cooked_trigger = cook(trigger)[3..-1]
|
||||
regexp = Regexp.new(cooked_trigger, 'i')
|
||||
match = @post.cooked.match(regexp)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user