docbrown/app/controllers/admin/application_controller.rb
Ben Halpern dfc3d96286
Update shell version when admin action taken (#11343)
* Update shell version when admin action taken

* Update app/controllers/admin/application_controller.rb

Co-authored-by: Alex <alexandersmith223@gmail.com>

Co-authored-by: Alex <alexandersmith223@gmail.com>
2020-11-09 15:31:54 -05:00

26 lines
978 B
Ruby

module Admin
class ApplicationController < ApplicationController
before_action :authorize_admin
after_action :verify_authorized
private
def authorization_resource
self.class.name.demodulize.sub("Controller", "").singularize.constantize
end
def authorize_admin
authorize(authorization_resource, :access?, policy_class: InternalPolicy)
end
def bust_content_change_caches
CacheBuster.bust("/tags/onboarding") # Needs to change when suggested_tags is edited.
CacheBuster.bust("/shell_top") # Cached at edge, sent to service worker.
CacheBuster.bust("/shell_bottom") # Cached at edge, sent to service worker.
CacheBuster.bust("/async_info/shell_version") # Checks if current users should be busted.
CacheBuster.bust("/onboarding") # Page is cached at edge.
CacheBuster.bust("/") # Page is cached at edge.
SiteConfig.admin_action_taken_at = Time.current # Used as cache key
end
end
end