%li.header-new.dropdown = link_to new_project_path, class: "header-new-dropdown-toggle has-tooltip qa-new-menu-toggle", title: "New...", ref: 'tooltip', aria: { label: "New..." }, data: { toggle: 'dropdown', placement: 'bottom', container: 'body' } do = sprite_icon('plus-square', size: 16) = sprite_icon('angle-down', css_class: 'caret-down') .dropdown-menu-nav.dropdown-menu-align-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.header-new-group-project = 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) %li.divider %li.dropdown-bold-header GitLab - if @project&.persisted? - create_project_issue = can?(current_user, :create_issue, @project) - merge_project = can?(current_user, :create_merge_request, @project) ? @project : (current_user && current_user.fork_of(@project)) - create_project_snippet = can?(current_user, :create_project_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.header-new-project-snippet = 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 - if current_user.can_create_group? %li = link_to 'New group', new_group_path %li = link_to 'New snippet', new_snippet_path