Module: Aerogel::Pages

Defined in:
lib/aerogel/pages/core.rb,
lib/aerogel/pages/version.rb,
lib/aerogel/pages/traversal.rb

Defined Under Namespace

Modules: Traversal

Constant Summary collapse

VERSION =
"1.4.12"

Class Method Summary collapse

Class Method Details

.create_page_block(type, *args) ⇒ Object



28
29
30
31
32
33
34
# File 'lib/aerogel/pages/core.rb', line 28

def self.create_page_block( type, *args )
  type = type.to_sym
  if registered_page_block_types[type].nil?
    raise ArgumentError.new( "Invalid page block type: '#{type}'")
  end
  registered_page_block_types[type].new( *args )
end

.register_page_block_type(type, model) ⇒ Object



24
25
26
# File 'lib/aerogel/pages/core.rb', line 24

def self.register_page_block_type( type, model )
  registered_page_block_types[type] = model
end

.registered(app) ⇒ Object



3
4
5
6
7
8
# File 'lib/aerogel/pages/core.rb', line 3

def self.registered(app)
  setup_reloader(app) if Aerogel.config.aerogel.reloader?

  # module initialization
  Aerogel::Pages.reset!
end

.registered_page_block_typesObject



20
21
22
# File 'lib/aerogel/pages/core.rb', line 20

def self.registered_page_block_types
  @registered_page_block_types ||= {}
end

.reset!Object



16
17
18
# File 'lib/aerogel/pages/core.rb', line 16

def self.reset!
  @registered_page_block_types ||= {}
end

.setup_reloader(app) ⇒ Object



10
11
12
13
14
# File 'lib/aerogel/pages/core.rb', line 10

def self.setup_reloader(app)
  app.use Aerogel::Reloader, :'db/model', before: true do
    Aerogel::Pages.reset!
  end
end