Browse Source

Fix settings pages being cacheable by the browser (#12714)

Fix #12255
master^2
Eugen Rochko 4 years ago
committed by GitHub
parent
commit
6e9e8d89fa
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 0 deletions
  1. +5
    -0
      app/controllers/auth/registrations_controller.rb
  2. +5
    -0
      app/controllers/oauth/authorizations_controller.rb
  3. +5
    -0
      app/controllers/settings/base_controller.rb

+ 5
- 0
app/controllers/auth/registrations_controller.rb View File

@@ -10,6 +10,7 @@ class Auth::RegistrationsController < Devise::RegistrationsController
before_action :set_instance_presenter, only: [:new, :create, :update]
before_action :set_body_classes, only: [:new, :create, :edit, :update]
before_action :require_not_suspended!, only: [:update]
before_action :set_cache_headers, only: [:edit, :update]

skip_before_action :require_functional!, only: [:edit, :update]

@@ -109,4 +110,8 @@ class Auth::RegistrationsController < Devise::RegistrationsController
def require_not_suspended!
forbidden if current_account.suspended?
end

def set_cache_headers
response.headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate'
end
end

+ 5
- 0
app/controllers/oauth/authorizations_controller.rb View File

@@ -5,6 +5,7 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController

before_action :store_current_location
before_action :authenticate_resource_owner!
before_action :set_cache_headers

include Localized

@@ -27,4 +28,8 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController
def truthy_param?(key)
ActiveModel::Type::Boolean.new.cast(params[key])
end

def set_cache_headers
response.headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate'
end
end

+ 5
- 0
app/controllers/settings/base_controller.rb View File

@@ -2,10 +2,15 @@

class Settings::BaseController < ApplicationController
before_action :set_body_classes
before_action :set_cache_headers

private

def set_body_classes
@body_classes = 'admin'
end

def set_cache_headers
response.headers['Cache-Control'] = 'no-cache, no-store, max-age=0, must-revalidate'
end
end

Loading…
Cancel
Save