2017-05-10 18:16:57 -04:00
|
|
|
module Jobs
|
|
|
|
|
|
|
|
class CreateAvatarThumbnails < Jobs::Base
|
|
|
|
|
|
|
|
def execute(args)
|
2017-06-21 22:23:31 -04:00
|
|
|
return if Rails.env.test?
|
2017-05-10 18:16:57 -04:00
|
|
|
upload_id = args[:upload_id]
|
|
|
|
|
|
|
|
raise Discourse::InvalidParameters.new(:upload_id) if upload_id.blank?
|
|
|
|
|
2017-05-11 03:07:04 -04:00
|
|
|
return unless upload = Upload.find_by(id: upload_id)
|
2017-10-01 22:24:37 -04:00
|
|
|
return unless user = User.find_by(id: args[:user_id] || upload.user_id)
|
2017-05-10 18:16:57 -04:00
|
|
|
|
|
|
|
Discourse.avatar_sizes.each do |size|
|
|
|
|
OptimizedImage.create_for(upload, size, size, filename: upload.original_filename, allow_animation: SiteSetting.allow_animated_avatars)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|