Feature #5325 » issue_query_group_by.patch
| app/models/issue_query.rb | ||
|---|---|---|
| 24 | 24 |
QueryColumn.new(:id, :sortable => "#{Issue.table_name}.id", :default_order => 'desc', :caption => '#', :frozen => true),
|
| 25 | 25 |
QueryColumn.new(:project, :sortable => "#{Project.table_name}.name", :groupable => true),
|
| 26 | 26 |
QueryColumn.new(:tracker, :sortable => "#{Tracker.table_name}.position", :groupable => true),
|
| 27 |
QueryColumn.new(:parent, :sortable => ["#{Issue.table_name}.root_id", "#{Issue.table_name}.lft ASC"], :default_order => 'desc', :caption => :field_parent_issue),
|
|
| 27 |
QueryColumn.new(:parent, :sortable => ["#{Issue.table_name}.root_id", "#{Issue.table_name}.lft ASC"], :default_order => 'desc', :caption => :field_parent_issue, :groupable => true),
|
|
| 28 | 28 |
QueryColumn.new(:status, :sortable => "#{IssueStatus.table_name}.position", :groupable => true),
|
| 29 | 29 |
QueryColumn.new(:priority, :sortable => "#{IssuePriority.table_name}.position", :default_order => 'desc', :groupable => true),
|
| 30 | 30 |
QueryColumn.new(:subject, :sortable => "#{Issue.table_name}.subject"),
|
| app/models/query.rb | ||
|---|---|---|
| 774 | 774 |
def group_by_sort_order |
| 775 | 775 |
if column = group_by_column |
| 776 | 776 |
order = (sort_criteria.order_for(column.name) || column.default_order || 'asc').try(:upcase) |
| 777 |
Array(column.sortable).map {|s| "#{s} #{order}"}
|
|
| 777 |
Array(column.sortable).map {|s| (s.split.size > 1) ? s : "#{s} #{order}"}
|
|
| 778 | 778 |
end |
| 779 | 779 |
end |
| 780 | 780 | |