Commit ea10dec6 authored by Sean McGivern's avatar Sean McGivern

Merge branch 'ee-37698-current-settings' into 'master'

use Gitlab::UserSettings directly as a singleton instead of including/extending it

See merge request gitlab-org/gitlab-ee!4337
parents f32b4108 3c793920
class Admin::CohortsController < Admin::ApplicationController
def index
if current_application_settings.usage_ping_enabled
if Gitlab::CurrentSettings.usage_ping_enabled
cohorts_results = Rails.cache.fetch('cohorts', expires_in: 1.day) do
CohortsService.new.execute
end
......
......@@ -2,7 +2,6 @@ require 'gon'
require 'fogbugz'
class ApplicationController < ActionController::Base
include Gitlab::CurrentSettings
include Gitlab::GonHelper
include GitlabRoutingHelper
include PageLayoutHelper
......@@ -28,7 +27,7 @@ class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
helper_method :can?, :current_application_settings
helper_method :can?
helper_method :import_sources_enabled?, :github_import_enabled?, :gitea_import_enabled?, :github_import_configured?, :gitlab_import_enabled?, :gitlab_import_configured?, :bitbucket_import_enabled?, :bitbucket_import_configured?, :google_code_import_enabled?, :fogbugz_import_enabled?, :git_import_enabled?, :gitlab_project_import_enabled?
rescue_from Encoding::CompatibilityError do |exception|
......@@ -108,7 +107,7 @@ class ApplicationController < ActionController::Base
end
def verify_namespace_plan_check_enabled
render_404 unless current_application_settings.should_check_namespace_plan?
render_404 unless Gitlab::CurrentSettings.should_check_namespace_plan?
end
def log_exception(exception)
......@@ -127,7 +126,7 @@ class ApplicationController < ActionController::Base
if Gitlab::Geo.secondary?
Gitlab::Geo.primary_node.oauth_logout_url(@geo_logout_state)
else
current_application_settings.after_sign_out_path.presence || new_user_session_path
Gitlab::CurrentSettings.after_sign_out_path.presence || new_user_session_path
end
end
......@@ -276,15 +275,15 @@ class ApplicationController < ActionController::Base
end
def import_sources_enabled?
!current_application_settings.import_sources.empty?
!Gitlab::CurrentSettings.import_sources.empty?
end
def github_import_enabled?
current_application_settings.import_sources.include?('github')
Gitlab::CurrentSettings.import_sources.include?('github')
end
def gitea_import_enabled?
current_application_settings.import_sources.include?('gitea')
Gitlab::CurrentSettings.import_sources.include?('gitea')
end
def github_import_configured?
......@@ -292,7 +291,7 @@ class ApplicationController < ActionController::Base
end
def gitlab_import_enabled?
request.host != 'gitlab.com' && current_application_settings.import_sources.include?('gitlab')
request.host != 'gitlab.com' && Gitlab::CurrentSettings.import_sources.include?('gitlab')
end
def gitlab_import_configured?
......@@ -300,7 +299,7 @@ class ApplicationController < ActionController::Base
end
def bitbucket_import_enabled?
current_application_settings.import_sources.include?('bitbucket')
Gitlab::CurrentSettings.import_sources.include?('bitbucket')
end
def bitbucket_import_configured?
......@@ -308,19 +307,19 @@ class ApplicationController < ActionController::Base
end
def google_code_import_enabled?
current_application_settings.import_sources.include?('google_code')
Gitlab::CurrentSettings.import_sources.include?('google_code')
end
def fogbugz_import_enabled?
current_application_settings.import_sources.include?('fogbugz')
Gitlab::CurrentSettings.import_sources.include?('fogbugz')
end
def git_import_enabled?
current_application_settings.import_sources.include?('git')
Gitlab::CurrentSettings.import_sources.include?('git')
end
def gitlab_project_import_enabled?
current_application_settings.import_sources.include?('gitlab_project')
Gitlab::CurrentSettings.import_sources.include?('gitlab_project')
end
# U2F (universal 2nd factor) devices need a unique identifier for the application
......
......@@ -20,13 +20,13 @@ module EnforcesTwoFactorAuthentication
end
def two_factor_authentication_required?
current_application_settings.require_two_factor_authentication? ||
Gitlab::CurrentSettings.require_two_factor_authentication? ||
current_user.try(:require_two_factor_authentication_from_group?)
end
def two_factor_authentication_reason(global: -> {}, group: -> {})
if two_factor_authentication_required?
if current_application_settings.require_two_factor_authentication?
if Gitlab::CurrentSettings.require_two_factor_authentication?
global.call
else
groups = current_user.expanded_groups_requiring_two_factor_authentication.reorder(name: :asc)
......@@ -36,7 +36,7 @@ module EnforcesTwoFactorAuthentication
end
def two_factor_grace_period
periods = [current_application_settings.two_factor_grace_period]
periods = [Gitlab::CurrentSettings.two_factor_grace_period]
periods << current_user.two_factor_grace_period if current_user.try(:require_two_factor_authentication_from_group?)
periods.min
end
......
module RequiresWhitelistedMonitoringClient
extend ActiveSupport::Concern
include Gitlab::CurrentSettings
included do
before_action :validate_ip_whitelisted_or_valid_token!
end
......@@ -26,7 +24,7 @@ module RequiresWhitelistedMonitoringClient
token.present? &&
ActiveSupport::SecurityUtils.variable_size_secure_compare(
token,
current_application_settings.health_check_access_token
Gitlab::CurrentSettings.health_check_access_token
)
end
......
......@@ -51,7 +51,7 @@ class InvitesController < ApplicationController
return if current_user
notice = "To accept this invitation, sign in"
notice << " or create an account" if current_application_settings.allow_signup?
notice << " or create an account" if Gitlab::CurrentSettings.allow_signup?
notice << "."
store_location_for :user, request.fullpath
......
......@@ -10,6 +10,6 @@ class KodingController < ApplicationController
private
def check_integration!
render_404 unless current_application_settings.koding_enabled?
render_404 unless Gitlab::CurrentSettings.koding_enabled?
end
end
class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
include Gitlab::CurrentSettings
include Gitlab::GonHelper
include PageLayoutHelper
include OauthApplications
......@@ -31,7 +30,7 @@ class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
private
def verify_user_oauth_applications_enabled
return if current_application_settings.user_oauth_applications?
return if Gitlab::CurrentSettings.user_oauth_applications?
redirect_to profile_path
end
......
......@@ -158,7 +158,7 @@ class OmniauthCallbacksController < Devise::OmniauthCallbacksController
label = Gitlab::OAuth::Provider.label_for(oauth['provider'])
message = "Signing in using your #{label} account without a pre-existing GitLab account is not allowed."
if current_application_settings.allow_signup?
if Gitlab::CurrentSettings.allow_signup?
message << " Create a GitLab account first, and then connect it to your #{label} account."
end
......
class PasswordsController < Devise::PasswordsController
include Gitlab::CurrentSettings
skip_before_action :require_no_authentication, only: [:edit, :update]
before_action :resource_from_email, only: [:create]
......@@ -48,7 +46,7 @@ class PasswordsController < Devise::PasswordsController
if resource
return if resource.allow_password_authentication?
else
return if current_application_settings.password_authentication_enabled?
return if Gitlab::CurrentSettings.password_authentication_enabled?
end
redirect_to after_sending_reset_password_instructions_path_for(resource_name),
......
......@@ -24,7 +24,7 @@ module Projects
end
def slack_service
if current_application_settings.slack_app_enabled
if Gitlab::CurrentSettings.slack_app_enabled
'slack_slash_commands'
else
'gitlab_slack_application'
......
......@@ -404,7 +404,7 @@ class ProjectsController < Projects::ApplicationController
end
def project_export_enabled
render_404 unless current_application_settings.project_export_enabled?
render_404 unless Gitlab::CurrentSettings.project_export_enabled?
end
def redirect_git_extension
......
......@@ -23,7 +23,7 @@ class RootController < Dashboard::ProjectsController
def redirect_unlogged_user
if redirect_to_home_page_url?
redirect_to(current_application_settings.home_page_url)
redirect_to(Gitlab::CurrentSettings.home_page_url)
else
redirect_to(new_user_session_path)
end
......@@ -48,9 +48,9 @@ class RootController < Dashboard::ProjectsController
def redirect_to_home_page_url?
# If user is not signed-in and tries to access root_path - redirect him to landing page
# Don't redirect to the default URL to prevent endless redirections
return false unless current_application_settings.home_page_url.present?
return false unless Gitlab::CurrentSettings.home_page_url.present?
home_page_url = current_application_settings.home_page_url.chomp('/')
home_page_url = Gitlab::CurrentSettings.home_page_url.chomp('/')
root_urls = [Gitlab.config.gitlab['url'].chomp('/'), root_url.chomp('/')]
root_urls.exclude?(home_page_url)
......
......@@ -2,25 +2,23 @@ module ApplicationSettingsHelper
prepend EE::ApplicationSettingsHelper
extend self
include Gitlab::CurrentSettings
delegate :allow_signup?,
:gravatar_enabled?,
:password_authentication_enabled_for_web?,
:akismet_enabled?,
:koding_enabled?,
to: :current_application_settings
to: :'Gitlab::CurrentSettings.current_application_settings'
def user_oauth_applications?
current_application_settings.user_oauth_applications
Gitlab::CurrentSettings.user_oauth_applications
end
def allowed_protocols_present?
current_application_settings.enabled_git_access_protocol.present?
Gitlab::CurrentSettings.enabled_git_access_protocol.present?
end
def enabled_protocol
case current_application_settings.enabled_git_access_protocol
case Gitlab::CurrentSettings.enabled_git_access_protocol
when 'http'
gitlab_config.protocol
when 'ssh'
......@@ -58,7 +56,7 @@ module ApplicationSettingsHelper
# toggle button effect.
def import_sources_checkboxes(help_block_id)
Gitlab::ImportSources.options.map do |name, source|
checked = current_application_settings.import_sources.include?(source)
checked = Gitlab::CurrentSettings.import_sources.include?(source)
css_class = checked ? 'active' : ''
checkbox_name = 'application_setting[import_sources][]'
......@@ -73,7 +71,7 @@ module ApplicationSettingsHelper
def oauth_providers_checkboxes
button_based_providers.map do |source|
disabled = current_application_settings.disabled_oauth_sign_in_sources.include?(source.to_s)
disabled = Gitlab::CurrentSettings.disabled_oauth_sign_in_sources.include?(source.to_s)
css_class = 'btn'
css_class << ' active' unless disabled
checkbox_name = 'application_setting[enabled_oauth_sign_in_sources][]'
......
module AuthHelper
include Gitlab::CurrentSettings
PROVIDERS_WITH_ICONS = %w(twitter github gitlab bitbucket google_oauth2 facebook azure_oauth2 authentiq).freeze
FORM_BASED_PROVIDERS = [/\Aldap/, 'kerberos', 'crowd'].freeze
delegate :slack_app_id, to: :current_application_settings
delegate :slack_app_id, to: :'Gitlab::CurrentSettings.current_application_settings'
def ldap_enabled?
Gitlab::LDAP::Config.enabled?
......@@ -47,7 +45,7 @@ module AuthHelper
end
def enabled_button_based_providers
disabled_providers = current_application_settings.disabled_oauth_sign_in_sources || []
disabled_providers = Gitlab::CurrentSettings.disabled_oauth_sign_in_sources || []
button_based_providers.map(&:to_s) - disabled_providers
end
......
module ProjectsHelper
include Gitlab::CurrentSettings
prepend ::EE::ProjectsHelper
def link_to_project(project)
......@@ -216,7 +214,7 @@ module ProjectsHelper
project.cache_key,
controller.controller_name,
controller.action_name,
current_application_settings.cache_key,
Gitlab::CurrentSettings.cache_key,
'v2.5'
]
......@@ -468,10 +466,10 @@ module ProjectsHelper
path = "#{import_path}?repo=#{repo}&branch=#{branch}&sha=#{sha}"
return URI.join(current_application_settings.koding_url, path).to_s
return URI.join(Gitlab::CurrentSettings.koding_url, path).to_s
end
current_application_settings.koding_url
Gitlab::CurrentSettings.koding_url
end
def contribution_guide_path(project)
......@@ -588,7 +586,7 @@ module ProjectsHelper
def restricted_levels
return [] if current_user.admin?
current_application_settings.restricted_visibility_levels || []
Gitlab::CurrentSettings.restricted_visibility_levels || []
end
def project_permissions_settings(project)
......
module VersionCheckHelper
def version_status_badge
if Rails.env.production? && current_application_settings.version_check_enabled
if Rails.env.production? && Gitlab::CurrentSettings.version_check_enabled
image_url = VersionCheck.new.url
image_tag image_url, class: 'js-version-status-badge'
end
......
......@@ -151,12 +151,12 @@ module VisibilityLevelHelper
def restricted_visibility_levels(show_all = false)
return [] if current_user.admin? && !show_all
current_application_settings.restricted_visibility_levels || []
Gitlab::CurrentSettings.restricted_visibility_levels || []
end
delegate :default_project_visibility,
:default_group_visibility,
to: :current_application_settings
to: :'Gitlab::CurrentSettings.current_application_settings'
def disallowed_visibility_level?(form_model, level)
return false unless form_model.respond_to?(:visibility_level_allowed?)
......
class AbuseReportMailer < BaseMailer
include Gitlab::CurrentSettings
def notify(abuse_report_id)
return unless deliverable?
@abuse_report = AbuseReport.find(abuse_report_id)
mail(
to: current_application_settings.admin_notification_email,
to: Gitlab::CurrentSettings.admin_notification_email,
subject: "#{@abuse_report.user.name} (#{@abuse_report.user.username}) was reported for abuse"
)
end
......@@ -15,6 +13,6 @@ class AbuseReportMailer < BaseMailer
private
def deliverable?
current_application_settings.admin_notification_email.present?
Gitlab::CurrentSettings.admin_notification_email.present?
end
end
class BaseMailer < ActionMailer::Base
include Gitlab::CurrentSettings
around_action :render_with_default_locale
helper ApplicationHelper
helper MarkupHelper
attr_accessor :current_user
helper_method :current_user, :can?, :current_application_settings
helper_method :current_user, :can?
default from: proc { default_sender_address.format }
default reply_to: proc { default_reply_to_address.format }
......
module Clusters
module Platforms
class Kubernetes < ActiveRecord::Base
include Gitlab::CurrentSettings
include Gitlab::Kubernetes
include ReactiveCaching
......@@ -171,7 +170,7 @@ module Clusters
{
token: token,
ca_pem: ca_pem,
max_session_time: current_application_settings.terminal_max_session_time
max_session_time: Gitlab::CurrentSettings.terminal_max_session_time
}
end
......
......@@ -230,7 +230,7 @@ class Group < Namespace
end
def actual_size_limit
return current_application_settings.repository_size_limit if repository_size_limit.nil?
return Gitlab::CurrentSettings.repository_size_limit if repository_size_limit.nil?
repository_size_limit
end
......
require 'digest/md5'
class Key < ActiveRecord::Base
include Gitlab::CurrentSettings
include AfterCommitQueue
include Sortable
......@@ -107,7 +106,7 @@ class Key < ActiveRecord::Base
end
def key_meets_restrictions
restriction = current_application_settings.key_restriction_for(public_key.type)
restriction = Gitlab::CurrentSettings.key_restriction_for(public_key.type)
if restriction == ApplicationSetting::FORBIDDEN_KEY_VALUE
errors.add(:key, forbidden_key_type_message)
......@@ -118,7 +117,7 @@ class Key < ActiveRecord::Base
def forbidden_key_type_message
allowed_types =
current_application_settings
Gitlab::CurrentSettings
.allowed_key_types
.map(&:upcase)
.to_sentence(last_word_connector: ', or ', two_words_connector: ' or ')
......
......@@ -3,7 +3,6 @@ class Namespace < ActiveRecord::Base
include CacheMarkdownField
include Sortable
include Gitlab::ShellAdapter
include Gitlab::CurrentSettings
include Gitlab::VisibilityLevel
include Routable
include AfterCommitQueue
......@@ -162,7 +161,7 @@ class Namespace < ActiveRecord::Base
end
def actual_size_limit
current_application_settings.repository_size_limit
Gitlab::CurrentSettings.repository_size_limit
end
def shared_runners_enabled?
......
......@@ -5,7 +5,6 @@ class Note < ActiveRecord::Base
extend ActiveModel::Naming
prepend EE::Note
include Gitlab::CurrentSettings
include Participable
include Mentionable
include Elastic::NotesSearch
......@@ -204,7 +203,7 @@ class Note < ActiveRecord::Base
end
def max_attachment_size
current_application_settings.max_attachment_size.megabytes.to_i
Gitlab::CurrentSettings.max_attachment_size.megabytes.to_i
end
def hook_attrs
......
......@@ -4,7 +4,6 @@ class Project < ActiveRecord::Base
include Gitlab::ConfigHelper
include Gitlab::ShellAdapter
include Gitlab::VisibilityLevel
include Gitlab::CurrentSettings
include AccessRequestable
include Avatarable
include CacheMarkdownField
......@@ -26,7 +25,6 @@ class Project < ActiveRecord::Base
prepend EE::Project
extend Gitlab::ConfigHelper
extend Gitlab::CurrentSettings
BoardLimitExceeded = Class.new(StandardError)
......@@ -54,8 +52,8 @@ class Project < ActiveRecord::Base
default_value_for :visibility_level, gitlab_config_features.visibility_level
default_value_for :resolve_outdated_diff_discussions, false
default_value_for :container_registry_enabled, gitlab_config_features.container_registry
default_value_for(:repository_storage) { current_application_settings.pick_repository_storage }
default_value_for(:shared_runners_enabled) { current_application_settings.shared_runners_enabled }
default_value_for(:repository_storage) { Gitlab::CurrentSettings.pick_repository_storage }
default_value_for(:shared_runners_enabled) { Gitlab::CurrentSettings.shared_runners_enabled }
default_value_for :issues_enabled, gitlab_config_features.issues
default_value_for :merge_requests_enabled, gitlab_config_features.merge_requests
default_value_for :builds_enabled, gitlab_config_features.builds
......@@ -495,14 +493,14 @@ class Project < ActiveRecord::Base
def auto_devops_enabled?
if auto_devops&.enabled.nil?
current_application_settings.auto_devops_enabled?
Gitlab::CurrentSettings.auto_devops_enabled?
else
auto_devops.enabled?
end
end
def has_auto_devops_implicitly_disabled?
auto_devops&.enabled.nil? && !current_application_settings.auto_devops_enabled?
auto_devops&.enabled.nil? && !Gitlab::CurrentSettings.auto_devops_enabled?
end
def empty_repo?
......@@ -1483,14 +1481,14 @@ class Project < ActiveRecord::Base
# Ensure HEAD points to the default branch in case it is not master
change_head(default_branch)
if current_application_settings.default_branch_protection != Gitlab::Access::PROTECTION_NONE && !ProtectedBranch.protected?(self, default_branch)
if Gitlab::CurrentSettings.default_branch_protection != Gitlab::Access::PROTECTION_NONE && !ProtectedBranch.protected?(self, default_branch)
params = {
name: default_branch,
push_access_levels_attributes: [{
access_level: current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_PUSH ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
access_level: Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_PUSH ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
}],
merge_access_levels_attributes: [{
access_level: current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
access_level: Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
}]
}
......@@ -1779,7 +1777,7 @@ class Project < ActiveRecord::Base
end
def use_hashed_storage
if self.new_record? && current_application_settings.hashed_storage_enabled
if self.new_record? && Gitlab::CurrentSettings.hashed_storage_enabled
self.storage_version = LATEST_STORAGE_VERSION
end
end
......
......@@ -4,7 +4,6 @@
# After we've migrated data, we'll remove KubernetesService. This would happen in a few months.
# If you're modyfiyng this class, please note that you should update the same change in Clusters::Platforms::Kubernetes.
class KubernetesService < DeploymentService
include Gitlab::CurrentSettings
include Gitlab::Kubernetes
include ReactiveCaching
......@@ -233,7 +232,7 @@ class KubernetesService < DeploymentService
{
token: token,
ca_pem: ca_pem,
max_session_time: current_application_settings.terminal_max_session_time
max_session_time: Gitlab::CurrentSettings.terminal_max_session_time
}
end
......
......@@ -4,7 +4,6 @@ class ProjectWiki
# EE only modules
include Elastic::WikiRepositoriesSearch
include Gitlab::CurrentSettings
MARKUPS = {
'Markdown' => :markdown,
......@@ -204,7 +203,7 @@ class ProjectWiki
# EE only
def update_elastic_index
index_blobs if current_application_settings.elasticsearch_indexing?
index_blobs if Gitlab::CurrentSettings.elasticsearch_indexing?
end
def path_to_repo
......
......@@ -3,8 +3,6 @@ class ProtectedBranch < ActiveRecord::Base
include ProtectedRef
prepend EE::ProtectedRef
extend Gitlab::CurrentSettings
protected_ref_access_levels :merge, :push
# Check if branch name is marked as protected in the system
......@@ -17,7 +15,7 @@ class ProtectedBranch < ActiveRecord::Base
end
def self.default_branch_protected?
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_FULL ||
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE
Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_FULL ||
Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE
end
end
......@@ -12,8 +12,6 @@ class Snippet < ActiveRecord::Base
include Editable
include Gitlab::SQL::Pattern
extend Gitlab::CurrentSettings
cache_markdown_field :title, pipeline: :single_line
cache_markdown_field :description
cache_markdown_field :content
......@@ -29,7 +27,7 @@ class Snippet < ActiveRecord::Base
default_content_html_invalidator || file_name_changed?
end
default_value_for(:visibility_level) { current_application_settings.default_snippet_visibility }
default_value_for(:visibility_level) { Gitlab::CurrentSettings.default_snippet_visibility }
belongs_to :author, class_name: 'User'
belongs_to :project
......
......@@ -2,10 +2,8 @@ require 'carrierwave/orm/activerecord'
class User < ActiveRecord::Base
extend Gitlab::ConfigHelper
extend Gitlab::CurrentSettings
include Gitlab::ConfigHelper
include Gitlab::CurrentSettings
include Gitlab::SQL::Pattern
include AfterCommitQueue
include Avatarable
......@@ -32,7 +30,7 @@ class User < ActiveRecord::Base
add_authentication_token_field :rss_token
default_value_for :admin, false
default_value_for(:external) { current_application_settings.user_default_external }
default_value_for(:external) { Gitlab::CurrentSettings.user_default_external }
default_value_for :can_create_group, gitlab_config.default_can_create_group
default_value_for :can_create_team, false
default_value_for :hide_no_ssh_key, false
......@@ -678,11 +676,11 @@ class User < ActiveRecord::Base
end
def allow_password_authentication_for_web?
current_application_settings.password_authentication_enabled_for_web? && !ldap_user?
Gitlab::CurrentSettings.password_authentication_enabled_for_web? && !ldap_user?
end
def allow_password_authentication_for_git?
current_application_settings.password_authentication_enabled_for_git? && !ldap_user?
Gitlab::CurrentSettings.password_authentication_enabled_for_git? && !ldap_user?
end
def can_change_username?
......@@ -810,7 +808,7 @@ class User < ActiveRecord::Base
# without this safeguard!
return unless has_attribute?(:projects_limit) && projects_limit.nil?
self.projects_limit = current_application_settings.default_projects_limit
self.projects_limit = Gitlab::CurrentSettings.default_projects_limit
end
def requires_ldap_check?
......@@ -1237,7 +1235,7 @@ class User < ActiveRecord::Base
else
# Only revert these back to the default if they weren't specifically changed in this update.
self.can_create_group = gitlab_config.default_can_create_group unless can_create_group_changed?
self.projects_limit = current_application_settings.default_projects_limit unless projects_limit_changed?
self.projects_limit = Gitlab::CurrentSettings.default_projects_limit unless projects_limit_changed?
end
end
......@@ -1245,15 +1243,15 @@ class User < ActiveRecord::Base
valid = true
error = nil
if current_application_settings.domain_blacklist_enabled?
blocked_domains = current_application_settings.domain_blacklist
if Gitlab::CurrentSettings.domain_blacklist_enabled?
blocked_domains = Gitlab::CurrentSettings.domain_blacklist
if domain_matches?(blocked_domains, email)
error = 'is not from an allowed domain.'
valid = false
end
end
allowed_domains = current_application_settings.domain_whitelist
allowed_domains = Gitlab::CurrentSettings.domain_whitelist
unless allowed_domains.blank?
if domain_matches?(allowed_domains, email)
valid = true
......
class AkismetService
include Gitlab::CurrentSettings
attr_accessor :owner, :text, :options
def initialize(owner, text, options = {})
......@@ -41,12 +39,12 @@ class AkismetService
private
def akismet_client
@akismet_client ||= ::Akismet::Client.new(current_application_settings.akismet_api_key,
@akismet_client ||= ::Akismet::Client.new(Gitlab::CurrentSettings.akismet_api_key,
Gitlab.config.gitlab.url)
end
def akismet_enabled?
current_application_settings.akismet_enabled
Gitlab::CurrentSettings.akismet_enabled
end
def submit(type)
......
module Auth
class ContainerRegistryAuthenticationService < BaseService
extend Gitlab::CurrentSettings
AUDIENCE = 'container_registry'.freeze
def execute(authentication_abilities:)
......@@ -32,7 +30,7 @@ module Auth
end
def self.token_expire_at
Time.now + current_application_settings.container_registry_token_expire_delay.minutes
Time.now + Gitlab::CurrentSettings.container_registry_token_expire_delay.minutes
end
private
......
class BaseService
include Gitlab::Allowable
include Gitlab::CurrentSettings
attr_accessor :project, :current_user, :params
......
......@@ -2,7 +2,6 @@ module Ci
# This class responsible for assigning
# proper pending build to runner on runner API request
class RegisterJobService
include Gitlab::CurrentSettings
prepend EE::Ci::RegisterJobService
attr_reader :runner
......
class GitPushService < BaseService
attr_accessor :push_data, :push_commits
include Gitlab::CurrentSettings
include Gitlab::Access
# The N most recent commits to process in a single push payload.
......@@ -53,7 +52,7 @@ class GitPushService < BaseService
update_gitattributes if default_branch?
end
if current_application_settings.elasticsearch_indexing? && default_branch?
if Gitlab::CurrentSettings.elasticsearch_indexing? && default_branch?
ElasticCommitIndexerWorker.perform_async(@project.id, params[:oldrev], params[:newrev])
end
......
class GravatarService
include Gitlab::CurrentSettings
def execute(email, size = nil, scale = 2, username: nil)
return unless current_application_settings.gravatar_enabled?
return unless Gitlab::CurrentSettings.gravatar_enabled?
identifier = email.presence || username.presence
return unless identifier
......
......@@ -7,8 +7,6 @@
#
module Projects
class HousekeepingService < BaseService
include Gitlab::CurrentSettings
# Timeout set to 24h
LEASE_TIMEOUT = 86400
......@@ -83,19 +81,19 @@ module Projects
end
def housekeeping_enabled?
current_application_settings.housekeeping_enabled
Gitlab::CurrentSettings.housekeeping_enabled
end
def gc_period
current_application_settings.housekeeping_gc_period
Gitlab::CurrentSettings.housekeeping_gc_period
end
def full_repack_period
current_application_settings.housekeeping_full_repack_period
Gitlab::CurrentSettings.housekeeping_full_repack_period
end
def repack_period
current_application_settings.housekeeping_incremental_repack_period
Gitlab::CurrentSettings.housekeeping_incremental_repack_period
end
end
end
module Projects
class UpdatePagesService < BaseService
include Gitlab::CurrentSettings
BLOCK_SIZE = 32.kilobytes
MAX_SIZE = 1.terabyte
SITE_PATH = 'public/'.freeze
......@@ -142,7 +140,7 @@ module Projects
end
def max_size
max_pages_size = current_application_settings.max_pages_size.megabytes
max_pages_size = Gitlab::CurrentSettings.max_pages_size.megabytes
return MAX_SIZE if max_pages_size.zero?
......
......@@ -44,7 +44,7 @@ module Projects
def run_auto_devops_pipeline?
return false if project.repository.gitlab_ci_yml || !project.auto_devops.previous_changes.include?('enabled')
project.auto_devops.enabled? || (project.auto_devops.enabled.nil? && current_application_settings.auto_devops_enabled?)
project.auto_devops.enabled? || (project.auto_devops.enabled.nil? && Gitlab::CurrentSettings.auto_devops_enabled?)
end
private
......
module Search
class GlobalService
include Gitlab::CurrentSettings
attr_accessor :current_user, :params
attr_reader :default_project_filter
......@@ -11,7 +9,7 @@ module Search
end
def execute
if current_application_settings.elasticsearch_search?
if Gitlab::CurrentSettings.elasticsearch_search?
Gitlab::Elastic::SearchResults.new(current_user, params[:search], elastic_projects, elastic_global)
else
Gitlab::SearchResults.new(current_user, projects, params[:search],
......@@ -41,7 +39,7 @@ module Search
def scope
@scope ||= begin
allowed_scopes = %w[issues merge_requests milestones]
allowed_scopes += %w[wiki_blobs blobs commits] if current_application_settings.elasticsearch_search?
allowed_scopes += %w[wiki_blobs blobs commits] if Gitlab::CurrentSettings.elasticsearch_search?
allowed_scopes.delete(params[:scope]) { 'projects' }
end
......
module Search
class ProjectService
include Gitlab::CurrentSettings
attr_accessor :project, :current_user, :params
def initialize(project, user, params)
......@@ -9,7 +7,7 @@ module Search
end
def execute
if current_application_settings.elasticsearch_search?
if Gitlab::CurrentSettings.elasticsearch_search?
Gitlab::Elastic::ProjectSearchResults.new(current_user,
params[:search],
project.id,
......
......@@ -11,10 +11,8 @@ class SubmitUsagePingService
percentage_projects_prometheus_active leader_service_desk_issues instance_service_desk_issues
percentage_service_desk_issues].freeze
include Gitlab::CurrentSettings
def execute
return false unless current_application_settings.usage_ping_enabled?
return false unless Gitlab::CurrentSettings.usage_ping_enabled?
response = HTTParty.post(
URL,
......
class UploadService
include Gitlab::CurrentSettings
def initialize(model, file, uploader_class = FileUploader)
@model, @file, @uploader_class = model, file, uploader_class
end
......@@ -17,6 +15,6 @@ class UploadService
private
def max_attachment_size
current_application_settings.max_attachment_size.megabytes.to_i
Gitlab::CurrentSettings.max_attachment_size.megabytes.to_i
end
end
module Users
class BuildService < BaseService
prepend ::EE::Users::BuildService
include Gitlab::CurrentSettings
def initialize(current_user, params = {})
@current_user = current_user
......@@ -35,7 +34,7 @@ module Users
private
def can_create_user?
(current_user.nil? && current_application_settings.allow_signup?) || current_user&.admin?
(current_user.nil? && Gitlab::CurrentSettings.allow_signup?) || current_user&.admin?
end
# Allowed params for creating a user (admins only)
......@@ -103,7 +102,7 @@ module Users
end
def skip_user_confirmation_email_from_setting
!current_application_settings.send_user_confirmation_email
!Gitlab::CurrentSettings.send_user_confirmation_email
end
end
end
......@@ -6,7 +6,7 @@
= render 'callout'
.prepend-top-default
- if !current_application_settings.usage_ping_enabled
- if !Gitlab::CurrentSettings.usage_ping_enabled
= render 'disabled'
- elsif @metric.blank?
= render 'no_data'
......
......@@ -102,10 +102,10 @@
= boolean_to_icon Gitlab::IncomingEmail.enabled?
- elastic = "Elasticsearch"
%p{ "aria-label" => "#{elastic}: status " + (current_application_settings.elasticsearch_search? ? "on" : "off") }
%p{ "aria-label" => "#{elastic}: status " + (Gitlab::CurrentSettings.elasticsearch_search? ? "on" : "off") }
= elastic
%span.light.pull-right
= boolean_to_icon current_application_settings.elasticsearch_search?
= boolean_to_icon Gitlab::CurrentSettings.elasticsearch_search?
- geo = link_to 'Geo', admin_geo_nodes_path
%p{ "aria-label" => "#{geo}: status " + (Gitlab::Geo.enabled? ? "on" : "off") }
= geo
......@@ -134,7 +134,7 @@
.well-segment.admin-well
%h4
Components
- if current_application_settings.version_check_enabled
- if Gitlab::CurrentSettings.version_check_enabled
.pull-right
= version_status_badge
%p
......
......@@ -4,7 +4,7 @@
= render 'shared/repository_size_limit_setting', form: f, type: :group
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= render 'admin/namespace_plan', f: f
.form-group.group-description-holder
......
......@@ -8,7 +8,7 @@
.pull-left
%p
#{ s_('HealthCheck|Access token is') }
%code#health-check-token= current_application_settings.health_check_access_token
%code#health-check-token= Gitlab::CurrentSettings.health_check_access_token
.prepend-top-10
= button_to _("Reset health check access token"), reset_health_check_token_admin_application_settings_path,
method: :put, class: 'btn btn-default',
......@@ -18,14 +18,14 @@
= link_to s_('More information is available|here'), help_page_path('user/admin_area/monitoring/health_check')
%ul
%li
%code= readiness_url(token: current_application_settings.health_check_access_token)
%code= readiness_url(token: Gitlab::CurrentSettings.health_check_access_token)
%li
%code= liveness_url(token: current_application_settings.health_check_access_token)
%code= liveness_url(token: Gitlab::CurrentSettings.health_check_access_token)
%li
%code= metrics_url(token: current_application_settings.health_check_access_token)
%code= metrics_url(token: Gitlab::CurrentSettings.health_check_access_token)
- if Gitlab::Geo.secondary?
%li
%code= health_check_url(token: current_application_settings.health_check_access_token, checks: :geo)
%code= health_check_url(token: Gitlab::CurrentSettings.health_check_access_token, checks: :geo)
%hr
.panel.panel-default
.panel-heading
......
......@@ -36,7 +36,7 @@
data: { confirm: _("Are you sure you want to reset registration token?") }
= render partial: 'ci/runner/how_to_setup_runner',
locals: { registration_token: current_application_settings.runners_registration_token,
locals: { registration_token: Gitlab::CurrentSettings.runners_registration_token,
type: 'shared' }
.append-bottom-20.clearfix
......
......@@ -42,7 +42,7 @@
= render partial: 'access_levels', locals: { f: f }
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= f.fields_for :namespace do |namespace_form|
%fieldset
%legend Licensed Features
......
......@@ -4,9 +4,9 @@
%p.lead.append-bottom-20
Please check your email to confirm your account
%hr
- if current_application_settings.after_sign_up_text.present?
- if Gitlab::CurrentSettings.after_sign_up_text.present?
.well-confirmation.text-center
= markdown_field(current_application_settings, :after_sign_up_text)
= markdown_field(Gitlab::CurrentSettings, :after_sign_up_text)
%p.text-center
No confirmation email received? Please check your spam folder or
.append-bottom-20.prepend-top-20.text-center
......
= webpack_bundle_tag 'docs'
%div
- if current_application_settings.help_page_text.present?
= markdown(current_application_settings.help_page_text)
- if Gitlab::CurrentSettings.help_page_text.present?
= markdown(Gitlab::CurrentSettings.help_page_text)
%hr
%h1
......@@ -14,7 +14,7 @@
= version_status_badge
%hr
- unless current_application_settings.help_page_hide_commercial_content?
- unless Gitlab::CurrentSettings.help_page_hide_commercial_content?
%p.slead
GitLab is open source software to collaborate on code.
%br
......@@ -46,6 +46,6 @@
%li
%button.btn-blank.btn-link.js-trigger-shortcut{ type: 'button' }
Use shortcuts
- unless current_application_settings.help_page_hide_commercial_content?
- unless Gitlab::CurrentSettings.help_page_hide_commercial_content?
%li= link_to 'Get a support subscription', 'https://about.gitlab.com/pricing/'
%li= link_to 'Compare GitLab editions', 'https://about.gitlab.com/features/#compare'
......@@ -3,4 +3,4 @@
= icon('circle', class: 'cgreen')
Integration is active for
= link_to koding_project_url, target: '_blank', rel: 'noopener noreferrer' do
#{current_application_settings.koding_url}
#{Gitlab::CurrentSettings.koding_url}
......@@ -41,7 +41,7 @@
= webpack_bundle_tag "webpack_runtime"
= webpack_bundle_tag "common"
= webpack_bundle_tag "main"
= webpack_bundle_tag "raven" if current_application_settings.clientside_sentry_enabled
= webpack_bundle_tag "raven" if Gitlab::CurrentSettings.clientside_sentry_enabled
= webpack_bundle_tag "test" if Rails.env.test?
- if content_for?(:page_specific_javascripts)
......
......@@ -26,13 +26,13 @@
Perform code reviews and enhance collaboration with merge requests.
Each project can also have an issue tracker and a wiki.
- if current_application_settings.sign_in_text.present?
= markdown_field(current_application_settings, :sign_in_text)
- if current_application_settings.help_text.present?
- if Gitlab::CurrentSettings.sign_in_text.present?
= markdown_field(Gitlab::CurrentSettings.current_application_settings, :sign_in_text)
- if Gitlab::CurrentSettings.help_text.present?
%h3 Need help?
%hr
%p.slead
= markdown(current_application_settings.help_text)
= markdown(Gitlab::CurrentSettings.help_text)
%hr.footer-fixed
.container.footer-container
......
......@@ -28,7 +28,7 @@
= link_to profile_account_path do
%strong.fly-out-top-item-name
#{ _('Account') }
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= nav_link(controller: :billings) do
= link_to profile_billings_path do
.nav-icon-container
......@@ -40,7 +40,7 @@
= link_to profile_billings_path do
%strong.fly-out-top-item-name
#{ _('Billing') }
- if current_application_settings.user_oauth_applications?
- if Gitlab::CurrentSettings.user_oauth_applications?
= nav_link(controller: 'oauth/applications') do
= link_to applications_profile_path do
.nav-icon-container
......
......@@ -22,7 +22,7 @@
- else
commented on a #{link_to 'discussion', @target_url}
- elsif current_application_settings.email_author_in_body
- elsif Gitlab::CurrentSettings.email_author_in_body
%p.details
#{link_to @note.author_name, user_url(@note.author)} commented:
......
......@@ -12,7 +12,7 @@
<%= ":" -%>
<% elsif current_application_settings.email_author_in_body -%>
<% elsif Gitlab::CurrentSettings.email_author_in_body -%>
<%= "#{@note.author_name} commented:" -%>
......
- if current_application_settings.email_author_in_body
- if Gitlab::CurrentSettings.email_author_in_body
%p.details
#{link_to @issue.author_name, user_url(@issue.author)} created an issue:
......
- if current_application_settings.email_author_in_body
- if Gitlab::CurrentSettings.email_author_in_body
%p.details
#{link_to @merge_request.author_name, user_url(@merge_request.author)} created a merge request:
......
%p
Hi #{@user['name']}!
%p
- if current_application_settings.allow_signup?
- if Gitlab::CurrentSettings.allow_signup?
Your account has been created successfully.
- else
The Administrator created an account for you. Now you are a member of the company GitLab application.
......
- return unless current_application_settings.project_export_enabled?
- return unless Gitlab::CurrentSettings.project_export_enabled?
- project = local_assigns.fetch(:project)
- expanded = Rails.env.test?
......
......@@ -6,7 +6,7 @@
- link = commit_path(project, commit, merge_request: merge_request)
- cache_key = [project.full_path,
commit.id,
current_application_settings,
Gitlab::CurrentSettings.current_application_settings,
@path.presence,
current_controller?(:commits),
merge_request&.iid,
......
......@@ -31,7 +31,7 @@
.radio
= form.label :enabled_ do
= form.radio_button :enabled, ''
%strong Instance default (#{current_application_settings.auto_devops_enabled? ? 'enabled' : 'disabled'})
%strong Instance default (#{Gitlab::CurrentSettings.auto_devops_enabled? ? 'enabled' : 'disabled'})
%br
%span.descr
Follow the instance default to either have Auto DevOps enabled or disabled when there is no project specific <code>.gitlab-ci.yml</code>.
......
%h3 Shared Runners
.bs-callout.bs-callout-warning.shared-runners-description
- if current_application_settings.shared_runners_text.present?
= markdown_field(current_application_settings, :shared_runners_text)
- if Gitlab::CurrentSettings.shared_runners_text.present?
= markdown_field(Gitlab::CurrentSettings.current_application_settings, :shared_runners_text)
- else
GitLab Shared Runners execute code of different projects on the same Runner
unless you configure GitLab Runner Autoscale with MaxBuilds 1 (which it is
......
......@@ -78,7 +78,7 @@
Milestones
%span.badge
= limited_count(@search_results.limited_milestones_count)
- if current_application_settings.elasticsearch_search?
- if Gitlab::CurrentSettings.elasticsearch_search?
%li{ class: active_when(@scope == 'blobs') }
= link_to search_filter_path(scope: 'blobs') do
Code
......
......@@ -13,7 +13,7 @@
- unless params[:snippets].eql? 'true'
= render 'filter'
= button_tag "Search", class: "btn btn-success btn-search"
- if current_application_settings.elasticsearch_search?
- if Gitlab::CurrentSettings.elasticsearch_search?
.help-block
= link_to 'Advanced search functionality', help_page_path('user/search/advanced_search_syntax.md'), target: '_blank'
is enabled.
class GitGarbageCollectWorker
include ApplicationWorker
include Gitlab::CurrentSettings
sidekiq_options retry: false
......@@ -102,7 +101,7 @@ class GitGarbageCollectWorker
end
def bitmaps_enabled?
current_application_settings.housekeeping_bitmaps_enabled
Gitlab::CurrentSettings.housekeeping_bitmaps_enabled
end
def git(write_bitmaps:)
......
......@@ -13,8 +13,6 @@ module Elasticsearch
cattr_accessor :cached_config
module ClassMethods
include Gitlab::CurrentSettings
# Override the default ::Elasticsearch::Model::Client implementation to
# return a client configured from application settings. All including
# classes will use the same instance, which is refreshed automatically
......@@ -28,7 +26,7 @@ module Elasticsearch
store = ::Elasticsearch::Model::Client
store::CLIENT_MUTEX.synchronize do
config = current_application_settings.elasticsearch_config
config = Gitlab::CurrentSettings.elasticsearch_config
if store.cached_client.nil? || config != store.cached_config
store.cached_client = ::Gitlab::Elastic::Client.build(config)
......
......@@ -11,7 +11,7 @@ class Profiles::SlacksController < Profiles::ApplicationController
def slack_link
project = disabled_projects.find(params[:project_id])
link = add_to_slack_link(project, current_application_settings.slack_app_id)
link = add_to_slack_link(project, Gitlab::CurrentSettings.slack_app_id)
render json: { add_to_slack_link: link }
end
......
......@@ -101,7 +101,7 @@ module LicenseHelper
end
def show_advanced_search_promotion?
!current_application_settings.should_check_namespace_plan? && show_promotions? && show_callout?('promote_advanced_search_dismissed') && !License.feature_available?(:elastic_search)
!Gitlab::CurrentSettings.should_check_namespace_plan? && show_promotions? && show_callout?('promote_advanced_search_dismissed') && !License.feature_available?(:elastic_search)
end
extend self
......
......@@ -4,7 +4,6 @@ module Elastic
included do
include Elasticsearch::Model
include Gitlab::CurrentSettings
index_name [Rails.application.class.parent_name.downcase, Rails.env].join('-')
......@@ -39,13 +38,13 @@ module Elastic
}
after_commit on: :create do
if current_application_settings.elasticsearch_indexing? && self.searchable?
if Gitlab::CurrentSettings.elasticsearch_indexing? && self.searchable?
ElasticIndexerWorker.perform_async(:index, self.class.to_s, self.id)
end
end
after_commit on: :update do
if current_application_settings.elasticsearch_indexing? && self.searchable?
if Gitlab::CurrentSettings.elasticsearch_indexing? && self.searchable?
ElasticIndexerWorker.perform_async(
:update,
self.class.to_s,
......@@ -56,7 +55,7 @@ module Elastic
end
after_commit on: :destroy do
if current_application_settings.elasticsearch_indexing? && self.searchable?
if Gitlab::CurrentSettings.elasticsearch_indexing? && self.searchable?
ElasticIndexerWorker.perform_async(
:delete,
self.class.to_s,
......
......@@ -60,7 +60,7 @@ module EE
end
def project_creation_level
super || current_application_settings.default_project_creation
super || ::Gitlab::CurrentSettings.default_project_creation
end
end
end
......@@ -108,7 +108,7 @@ module EE
def actual_shared_runners_minutes_limit
shared_runners_minutes_limit ||
current_application_settings.shared_runners_minutes
::Gitlab::CurrentSettings.shared_runners_minutes
end
def shared_runners_minutes_limit_enabled?
......@@ -170,7 +170,7 @@ module EE
def load_feature_available(feature)
globally_available = License.feature_available?(feature)
if current_application_settings.should_check_namespace_plan?
if ::Gitlab::CurrentSettings.should_check_namespace_plan?
globally_available && feature_available_in_plan?(feature)
else
globally_available
......
......@@ -15,7 +15,7 @@ module EE
before_validation :mark_remote_mirrors_for_removal
before_save :set_override_pull_mirror_available, unless: -> { ::Gitlab::CurrentSettings.current_application_settings.mirror_available }
before_save :set_override_pull_mirror_available, unless: -> { ::Gitlab::CurrentSettings.mirror_available }
after_save :create_mirror_data, if: ->(project) { project.mirror? && project.mirror_changed? }
after_save :destroy_mirror_data, if: ->(project) { !project.mirror? && project.mirror_changed? }
......@@ -449,12 +449,12 @@ module EE
def remote_mirror_available?
remote_mirror_available_overridden ||
current_application_settings.mirror_available
::Gitlab::CurrentSettings.mirror_available
end
def pull_mirror_available?
pull_mirror_available_overridden ||
current_application_settings.mirror_available
::Gitlab::CurrentSettings.mirror_available
end
private
......@@ -477,7 +477,7 @@ module EE
def load_licensed_feature_available(feature)
globally_available = License.feature_available?(feature)
if namespace && current_application_settings.should_check_namespace_plan?
if namespace && ::Gitlab::CurrentSettings.should_check_namespace_plan?
globally_available &&
(public? && namespace.public? || namespace.feature_available_in_plan?(feature))
else
......
class Geo::DeletedProject
include Gitlab::CurrentSettings
attr_reader :id, :name, :disk_path
def initialize(id:, name:, disk_path:, repository_storage:)
......@@ -17,7 +15,7 @@ class Geo::DeletedProject
end
def repository_storage
@repository_storage ||= current_application_settings.pick_repository_storage
@repository_storage ||= Gitlab::CurrentSettings.pick_repository_storage
end
def repository_storage_path
......
......@@ -36,7 +36,7 @@ module EE
end
def application_shared_runners_minutes
current_application_settings.shared_runners_minutes
::Gitlab::CurrentSettings.shared_runners_minutes
end
def shared_runner_build_limits_feature_enabled?
......
module Geo
class NodeStatusFetchService
include Gitlab::CurrentSettings
include HTTParty
def call(geo_node)
......@@ -48,7 +47,7 @@ module Geo
end
def timeout
current_application_settings.geo_status_timeout
Gitlab::CurrentSettings.geo_status_timeout
end
end
end
......@@ -53,8 +53,8 @@ module Projects
def exchange_slack_token
HTTParty.get(SLACK_EXCHANGE_TOKEN_URL, query: {
client_id: current_application_settings.slack_app_id,
client_secret: current_application_settings.slack_app_secret,
client_id: Gitlab::CurrentSettings.slack_app_id,
client_secret: Gitlab::CurrentSettings.slack_app_secret,
redirect_uri: slack_auth_project_settings_slack_url(project),
code: params[:code]
})
......
- namespace = local_assigns[:namespace]
- if current_application_settings.should_check_namespace_plan? && namespace && namespace.plan.present?
- if Gitlab::CurrentSettings.should_check_namespace_plan? && namespace && namespace.plan.present?
%span.plan-badge.has-tooltip{ data: { plan: namespace.plan.name }, title: "#{namespace.plan.title} Plan" }
= custom_icon('icon_premium')
- namespace = local_assigns[:namespace]
- if current_application_settings.should_check_namespace_plan? && namespace
- if Gitlab::CurrentSettings.should_check_namespace_plan? && namespace
%li
%span.light Plan:
- if namespace.plan.present?
......
......@@ -22,7 +22,7 @@
%span
Pipelines quota
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= nav_link(path: 'billings#index') do
= link_to group_billings_path(@group), title: 'Billing' do
%span
......
......@@ -7,5 +7,5 @@
%span.help-block#shared_runners_minutes_limit_help_block
Set the maximum number of pipeline minutes that a group can use on shared Runners per month.
Set 0 for unlimited.
Set empty to inherit the global setting of #{current_application_settings.shared_runners_minutes}.
Set empty to inherit the global setting of #{Gitlab::CurrentSettings.shared_runners_minutes}.
= link_to icon('question-circle'), help_page_path("user/admin_area/settings/continuous_integration", anchor: "shared-runners-build-minutes-quota"), target: '_blank'
- if current_application_settings.email_author_in_body
- if Gitlab::CurrentSettings.email_author_in_body
%div
#{link_to @updated_by.name, user_url(@updated_by)} added you as an approver for:
%p.details
......
- if current_application_settings.email_author_in_body
- if Gitlab::CurrentSettings.email_author_in_body
%div
#{link_to @note.author_name, user_url(@note.author)} wrote:
%div
......
......@@ -4,7 +4,7 @@
Web IDE (Beta)
%p
Enable the new web IDE on this device to make it possible to open and edit multiple files with a single commit.
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Available for public GitLab.com projects or those using Gold.
.col-lg-8.multi-file-editor-options
= label_tag do
......
......@@ -7,7 +7,7 @@
.help-block
Automatically update this project's branches and tags from the upstream
repository every hour. The Git LFS objects will not be synced.
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
.help-block
Mirroring will only be available if the feature is included in the plan of the selected group or user.
......
......@@ -7,7 +7,7 @@
= custom_icon('icon_search_avatar')
.user-callout-copy
%h5
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= _('Upgrade your plan to activate Advanced Global Search.')
- else
= _('Improve search with Advanced Global Search and GitLab Enterprise Edition.')
......
......@@ -3,7 +3,7 @@
= custom_icon('icon_audit_events_purple')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Upgrade your plan to activate Audit Events.
- else
Track your project with Audit Events.
......
......@@ -7,7 +7,7 @@
= custom_icon('icon_burndown_charts')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Upgrade your plan to improve milestones with Burndown Charts.
- else
Improve milestones with Burndown Charts.
......
......@@ -3,7 +3,7 @@
= custom_icon('icon_contribution_analytics')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= _('Upgrade your plan to activate Contribution Analytics.')
- else
= _('Track activity with Contribution Analytics.')
......
......@@ -9,7 +9,7 @@
= custom_icon('icon_export_issues')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Upgrade your plan to export issues.
- else
Export issues with GitLab Enterprise Edition.
......
......@@ -3,7 +3,7 @@
= custom_icon('icon_group_webhook')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= _('Upgrade your plan to activate Group Webhooks.')
- else
= _('Add Group Webhooks and GitLab Enterprise Edition.')
......
......@@ -4,7 +4,7 @@
.svg-container.center
= custom_icon('icon_issue_board')
%p
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= _('Upgrade your plan to improve Issue boards.')
- else
= _('Improve Issue boards with GitLab Enterprise Edition.')
......
......@@ -16,7 +16,7 @@
%i.fa.fa-times.dropdown-menu-close-icon{ "aria-hidden" => "true", "data-hidden" => "true" }
%div
%p
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
= _('Upgrade your plan to activate Issue weight.')
- else
= _('Improve issues management with Issue weight and GitLab Enterprise Edition.')
......
......@@ -5,7 +5,7 @@
= icon('times', class: 'dismiss-icon', 'aria-hidden' => 'true')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Upgrade your plan to improve Merge Requests.
- else
Improve Merge Requests and customer support with GitLab Enterprise Edition.
......
......@@ -7,7 +7,7 @@
= custom_icon('icon_push_rules')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Upgrade your plan to improve repositories.
- else
Improve repositories with GitLab Enterprise Edition.
......
......@@ -6,7 +6,7 @@
= custom_icon('icon_service_desk')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Upgrade your plan to activate Service Desk.
- else
Improve customer support with GitLab Service Desk.
......
......@@ -4,7 +4,7 @@
= icon('times', class: 'dismiss-icon', 'aria-hidden' => 'true')
.user-callout-copy
%h4
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
Upgrade your plan to improve Merge Requests with Squash Commit.
- else
Improve Merge Requests with Squash Commit and GitLab Enterprise Edition.
......
- short_form = local_assigns.fetch :short_form, false
- if current_application_settings.should_check_namespace_plan?
- if Gitlab::CurrentSettings.should_check_namespace_plan?
- namespace = @project&.namespace || @group
- if can?(current_user, :admin_namespace, namespace)
= link_to 'Upgrade your plan', upgrade_plan_url, class: 'btn btn-primary'
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment