summaryrefslogtreecommitdiff
path: root/app/views/layouts/header/_new_dropdown.haml
blob: 2c5cd7e96c70abbf5823934392b09893b62b9424 (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
34
35
36
37
38
39
40
41
42
43
%li.header-new.dropdown{ data: { track_label: "new_dropdown", track_event: "click_dropdown", track_value: "" } }
  = link_to new_project_path, class: "header-new-dropdown-toggle has-tooltip qa-new-menu-toggle", id: "js-onboarding-new-project-link", title: _("New..."), ref: 'tooltip', aria: { label: _("New...") }, data: { toggle: 'dropdown', placement: 'bottom', container: 'body', display: 'static' } do
    = sprite_icon('plus-square')
    = sprite_icon('chevron-down', css_class: 'caret-down')
  .dropdown-menu.dropdown-menu-right
    %ul
      - if @group&.persisted?
        - create_group_project = can?(current_user, :create_projects, @group)
        - create_group_subgroup = can?(current_user, :create_subgroup, @group)

        - if create_group_project || create_group_subgroup
          %li.dropdown-bold-header
            = _('This group')
          - if create_group_project
            %li= link_to _('New project'), new_project_path(namespace_id: @group.id)
          - if create_group_subgroup
            %li= link_to _('New subgroup'), new_group_path(parent_id: @group.id)
          = render_if_exists 'layouts/header/create_epic_new_dropdown_item'
          %li.divider
          %li.dropdown-bold-header GitLab

      - if @project&.persisted?
        - create_project_issue = show_new_issue_link?(@project)
        - merge_project = merge_request_source_project_for_project(@project)
        - create_project_snippet = can?(current_user, :create_snippet, @project)

        - if create_project_issue || merge_project || create_project_snippet
          %li.dropdown-bold-header
            = _('This project')
          - if create_project_issue
            %li= link_to _('New issue'), new_project_issue_path(@project)
          - if merge_project
            %li= link_to _('New merge request'), project_new_merge_request_path(merge_project)
          - if create_project_snippet
            %li= link_to _('New snippet'), new_project_snippet_path(@project)
          %li.divider
          %li.dropdown-bold-header GitLab
      - if current_user.can_create_project?
        %li= link_to _('New project'), new_project_path, class: 'qa-global-new-project-link'
      - if current_user.can_create_group?
        %li= link_to _('New group'), new_group_path
      - if current_user.can?(:create_snippet)
        %li= link_to _('New snippet'), new_snippet_path, class: 'qa-global-new-snippet-link'