Module: Turnout::MaintenancePage

Defined in:
lib/turnout/maintenance_page.rb,
lib/turnout/maintenance_page/erb.rb,
lib/turnout/maintenance_page/base.rb,
lib/turnout/maintenance_page/html.rb,
lib/turnout/maintenance_page/json.rb

Defined Under Namespace

Classes: Base, Erb, HTML, JSON

Class Method Summary collapse

Class Method Details

.allObject



6
7
8
# File 'lib/turnout/maintenance_page.rb', line 6

def self.all
  @all ||= []
end

.best_for(env) ⇒ Object



10
11
12
13
14
15
16
17
# File 'lib/turnout/maintenance_page.rb', line 10

def self.best_for(env)
  request = Rack::Accept::Request.new(env)

  all_types = all.map(&:media_types).flatten
  best_type = request.best_media_type(all_types)
  best = all.find { |page| page.media_types.include?(best_type) && File.exist?(page.new.custom_path) }
  best || Turnout.config.default_maintenance_page
end