summaryrefslogtreecommitdiff
path: root/app/views/shared/groups/_dropdown.html.haml
blob: 1a259b679c7d91597996e5739b80b25dfedb0e76 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
- options_hash = local_assigns.fetch(:options_hash, groups_sort_options_hash)
- show_archive_options = local_assigns.fetch(:show_archive_options, false)
- if @sort.present?
  - default_sort_by = @sort
- else
  - if params[:sort]
    - default_sort_by = params[:sort]
  - else
    - default_sort_by = sort_value_recently_created

.dropdown.inline.js-group-filter-dropdown-wrap.append-right-10
  %button.dropdown-toggle{ type: 'button', 'data-toggle' => 'dropdown' }
    %span.dropdown-label
      = options_hash[default_sort_by]
    = icon('chevron-down')
  %ul.dropdown-menu.dropdown-menu-align-right.dropdown-menu-selectable
    %li.dropdown-header
      = _("Sort by")
    - options_hash.each do |value, title|
      %li.js-filter-sort-order
        = link_to filter_groups_path(sort: value), class: ("is-active" if default_sort_by == value) do
          = title
    - if show_archive_options
      %li.divider
      %li.js-filter-archived-projects
        = link_to group_children_path(@group, archived: nil), class: ("is-active" unless params[:archived].present?) do
          Hide archived projects
      %li.js-filter-archived-projects
        = link_to group_children_path(@group, archived: true), class: ("is-active" if Gitlab::Utils.to_boolean(params[:archived])) do
          Show archived projects
      %li.js-filter-archived-projects
        = link_to group_children_path(@group, archived: 'only'), class: ("is-active" if params[:archived] == 'only') do
          Show archived projects only