diff options
Diffstat (limited to 'app/helpers')
-rw-r--r-- | app/helpers/appearances_helper.rb | 5 | ||||
-rw-r--r-- | app/helpers/application_settings_helper.rb | 5 | ||||
-rw-r--r-- | app/helpers/boards_helper.rb | 3 | ||||
-rw-r--r-- | app/helpers/issuables_helper.rb | 9 | ||||
-rw-r--r-- | app/helpers/issues_helper.rb | 15 | ||||
-rw-r--r-- | app/helpers/markup_helper.rb | 2 | ||||
-rw-r--r-- | app/helpers/recaptcha_experiment_helper.rb | 7 | ||||
-rw-r--r-- | app/helpers/search_helper.rb | 5 | ||||
-rw-r--r-- | app/helpers/services_helper.rb | 2 | ||||
-rw-r--r-- | app/helpers/todos_helper.rb | 2 |
10 files changed, 39 insertions, 16 deletions
diff --git a/app/helpers/appearances_helper.rb b/app/helpers/appearances_helper.rb index c0db9910143..6b43d52c775 100644 --- a/app/helpers/appearances_helper.rb +++ b/app/helpers/appearances_helper.rb @@ -2,6 +2,7 @@ module AppearancesHelper include MarkupHelper + include Gitlab::Utils::StrongMemoize def brand_title current_appearance&.title.presence || default_brand_title @@ -25,7 +26,9 @@ module AppearancesHelper end def current_appearance - @appearance ||= Appearance.current + strong_memoize(:current_appearance) do + Appearance.current + end end def brand_header_logo diff --git a/app/helpers/application_settings_helper.rb b/app/helpers/application_settings_helper.rb index 4469118f065..aaaa954047f 100644 --- a/app/helpers/application_settings_helper.rb +++ b/app/helpers/application_settings_helper.rb @@ -165,8 +165,6 @@ module ApplicationSettingsHelper :authorized_keys_enabled, :auto_devops_enabled, :auto_devops_domain, - :clientside_sentry_dsn, - :clientside_sentry_enabled, :container_registry_token_expire_delay, :default_artifacts_expire_in, :default_branch_protection, @@ -235,8 +233,6 @@ module ApplicationSettingsHelper :restricted_visibility_levels, :rsa_key_restriction, :send_user_confirmation_email, - :sentry_dsn, - :sentry_enabled, :session_expire_delay, :shared_runners_enabled, :shared_runners_text, @@ -253,6 +249,7 @@ module ApplicationSettingsHelper :throttle_unauthenticated_enabled, :throttle_unauthenticated_period_in_seconds, :throttle_unauthenticated_requests_per_period, + :time_tracking_limit_to_hours, :two_factor_grace_period, :unique_ips_limit_enabled, :unique_ips_limit_per_user, diff --git a/app/helpers/boards_helper.rb b/app/helpers/boards_helper.rb index 1640f4fc93f..c5130b430b9 100644 --- a/app/helpers/boards_helper.rb +++ b/app/helpers/boards_helper.rb @@ -14,7 +14,8 @@ module BoardsHelper issue_link_base: build_issue_link_base, root_path: root_path, bulk_update_path: @bulk_issues_path, - default_avatar: image_path(default_avatar) + default_avatar: image_path(default_avatar), + time_tracking_limit_to_hours: Gitlab::CurrentSettings.time_tracking_limit_to_hours.to_s } end diff --git a/app/helpers/issuables_helper.rb b/app/helpers/issuables_helper.rb index 9a12db258d5..cd2669ef6ad 100644 --- a/app/helpers/issuables_helper.rb +++ b/app/helpers/issuables_helper.rb @@ -74,7 +74,7 @@ module IssuablesHelper end end - def serialize_issuable(issuable, serializer: nil) + def serialize_issuable(issuable, opts = {}) serializer_klass = case issuable when Issue IssueSerializer @@ -84,7 +84,7 @@ module IssuablesHelper serializer_klass .new(current_user: current_user, project: issuable.project) - .represent(issuable, serializer: serializer) + .represent(issuable, opts) .to_json end @@ -280,7 +280,7 @@ module IssuablesHelper initialTaskStatus: issuable.task_status } - data[:hasClosingMergeRequest] = issuable.merge_requests_count != 0 if issuable.is_a?(Issue) + data[:hasClosingMergeRequest] = issuable.merge_requests_count(current_user) != 0 if issuable.is_a?(Issue) if parent.is_a?(Group) data[:groupPath] = parent.path @@ -430,7 +430,8 @@ module IssuablesHelper editable: issuable.dig(:current_user, :can_edit), currentUser: issuable[:current_user], rootPath: root_path, - fullPath: issuable[:project_full_path] + fullPath: issuable[:project_full_path], + timeTrackingLimitToHours: Gitlab::CurrentSettings.time_tracking_limit_to_hours } end diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb index 957ab06b0ca..dfadcfc33b2 100644 --- a/app/helpers/issues_helper.rb +++ b/app/helpers/issues_helper.rb @@ -5,6 +5,7 @@ module IssuesHelper classes = ["issue"] classes << "closed" if issue.closed? classes << "today" if issue.today? + classes << "user-can-drag" if @sort == 'relative_position' classes.join(' ') end @@ -135,6 +136,20 @@ module IssuesHelper can?(current_user, :create_issue, project) end + def create_confidential_merge_request_enabled? + Feature.enabled?(:create_confidential_merge_request, @project) + end + + def show_new_branch_button? + can_create_confidential_merge_request? || !@issue.confidential? + end + + def can_create_confidential_merge_request? + @issue.confidential? && !@project.private? && + create_confidential_merge_request_enabled? && + can?(current_user, :create_merge_request_in, @project) + end + # Required for Banzai::Filter::IssueReferenceFilter module_function :url_for_issue module_function :url_for_internal_issue diff --git a/app/helpers/markup_helper.rb b/app/helpers/markup_helper.rb index bf894360a2e..8ccb39f8444 100644 --- a/app/helpers/markup_helper.rb +++ b/app/helpers/markup_helper.rb @@ -278,7 +278,7 @@ module MarkupHelper def prepare_for_rendering(html, context = {}) return '' unless html.present? - context.merge!( + context.reverse_merge!( current_user: (current_user if defined?(current_user)), # RelativeLinkFilter diff --git a/app/helpers/recaptcha_experiment_helper.rb b/app/helpers/recaptcha_experiment_helper.rb new file mode 100644 index 00000000000..d2eb9ac54f6 --- /dev/null +++ b/app/helpers/recaptcha_experiment_helper.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +module RecaptchaExperimentHelper + def show_recaptcha_sign_up? + !!Gitlab::Recaptcha.enabled? + end +end diff --git a/app/helpers/search_helper.rb b/app/helpers/search_helper.rb index dfa34ad7020..f5c4686a3bf 100644 --- a/app/helpers/search_helper.rb +++ b/app/helpers/search_helper.rb @@ -169,18 +169,17 @@ module SearchHelper autocomplete: 'off' } + opts[:data]['runner-tags-endpoint'] = tag_list_admin_runners_path + if @project.present? opts[:data]['project-id'] = @project.id - opts[:data]['base-endpoint'] = project_path(@project) opts[:data]['labels-endpoint'] = project_labels_path(@project) opts[:data]['milestones-endpoint'] = project_milestones_path(@project) elsif @group.present? opts[:data]['group-id'] = @group.id - opts[:data]['base-endpoint'] = group_canonical_path(@group) opts[:data]['labels-endpoint'] = group_labels_path(@group) opts[:data]['milestones-endpoint'] = group_milestones_path(@group) else - opts[:data]['base-endpoint'] = root_dashboard_path opts[:data]['labels-endpoint'] = dashboard_labels_path opts[:data]['milestones-endpoint'] = dashboard_milestones_path end diff --git a/app/helpers/services_helper.rb b/app/helpers/services_helper.rb index d4b50b7ecfb..01ccf163b45 100644 --- a/app/helpers/services_helper.rb +++ b/app/helpers/services_helper.rb @@ -39,7 +39,7 @@ module ServicesHelper end def disable_fields_service?(service) - !current_controller?("admin/services") && service.deprecated? + service.is_a?(KubernetesService) || (!current_controller?("admin/services") && service.deprecated?) end extend self diff --git a/app/helpers/todos_helper.rb b/app/helpers/todos_helper.rb index 6bd78336ed3..645160077f5 100644 --- a/app/helpers/todos_helper.rb +++ b/app/helpers/todos_helper.rb @@ -170,7 +170,7 @@ module TodosHelper end def todo_group_options - groups = current_user.authorized_groups.map do |group| + groups = current_user.authorized_groups.with_route.map do |group| { id: group.id, text: group.full_name } end |