Module: FlavourSaver::Helpers

Defined in:
lib/flavour_saver/helpers.rb

Defined Under Namespace

Classes: Decorator, Defaults

Class Method Summary collapse

Class Method Details

.decorate_with(context, helper_names = [], locals = {}) ⇒ Object



137
138
139
140
141
142
143
144
145
146
# File 'lib/flavour_saver/helpers.rb', line 137

def decorate_with(context, helper_names=[], locals={})
  helpers = if helper_names.any?
              helper_symbols = helper_names.map(&:to_sym)
              registered_helpers.select { |k,v| helper_symbols.member? k }
            else
              registered_helpers
            end
  helpers = helpers.merge(locals)
  Decorator.new(helpers, context)
end

.deregister_helper(*names) ⇒ Object



127
128
129
130
131
# File 'lib/flavour_saver/helpers.rb', line 127

def deregister_helper(*names)
  names.each do |name|
    registered_helpers.delete(name.to_sym)
  end
end

.register_helper(method, &b) ⇒ Object



119
120
121
122
123
124
125
# File 'lib/flavour_saver/helpers.rb', line 119

def register_helper(method,&b)
  if !method.is_a?(Symbol) && method.respond_to?(:name)
    registered_helpers[method.name.to_sym] = method
  elsif b
    registered_helpers[method.to_sym] = b
  end
end

.registered_helpersObject



115
116
117
# File 'lib/flavour_saver/helpers.rb', line 115

def registered_helpers
  @registered_helpers ||= {}
end

.reset_helpersObject



133
134
135
# File 'lib/flavour_saver/helpers.rb', line 133

def reset_helpers
  @registered_helpers = {}
end