Sha256: f2d106ab2804ad86dbddde5929863b68510d670d7fd7d56ef3bca77acd57614d
Contents?: true
Size: 1.63 KB
Versions: 4
Compression:
Stored size: 1.63 KB
Contents
# DOC: # We use Helper Methods for tree building, # because it's faster than View Templates and Partials # SECURITY note # Prepare your data on server side for rendering # or use h.html_escape(node.content) # for escape potentially dangerous content module RenderExpandableTreeHelper module Render class << self attr_accessor :h, :options def render_node(h, options) @h, @options = h, options node = options[:node] " <li data-node-id='#{ node.id }'> <div class='item'> <i class='handle'></i> <b class='expand plus'>+</b> #{ show_link } #{ controls } </div> #{ children } </li> " end def show_link node = options[:node] ns = options[:namespace] url = h.url_for(ns + [node]) title_field = options[:title] "<h4>#{ h.link_to(node.send(title_field), url) }</h4>" end def controls node = options[:node] edit_path = h.url_for(:controller => options[:klass].pluralize, :action => :edit, :id => node) show_path = h.url_for(:controller => options[:klass].pluralize, :action => :show, :id => node) " <div class='controls'> #{ h.link_to '', edit_path, :class => :edit } #{ h.link_to '', show_path, :class => :delete, :method => :delete, :data => { :confirm => 'Are you sure?' } } </div> " end def children unless options[:children].blank? "<ol class='nested_set'>#{ options[:children] }</ol>" end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems