Class: SiteMap

Inherits:
Object
  • Object
show all
Defined in:
app/models/site_map.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.rebuild(tree) ⇒ Object



3
4
5
# File 'app/models/site_map.rb', line 3

def self.rebuild(tree)
  set_children_for(tree.first['id'], tree.first['children'])
end

.set_children_for(parent_id, data) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
# File 'app/models/site_map.rb', line 13

def self.set_children_for(parent_id, data)
  parent = Page.find(parent_id)
  data.each_with_index do |child_data, i|
    child = Page.find(child_data['id'])
    child.position = i
    child.parent = parent
    child.path = child.generate_path
    child.save!
    set_children_for(child_data['id'], child_data['children']) if child_data['children']
  end
end

Instance Method Details



7
8
9
# File 'app/models/site_map.rb', line 7

def permalink
  '{root}'
end