class Grapple::Components::ColumnHeadings
Public Instance Methods
column_header(column, additional_parameters = {})
click to toggle source
# File lib/grapple/components/column_headings.rb, line 16 def column_header(column, additional_parameters = {}) cell_classes = [] cell_classes << alignment_classes[(column[:align] || :left).to_sym] liner_classes = [] liner_classes << tooltip_class if column[:title].present? label = t(column[:label] || '') if column[:sort] cell_classes << 'sortable' if column[:sort].to_s == params[:sort] liner_classes << (params[:dir] == 'desc' ? 'sort-desc' : 'sort-asc') cell_classes << 'sorted' end url = table_url(additional_parameters.merge({sort: column[:sort]})) content = template.link_to(label, url) else content = label end if column[:class] column[:class].split(" ").each{|c| cell_classes << c} end cell_classes = ' class="' + cell_classes.join(' ') + '"' title = column[:title] ? " title=\"#{h(column[:title])}\"" : '' liner_classes = liner_classes.length ? " class=\"#{liner_classes.join(" ")}\"" : '' "<th#{cell_classes}><div#{title}#{liner_classes}>#{h content}</div></th>".html_safe end
render(url_params = {})
click to toggle source
# File lib/grapple/components/column_headings.rb, line 9 def render(url_params = {}) cols = columns.collect do |column| indent + column_header(column, url_params) end builder.row cols.join("\n"), :class => row_class end