Index: app/helpers/sort_helper.rb =================================================================== --- app/helpers/sort_helper.rb (révision 5191) +++ app/helpers/sort_helper.rb (copie de travail) @@ -114,6 +114,26 @@ @criteria.first && @criteria.first.last end + def second_key + return nil if @criteria.size < 2 + @criteria[1] && @criteria[1].first + end + + def second_asc? + return false if @criteria.size < 2 + @criteria[1] && @criteria[1].last + end + + def third_key + return nil if @criteria.size < 3 + @criteria[2] && @criteria[2].first + end + + def third_asc? + return false if @criteria.size < 3 + @criteria[2] && @criteria[2].last + end + def empty? @criteria.empty? end @@ -247,9 +267,22 @@ # sort_css_classes # # => "sort-by-created-on sort-desc" def sort_css_classes + sort_css_cls = '' if @sort_criteria.first_key - "sort-by-#{@sort_criteria.first_key.to_s.dasherize} sort-#{@sort_criteria.first_asc? ? 'asc' : 'desc'}" + sort_css_cls << "sort-by-#{@sort_criteria.first_key.to_s.dasherize} sort-#{@sort_criteria.first_asc? ? 'asc' : 'desc'}" end + + if @sort_criteria.second_key + sort_css_cls << ' ' if sort_css_cls != '' + sort_css_cls << "sort2-by-#{@sort_criteria.second_key.to_s.dasherize} sort2-#{@sort_criteria.second_asc? ? 'asc' : 'desc'}" + end + + if @sort_criteria.third_key + sort_css_cls << ' ' if sort_css_cls != '' + sort_css_cls << "sort3-by-#{@sort_criteria.third_key.to_s.dasherize} sort3-#{@sort_criteria.third_asc? ? 'asc' : 'desc'}" + end + + sort_css_cls end end