lib/searchlogic/rails_helpers.rb in kazjote-searchlogic-2.1.9.3 vs lib/searchlogic/rails_helpers.rb in kazjote-searchlogic-2.3.4

- old
+ new

@@ -15,13 +15,17 @@ # # * <tt>:by</tt> - the name of the named scope. This helper will prepend this value with "ascend_by_" and "descend_by_" # * <tt>:as</tt> - the text used in the link, defaults to whatever is passed to :by # * <tt>:ascend_scope</tt> - what scope to call for ascending the data, defaults to "ascend_by_:by" # * <tt>:descend_scope</tt> - what scope to call for descending the data, defaults to "descend_by_:by" + # * <tt>:params</tt> - hash with additional params which will be added to generated url # * <tt>:params_scope</tt> - the name of the params key to scope the order condition by, defaults to :search def order(search, options = {}, html_options = {}) options[:params_scope] ||= :search - options[:as] ||= options[:by].to_s.humanize + if !options[:as] + id = options[:by].to_s.downcase == "id" + options[:as] = id ? options[:by].to_s.upcase : options[:by].to_s.humanize + end options[:ascend_scope] ||= "ascend_by_#{options[:by]}" options[:descend_scope] ||= "descend_by_#{options[:by]}" ascending = search.order.to_s == options[:ascend_scope] new_scope = ascending ? options[:descend_scope] : options[:ascend_scope] selected = [options[:ascend_scope], options[:descend_scope]].include?(search.order.to_s)