otwarchive-symphonyarchive/app/helpers/skin_cache_helper.rb

29 lines
631 B
Ruby
Raw Normal View History

2026-03-11 22:22:11 +00:00
module SkinCacheHelper
def cache_timestamp
Time.now.utc.to_fs(:usec)
end
def skin_cache_version_key(skin_id)
skin_id = skin_id.id if skin_id.is_a?(Skin)
[:v1, :site_skin, skin_id, :version_key]
end
def skin_cache_version(skin_id)
Rails.cache.fetch(skin_cache_version_key(skin_id)) do
cache_timestamp
end
end
def skin_cache_version_update(skin_id)
Rails.cache.write(skin_cache_version_key(skin_id), cache_timestamp)
end
def skin_chooser_key
[:v2, :skin_chooser]
end
def skin_chooser_expire_cache
ActionController::Base.new.expire_fragment(skin_chooser_key)
end
end