Merge commit 'b2f915b31ae884e3893e93a99da4e2b8d7e9ef7b' into glitch-soc/merge-upstream

This commit is contained in:
Claire 2023-12-21 19:04:20 +01:00
commit a60b9acf3c
16 changed files with 90 additions and 48 deletions

View File

@ -326,7 +326,7 @@ GEM
ruby-progressbar (~> 1.4) ruby-progressbar (~> 1.4)
globalid (1.2.1) globalid (1.2.1)
activesupport (>= 6.1) activesupport (>= 6.1)
haml (6.2.0) haml (6.3.0)
temple (>= 0.8.2) temple (>= 0.8.2)
thor thor
tilt tilt
@ -335,7 +335,7 @@ GEM
activesupport (>= 5.1) activesupport (>= 5.1)
haml (>= 4.0.6) haml (>= 4.0.6)
railties (>= 5.1) railties (>= 5.1)
haml_lint (0.51.0) haml_lint (0.52.0)
haml (>= 4.0) haml (>= 4.0)
parallel (~> 1.10) parallel (~> 1.10)
rainbow rainbow
@ -381,7 +381,7 @@ GEM
rdoc rdoc
reline (>= 0.3.8) reline (>= 0.3.8)
jmespath (1.6.2) jmespath (1.6.2)
json (2.7.0) json (2.7.1)
json-canonicalization (1.0.0) json-canonicalization (1.0.0)
json-jwt (1.15.3) json-jwt (1.15.3)
activesupport (>= 4.2) activesupport (>= 4.2)
@ -622,7 +622,7 @@ GEM
redis (>= 4) redis (>= 4)
redlock (1.3.2) redlock (1.3.2)
redis (>= 3.0.0, < 6.0) redis (>= 3.0.0, < 6.0)
regexp_parser (2.8.2) regexp_parser (2.8.3)
reline (0.4.1) reline (0.4.1)
io-console (~> 0.5) io-console (~> 0.5)
request_store (1.5.1) request_store (1.5.1)
@ -662,7 +662,7 @@ GEM
rspec-mocks (~> 3.0) rspec-mocks (~> 3.0)
sidekiq (>= 5, < 8) sidekiq (>= 5, < 8)
rspec-support (3.12.1) rspec-support (3.12.1)
rubocop (1.58.0) rubocop (1.59.0)
json (~> 2.3) json (~> 2.3)
language_server-protocol (>= 3.17.0) language_server-protocol (>= 3.17.0)
parallel (~> 1.10) parallel (~> 1.10)

View File

@ -606,6 +606,7 @@
"search.quick_action.status_search": "Sobivad postitused {x}", "search.quick_action.status_search": "Sobivad postitused {x}",
"search.search_or_paste": "Otsi või kleebi URL", "search.search_or_paste": "Otsi või kleebi URL",
"search_popout.full_text_search_disabled_message": "Pole saadaval kohas {domain}.", "search_popout.full_text_search_disabled_message": "Pole saadaval kohas {domain}.",
"search_popout.full_text_search_logged_out_message": "Saadaval vaid kui sisse logitud.",
"search_popout.language_code": "Keele ISO-kood", "search_popout.language_code": "Keele ISO-kood",
"search_popout.options": "Otsimisvalikud", "search_popout.options": "Otsimisvalikud",
"search_popout.quick_actions": "Kiirtegevused", "search_popout.quick_actions": "Kiirtegevused",

View File

@ -21,7 +21,7 @@
"account.blocked": "ブロック済み", "account.blocked": "ブロック済み",
"account.browse_more_on_origin_server": "リモートで表示", "account.browse_more_on_origin_server": "リモートで表示",
"account.cancel_follow_request": "フォローリクエストの取り消し", "account.cancel_follow_request": "フォローリクエストの取り消し",
"account.copy": "プロフィールのリンクをコピーして下さい", "account.copy": "プロフィールのリンクをコピー",
"account.direct": "@{name}さんに非公開でメンション", "account.direct": "@{name}さんに非公開でメンション",
"account.disable_notifications": "@{name}さんの投稿時の通知を停止", "account.disable_notifications": "@{name}さんの投稿時の通知を停止",
"account.domain_blocked": "ドメインブロック中", "account.domain_blocked": "ドメインブロック中",
@ -192,7 +192,7 @@
"conversation.mark_as_read": "既読にする", "conversation.mark_as_read": "既読にする",
"conversation.open": "会話を表示", "conversation.open": "会話を表示",
"conversation.with": "{names}", "conversation.with": "{names}",
"copy_icon_button.copied": "クリップボードにコピーされた", "copy_icon_button.copied": "コピーしました",
"copypaste.copied": "コピーしました", "copypaste.copied": "コピーしました",
"copypaste.copy_to_clipboard": "クリップボードにコピー", "copypaste.copy_to_clipboard": "クリップボードにコピー",
"directory.federated": "既知の連合より", "directory.federated": "既知の連合より",
@ -392,7 +392,7 @@
"lists.search": "フォローしている人の中から検索", "lists.search": "フォローしている人の中から検索",
"lists.subheading": "あなたのリスト", "lists.subheading": "あなたのリスト",
"load_pending": "{count}件の新着", "load_pending": "{count}件の新着",
"loading_indicator.label": "", "loading_indicator.label": "読み込み中…",
"media_gallery.toggle_visible": "{number, plural, one {画像を閉じる} other {画像を閉じる}}", "media_gallery.toggle_visible": "{number, plural, one {画像を閉じる} other {画像を閉じる}}",
"moved_to_account_banner.text": "あなたのアカウント『{disabledAccount}』は『{movedToAccount}』に移動したため現在無効になっています。", "moved_to_account_banner.text": "あなたのアカウント『{disabledAccount}』は『{movedToAccount}』に移動したため現在無効になっています。",
"mute_modal.duration": "ミュートする期間", "mute_modal.duration": "ミュートする期間",
@ -481,17 +481,17 @@
"onboarding.follows.empty": "表示できる結果はありません。検索やエクスプローラーを使ったり、ほかのアカウントをフォローしたり、後でもう一度試しください。", "onboarding.follows.empty": "表示できる結果はありません。検索やエクスプローラーを使ったり、ほかのアカウントをフォローしたり、後でもう一度試しください。",
"onboarding.follows.lead": "ホームタイムラインはMastodonの軸足となる場所です。たくさんのユーザーをフォローすることで、ホームタイムラインはよりにぎやかでおもしろいものになります。手はじめに、おすすめのアカウントから何人かフォローしてみましょう:", "onboarding.follows.lead": "ホームタイムラインはMastodonの軸足となる場所です。たくさんのユーザーをフォローすることで、ホームタイムラインはよりにぎやかでおもしろいものになります。手はじめに、おすすめのアカウントから何人かフォローしてみましょう:",
"onboarding.follows.title": "ホームタイムラインを埋める", "onboarding.follows.title": "ホームタイムラインを埋める",
"onboarding.profile.discoverable": "自分のプロフィールが発見できないようにする", "onboarding.profile.discoverable": "自分のプロフィールが見つけられるようにする",
"onboarding.profile.discoverable_hint": "マストドンの見つけやすくする機能が個人情報を利用することに承諾すると、あなたの投稿が検索結果やトレンドに表示されることがあります。また、あなたのプロフィールがあなたと似た興味関心を持つ人に提案されることがあります。", "onboarding.profile.discoverable_hint": "Mastodonの「見つける」機能にオプトインすると、あなたの投稿が検索結果やトレンドに表示されることがあります。また、あなたに似た関心を持つ人にプロフィールがおすすめされることがあります。",
"onboarding.profile.display_name": "表示名", "onboarding.profile.display_name": "表示名",
"onboarding.profile.display_name_hint": "あなたのフルネーム、または楽しい名前…", "onboarding.profile.display_name_hint": "フルネーム、あるいは面白い名前など",
"onboarding.profile.lead": "このことは後でいつでも設定から完了させることが出来ますし、設定では更に多くのカスタマイズが利用可能になっています。", "onboarding.profile.lead": "あとでいつでも修正できますし、設定画面にはこれ以外のカスタマイズ項目もあります。",
"onboarding.profile.note": "自己紹介", "onboarding.profile.note": "自己紹介",
"onboarding.profile.note_hint": "@を使用して他の人々にメンションをすることができます。また#でハッシュタグが使用できます", "onboarding.profile.note_hint": "ほかの人に @言及 したり、#ハッシュタグ を付けたりできます",
"onboarding.profile.save_and_continue": "保存してから続行して下さい", "onboarding.profile.save_and_continue": "保存して続ける",
"onboarding.profile.title": "プロフィールの設定", "onboarding.profile.title": "プロフィールの設定",
"onboarding.profile.upload_avatar": "プロフィール画像をアップロードしてください", "onboarding.profile.upload_avatar": "プロフィール画像をアップロード",
"onboarding.profile.upload_header": "プロフィールのヘッダー画像をアップロードして下さい", "onboarding.profile.upload_header": "プロフィールのヘッダー画像をアップロード",
"onboarding.share.lead": "新しいMastodonのアカウントをみんなに紹介しましょう。", "onboarding.share.lead": "新しいMastodonのアカウントをみんなに紹介しましょう。",
"onboarding.share.message": "「{username}」で #Mastodon はじめました! {url}", "onboarding.share.message": "「{username}」で #Mastodon はじめました! {url}",
"onboarding.share.next_steps": "次のステップに進む:", "onboarding.share.next_steps": "次のステップに進む:",
@ -606,6 +606,7 @@
"search.quick_action.status_search": "{x}に該当する投稿", "search.quick_action.status_search": "{x}に該当する投稿",
"search.search_or_paste": "検索またはURLを入力", "search.search_or_paste": "検索またはURLを入力",
"search_popout.full_text_search_disabled_message": "{domain}では利用できません。", "search_popout.full_text_search_disabled_message": "{domain}では利用できません。",
"search_popout.full_text_search_logged_out_message": "ログイン時のみ利用できます。",
"search_popout.language_code": "ISO言語コード", "search_popout.language_code": "ISO言語コード",
"search_popout.options": "検索オプション", "search_popout.options": "検索オプション",
"search_popout.quick_actions": "クイック操作", "search_popout.quick_actions": "クイック操作",

View File

@ -49,5 +49,32 @@
"admin.dashboard.retention.average": "औसत", "admin.dashboard.retention.average": "औसत",
"admin.dashboard.retention.cohort_size": "नयाँ प्रयोगकर्ताहरू", "admin.dashboard.retention.cohort_size": "नयाँ प्रयोगकर्ताहरू",
"alert.rate_limited.message": "कृपया {retry_time, time, medium} पछि पुन: प्रयास गर्नुहोस्।", "alert.rate_limited.message": "कृपया {retry_time, time, medium} पछि पुन: प्रयास गर्नुहोस्।",
"alert.unexpected.message": "एउटा अनपेक्षित त्रुटि भयो।" "alert.unexpected.message": "एउटा अनपेक्षित त्रुटि भयो।",
"bundle_column_error.retry": "पुन: प्रयास गर्नुहोस्",
"bundle_modal_error.close": "बन्द गर्नुहोस्",
"bundle_modal_error.message": "यो कम्पोनेन्ट लोड गर्दा केही गडबड भयो।",
"bundle_modal_error.retry": "Try again",
"closed_registrations.other_server_instructions": "Mastodon विकेन्द्रीकृत भएकोले, तपाइँ अर्को सर्भरमा खाता खोल्न सक्नुहुन्छ र पनि यो सर्भरसँग अन्तरक्रिया गर्न सक्नुहुन्छ।",
"closed_registrations_modal.description": "हाल {domain} मा खाता सिर्जना गर्न सम्भव छैन, तर कृपया ध्यान राख्नुहोस् कि तपाईंले Mastodon प्रयोग गर्नको लागि {domain} मा नै खाता खोल्न आवश्यक छैन।",
"closed_registrations_modal.find_another_server": "अर्को सर्भर खोज्नुहोस्",
"closed_registrations_modal.title": "Mastodon मा साइन अप गर्दै",
"column.blocks": "ब्लक गरिएको प्रयोगकर्ताहरु",
"column.directory": "प्रोफाइल ब्राउज गर्नुहोस्",
"column.domain_blocks": "ब्लक गरिएको डोमेन",
"column.follow_requests": "फलो अनुरोधहरू",
"column.lists": "सूचीहरू",
"column.notifications": "सूचनाहरू",
"column_header.hide_settings": "सेटिङ्हरू लुकाउनुहोस्",
"column_subheading.settings": "सेटिङहरू",
"compose.language.change": "भाषा परिवर्तन गर्नुहोस्",
"compose.language.search": "भाषाहरू खोज्नुहोस्...",
"compose_form.direct_message_warning_learn_more": "थप जान्नुहोस्",
"compose_form.poll.add_option": "विकल्प थप्नुहोस्",
"compose_form.poll.remove_option": "यो विकल्प हटाउनुहोस्",
"compose_form.publish_form": "नयाँ पोस्ट",
"compose_form.save_changes": "परिवर्तनहरू सेभ गर्नुहोस",
"compose_form.sensitive.hide": "{count, plural, one {संवेदनशील मिडियाको रूपमा चिन्ह लगाउनुहोस्} other {संवेदनशील मिडियाहरूको रूपमा चिन्ह लगाउनुहोस्}}",
"compose_form.sensitive.marked": "{count, plural, one {मिडियालाई संवेदनशील रूपमा चिन्ह लगाइएको छ} other {मिडियाहरूलाई संवेदनशील रूपमा चिन्ह लगाइएको छ}}",
"compose_form.sensitive.unmarked": "{count, plural, one {मिडियालाई संवेदनशील रूपमा चिन्ह लगाइएको छैन} other {मिडियाहरूलाई संवेदनशील रूपमा चिन्ह लगाइएको छैन}}",
"compose_form.spoiler_placeholder": "यहाँ आफ्नो चेतावनी लेख्नुहोस्"
} }

View File

@ -4398,11 +4398,6 @@ a.status-card {
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@supports (display: grid) {
// hack to fix Chrome <57
contain: strict;
}
& > span { & > span {
max-width: 500px; max-width: 500px;
} }

View File

@ -37,13 +37,13 @@ class InlineRenderer
private private
def preload_associations_for_status def preload_associations_for_status
ActiveRecord::Associations::Preloader.new(records: @object, associations: { ActiveRecord::Associations::Preloader.new(records: [@object], associations: {
active_mentions: :account, active_mentions: :account,
reblog: { reblog: {
active_mentions: :account, active_mentions: :account,
}, },
}) }).call
end end
def current_user def current_user

View File

@ -78,9 +78,9 @@ class Announcement < ApplicationRecord
else else
scope.select("name, custom_emoji_id, count(*) as count, exists(select 1 from announcement_reactions r where r.account_id = #{account.id} and r.announcement_id = announcement_reactions.announcement_id and r.name = announcement_reactions.name) as me") scope.select("name, custom_emoji_id, count(*) as count, exists(select 1 from announcement_reactions r where r.account_id = #{account.id} and r.announcement_id = announcement_reactions.announcement_id and r.name = announcement_reactions.name) as me")
end end
end end.to_a
ActiveRecord::Associations::Preloader.new(records: records, associations: :custom_emoji) ActiveRecord::Associations::Preloader.new(records: records, associations: :custom_emoji).call
records records
end end

View File

@ -124,7 +124,7 @@ module Account::Search
tsquery = generate_query_for_search(terms) tsquery = generate_query_for_search(terms)
find_by_sql([BASIC_SEARCH_SQL, { limit: limit, offset: offset, tsquery: tsquery }]).tap do |records| find_by_sql([BASIC_SEARCH_SQL, { limit: limit, offset: offset, tsquery: tsquery }]).tap do |records|
ActiveRecord::Associations::Preloader.new(records: records, associations: :account_stat) ActiveRecord::Associations::Preloader.new(records: records, associations: [:account_stat, { user: :role }]).call
end end
end end
@ -133,7 +133,7 @@ module Account::Search
sql_template = following ? ADVANCED_SEARCH_WITH_FOLLOWING : ADVANCED_SEARCH_WITHOUT_FOLLOWING sql_template = following ? ADVANCED_SEARCH_WITH_FOLLOWING : ADVANCED_SEARCH_WITHOUT_FOLLOWING
find_by_sql([sql_template, { id: account.id, limit: limit, offset: offset, tsquery: tsquery }]).tap do |records| find_by_sql([sql_template, { id: account.id, limit: limit, offset: offset, tsquery: tsquery }]).tap do |records|
ActiveRecord::Associations::Preloader.new(records: records, associations: :account_stat) ActiveRecord::Associations::Preloader.new(records: records, associations: [:account_stat, { user: :role }]).call
end end
end end

View File

@ -111,7 +111,7 @@ class Notification < ApplicationRecord
# Instead of using the usual `includes`, manually preload each type. # Instead of using the usual `includes`, manually preload each type.
# If polymorphic associations are loaded with the usual `includes`, other types of associations will be loaded more. # If polymorphic associations are loaded with the usual `includes`, other types of associations will be loaded more.
ActiveRecord::Associations::Preloader.new(records: grouped_notifications, associations: associations) ActiveRecord::Associations::Preloader.new(records: grouped_notifications, associations: associations).call
end end
unique_target_statuses = notifications.filter_map(&:target_status).uniq unique_target_statuses = notifications.filter_map(&:target_status).uniq

View File

@ -103,8 +103,8 @@ class InitialStateSerializer < ActiveModel::Serializer
ActiveRecord::Associations::Preloader.new( ActiveRecord::Associations::Preloader.new(
records: [object.current_account, object.admin, object.owner, object.disabled_account, object.moved_to_account].compact, records: [object.current_account, object.admin, object.owner, object.disabled_account, object.moved_to_account].compact,
associations: [:account_stat, :user, { moved_to_account: [:account_stat, :user] }] associations: [:account_stat, { user: :role, moved_to_account: [:account_stat, { user: :role }] }]
) ).call
store[object.current_account.id.to_s] = serialized_account(object.current_account) if object.current_account store[object.current_account.id.to_s] = serialized_account(object.current_account) if object.current_account
store[object.admin.id.to_s] = serialized_account(object.admin) if object.admin store[object.admin.id.to_s] = serialized_account(object.admin) if object.admin

View File

@ -218,7 +218,7 @@ class AccountSearchService < BaseService
records = query_builder.build.limit(limit_for_non_exact_results).offset(offset).objects.compact records = query_builder.build.limit(limit_for_non_exact_results).offset(offset).objects.compact
ActiveRecord::Associations::Preloader.new(records: records, associations: :account_stat) ActiveRecord::Associations::Preloader.new(records: records, associations: [:account_stat, { user: :role }]).call
records records
rescue Faraday::ConnectionFailed, Parslet::ParseFailed rescue Faraday::ConnectionFailed, Parslet::ParseFailed

View File

@ -11,7 +11,7 @@ class BatchedRemoveStatusService < BaseService
ActiveRecord::Associations::Preloader.new( ActiveRecord::Associations::Preloader.new(
records: statuses, records: statuses,
associations: options[:skip_side_effects] ? :reblogs : [:account, :tags, reblogs: :account] associations: options[:skip_side_effects] ? :reblogs : [:account, :tags, reblogs: :account]
) ).call
statuses_and_reblogs = statuses.flat_map { |status| [status] + status.reblogs } statuses_and_reblogs = statuses.flat_map { |status| [status] + status.reblogs }
@ -23,7 +23,7 @@ class BatchedRemoveStatusService < BaseService
ActiveRecord::Associations::Preloader.new( ActiveRecord::Associations::Preloader.new(
records: statuses_with_account_conversations, records: statuses_with_account_conversations,
associations: [mentions: :account] associations: [mentions: :account]
) ).call
statuses_with_account_conversations.each do |status| statuses_with_account_conversations.each do |status|
status.unlink_from_conversations! status.unlink_from_conversations!

View File

@ -63,13 +63,6 @@ module Mastodon
# Initialize configuration defaults for originally generated Rails version. # Initialize configuration defaults for originally generated Rails version.
config.load_defaults 7.0 config.load_defaults 7.0
# TODO: Release a version which uses the 7.0 defaults as specified above,
# but preserves the 6.1 cache format as set below. In a subsequent change,
# remove this line setting to 6.1 cache format, and then release another version.
# https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#new-activesupport-cache-serialization-format
# https://github.com/mastodon/mastodon/pull/24241#discussion_r1162890242
config.active_support.cache_format_version = 6.1
# Please, add to the `ignore` list any other `lib` subdirectories that do # Please, add to the `ignore` list any other `lib` subdirectories that do
# not contain `.rb` files, or that should not be reloaded or eager loaded. # not contain `.rb` files, or that should not be reloaded or eager loaded.
# Common ones are `templates`, `generators`, or `middleware`, for example. # Common ones are `templates`, `generators`, or `middleware`, for example.

View File

@ -1,9 +1,6 @@
# frozen_string_literal: true # frozen_string_literal: true
# TODO: Remove after 4.2.0 # TODO: remove this file some time after 4.3.0
Rails.application.configure do
config.active_support.key_generator_hash_digest_class = OpenSSL::Digest::SHA1
end
Rails.application.config.after_initialize do Rails.application.config.after_initialize do
Rails.application.config.action_dispatch.cookies_rotations.tap do |cookies| Rails.application.config.action_dispatch.cookies_rotations.tap do |cookies|
@ -12,9 +9,8 @@ Rails.application.config.after_initialize do
secret_key_base = Rails.application.secret_key_base secret_key_base = Rails.application.secret_key_base
# TODO: Switch to SHA1 after 4.2.0
key_generator = ActiveSupport::KeyGenerator.new( key_generator = ActiveSupport::KeyGenerator.new(
secret_key_base, iterations: 1000, hash_digest_class: OpenSSL::Digest::SHA256 secret_key_base, iterations: 1000, hash_digest_class: OpenSSL::Digest::SHA1
) )
key_len = ActiveSupport::MessageEncryptor.key_len key_len = ActiveSupport::MessageEncryptor.key_len

View File

@ -534,6 +534,7 @@ et:
total_reported: Nende kohta teateid total_reported: Nende kohta teateid
total_storage: Lisatud meedia total_storage: Lisatud meedia
totals_time_period_hint_html: Allpool kuvatud summad sisaldavad andmed kogu aja kohta. totals_time_period_hint_html: Allpool kuvatud summad sisaldavad andmed kogu aja kohta.
unknown_instance: Hetkel pole selle domeeni jaoks siin serveris kirjet.
invites: invites:
deactivate_all: Peata kõik deactivate_all: Peata kõik
filter: filter:
@ -610,6 +611,7 @@ et:
created_at: Teavitatud created_at: Teavitatud
delete_and_resolve: Kustuta postitused delete_and_resolve: Kustuta postitused
forwarded: Edastatud forwarded: Edastatud
forwarded_replies_explanation: See aruanne pärineb kaugkasutajalt ja käsitleb kaugsisu. See on edastatud sulle, sest raporteeritud sisu on vastus ühele sinu kasutajale.
forwarded_to: Edastatud %{domain} domeeni forwarded_to: Edastatud %{domain} domeeni
mark_as_resolved: Märgi lahendatuks mark_as_resolved: Märgi lahendatuks
mark_as_sensitive: Märgi kui tundlik sisu mark_as_sensitive: Märgi kui tundlik sisu
@ -832,6 +834,20 @@ et:
system_checks: system_checks:
database_schema_check: database_schema_check:
message_html: On ootel andmebaasi migreerimisi. Rakenduse ootuspäraseks toimimiseks palun käivita need message_html: On ootel andmebaasi migreerimisi. Rakenduse ootuspäraseks toimimiseks palun käivita need
elasticsearch_health_red:
message_html: Elasticsearch klaster on ebaterve (punane staatus), otsingufunktsioonid ei ole saadaval
elasticsearch_health_yellow:
message_html: Elasticsearch klaster on ebaterve (kollane staatus), võiksid uurida põhjust
elasticsearch_index_mismatch:
message_html: Elasticsearchi indeksite kaardistused on vananenud. Palun käivita <code>tootctl search deploy --only=%{value}</code>
elasticsearch_preset:
action: Vaata dokumentatsiooni
message_html: Elasticsearchi klastris on rohkem kui üks sõlme, kuid Mastodon ei ole nende kasutamiseks konfigureeritud.
elasticsearch_preset_single_node:
action: Vaata dokumentatsiooni
message_html: Elasticsearchi klastris on ainult üks sõlm <code>ES_PRESET</code> peaks olema seatud väärtusele <code>single_node_cluster</code>.
elasticsearch_reset_chewy:
message_html: Elasticsearchi süsteemiindeks on seadistuse muutumise tõttu vananenud. Palun käivita <code>tootctl search deploy --reset-chewy</code> selle uuendamiseks.
elasticsearch_running_check: elasticsearch_running_check:
message_html: Elasticsearch ei vasta. Kontrolli, kas see töötab või keela täistekstiotsing message_html: Elasticsearch ei vasta. Kontrolli, kas see töötab või keela täistekstiotsing
elasticsearch_version_check: elasticsearch_version_check:
@ -1024,6 +1040,14 @@ et:
hint_html: Üks asi veel! Me peame veenduma, et oled inimene (et me saaksime spämmi väljaspoole jätta!). Lahenda allpool olev CAPTCHA ja klõpsa "Jätka". hint_html: Üks asi veel! Me peame veenduma, et oled inimene (et me saaksime spämmi väljaspoole jätta!). Lahenda allpool olev CAPTCHA ja klõpsa "Jätka".
title: Turvalisuse kontroll title: Turvalisuse kontroll
confirmations: confirmations:
awaiting_review: E-posti aadress on kinnitatud! %{domain} töötajad vaatavad praegu registreeringut läbi. Saad e-kirja, kui nad kiidavad konto heaks!
awaiting_review_title: Su registreeringut vaadatakse läbi
clicking_this_link: klõpsates seda linki
login_link: logi sisse
proceed_to_login_html: Saad nüüd jätkata valikuga %{login_link}.
redirect_to_app_html: Sind oleks pidanud suunatama rakendusse <strong>%{app_name}</strong>. Kui seda ei juhtunud, proovi %{clicking_this_link} või naase käsitsi rakendusse.
registration_complete: Sinu registreering domeenil %{domain} on nüüd valmis!
welcome_title: Tere tulemast, %{name}!
wrong_email_hint: Kui see e-postiaadress pole korrektne, saad seda kontosätetes muuta. wrong_email_hint: Kui see e-postiaadress pole korrektne, saad seda kontosätetes muuta.
delete_account: Konto kustutamine delete_account: Konto kustutamine
delete_account_html: Kui soovid oma konto kustutada, siis <a href="%{path}">jätka siit</a>. Pead kustutamise eraldi kinnitama. delete_account_html: Kui soovid oma konto kustutada, siis <a href="%{path}">jätka siit</a>. Pead kustutamise eraldi kinnitama.
@ -1085,6 +1109,7 @@ et:
functional: Konto on täies mahus kasutatav. functional: Konto on täies mahus kasutatav.
pending: Taotlus ootab ülevaatamist meie personali poolt. See võib võtta mõne aja. Kui taotlus on vastu võetud, saadetakse sulle e-kiri. pending: Taotlus ootab ülevaatamist meie personali poolt. See võib võtta mõne aja. Kui taotlus on vastu võetud, saadetakse sulle e-kiri.
redirecting_to: See konto pole aktiivne, sest on suunatud aadressile %{acct}. redirecting_to: See konto pole aktiivne, sest on suunatud aadressile %{acct}.
self_destruct: Kuna %{domain} on sulgemisel, saad oma kontole vaid piiratud ligipääsu.
view_strikes: Vaata enda eelnevaid juhtumeid view_strikes: Vaata enda eelnevaid juhtumeid
too_fast: Vorm esitatud liiga kiirelt, proovi uuesti. too_fast: Vorm esitatud liiga kiirelt, proovi uuesti.
use_security_key: Kasuta turvavõtit use_security_key: Kasuta turvavõtit
@ -1342,6 +1367,7 @@ et:
'86400': 1 päev '86400': 1 päev
expires_in_prompt: Mitte kunagi expires_in_prompt: Mitte kunagi
generate: Loo generate: Loo
invalid: See kutse pole kehtiv
invited_by: 'Sind kutsus:' invited_by: 'Sind kutsus:'
max_uses: max_uses:
one: 1 kasutus one: 1 kasutus
@ -1554,6 +1580,9 @@ et:
over_daily_limit: Lubatud ajastatud postituste arv %{limit} päevas on tänaseks ületatud over_daily_limit: Lubatud ajastatud postituste arv %{limit} päevas on tänaseks ületatud
over_total_limit: Oled jõudnud ajastatud postituste lubatud maksimumarvuni %{limit} over_total_limit: Oled jõudnud ajastatud postituste lubatud maksimumarvuni %{limit}
too_soon: Ajastatud kuupäev peab olema tukevikus too_soon: Ajastatud kuupäev peab olema tukevikus
self_destruct:
lead_html: Kahjuks suletakse <strong>%{domain}</strong> lõplikult. Kui sul oli seal konto, ei saa sa seda enam kasutada, kuid siiski võid taotleda oma andmete varukoopiat.
title: See server suletakse
sessions: sessions:
activity: Viimane aktiivsus activity: Viimane aktiivsus
browser: Veebilehitseja browser: Veebilehitseja

View File

@ -599,7 +599,7 @@ ja:
created_at: 通報日時 created_at: 通報日時
delete_and_resolve: 投稿を削除 delete_and_resolve: 投稿を削除
forwarded: 転送済み forwarded: 転送済み
forwarded_replies_explanation: の報告はリモートユーザーからのものであり、またリモートコンテンツに関するものです。報告されたコンテンツがあなたのユーザーの内の一人に対するリプライの中にあるため、あなたに転送されました。 forwarded_replies_explanation: れはリモートユーザーによる、リモートコンテンツについての報告です。問題のコンテンツはあなたのサーバー利用者への返信なので、こちらにも転送されて来ました。
forwarded_to: "%{domain}に転送されました" forwarded_to: "%{domain}に転送されました"
mark_as_resolved: 解決済みとしてマーク mark_as_resolved: 解決済みとしてマーク
mark_as_sensitive: 閲覧注意にする mark_as_sensitive: 閲覧注意にする