diff --git a/app/models/emoji.rb b/app/models/emoji.rb index 7222cafebc2..cfd121b76ec 100644 --- a/app/models/emoji.rb +++ b/app/models/emoji.rb @@ -126,7 +126,7 @@ class Emoji end def self.load_translations - db["translations"] + db["translations"].merge(Plugin::CustomEmoji.translations) end def self.base_directory diff --git a/lib/plugin/instance.rb b/lib/plugin/instance.rb index 0390216ebe6..7d48dbbdde8 100644 --- a/lib/plugin/instance.rb +++ b/lib/plugin/instance.rb @@ -30,6 +30,15 @@ class Plugin::CustomEmoji def self.unregister(name, group = Emoji::DEFAULT_GROUP) emojis[group].delete(name) end + + def self.translations + @@translations ||= {} + end + + def self.translate(from, to) + @@cache_key = Digest::SHA1.hexdigest(cache_key + from)[0..10] + translations[from] = to + end end class Plugin::Instance @@ -487,6 +496,10 @@ class Plugin::Instance Emoji.clear_cache end + def translate_emoji(from, to) + Plugin::CustomEmoji.translate(from, to) + end + def automatic_assets css = styles.join("\n") js = javascripts.join("\n")