mirror of
https://github.com/discourse/discourse.git
synced 2025-05-23 18:31:11 +08: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