This repository has been archived on 2024-03-16. You can view files and clone it, but cannot push or open issues or pull requests.
orbit-4-1/app/helpers/admin/item_helper.rb

38 lines
1.2 KiB
Ruby
Raw Normal View History

2011-06-01 02:24:14 +00:00
module Admin::ItemHelper
def render_node_and_children(node)
ret = ''
if node
case node._type
when 'Page'
dest = admin_page_path(node)
when 'Link'
dest = admin_link_path(node)
end
2011-06-10 05:57:42 +00:00
ret << "<ul>"
2011-06-01 02:24:14 +00:00
ret << "<li>"
ret << (link_to node.name, dest)
ret << ' | ' << (link_to t('admin.edit'), eval("edit_admin_#{node._type.downcase}_path(node)")) if node._type.eql?('Page')
2011-06-10 05:57:42 +00:00
ret << ' | ' << (link_to t('admin.new_page'), new_admin_page_path(:parent_id => node.id), :class => 'new_page') if node._type.eql?('Page')
ret << ' | ' << (link_to t('admin.new_link'), new_admin_link_path(:parent_id => node.id), :class => 'new_link') if node._type.eql?('Page')
2011-06-01 04:00:41 +00:00
ret << ' | ' << (link_to t(:delete), eval("delete_admin_#{node._type.downcase}_path(node, :authenticity_token => form_authenticity_token)"), :confirm => t('sure?'), :class => 'delete')
2011-06-01 02:24:14 +00:00
ret << render_children(node)
ret << "</li>"
2011-06-10 05:57:42 +00:00
ret << "</ul>"
2011-06-01 02:24:14 +00:00
end
ret.html_safe
end
2011-12-05 02:36:25 +00:00
def render_children(parent)
if children = parent.children
ret = ''
ret << "<ul>"
children.each do |child|
ret << render_node_and_children(child)
end
ret << "</ul>"
ret
end
end
2011-06-01 02:24:14 +00:00
end