summaryrefslogtreecommitdiff
path: root/app/models/milestone.rb
diff options
context:
space:
mode:
authorOswaldo Ferreira <oswaldo@gitlab.com>2018-08-06 16:38:37 -0300
committerOswaldo Ferreira <oswaldo@gitlab.com>2018-08-07 13:02:55 -0300
commitef66a4a57c8e7591ef5015d594d8bcc4a1077e17 (patch)
treea5deb711caeb2acad07d05a5a4566aab9848121c /app/models/milestone.rb
parent415b2f943ba80ef3b6746af0a98c6dbe062e803c (diff)
downloadgitlab-ce-ef66a4a57c8e7591ef5015d594d8bcc4a1077e17.tar.gz
Fix missing and duplicates on project milestone listing page
Diffstat (limited to 'app/models/milestone.rb')
-rw-r--r--app/models/milestone.rb35
1 files changed, 19 insertions, 16 deletions
diff --git a/app/models/milestone.rb b/app/models/milestone.rb
index f2b2d291da9..cb1def1b422 100644
--- a/app/models/milestone.rb
+++ b/app/models/milestone.rb
@@ -146,22 +146,25 @@ class Milestone < ActiveRecord::Base
end
def self.sort_by_attribute(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 'name_asc'
- reorder(Arel::Nodes::Ascending.new(arel_table[:title].lower))
- when 'name_desc'
- reorder(Arel::Nodes::Descending.new(arel_table[:title].lower))
- 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
+ sorted =
+ 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 'name_asc'
+ reorder(Arel::Nodes::Ascending.new(arel_table[:title].lower))
+ when 'name_desc'
+ reorder(Arel::Nodes::Descending.new(arel_table[:title].lower))
+ 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
+
+ sorted.with_order_id_desc
end
##