FIX: ensures emoji helper is working with custom emojis (#7843)

This commit is contained in:
Joffrey JAFFEUX
2019-07-03 09:23:40 +02:00
committed by GitHub
parent 0733ed3a2b
commit 9ee2c121c1
4 changed files with 19 additions and 3 deletions

View File

@@ -7,7 +7,10 @@ module EmojiHelper
str = str.gsub(/:([\w\-+]*(?::t\d)?):/) do |name|
code = $1
if Emoji.exists?(code)
if code && Emoji.custom?(code)
emoji = Emoji[code]
"<img src=\"#{emoji.url}\" title=\"#{code}\" class=\"emoji\" alt=\"#{code}\">"
elsif code && Emoji.exists?(code)
"<img src=\"#{Emoji.url_for(code)}\" title=\"#{code}\" class=\"emoji\" alt=\"#{code}\">"
else
name

View File

@@ -38,6 +38,11 @@ class Emoji
Discourse.cache.fetch(cache_key("tonable_emojis")) { db['tonableEmojis'] }
end
def self.custom?(name)
name = name.delete_prefix(':').delete_suffix(':')
Emoji.custom.detect { |e| e.name == name }.present?
end
def self.exists?(name)
Emoji[name].present?
end