Class: Effective::Region

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/effective/region.rb

Instance Method Summary collapse

Instance Method Details

#global?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'app/models/effective/region.rb', line 39

def global?
  regionable_id == nil && regionable_type == nil
end

#snippet_objects(locals = {}) ⇒ Object

Hash of the Snippets objectified

Returns a Hash of => CurrentUserInfo.new(snippets[‘options’])



29
30
31
32
33
34
35
36
37
# File 'app/models/effective/region.rb', line 29

def snippet_objects(locals = {})
  locals = {} unless locals.kind_of?(Hash)
  @snippet_objects ||= snippets.map do |key, snippet|  # Key here is 'snippet_1'
    if snippet['class_name']
      klass = "Effective::Snippets::#{snippet['class_name'].classify}".safe_constantize
      klass.new(snippet.merge!(locals).merge!(:region => self, :id => key)) if klass
    end
  end.compact
end

#snippetsObject



22
23
24
# File 'app/models/effective/region.rb', line 22

def snippets
  self[:snippets] || HashWithIndifferentAccess.new()
end