Class: ScribblerContentCreator

Inherits:
Object
  • Object
show all
Includes:
ScribblerContentHelper
Defined in:
lib/scribble_cms/scribbler_content_creator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from ScribblerContentHelper

#scribbler_container, #scribbler_element, #scribbler_group

Constructor Details

#initialize(container_name, group_name, type, name) ⇒ ScribblerContentCreator

Returns a new instance of ScribblerContentCreator.



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/scribble_cms/scribbler_content_creator.rb', line 7

def initialize(container_name, group_name, type, name)
  scribbler_element(container_name, group_name, type, name)

  # find what the element is, by searching throug the levels of scribbler
  container = ScribblerContainer.find_by_name(container_name)
  group     = ScribblerGroup.find_by(name: group_name, container_id: container.id)
  opts      = { name: name, released: true, group_id: group.id }
  element_type = case type.to_sym
  when :link
    ScribblerLink
  when :row
    opts.merge!(plain: true)
    ScribblerText
  when :text
    opts.merge!(plain: false)
    ScribblerText
  when :image
    ScribblerImage
  when :var
    ScribblerVar
  end

  @scribbler_element_instance = element_type.find_by(opts)
end

Instance Attribute Details

#scribbler_element_instanceObject (readonly)

Returns the value of attribute scribbler_element_instance.



5
6
7
# File 'lib/scribble_cms/scribbler_content_creator.rb', line 5

def scribbler_element_instance
  @scribbler_element_instance
end

Instance Method Details

#update_instance!(data = {}) ⇒ Object



32
33
34
# File 'lib/scribble_cms/scribbler_content_creator.rb', line 32

def update_instance!(data = {})
  @scribbler_element_instance.update_attributes(data)
end