class Storyblok::Links
Public Class Methods
new(response_obj)
click to toggle source
# File lib/storyblok/links.rb, line 3 def initialize(response_obj) @links = response_obj['data']['links'] end
Public Instance Methods
as_tree()
click to toggle source
# File lib/storyblok/links.rb, line 7 def as_tree tree = {} @links.each do |key, item| if tree[item['parent_id']].nil? tree[item['parent_id']] = [] end tree[item['parent_id']] << item end generate_tree(0, tree) end
Private Instance Methods
generate_tree(parent_id = 0, items)
click to toggle source
# File lib/storyblok/links.rb, line 23 def generate_tree(parent_id = 0, items) tree = {} if !items[parent_id].nil? result = items[parent_id] result.each do |item| if tree[item['id']].nil? tree[item['id']] = {} end tree[item['id']]['item'] = item tree[item['id']]['children'] = generate_tree(item['id'], items) end end tree end