canvas-lms/app/observers/cacher.rb

19 lines
398 B
Ruby
Raw Normal View History

class Cacher < ActiveRecord::Observer
observe :user
def self.avatar_cache_key(user_id)
['avatar_img', user_id].cache_key
end
def after_update(obj)
case obj
when User
if obj.avatar_image_url_changed? ||
obj.avatar_image_source_changed? ||
obj.avatar_state_changed?
Rails.cache.delete(Cacher.avatar_cache_key(obj.id))
end
end
end
end