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 'app/helpers/projects_helper.rb')
-rw-r--r--app/helpers/projects_helper.rb95
1 files changed, 26 insertions, 69 deletions
diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb
index 9415e7d4dc3..e27ee1acb22 100644
--- a/app/helpers/projects_helper.rb
+++ b/app/helpers/projects_helper.rb
@@ -172,18 +172,6 @@ module ProjectsHelper
project.fork_source if project.fork_source && can?(current_user, :read_project, project.fork_source)
end
- def project_search_tabs?(tab)
- return false unless @project.present?
-
- abilities = Array(search_tab_ability_map[tab])
-
- if @project.respond_to?(:each) # support multi-project select
- @project.any? { |project| abilities.any? { |ability| can?(current_user, ability, project) } }
- else
- abilities.any? { |ability| can?(current_user, ability, @project) }
- end
- end
-
def can_change_visibility_level?(project, current_user)
can?(current_user, :change_visibility_level, project)
end
@@ -511,9 +499,9 @@ module ProjectsHelper
def clusters_deprecation_alert_message
if has_active_license?
- s_('ClusterIntegration|The certificate-based Kubernetes integration has been deprecated and will be turned off at the end of February 2023. Please %{linkStart}migrate to the GitLab agent for Kubernetes%{linkEnd}. Contact GitLab Support if you have any additional questions.')
+ s_('ClusterIntegration|The certificate-based Kubernetes integration is deprecated and will be removed in the future. You should %{linkStart}migrate to the GitLab agent for Kubernetes%{linkEnd}. For more information, see the %{deprecationLinkStart}deprecation epic%{deprecationLinkEnd}, or contact GitLab support.')
else
- s_('ClusterIntegration|The certificate-based Kubernetes integration has been deprecated and will be turned off at the end of February 2023. Please %{linkStart}migrate to the GitLab agent for Kubernetes%{linkEnd}.')
+ s_('ClusterIntegration|The certificate-based Kubernetes integration is deprecated and will be removed in the future. You should %{linkStart}migrate to the GitLab agent for Kubernetes%{linkEnd}. For more information, see the %{deprecationLinkStart}deprecation epic%{deprecationLinkEnd}.')
end
end
@@ -547,8 +535,32 @@ module ProjectsHelper
project.ssh_url_to_repo
end
+ def can_view_branch_rules?
+ can?(current_user, :maintainer_access, @project)
+ end
+
+ def can_push_code?
+ current_user&.can?(:push_code, @project)
+ end
+
+ def can_admin_associated_clusters?(project)
+ can_admin_project_clusters?(project) || can_admin_group_clusters?(project)
+ end
+
+ def branch_rules_path
+ project_settings_repository_path(@project, anchor: 'js-branch-rules')
+ end
+
private
+ def can_admin_project_clusters?(project)
+ project.clusters.any? && can?(current_user, :admin_cluster, project)
+ end
+
+ def can_admin_group_clusters?(project)
+ project.group && project.group.clusters.any? && can?(current_user, :admin_cluster, project.group)
+ end
+
def create_merge_request_path(project, source_project, ref, merge_request)
return if merge_request.present?
return unless can?(current_user, :create_merge_request_from, project)
@@ -590,41 +602,6 @@ module ProjectsHelper
s_(str).html_safe % { provider: provider, link_start: link_start, link_end: '</a>'.html_safe }
end
- def tab_ability_map
- {
- cycle_analytics: :read_cycle_analytics,
- environments: :read_environment,
- metrics_dashboards: :metrics_dashboard,
- milestones: :read_milestone,
- snippets: :read_snippet,
- settings: :admin_project,
- builds: :read_build,
- clusters: :read_cluster,
- serverless: :read_cluster,
- terraform: :read_terraform_state,
- error_tracking: :read_sentry_issue,
- alert_management: :read_alert_management_alert,
- incidents: :read_issue,
- labels: :read_label,
- issues: :read_issue,
- project_members: :read_project_member,
- wiki: :read_wiki,
- feature_flags: :read_feature_flag,
- analytics: :read_analytics
- }
- end
-
- def search_tab_ability_map
- @search_tab_ability_map ||= tab_ability_map.merge(
- blobs: :read_code,
- commits: :read_code,
- merge_requests: :read_merge_request,
- notes: [:read_merge_request, :read_code, :read_issue, :read_snippet],
- users: :read_project_member,
- wiki_blobs: :read_wiki
- )
- end
-
def project_lfs_status(project)
if project.lfs_enabled?
content_tag(:span, class: 'lfs-enabled') do
@@ -880,24 +857,4 @@ module ProjectsHelper
end
end
-def can_admin_associated_clusters?(project)
- can_admin_project_clusters?(project) || can_admin_group_clusters?(project)
-end
-
-def can_admin_project_clusters?(project)
- project.clusters.any? && can?(current_user, :admin_cluster, project)
-end
-
-def can_admin_group_clusters?(project)
- project.group && project.group.clusters.any? && can?(current_user, :admin_cluster, project.group)
-end
-
-def can_view_branch_rules?
- can?(current_user, :maintainer_access, @project)
-end
-
-def branch_rules_path
- project_settings_repository_path(@project, anchor: 'js-branch-rules')
-end
-
ProjectsHelper.prepend_mod_with('ProjectsHelper')