Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sidebars')
-rw-r--r--lib/sidebars/groups/menus/packages_registries_menu.rb6
-rw-r--r--lib/sidebars/menu.rb3
-rw-r--r--lib/sidebars/projects/menus/analytics_menu.rb6
-rw-r--r--lib/sidebars/projects/menus/deployments_menu.rb2
-rw-r--r--lib/sidebars/projects/menus/hidden_menu.rb8
-rw-r--r--lib/sidebars/projects/menus/infrastructure_menu.rb6
-rw-r--r--lib/sidebars/projects/menus/monitor_menu.rb6
-rw-r--r--lib/sidebars/projects/menus/repository_menu.rb32
8 files changed, 42 insertions, 27 deletions
diff --git a/lib/sidebars/groups/menus/packages_registries_menu.rb b/lib/sidebars/groups/menus/packages_registries_menu.rb
index 873f11f8a5b..e115ca669d4 100644
--- a/lib/sidebars/groups/menus/packages_registries_menu.rb
+++ b/lib/sidebars/groups/menus/packages_registries_menu.rb
@@ -51,8 +51,8 @@ module Sidebars
def harbor_registry_menu_item
if Feature.disabled?(:harbor_registry_integration) ||
- context.group.harbor_integration.nil? ||
- !context.group.harbor_integration.activated?
+ context.group.harbor_integration.nil? ||
+ !context.group.harbor_integration.activated?
return nil_menu_item(:harbor_registry)
end
@@ -66,7 +66,7 @@ module Sidebars
def dependency_proxy_menu_item
setting_does_not_exist_or_is_enabled = !context.group.dependency_proxy_setting ||
- context.group.dependency_proxy_setting.enabled
+ context.group.dependency_proxy_setting.enabled
return nil_menu_item(:dependency_proxy) unless can?(context.current_user, :read_dependency_proxy, context.group)
return nil_menu_item(:dependency_proxy) unless setting_does_not_exist_or_is_enabled
diff --git a/lib/sidebars/menu.rb b/lib/sidebars/menu.rb
index d9d294ff982..dfd88c99a0c 100644
--- a/lib/sidebars/menu.rb
+++ b/lib/sidebars/menu.rb
@@ -43,7 +43,7 @@ module Sidebars
# Value from menus is something like: [{ path: 'foo', path: 'bar', controller: :foo }]
# This method filters the information and returns: { path: ['foo', 'bar'], controller: :foo }
def all_active_routes
- @all_active_routes ||= begin
+ @all_active_routes ||=
([active_routes] + renderable_items.map(&:active_routes)).flatten.each_with_object({}) do |pairs, hash|
pairs.each do |k, v|
hash[k] ||= []
@@ -53,7 +53,6 @@ module Sidebars
hash
end
- end
end
# Returns whether the menu has any menu item, no
diff --git a/lib/sidebars/projects/menus/analytics_menu.rb b/lib/sidebars/projects/menus/analytics_menu.rb
index b9bcc3267d6..643b7ebcd5a 100644
--- a/lib/sidebars/projects/menus/analytics_menu.rb
+++ b/lib/sidebars/projects/menus/analytics_menu.rb
@@ -45,9 +45,9 @@ module Sidebars
def ci_cd_analytics_menu_item
if !context.project.feature_available?(:builds, context.current_user) ||
- !can?(context.current_user, :read_build, context.project) ||
- !can?(context.current_user, :read_ci_cd_analytics, context.project) ||
- context.project.empty_repo?
+ !can?(context.current_user, :read_build, context.project) ||
+ !can?(context.current_user, :read_ci_cd_analytics, context.project) ||
+ context.project.empty_repo?
return ::Sidebars::NilMenuItem.new(item_id: :ci_cd_analytics)
end
diff --git a/lib/sidebars/projects/menus/deployments_menu.rb b/lib/sidebars/projects/menus/deployments_menu.rb
index 9904d533f47..5f789748288 100644
--- a/lib/sidebars/projects/menus/deployments_menu.rb
+++ b/lib/sidebars/projects/menus/deployments_menu.rb
@@ -62,7 +62,7 @@ module Sidebars
def releases_menu_item
if !can?(context.current_user, :read_release, context.project) ||
- context.project.empty_repo?
+ context.project.empty_repo?
return ::Sidebars::NilMenuItem.new(item_id: :releases)
end
diff --git a/lib/sidebars/projects/menus/hidden_menu.rb b/lib/sidebars/projects/menus/hidden_menu.rb
index c273ee8b74f..5db46a1279c 100644
--- a/lib/sidebars/projects/menus/hidden_menu.rb
+++ b/lib/sidebars/projects/menus/hidden_menu.rb
@@ -29,8 +29,8 @@ module Sidebars
end
def graph_menu_item
- if !can?(context.current_user, :download_code, context.project) ||
- context.project.empty_repo?
+ if !can?(context.current_user, :read_code, context.project) ||
+ context.project.empty_repo?
return ::Sidebars::NilMenuItem.new(item_id: :graph)
end
@@ -72,8 +72,8 @@ module Sidebars
end
def commits_menu_item
- if !can?(context.current_user, :download_code, context.project) ||
- context.project.empty_repo?
+ if !can?(context.current_user, :read_code, context.project) ||
+ context.project.empty_repo?
return ::Sidebars::NilMenuItem.new(item_id: :commits)
end
diff --git a/lib/sidebars/projects/menus/infrastructure_menu.rb b/lib/sidebars/projects/menus/infrastructure_menu.rb
index a8ac3d10f83..04c9ab77729 100644
--- a/lib/sidebars/projects/menus/infrastructure_menu.rb
+++ b/lib/sidebars/projects/menus/infrastructure_menu.rb
@@ -35,11 +35,7 @@ module Sidebars
private
def feature_enabled?
- if ::Feature.enabled?(:split_operations_visibility_permissions, context.project)
- context.project.feature_available?(:infrastructure, context.current_user)
- else
- context.project.feature_available?(:operations, context.current_user)
- end
+ context.project.feature_available?(:infrastructure, context.current_user)
end
def kubernetes_menu_item
diff --git a/lib/sidebars/projects/menus/monitor_menu.rb b/lib/sidebars/projects/menus/monitor_menu.rb
index 035634702db..fea71e4aefd 100644
--- a/lib/sidebars/projects/menus/monitor_menu.rb
+++ b/lib/sidebars/projects/menus/monitor_menu.rb
@@ -41,11 +41,7 @@ module Sidebars
private
def feature_enabled?
- if ::Feature.enabled?(:split_operations_visibility_permissions, context.project)
- context.project.feature_available?(:monitor, context.current_user)
- else
- context.project.feature_available?(:operations, context.current_user)
- end
+ context.project.feature_available?(:monitor, context.current_user)
end
def metrics_dashboard_menu_item
diff --git a/lib/sidebars/projects/menus/repository_menu.rb b/lib/sidebars/projects/menus/repository_menu.rb
index 1b46323089c..735be5a5133 100644
--- a/lib/sidebars/projects/menus/repository_menu.rb
+++ b/lib/sidebars/projects/menus/repository_menu.rb
@@ -6,7 +6,7 @@ module Sidebars
class RepositoryMenu < ::Sidebars::Menu
override :configure_menu_items
def configure_menu_items
- return false unless can?(context.current_user, :download_code, context.project)
+ return false unless can?(context.current_user, :read_code, context.project)
return false if context.project.empty_repo?
add_item(files_menu_item)
@@ -56,9 +56,15 @@ module Sidebars
end
def commits_menu_item
+ link = if Feature.enabled?(:use_ref_type_parameter, context.project)
+ project_commits_path(context.project, context.current_ref, ref_type: ref_type_from_context(context))
+ else
+ project_commits_path(context.project, context.current_ref)
+ end
+
::Sidebars::MenuItem.new(
title: _('Commits'),
- link: project_commits_path(context.project, context.current_ref),
+ link: link,
active_routes: { controller: %w(commit commits) },
item_id: :commits,
container_html_options: { id: 'js-onboarding-commits-link' }
@@ -87,18 +93,30 @@ module Sidebars
def contributors_menu_item
return false unless context.project.analytics_enabled?
+ link = if Feature.enabled?(:use_ref_type_parameter, context.project)
+ project_graph_path(context.project, context.current_ref, ref_type: ref_type_from_context(context))
+ else
+ project_graph_path(context.project, context.current_ref)
+ end
+
::Sidebars::MenuItem.new(
title: _('Contributors'),
- link: project_graph_path(context.project, context.current_ref),
+ link: link,
active_routes: { path: 'graphs#show' },
item_id: :contributors
)
end
def graphs_menu_item
+ link = if Feature.enabled?(:use_ref_type_parameter, context.project)
+ project_network_path(context.project, context.current_ref, ref_type: ref_type_from_context(context))
+ else
+ project_network_path(context.project, context.current_ref)
+ end
+
::Sidebars::MenuItem.new(
title: _('Graph'),
- link: project_network_path(context.project, context.current_ref),
+ link: link,
active_routes: { controller: :network },
item_id: :graphs
)
@@ -112,6 +130,12 @@ module Sidebars
item_id: :compare
)
end
+
+ def ref_type_from_context(context)
+ ref_type = context.try(:ref_type)
+ ref_type ||= 'heads' if context.current_ref == context.project.repository.root_ref
+ ref_type
+ end
end
end
end