summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorLuke Bennett <lbennett@gitlab.com>2019-01-30 05:10:37 +0000
committerLuke Bennett <lbennett@gitlab.com>2019-01-31 04:56:51 +0000
commite33e3d29ae56ddd10b66513c35f3e318ea375cb9 (patch)
treece5d1515f93c1e38a01c95b5e0f07f1b572f3763 /app/models
parentb5f089f2b7100dffb1a346e95022f88e6ff06415 (diff)
downloadgitlab-ce-i18n-cop.tar.gz
Autofixed some untranslated stringsi18n-cop
Diffstat (limited to 'app/models')
-rw-r--r--app/models/application_setting.rb2
-rw-r--r--app/models/ci/build_trace_chunk.rb12
-rw-r--r--app/models/ci/job_artifact.rb2
-rw-r--r--app/models/ci/runner.rb2
-rw-r--r--app/models/clusters/platforms/kubernetes.rb6
-rw-r--r--app/models/commit.rb2
-rw-r--r--app/models/concerns/atomic_internal_id.rb2
-rw-r--r--app/models/concerns/bulk_member_access_load.rb2
-rw-r--r--app/models/concerns/each_batch.rb2
-rw-r--r--app/models/concerns/fast_destroy_all.rb2
-rw-r--r--app/models/concerns/optionally_search.rb2
-rw-r--r--app/models/concerns/token_authenticatable_strategies/base.rb6
-rw-r--r--app/models/concerns/token_authenticatable_strategies/encrypted.rb6
-rw-r--r--app/models/internal_id.rb2
-rw-r--r--app/models/label.rb2
-rw-r--r--app/models/milestone.rb4
-rw-r--r--app/models/project.rb8
-rw-r--r--app/models/project_group_link.rb2
-rw-r--r--app/models/project_services/asana_service.rb2
-rw-r--r--app/models/project_services/bamboo_service.rb2
-rw-r--r--app/models/project_services/emails_on_push_service.rb2
-rw-r--r--app/models/project_services/external_wiki_service.rb2
-rw-r--r--app/models/project_services/flowdock_service.rb2
-rw-r--r--app/models/project_services/jira_service.rb4
-rw-r--r--app/models/project_services/kubernetes_service.rb2
-rw-r--r--app/models/project_services/pipelines_email_service.rb2
-rw-r--r--app/models/project_services/pivotaltracker_service.rb2
-rw-r--r--app/models/project_services/pushover_service.rb2
-rw-r--r--app/models/repository.rb2
-rw-r--r--app/models/u2f_registration.rb2
-rw-r--r--app/models/upload.rb2
-rw-r--r--app/models/user.rb2
32 files changed, 48 insertions, 48 deletions
diff --git a/app/models/application_setting.rb b/app/models/application_setting.rb
index 88746375c67..de854063140 100644
--- a/app/models/application_setting.rb
+++ b/app/models/application_setting.rb
@@ -135,7 +135,7 @@ class ApplicationSetting < ActiveRecord::Base
inclusion: { in: %w(ssh http), allow_blank: true, allow_nil: true }
validates :domain_blacklist,
- presence: { message: 'Domain blacklist cannot be empty if Blacklist is enabled.' },
+ presence: { message: _('Domain blacklist cannot be empty if Blacklist is enabled.') },
if: :domain_blacklist_enabled?
validates :housekeeping_incremental_repack_period,
diff --git a/app/models/ci/build_trace_chunk.rb b/app/models/ci/build_trace_chunk.rb
index da08214963f..a150cf9e47e 100644
--- a/app/models/ci/build_trace_chunk.rb
+++ b/app/models/ci/build_trace_chunk.rb
@@ -67,16 +67,16 @@ module Ci
end
def truncate(offset = 0)
- raise ArgumentError, 'Offset is out of range' if offset > size || offset < 0
+ raise ArgumentError, _('Offset is out of range') if offset > size || offset < 0
return if offset == size # Skip the following process as it doesn't affect anything
self.append("", offset)
end
def append(new_data, offset)
- raise ArgumentError, 'New data is missing' unless new_data
- raise ArgumentError, 'Offset is out of range' if offset > size || offset < 0
- raise ArgumentError, 'Chunk size overflow' if CHUNK_SIZE < (offset + new_data.bytesize)
+ raise ArgumentError, _('New data is missing') unless new_data
+ raise ArgumentError, _('Offset is out of range') if offset > size || offset < 0
+ raise ArgumentError, _('Chunk size overflow') if CHUNK_SIZE < (offset + new_data.bytesize)
in_lock(*lock_params) do # Write operation is atomic
unsafe_set_data!(data.byteslice(0, offset) + new_data)
@@ -115,7 +115,7 @@ module Ci
current_data = get_data
unless current_data&.bytesize.to_i == CHUNK_SIZE
- raise FailedToPersistDataError, 'Data is not fullfilled in a bucket'
+ raise FailedToPersistDataError, _('Data is not fullfilled in a bucket')
end
old_store_class = self.class.get_store_class(data_store)
@@ -134,7 +134,7 @@ module Ci
end
def unsafe_set_data!(value)
- raise ArgumentError, 'New data size exceeds chunk size' if value.bytesize > CHUNK_SIZE
+ raise ArgumentError, _('New data size exceeds chunk size') if value.bytesize > CHUNK_SIZE
self.class.get_store_class(data_store).set_data(self, value)
@data = value
diff --git a/app/models/ci/job_artifact.rb b/app/models/ci/job_artifact.rb
index 11c88200c37..093e9b24fc1 100644
--- a/app/models/ci/job_artifact.rb
+++ b/app/models/ci/job_artifact.rb
@@ -153,7 +153,7 @@ module Ci
def each_blob(&blk)
unless file_format_adapter_class
- raise NotSupportedAdapterError, 'This file format requires a dedicated adapter'
+ raise NotSupportedAdapterError, _('This file format requires a dedicated adapter')
end
file.open do |stream|
diff --git a/app/models/ci/runner.rb b/app/models/ci/runner.rb
index 5aae31de6e2..554ad5de90b 100644
--- a/app/models/ci/runner.rb
+++ b/app/models/ci/runner.rb
@@ -152,7 +152,7 @@ module Ci
if instance_type?
self.runner_type = :project_type
elsif group_type?
- raise ArgumentError, 'Transitioning a group runner to a project runner is not supported'
+ raise ArgumentError, _('Transitioning a group runner to a project runner is not supported')
end
begin
diff --git a/app/models/clusters/platforms/kubernetes.rb b/app/models/clusters/platforms/kubernetes.rb
index 1cc170c8c4d..68d029ef747 100644
--- a/app/models/clusters/platforms/kubernetes.rb
+++ b/app/models/clusters/platforms/kubernetes.rb
@@ -153,11 +153,11 @@ module Clusters
end
def build_kube_client!
- raise "Incomplete settings" unless api_url
- raise "No namespace" if cluster.project_type? && actual_namespace.empty? # can probably remove this line once we remove #actual_namespace
+ raise _("Incomplete settings") unless api_url
+ raise _("No namespace") if cluster.project_type? && actual_namespace.empty? # can probably remove this line once we remove #actual_namespace
unless (username && password) || token
- raise "Either username/password or token is required to access API"
+ raise _("Either username/password or token is required to access API")
end
Gitlab::Kubernetes::KubeClient.new(
diff --git a/app/models/commit.rb b/app/models/commit.rb
index 01f4c58daa1..bf96db87493 100644
--- a/app/models/commit.rb
+++ b/app/models/commit.rb
@@ -117,7 +117,7 @@ class Commit
attr_accessor :raw
def initialize(raw_commit, project)
- raise "Nil as raw commit passed" unless raw_commit
+ raise _("Nil as raw commit passed") unless raw_commit
@raw = raw_commit
@project = project
diff --git a/app/models/concerns/atomic_internal_id.rb b/app/models/concerns/atomic_internal_id.rb
index 4e15b60ccd1..3e6f00f83fd 100644
--- a/app/models/concerns/atomic_internal_id.rb
+++ b/app/models/concerns/atomic_internal_id.rb
@@ -30,7 +30,7 @@ module AtomicInternalId
def has_internal_id(column, scope:, init:, presence: true) # rubocop:disable Naming/PredicateName
# We require init here to retain the ability to recalculate in the absence of a
# InternaLId record (we may delete records in `internal_ids` for example).
- raise "has_internal_id requires a init block, none given." unless init
+ raise _("has_internal_id requires a init block, none given.") unless init
before_validation :"ensure_#{scope}_#{column}!", on: :create
validates column, presence: presence
diff --git a/app/models/concerns/bulk_member_access_load.rb b/app/models/concerns/bulk_member_access_load.rb
index 041ed3755e0..1bff67a149c 100644
--- a/app/models/concerns/bulk_member_access_load.rb
+++ b/app/models/concerns/bulk_member_access_load.rb
@@ -10,7 +10,7 @@ module BulkMemberAccessLoad
#
# Returns a Hash mapping resource ID -> maximum access level.
def max_member_access_for_resource_ids(resource_klass, resource_ids, memoization_index = self.id, &block)
- raise 'Block is mandatory' unless block_given?
+ raise _('Block is mandatory') unless block_given?
resource_ids = resource_ids.uniq
key = max_member_access_for_resource_key(resource_klass, memoization_index)
diff --git a/app/models/concerns/each_batch.rb b/app/models/concerns/each_batch.rb
index 6314b46a7e3..f8f681f3fc9 100644
--- a/app/models/concerns/each_batch.rb
+++ b/app/models/concerns/each_batch.rb
@@ -50,7 +50,7 @@ module EachBatch
def each_batch(of: 1000, column: primary_key, order_hint: nil)
unless column
raise ArgumentError,
- 'the column: argument must be set to a column name to use for ordering rows'
+ _('the column: argument must be set to a column name to use for ordering rows')
end
start = except(:select)
diff --git a/app/models/concerns/fast_destroy_all.rb b/app/models/concerns/fast_destroy_all.rb
index 1e3afd641ed..b43393156fb 100644
--- a/app/models/concerns/fast_destroy_all.rb
+++ b/app/models/concerns/fast_destroy_all.rb
@@ -34,7 +34,7 @@ module FastDestroyAll
included do
before_destroy do
- raise ForbiddenActionError, '`destroy` and `destroy_all` are forbidden. Please use `fast_destroy_all`'
+ raise ForbiddenActionError, _('`destroy` and `destroy_all` are forbidden. Please use `fast_destroy_all`')
end
end
diff --git a/app/models/concerns/optionally_search.rb b/app/models/concerns/optionally_search.rb
index 4093429e372..dddc3d1144c 100644
--- a/app/models/concerns/optionally_search.rb
+++ b/app/models/concerns/optionally_search.rb
@@ -7,7 +7,7 @@ module OptionallySearch
def search(*)
raise(
NotImplementedError,
- 'Your model must implement the "search" class method'
+ _('Your model must implement the "search" class method')
)
end
diff --git a/app/models/concerns/token_authenticatable_strategies/base.rb b/app/models/concerns/token_authenticatable_strategies/base.rb
index 01fb194281a..8c5a001fd90 100644
--- a/app/models/concerns/token_authenticatable_strategies/base.rb
+++ b/app/models/concerns/token_authenticatable_strategies/base.rb
@@ -41,7 +41,7 @@ module TokenAuthenticatableStrategies
def fallback?
unless options[:fallback].in?([true, false, nil])
- raise ArgumentError, 'fallback: needs to be a boolean value!'
+ raise ArgumentError, _('fallback: needs to be a boolean value!')
end
options[:fallback] == true
@@ -49,7 +49,7 @@ module TokenAuthenticatableStrategies
def migrating?
unless options[:migrating].in?([true, false, nil])
- raise ArgumentError, 'migrating: needs to be a boolean value!'
+ raise ArgumentError, _('migrating: needs to be a boolean value!')
end
options[:migrating] == true
@@ -57,7 +57,7 @@ module TokenAuthenticatableStrategies
def self.fabricate(model, field, options)
if options[:digest] && options[:encrypted]
- raise ArgumentError, 'Incompatible options set!'
+ raise ArgumentError, _('Incompatible options set!')
end
if options[:digest]
diff --git a/app/models/concerns/token_authenticatable_strategies/encrypted.rb b/app/models/concerns/token_authenticatable_strategies/encrypted.rb
index 152491aa6e9..f17ee81812d 100644
--- a/app/models/concerns/token_authenticatable_strategies/encrypted.rb
+++ b/app/models/concerns/token_authenticatable_strategies/encrypted.rb
@@ -6,7 +6,7 @@ module TokenAuthenticatableStrategies
super
if migrating? && fallback?
- raise ArgumentError, '`fallback` and `migrating` options are not compatible!'
+ raise ArgumentError, _('`fallback` and `migrating` options are not compatible!')
end
end
@@ -23,7 +23,7 @@ module TokenAuthenticatableStrategies
elsif migrating?
find_by_plaintext_token(token, unscoped)
else
- raise ArgumentError, 'Unknown encryption phase!'
+ raise ArgumentError, _('Unknown encryption phase!')
end
end
@@ -42,7 +42,7 @@ module TokenAuthenticatableStrategies
return super if instance.has_attribute?(encrypted_field)
if fully_encrypted?
- raise ArgumentError, 'Using encrypted strategy when encrypted field is missing!'
+ raise ArgumentError, _('Using encrypted strategy when encrypted field is missing!')
else
insecure_strategy.ensure_token(instance)
end
diff --git a/app/models/internal_id.rb b/app/models/internal_id.rb
index e7168d49db9..35ce4ec6bbf 100644
--- a/app/models/internal_id.rb
+++ b/app/models/internal_id.rb
@@ -102,7 +102,7 @@ class InternalId < ActiveRecord::Base
@init = init
@usage = usage
- raise ArgumentError, 'Scope is not well-defined, need at least one column for scope (given: 0)' if scope.empty?
+ raise ArgumentError, _('Scope is not well-defined, need at least one column for scope (given: 0)') if scope.empty?
unless InternalId.usages.has_key?(usage.to_s)
raise ArgumentError, "Usage '#{usage}' is unknown. Supported values are #{InternalId.usages.keys} from InternalId.usages"
diff --git a/app/models/label.rb b/app/models/label.rb
index 1c3db3eb35d..22727961bca 100644
--- a/app/models/label.rb
+++ b/app/models/label.rb
@@ -230,7 +230,7 @@ class Label < ActiveRecord::Base
end
def label_format_reference(format = :id)
- raise StandardError, 'Unknown format' unless [:id, :name].include?(format)
+ raise StandardError, _('Unknown format') unless [:id, :name].include?(format)
if format == :name && !name.include?('"')
%("#{name}")
diff --git a/app/models/milestone.rb b/app/models/milestone.rb
index b21edce3aad..7b9274bb7bd 100644
--- a/app/models/milestone.rb
+++ b/app/models/milestone.rb
@@ -291,10 +291,10 @@ class Milestone < ActiveRecord::Base
end
def milestone_format_reference(format = :iid)
- raise ArgumentError, 'Unknown format' unless [:iid, :name].include?(format)
+ raise ArgumentError, _('Unknown format') unless [:iid, :name].include?(format)
if group_milestone? && format == :iid
- raise ArgumentError, 'Cannot refer to a group milestone by an internal id!'
+ raise ArgumentError, _('Cannot refer to a group milestone by an internal id!')
end
if format == :name && !name.include?('"')
diff --git a/app/models/project.rb b/app/models/project.rb
index 15465d9b356..c597457f33d 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -795,7 +795,7 @@ class Project < ActiveRecord::Base
def mark_stuck_remote_mirrors_as_failed!
remote_mirrors.stuck.update_all(
update_status: :failed,
- last_error: 'The remote mirror took to long to complete.',
+ last_error: _('The remote mirror took to long to complete.'),
last_update_at: Time.now
)
end
@@ -1864,7 +1864,7 @@ class Project < ActiveRecord::Base
#
# @param [Symbol] feature that needs to be rolled out for the project (:repository, :attachments)
def hashed_storage?(feature)
- raise ArgumentError, "Invalid feature" unless HASHED_STORAGE_FEATURES.include?(feature)
+ raise ArgumentError, _("Invalid feature") unless HASHED_STORAGE_FEATURES.include?(feature)
self.storage_version && self.storage_version >= HASHED_STORAGE_FEATURES[feature]
end
@@ -2114,7 +2114,7 @@ class Project < ActiveRecord::Base
# already have 1, 2, or n it will fail, but it if you have 0 that is lower
# than the number of permitted boards per project it won't fail.
def validate_board_limit(board)
- raise BoardLimitExceeded, 'Number of permitted boards exceeded' if boards.size >= NUMBER_OF_PERMITTED_BOARDS
+ raise BoardLimitExceeded, _('Number of permitted boards exceeded') if boards.size >= NUMBER_OF_PERMITTED_BOARDS
end
def update_project_statistics
@@ -2130,7 +2130,7 @@ class Project < ActiveRecord::Base
errors.delete(error)
end
- errors.add(:base, "The project is still being deleted. Please try again later.")
+ errors.add(:base, _("The project is still being deleted. Please try again later."))
end
def pending_delete_twin
diff --git a/app/models/project_group_link.rb b/app/models/project_group_link.rb
index bc3759142ae..e6c0aa503a4 100644
--- a/app/models/project_group_link.rb
+++ b/app/models/project_group_link.rb
@@ -44,7 +44,7 @@ class ProjectGroupLink < ActiveRecord::Base
group_ids = project_group.ancestors.map(&:id).push(project_group.id)
if group_ids.include?(self.group.id)
- errors.add(:base, "Project cannot be shared with the group it is in or one of its ancestors.")
+ errors.add(:base, _("Project cannot be shared with the group it is in or one of its ancestors."))
end
end
diff --git a/app/models/project_services/asana_service.rb b/app/models/project_services/asana_service.rb
index cc5f1207653..94286773ea3 100644
--- a/app/models/project_services/asana_service.rb
+++ b/app/models/project_services/asana_service.rb
@@ -36,7 +36,7 @@ http://app.asana.com/-/account_api'
{
type: 'text',
name: 'api_key',
- placeholder: 'User Personal Access Token. User must have access to task, all comments will be attributed to this user.',
+ placeholder: _('User Personal Access Token. User must have access to task, all comments will be attributed to this user.'),
required: true
},
{
diff --git a/app/models/project_services/bamboo_service.rb b/app/models/project_services/bamboo_service.rb
index a252052200a..0e81d5b4ace 100644
--- a/app/models/project_services/bamboo_service.rb
+++ b/app/models/project_services/bamboo_service.rb
@@ -39,7 +39,7 @@ class BambooService < CiService
end
def help
- 'You must set up automatic revision labeling and a repository trigger in Bamboo.'
+ _('You must set up automatic revision labeling and a repository trigger in Bamboo.')
end
def self.to_param
diff --git a/app/models/project_services/emails_on_push_service.rb b/app/models/project_services/emails_on_push_service.rb
index fb73d430fb1..278bf6294a5 100644
--- a/app/models/project_services/emails_on_push_service.rb
+++ b/app/models/project_services/emails_on_push_service.rb
@@ -11,7 +11,7 @@ class EmailsOnPushService < Service
end
def description
- 'Email the commits and diff of each push to a list of recipients.'
+ _('Email the commits and diff of each push to a list of recipients.')
end
def self.to_param
diff --git a/app/models/project_services/external_wiki_service.rb b/app/models/project_services/external_wiki_service.rb
index d2835c6ac82..bf9b1759788 100644
--- a/app/models/project_services/external_wiki_service.rb
+++ b/app/models/project_services/external_wiki_service.rb
@@ -10,7 +10,7 @@ class ExternalWikiService < Service
end
def description
- 'Replaces the link to the internal wiki with a link to an external wiki.'
+ _('Replaces the link to the internal wiki with a link to an external wiki.')
end
def self.to_param
diff --git a/app/models/project_services/flowdock_service.rb b/app/models/project_services/flowdock_service.rb
index 76624263aab..950adbb7aa4 100644
--- a/app/models/project_services/flowdock_service.rb
+++ b/app/models/project_services/flowdock_service.rb
@@ -9,7 +9,7 @@ class FlowdockService < Service
end
def description
- 'Flowdock is a collaboration web app for technical teams.'
+ _('Flowdock is a collaboration web app for technical teams.')
end
def self.to_param
diff --git a/app/models/project_services/jira_service.rb b/app/models/project_services/jira_service.rb
index 9066a0b7f1d..073a8217bab 100644
--- a/app/models/project_services/jira_service.rb
+++ b/app/models/project_services/jira_service.rb
@@ -339,9 +339,9 @@ class JiraService < IssueTrackerService
def self.event_description(event)
case event
when "merge_request", "merge_request_events"
- "JIRA comments will be created when an issue gets referenced in a merge request."
+ _("JIRA comments will be created when an issue gets referenced in a merge request.")
when "commit", "commit_events"
- "JIRA comments will be created when an issue gets referenced in a commit."
+ _("JIRA comments will be created when an issue gets referenced in a commit.")
end
end
end
diff --git a/app/models/project_services/kubernetes_service.rb b/app/models/project_services/kubernetes_service.rb
index f69edd60003..cae22dbc321 100644
--- a/app/models/project_services/kubernetes_service.rb
+++ b/app/models/project_services/kubernetes_service.rb
@@ -186,7 +186,7 @@ class KubernetesService < DeploymentService
end
def build_kube_client!
- raise "Incomplete settings" unless api_url && actual_namespace && token
+ raise _("Incomplete settings") unless api_url && actual_namespace && token
Gitlab::Kubernetes::KubeClient.new(
api_url,
diff --git a/app/models/project_services/pipelines_email_service.rb b/app/models/project_services/pipelines_email_service.rb
index d60a6a7efa3..b8741b68398 100644
--- a/app/models/project_services/pipelines_email_service.rb
+++ b/app/models/project_services/pipelines_email_service.rb
@@ -14,7 +14,7 @@ class PipelinesEmailService < Service
end
def description
- 'Email the pipelines status to a list of recipients.'
+ _('Email the pipelines status to a list of recipients.')
end
def self.to_param
diff --git a/app/models/project_services/pivotaltracker_service.rb b/app/models/project_services/pivotaltracker_service.rb
index 617e502b639..49c27c8f36e 100644
--- a/app/models/project_services/pivotaltracker_service.rb
+++ b/app/models/project_services/pivotaltracker_service.rb
@@ -23,7 +23,7 @@ class PivotaltrackerService < Service
{
type: 'text',
name: 'token',
- placeholder: 'Pivotal Tracker API token.',
+ placeholder: _('Pivotal Tracker API token.'),
required: true
},
{
diff --git a/app/models/project_services/pushover_service.rb b/app/models/project_services/pushover_service.rb
index 4e48c348b45..3ba20d559b4 100644
--- a/app/models/project_services/pushover_service.rb
+++ b/app/models/project_services/pushover_service.rb
@@ -11,7 +11,7 @@ class PushoverService < Service
end
def description
- 'Pushover makes it easy to get real-time notifications on your Android device, iPhone, iPad, and Desktop.'
+ _('Pushover makes it easy to get real-time notifications on your Android device, iPhone, iPad, and Desktop.')
end
def self.to_param
diff --git a/app/models/repository.rb b/app/models/repository.rb
index b47238b52f1..18f46916960 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -852,7 +852,7 @@ class Repository
def ff_merge(user, source, target_branch, merge_request: nil)
their_commit_id = commit(source)&.id
- raise 'Invalid merge source' if their_commit_id.nil?
+ raise _('Invalid merge source') if their_commit_id.nil?
merge_request&.update(in_progress_merge_commit_sha: their_commit_id)
diff --git a/app/models/u2f_registration.rb b/app/models/u2f_registration.rb
index 37598173fd1..9c4db22f996 100644
--- a/app/models/u2f_registration.rb
+++ b/app/models/u2f_registration.rb
@@ -19,7 +19,7 @@ class U2fRegistration < ActiveRecord::Base
user: user,
name: params[:name])
rescue JSON::ParserError, NoMethodError, ArgumentError
- registration.errors.add(:base, 'Your U2F device did not send a valid JSON response.')
+ registration.errors.add(:base, _('Your U2F device did not send a valid JSON response.'))
rescue U2F::Error => e
registration.errors.add(:base, e.message)
end
diff --git a/app/models/upload.rb b/app/models/upload.rb
index 20860f14b83..5b60964ee24 100644
--- a/app/models/upload.rb
+++ b/app/models/upload.rb
@@ -45,7 +45,7 @@ class Upload < ActiveRecord::Base
end
def absolute_path
- raise ObjectStorage::RemoteStoreError, "Remote object has no absolute path." unless local?
+ raise ObjectStorage::RemoteStoreError, _("Remote object has no absolute path.") unless local?
return path unless relative_path?
uploader_class.absolute_path(self)
diff --git a/app/models/user.rb b/app/models/user.rb
index 26fd2d903a1..562141dce48 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -507,7 +507,7 @@ class User < ActiveRecord::Base
def ghost
email = 'ghost%s@example.com'
unique_internal(where(ghost: true), 'ghost', email) do |u|
- u.bio = 'This is a "Ghost User", created to hold all issues authored by users that have since been deleted. This user cannot be removed.'
+ u.bio = _('This is a "Ghost User", created to hold all issues authored by users that have since been deleted. This user cannot be removed.')
u.name = 'Ghost User'
end
end