@@ -56,7 +56,7 class IssuesController < ApplicationController | |||||
56 | def index |
|
56 | def index | |
57 | retrieve_query |
|
57 | retrieve_query | |
58 | sort_init(@query.sort_criteria.empty? ? [['id', 'desc']] : @query.sort_criteria) |
|
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 | if @query.valid? |
|
61 | if @query.valid? | |
62 | limit = case params[:format] |
|
62 | limit = case params[:format] | |
@@ -94,7 +94,7 class IssuesController < ApplicationController | |||||
94 | def changes |
|
94 | def changes | |
95 | retrieve_query |
|
95 | retrieve_query | |
96 | sort_init 'id', 'desc' |
|
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 | if @query.valid? |
|
99 | if @query.valid? | |
100 | @journals = @query.journals(:order => "#{Journal.table_name}.created_on DESC", |
|
100 | @journals = @query.journals(:order => "#{Journal.table_name}.created_on DESC", |
@@ -270,6 +270,14 class Query < ActiveRecord::Base | |||||
270 | def groupable_columns |
|
270 | def groupable_columns | |
271 | available_columns.select {|c| c.groupable} |
|
271 | available_columns.select {|c| c.groupable} | |
272 | end |
|
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 | def columns |
|
282 | def columns | |
275 | if has_default_columns? |
|
283 | if has_default_columns? |
General Comments 0
You need to be logged in to leave comments.
Login now