##// END OF EJS Templates
Refactor: Extract Query#sortable_columns from the controller....
Eric Davis -
r3490:6e6e260ceae6
parent child
Show More
@@ -56,7 +56,7 class IssuesController < ApplicationController
56 56 def index
57 57 retrieve_query
58 58 sort_init(@query.sort_criteria.empty? ? [['id', 'desc']] : @query.sort_criteria)
59 sort_update({'id' => "#{Issue.table_name}.id"}.merge(@query.available_columns.inject({}) {|h, c| h[c.name.to_s] = c.sortable; h}))
59 sort_update(@query.sortable_columns)
60 60
61 61 if @query.valid?
62 62 limit = case params[:format]
@@ -94,7 +94,7 class IssuesController < ApplicationController
94 94 def changes
95 95 retrieve_query
96 96 sort_init 'id', 'desc'
97 sort_update({'id' => "#{Issue.table_name}.id"}.merge(@query.available_columns.inject({}) {|h, c| h[c.name.to_s] = c.sortable; h}))
97 sort_update(@query.sortable_columns)
98 98
99 99 if @query.valid?
100 100 @journals = @query.journals(:order => "#{Journal.table_name}.created_on DESC",
@@ -270,6 +270,14 class Query < ActiveRecord::Base
270 270 def groupable_columns
271 271 available_columns.select {|c| c.groupable}
272 272 end
273
274 # Returns a Hash of columns and the key for sorting
275 def sortable_columns
276 {'id' => "#{Issue.table_name}.id"}.merge(available_columns.inject({}) {|h, column|
277 h[column.name.to_s] = column.sortable
278 h
279 })
280 end
273 281
274 282 def columns
275 283 if has_default_columns?
General Comments 0
You need to be logged in to leave comments. Login now