diff options
Diffstat (limited to 'app/views/layouts/header/_new_dropdown.html.haml')
-rw-r--r-- | app/views/layouts/header/_new_dropdown.html.haml | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/app/views/layouts/header/_new_dropdown.html.haml b/app/views/layouts/header/_new_dropdown.html.haml new file mode 100644 index 00000000000..7b49e6f716e --- /dev/null +++ b/app/views/layouts/header/_new_dropdown.html.haml @@ -0,0 +1,44 @@ +%li.header-new.dropdown{ data: { track_label: "new_dropdown", track_event: "click_dropdown", track_experiment: "new_repo" } } + = 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.dropdown-extended-height + %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' + = render 'layouts/header/group_invite_members_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) + = render 'layouts/header/project_invite_members_new_dropdown_item' + %li.divider + %li.dropdown-bold-header GitLab + = content_for :new_repo_experiment + - 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' |