summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2016-03-04 17:53:13 +0100
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2016-03-04 19:27:02 +0100
commit38984a59ac6c540b1cb97518d48386f5fc42490c (patch)
treeb7c4c76f4abc48fdf64a887540142ea3772ffebe
parentee0f5bb511802c6aefe725eed67b366601c9aad8 (diff)
downloadgitlab-ce-38984a59ac6c540b1cb97518d48386f5fc42490c.tar.gz
Show active sorting method for projects list
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
-rw-r--r--app/helpers/sorting_helper.rb10
-rw-r--r--app/views/shared/projects/_dropdown.html.haml37
2 files changed, 26 insertions, 21 deletions
diff --git a/app/helpers/sorting_helper.rb b/app/helpers/sorting_helper.rb
index f9026b887da..2f2d2721d6d 100644
--- a/app/helpers/sorting_helper.rb
+++ b/app/helpers/sorting_helper.rb
@@ -16,6 +16,16 @@ module SortingHelper
}
end
+ def projects_sort_options_hash
+ {
+ sort_value_name => sort_title_name,
+ sort_value_recently_updated => sort_title_recently_updated,
+ sort_value_oldest_updated => sort_title_oldest_updated,
+ sort_value_recently_created => sort_title_recently_created,
+ sort_value_oldest_created => sort_title_oldest_created,
+ }
+ end
+
def sort_title_oldest_updated
'Oldest updated'
end
diff --git a/app/views/shared/projects/_dropdown.html.haml b/app/views/shared/projects/_dropdown.html.haml
index 3d721c40e24..89569906dba 100644
--- a/app/views/shared/projects/_dropdown.html.haml
+++ b/app/views/shared/projects/_dropdown.html.haml
@@ -1,28 +1,23 @@
+- @sort ||= sort_value_recently_updated
+- archived = params[:archived]
.dropdown.inline
%button.dropdown-toggle.btn{type: 'button', 'data-toggle' => 'dropdown'}
%span.light
- - if @sort.present?
- = sort_options_hash[@sort]
- - else
- = sort_title_recently_updated
+ = projects_sort_options_hash[@sort]
%b.caret
%ul.dropdown-menu.dropdown-menu-align-right
- %li
- = link_to filter_projects_path(sort: sort_value_name) do
- = sort_title_name
- = link_to filter_projects_path(sort: sort_value_recently_created) do
- = sort_title_recently_created
- = link_to filter_projects_path(sort: sort_value_oldest_created) do
- = sort_title_oldest_created
- = link_to filter_projects_path(sort: sort_value_recently_updated) do
- = sort_title_recently_updated
- = link_to filter_projects_path(sort: sort_value_oldest_updated) do
- = sort_title_oldest_updated
+ - projects_sort_options_hash.each do |value, title|
+ %li
+ = link_to filter_projects_path(sort: value, archived: archived) do
+ = icon('check') if @sort == value
+ = title
+
%li.divider
%li
- - if params[:archived].present?
- = link_to filter_projects_path(sort: @sort, archived: nil) do
- Hide archived projects
- - else
- = link_to filter_projects_path(sort: @sort, archived: true) do
- Show archived projects
+ = link_to filter_projects_path(sort: @sort, archived: nil) do
+ = icon('check') unless params[:archived].present?
+ Hide archived projects
+ %li
+ = link_to filter_projects_path(sort: @sort, archived: true) do
+ = icon('check') if params[:archived].present?
+ Show archived projects