Module: AwesomeAdminLayout

Extended by:
RecognizePath
Defined in:
lib/awesome_admin_layout/recognize_path.rb,
lib/awesome_admin_layout.rb,
lib/awesome_admin_layout/engine.rb,
lib/awesome_admin_layout/script.rb,
lib/awesome_admin_layout/helpers.rb,
lib/awesome_admin_layout/version.rb,
lib/awesome_admin_layout/navigation.rb,
lib/awesome_admin_layout/navigation/item.rb,
lib/awesome_admin_layout/navigation/brand.rb,
lib/awesome_admin_layout/navigation/divider.rb,
lib/awesome_admin_layout/navigation/flex_divider.rb

Overview

Ruby module that can recognize paths of the main Rails application as well as the engines. from: gist.github.com/jtanium/6114632

Defined Under Namespace

Modules: Helpers, RecognizePath Classes: Engine, Navigation, Script

Constant Summary collapse

VERSION =
'0.2.1'
@@context =
nil
@@request =
nil
@@script =
nil

Class Method Summary collapse

Methods included from RecognizePath

active_url?, recognize_path

Class Method Details

.awesome_admin_layout(context = nil, &block) ⇒ Object



25
26
27
28
29
# File 'lib/awesome_admin_layout.rb', line 25

def awesome_admin_layout(context = nil, &block)
  @@context = context
  @@script ||= AwesomeAdminLayout::Script.new
  @@script.instance_exec(context, &block)
end

.define(options = {}, &block) ⇒ Object Also known as: setup



39
40
41
42
# File 'lib/awesome_admin_layout.rb', line 39

def define(options = {}, &block)
  @@request = options.delete(:request)
  defined?(Rails) ? eager_define(options, &block) : normal_define(&block)
end

.eager_define(options = {}, &block) ⇒ Object



35
36
37
# File 'lib/awesome_admin_layout.rb', line 35

def eager_define(options = {}, &block)
  (options[:only] || ActionController::Base).send(:before_filter, -> { AwesomeAdminLayout.awesome_admin_layout(self, &block) })
end

.normal_define(&block) ⇒ Object



31
32
33
# File 'lib/awesome_admin_layout.rb', line 31

def normal_define(&block)
  awesome_admin_layout(&block)
end

.requestObject



16
17
18
19
# File 'lib/awesome_admin_layout.rb', line 16

def request
  return @@request if @@request
  @@context.request if @@context
end

.scriptObject



21
22
23
# File 'lib/awesome_admin_layout.rb', line 21

def script
  @@script
end