diff --git a/app/jobs/regular/resize_emoji.rb b/app/jobs/regular/resize_emoji.rb new file mode 100644 index 000000000..272158e17 --- /dev/null +++ b/app/jobs/regular/resize_emoji.rb @@ -0,0 +1,14 @@ +module Jobs + + class ResizeEmoji < Jobs::Base + + def execute(args) + path = args[:path] + return unless File.exists?(path) + + # make sure emoji aren't too big + OptimizedImage.resize(path, path, 60, 60, true) + end + end + +end diff --git a/app/models/emoji.rb b/app/models/emoji.rb index 43056fac0..b283e36a4 100644 --- a/app/models/emoji.rb +++ b/app/models/emoji.rb @@ -56,6 +56,8 @@ class Emoji File.open(path, "wb") { |f| f << file.tempfile.read } # clear the cache Emoji.clear_cache + # launch resize job + Jobs.enqueue(:resize_emoji, path: path) # return created emoji Emoji.custom.detect { |e| e.name == name } end