On 22/09/10 17:40 +0200, Jan Provaznik wrote: > ACK, works fine for me, small suggestion: > it would be nice to add along with 'active' class also class for sorting > direction
Sure I'll add this class and then push. Thanks for reviewing! -- Michal. > > On 09/22/2010 05:35 PM, [email protected] wrote: >> From: Michal Fojtik<[email protected]> >> >> --- >> src/app/helpers/application_helper.rb | 27 +++++++++++++++++++++++++++ >> 1 files changed, 27 insertions(+), 0 deletions(-) >> >> diff --git a/src/app/helpers/application_helper.rb >> b/src/app/helpers/application_helper.rb >> index 6b82e6d..7c6a5a7 100644 >> --- a/src/app/helpers/application_helper.rb >> +++ b/src/app/helpers/application_helper.rb >> @@ -82,6 +82,33 @@ module ApplicationHelper >> content_tag 'th', label >> end >> >> + # Fields example: >> + # [ >> + # { :name => 'Pool name', :sort_attr => 'name'}, >> + # { :name => 'Zone', :sortable => false}, >> + # ] >> + def sortable_table_header(fields=[]) >> + columns = fields.collect do |field| >> + if field[:sortable]==true or field[:sortable].nil? >> + order_dir = params[:order_dir] ? params[:order_dir] : 'desc' >> + content_tag('th', :class => >> (field[:sort_attr].to_s.eql?(params[:order_field]) ? 'active' : nil)) do >> + link_to(field[:name], :controller => params[:controller], >> + :action => params[:action], :order_field => field[:sort_attr], >> + :order_dir => order_dir.eql?('asc') ? 'desc' : 'asc') >> + end >> + else >> + content_tag('th') do >> + field[:name] >> + end >> + end >> + end >> + header = content_tag('thead') do >> + content_tag('tr') do >> + columns.join >> + end >> + end >> + end >> + >> def paginated_table(html_id, columns, data, opts = {}) >> search_url = url_for(:partial => true, :order => opts[:order], >> :order_dir => opts[:order_dir]) >> > -- -------------------------------------------------------- Michal Fojtik, [email protected] Deltacloud API: http://deltacloud.org -------------------------------------------------------- _______________________________________________ deltacloud-devel mailing list [email protected] https://fedorahosted.org/mailman/listinfo/deltacloud-devel
