Module: Releaf::Content::Node::ClassMethods

Defined in:
lib/releaf/content/node.rb

Instance Method Summary collapse

Instance Method Details

#children_max_item_position(node) ⇒ Object



190
191
192
193
194
195
196
# File 'lib/releaf/content/node.rb', line 190

def children_max_item_position node
  if node.nil?
    roots.maximum(:item_position) || 0
  else
    node.children.maximum(:item_position) || 0
  end
end

#updatedObject



186
187
188
# File 'lib/releaf/content/node.rb', line 186

def updated
  Releaf::Settings['releaf.content.nodes.updated_at'] = Time.now
end

#updated_atObject



182
183
184
# File 'lib/releaf/content/node.rb', line 182

def updated_at
  Releaf::Settings['releaf.content.nodes.updated_at']
end

#valid_node_content_class_names(parent_id = nil) ⇒ Object



198
199
200
201
202
203
204
205
206
# File 'lib/releaf/content/node.rb', line 198

def valid_node_content_class_names parent_id=nil
  class_names = []
  ActsAsNode.classes.each do |class_name|
    test_node = self.new(content_type: class_name, parent_id: parent_id)
    test_node.valid?
    class_names.push class_name unless test_node.errors[:content_type].present?
  end
  class_names
end

#valid_node_content_classes(parent_id = nil) ⇒ Object



208
209
210
# File 'lib/releaf/content/node.rb', line 208

def valid_node_content_classes parent_id=nil
  valid_node_content_class_names(parent_id).map(&:constantize)
end