From 4e6fe811a03e77d2bba22c7666716ae6a6bd8f04 Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Sun, 14 Dec 2014 00:28:26 +0000 Subject: [PATCH] Don't render the offline page for XHR requests --- app/controllers/application_controller.rb | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 90a967276..bd4a62948 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -192,14 +192,22 @@ class ApplicationController < ActionController::Base def check_database_readable(need_api = false) if STATUS == :database_offline or (need_api and STATUS == :api_offline) - redirect_to :controller => 'site', :action => 'offline' + if request.xhr? + report_error "Database offline for maintenance", :service_unavailable + else + redirect_to :controller => 'site', :action => 'offline' + end end end def check_database_writable(need_api = false) if STATUS == :database_offline or STATUS == :database_readonly or (need_api and (STATUS == :api_offline or STATUS == :api_readonly)) - redirect_to :controller => 'site', :action => 'offline' + if request.xhr? + report_error "Database offline for maintenance", :service_unavailable + else + redirect_to :controller => 'site', :action => 'offline' + end end end -- 2.43.2