module Aerogel::Helpers

Aerogel::Helpers are registered both as Sinatra extensions and Sinatra helpers, so any helper is available both at application and request scope level.

Public Class Methods

registered(app) click to toggle source
# File lib/aerogel/core/helpers.rb, line 6
def self.registered(app)
  # load helpers
  Aerogel.get_resource_list( :app, "helpers/**/*.rb" ).each do |filename|
    Aerogel.require_into( Aerogel::Helpers, filename )
  end
  app.helpers Aerogel::Helpers

  # register reloader
  setup_reloader(app) if Aerogel.config.aerogel.reloader?
end

Private Class Methods

setup_reloader(app) click to toggle source

Sets up reloader for helpers.

# File lib/aerogel/core/helpers.rb, line 21
def self.setup_reloader(app)
  app.use Aerogel::Reloader, ->{ Aerogel.get_resource_list( :app, "helpers/**/*.rb" ) }, group: :helpers do |files|
    files.each do |filename|
      Aerogel.require_into( Aerogel::Helpers, filename )
    end
  end
end