diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-04-27 12:10:12 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-04-27 12:10:12 +0000 |
commit | 154523302b10ab5aeb67bde861880a98e3f8117a (patch) | |
tree | 3b399e7da80ccc47877c5b6e1491abdcf1019c1b /lib/sidebars/projects | |
parent | 018e39a9507cc12bee5c6a168641d9843c5a6419 (diff) | |
download | gitlab-ce-154523302b10ab5aeb67bde861880a98e3f8117a.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/sidebars/projects')
-rw-r--r-- | lib/sidebars/projects/menus/external_issue_tracker_menu.rb | 59 | ||||
-rw-r--r-- | lib/sidebars/projects/menus/labels_menu.rb | 48 | ||||
-rw-r--r-- | lib/sidebars/projects/menus/learn_gitlab_menu.rb | 6 | ||||
-rw-r--r-- | lib/sidebars/projects/panel.rb | 4 |
4 files changed, 114 insertions, 3 deletions
diff --git a/lib/sidebars/projects/menus/external_issue_tracker_menu.rb b/lib/sidebars/projects/menus/external_issue_tracker_menu.rb new file mode 100644 index 00000000000..136d30f38c3 --- /dev/null +++ b/lib/sidebars/projects/menus/external_issue_tracker_menu.rb @@ -0,0 +1,59 @@ +# frozen_string_literal: true + +module Sidebars + module Projects + module Menus + class ExternalIssueTrackerMenu < ::Sidebars::Menu + override :link + def link + external_issue_tracker.issue_tracker_path + end + + override :extra_container_html_options + def extra_container_html_options + { + target: '_blank', + rel: 'noopener noreferrer', + class: 'shortcuts-external_tracker' + } + end + + override :extra_collapsed_container_html_options + def extra_collapsed_container_html_options + { + target: '_blank', + rel: 'noopener noreferrer' + } + end + + override :title + def title + external_issue_tracker.title + end + + override :title_html_options + def title_html_options + { + id: 'js-onboarding-issues-link' + } + end + + override :sprite_icon + def sprite_icon + 'external-link' + end + + override :render? + def render? + external_issue_tracker.present? + end + + private + + def external_issue_tracker + @external_issue_tracker ||= context.project.external_issue_tracker + end + end + end + end +end diff --git a/lib/sidebars/projects/menus/labels_menu.rb b/lib/sidebars/projects/menus/labels_menu.rb new file mode 100644 index 00000000000..0259839c43f --- /dev/null +++ b/lib/sidebars/projects/menus/labels_menu.rb @@ -0,0 +1,48 @@ +# frozen_string_literal: true + +module Sidebars + module Projects + module Menus + class LabelsMenu < ::Sidebars::Menu + override :link + def link + project_labels_path(context.project) + end + + override :extra_container_html_options + def extra_container_html_options + { + class: 'shortcuts-labels' + } + end + + override :title + def title + _('Labels') + end + + override :title_html_options + def title_html_options + { + id: 'js-onboarding-labels-link' + } + end + + override :active_routes + def active_routes + { controller: :labels } + end + + override :sprite_icon + def sprite_icon + 'label' + end + + override :render? + def render? + can?(context.current_user, :read_label, context.project) && !context.project.issues_enabled? + end + end + end + end +end diff --git a/lib/sidebars/projects/menus/learn_gitlab_menu.rb b/lib/sidebars/projects/menus/learn_gitlab_menu.rb index bd3ec3deb8d..7fb59278a9b 100644 --- a/lib/sidebars/projects/menus/learn_gitlab_menu.rb +++ b/lib/sidebars/projects/menus/learn_gitlab_menu.rb @@ -24,9 +24,9 @@ module Sidebars { class: 'home' } end - override :sprite_icon - def sprite_icon - 'home' + override :image_path + def image_path + 'learn_gitlab/graduation_hat.svg' end override :render? diff --git a/lib/sidebars/projects/panel.rb b/lib/sidebars/projects/panel.rb index 6f905626539..0e2daca9194 100644 --- a/lib/sidebars/projects/panel.rb +++ b/lib/sidebars/projects/panel.rb @@ -11,6 +11,8 @@ module Sidebars add_menu(Sidebars::Projects::Menus::LearnGitlabMenu.new(context)) add_menu(Sidebars::Projects::Menus::RepositoryMenu.new(context)) add_menu(Sidebars::Projects::Menus::IssuesMenu.new(context)) + add_menu(Sidebars::Projects::Menus::ExternalIssueTrackerMenu.new(context)) + add_menu(Sidebars::Projects::Menus::LabelsMenu.new(context)) end override :render_raw_menus_partial @@ -25,3 +27,5 @@ module Sidebars end end end + +Sidebars::Projects::Panel.prepend_if_ee('EE::Sidebars::Projects::Panel') |