diff options
author | George Andrinopoulos <geoandri@gmail.com> | 2017-03-24 00:39:12 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2017-03-24 00:39:12 +0000 |
commit | e118d48df91ba04a9cba3ddb90ef20166ff8d9b8 (patch) | |
tree | 4be00723bd36af94261ab38c378809b1f6d8c01a /app/models/milestone.rb | |
parent | 902ea5c85b97fe12a49b2634244368a71b0239ed (diff) | |
download | gitlab-ce-e118d48df91ba04a9cba3ddb90ef20166ff8d9b8.tar.gz |
Add dropdown sort to project milestones
Diffstat (limited to 'app/models/milestone.rb')
-rw-r--r-- | app/models/milestone.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/app/models/milestone.rb b/app/models/milestone.rb index c0deb59ec4c..e85d5709624 100644 --- a/app/models/milestone.rb +++ b/app/models/milestone.rb @@ -107,6 +107,21 @@ class Milestone < ActiveRecord::Base end end + def self.sort(method) + case method.to_s + when 'due_date_asc' + reorder(Gitlab::Database.nulls_last_order('due_date', 'ASC')) + when 'due_date_desc' + reorder(Gitlab::Database.nulls_last_order('due_date', 'DESC')) + when 'start_date_asc' + reorder(Gitlab::Database.nulls_last_order('start_date', 'ASC')) + when 'start_date_desc' + reorder(Gitlab::Database.nulls_last_order('start_date', 'DESC')) + else + order_by(method) + end + end + ## # Returns the String necessary to reference this Milestone in Markdown # |