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



232
233
234
235
236
237
238
# File 'lib/releaf/content/node.rb', line 232

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

#updatedObject



228
229
230
# File 'lib/releaf/content/node.rb', line 228

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

#updated_atObject



224
225
226
# File 'lib/releaf/content/node.rb', line 224

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

#valid_node_content_class_names(parent_id = nil) ⇒ Object



240
241
242
243
244
245
246
247
248
# File 'lib/releaf/content/node.rb', line 240

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



250
251
252
# File 'lib/releaf/content/node.rb', line 250

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