diff --git a/.env.production.sample b/.env.production.sample index 0df0a877868..ad058b2b792 100644 --- a/.env.production.sample +++ b/.env.production.sample @@ -283,9 +283,17 @@ MAX_POLL_OPTION_CHARS=100 # If undefined or smaller than MAX_EMOJI_SIZE, the value # of MAX_EMOJI_SIZE will be used for MAX_REMOTE_EMOJI_SIZE # Units are in bytes -MAX_EMOJI_SIZE=51200 -MAX_REMOTE_EMOJI_SIZE=204800 +# MAX_EMOJI_SIZE=262144 +# MAX_REMOTE_EMOJI_SIZE=262144 # Optional hCaptcha support # HCAPTCHA_SECRET_KEY= # HCAPTCHA_SITE_KEY= + +# IP and session retention +# ----------------------- +# Make sure to modify the scheduling of ip_cleanup_scheduler in config/sidekiq.yml +# to be less than daily if you lower IP_RETENTION_PERIOD below two days (172800). +# ----------------------- +IP_RETENTION_PERIOD=31556952 +SESSION_RETENTION_PERIOD=31556952 diff --git a/.rubocop.yml b/.rubocop.yml index 9e3ff21f25e..8dc2d1c4794 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -67,7 +67,7 @@ Lint/UselessAccessModifier: - class_methods Metrics/AbcSize: - Max: 100 + Max: 115 Exclude: - 'lib/mastodon/*_cli.rb' @@ -84,7 +84,7 @@ Metrics/BlockNesting: Metrics/ClassLength: CountComments: false - Max: 400 + Max: 500 Exclude: - 'lib/mastodon/*_cli.rb' diff --git a/Gemfile b/Gemfile index 9a638cd0696..f723ce7398b 100644 --- a/Gemfile +++ b/Gemfile @@ -10,7 +10,7 @@ gem 'puma', '~> 5.6' gem 'rails', '~> 6.1.6' gem 'sprockets', '~> 3.7.2' gem 'thor', '~> 1.2' -gem 'rack', '~> 2.2.3' +gem 'rack', '~> 2.2.4' gem 'hamlit-rails', '~> 0.2' gem 'pg', '~> 1.4' @@ -40,7 +40,7 @@ end gem 'net-ldap', '~> 0.17' gem 'omniauth-cas', '~> 2.0' gem 'omniauth-saml', '~> 1.10' -gem 'gitlab-omniauth-openid-connect', '~>0.9.1', require: 'omniauth_openid_connect' +gem 'gitlab-omniauth-openid-connect', '~>0.10.0', require: 'omniauth_openid_connect' gem 'omniauth', '~> 1.9' gem 'omniauth-rails_csrf_protection', '~> 0.1' @@ -78,7 +78,7 @@ gem 'rqrcode', '~> 2.1' gem 'ruby-progressbar', '~> 1.11' gem 'sanitize', '~> 6.0' gem 'scenic', '~> 1.6' -gem 'sidekiq', '~> 6.4' +gem 'sidekiq', '~> 6.5' gem 'sidekiq-scheduler', '~> 4.0' gem 'sidekiq-unique-jobs', '~> 7.1' gem 'sidekiq-bulk', '~> 0.2.0' diff --git a/Gemfile.lock b/Gemfile.lock index 6599bb9ce6d..e334d5733d9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -270,9 +270,9 @@ GEM fuubar (2.5.1) rspec-core (~> 3.0) ruby-progressbar (~> 1.4) - gitlab-omniauth-openid-connect (0.9.1) + gitlab-omniauth-openid-connect (0.10.0) addressable (~> 2.7) - omniauth (~> 1.9) + omniauth (>= 1.9, < 3) openid_connect (~> 1.2) globalid (1.0.0) activesupport (>= 5.0) @@ -415,7 +415,7 @@ GEM concurrent-ruby (~> 1.0, >= 1.0.2) sidekiq (>= 3.5) statsd-ruby (~> 1.4, >= 1.4.0) - oj (3.13.14) + oj (3.13.16) omniauth (1.9.1) hashie (>= 3.4.6) rack (>= 1.6.2, < 3) @@ -477,7 +477,7 @@ GEM activesupport (>= 3.0.0) raabro (1.4.0) racc (1.6.0) - rack (2.2.3.1) + rack (2.2.4) rack-attack (6.6.1) rack (>= 1.0, < 3) rack-cors (1.1.1) @@ -604,7 +604,7 @@ GEM railties (>= 4.0.0) securecompare (1.0.0) semantic_range (3.0.0) - sidekiq (6.4.2) + sidekiq (6.5.1) connection_pool (>= 2.2.2) rack (~> 2.0) redis (>= 4.2.0) @@ -686,7 +686,7 @@ GEM validate_email (0.1.6) activemodel (>= 3.0) mail (>= 2.2.5) - validate_url (1.0.13) + validate_url (1.0.15) activemodel (>= 3.0.0) public_suffix warden (1.2.9) @@ -768,7 +768,7 @@ DEPENDENCIES fog-core (<= 2.1.0) fog-openstack (~> 0.3) fuubar (~> 2.5) - gitlab-omniauth-openid-connect (~> 0.9.1) + gitlab-omniauth-openid-connect (~> 0.10.0) hamlit-rails (~> 0.2) hcaptcha (~> 7.1) hiredis (~> 0.6) @@ -811,7 +811,7 @@ DEPENDENCIES pry-rails (~> 0.3) puma (~> 5.6) pundit (~> 2.2) - rack (~> 2.2.3) + rack (~> 2.2.4) rack-attack (~> 6.6) rack-cors (~> 1.1) rails (~> 6.1.6) @@ -832,7 +832,7 @@ DEPENDENCIES ruby-progressbar (~> 1.11) sanitize (~> 6.0) scenic (~> 1.6) - sidekiq (~> 6.4) + sidekiq (~> 6.5) sidekiq-bulk (~> 0.2.0) sidekiq-scheduler (~> 4.0) sidekiq-unique-jobs (~> 7.1) diff --git a/app/controllers/admin/account_actions_controller.rb b/app/controllers/admin/account_actions_controller.rb index ea56fa0ac72..3f2e28b6ae5 100644 --- a/app/controllers/admin/account_actions_controller.rb +++ b/app/controllers/admin/account_actions_controller.rb @@ -5,11 +5,15 @@ module Admin before_action :set_account def new + authorize @account, :show? + @account_action = Admin::AccountAction.new(type: params[:type], report_id: params[:report_id], send_email_notification: true, include_statuses: true) @warning_presets = AccountWarningPreset.all end def create + authorize @account, :show? + account_action = Admin::AccountAction.new(resource_params) account_action.target_account = @account account_action.current_account = current_account diff --git a/app/controllers/admin/accounts_controller.rb b/app/controllers/admin/accounts_controller.rb index e0ae71b9f2f..46c9aba9173 100644 --- a/app/controllers/admin/accounts_controller.rb +++ b/app/controllers/admin/accounts_controller.rb @@ -14,6 +14,8 @@ module Admin end def batch + authorize :account, :index? + @form = Form::AccountBatch.new(form_account_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/action_logs_controller.rb b/app/controllers/admin/action_logs_controller.rb index 2d77620df7b..42edec15a39 100644 --- a/app/controllers/admin/action_logs_controller.rb +++ b/app/controllers/admin/action_logs_controller.rb @@ -4,7 +4,10 @@ module Admin class ActionLogsController < BaseController before_action :set_action_logs - def index; end + def index + authorize :audit_log, :index? + @auditable_accounts = Account.where(id: Admin::ActionLog.reorder(nil).select('distinct account_id')).select(:id, :username) + end private diff --git a/app/controllers/admin/base_controller.rb b/app/controllers/admin/base_controller.rb index cc6cd51f0b7..c645ce12bbd 100644 --- a/app/controllers/admin/base_controller.rb +++ b/app/controllers/admin/base_controller.rb @@ -7,9 +7,9 @@ module Admin layout 'admin' - before_action :require_staff! before_action :set_pack before_action :set_body_classes + after_action :verify_authorized private diff --git a/app/controllers/admin/custom_emojis_controller.rb b/app/controllers/admin/custom_emojis_controller.rb index 47138bf6c1c..1fae60f5b0f 100644 --- a/app/controllers/admin/custom_emojis_controller.rb +++ b/app/controllers/admin/custom_emojis_controller.rb @@ -29,6 +29,8 @@ module Admin end def batch + authorize :custom_emoji, :index? + @form = Form::CustomEmojiBatch.new(form_custom_emoji_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/dashboard_controller.rb b/app/controllers/admin/dashboard_controller.rb index da9c6dd1622..924b623ad87 100644 --- a/app/controllers/admin/dashboard_controller.rb +++ b/app/controllers/admin/dashboard_controller.rb @@ -5,7 +5,9 @@ module Admin include Redisable def index - @system_checks = Admin::SystemCheck.perform + authorize :dashboard, :index? + + @system_checks = Admin::SystemCheck.perform(current_user) @time_period = (29.days.ago.to_date...Time.now.utc.to_date) @pending_users_count = User.pending.count @pending_reports_count = Report.unresolved.count diff --git a/app/controllers/admin/domain_blocks_controller.rb b/app/controllers/admin/domain_blocks_controller.rb index 48e9781d606..32f1f9a5d3a 100644 --- a/app/controllers/admin/domain_blocks_controller.rb +++ b/app/controllers/admin/domain_blocks_controller.rb @@ -5,6 +5,7 @@ module Admin before_action :set_domain_block, only: [:show, :destroy, :edit, :update] def batch + authorize :domain_block, :create? @form = Form::DomainBlockBatch.new(form_domain_block_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/email_domain_blocks_controller.rb b/app/controllers/admin/email_domain_blocks_controller.rb index a4bbbba5bad..593457b94e4 100644 --- a/app/controllers/admin/email_domain_blocks_controller.rb +++ b/app/controllers/admin/email_domain_blocks_controller.rb @@ -12,6 +12,8 @@ module Admin end def batch + authorize :email_domain_block, :index? + @form = Form::EmailDomainBlockBatch.new(form_email_domain_block_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/follow_recommendations_controller.rb b/app/controllers/admin/follow_recommendations_controller.rb index e3eac62b363..841e3cc7fbf 100644 --- a/app/controllers/admin/follow_recommendations_controller.rb +++ b/app/controllers/admin/follow_recommendations_controller.rb @@ -12,6 +12,8 @@ module Admin end def update + authorize :follow_recommendation, :show? + @form = Form::AccountBatch.new(form_account_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/ip_blocks_controller.rb b/app/controllers/admin/ip_blocks_controller.rb index 92b8b0d2b8a..a87520f4ed2 100644 --- a/app/controllers/admin/ip_blocks_controller.rb +++ b/app/controllers/admin/ip_blocks_controller.rb @@ -29,6 +29,8 @@ module Admin end def batch + authorize :ip_block, :index? + @form = Form::IpBlockBatch.new(form_ip_block_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/relationships_controller.rb b/app/controllers/admin/relationships_controller.rb index 085ded21c03..67645f05465 100644 --- a/app/controllers/admin/relationships_controller.rb +++ b/app/controllers/admin/relationships_controller.rb @@ -7,7 +7,7 @@ module Admin PER_PAGE = 40 def index - authorize :account, :index? + authorize @account, :show? @accounts = RelationshipFilter.new(@account, filter_params).results.includes(:account_stat, user: [:ips, :invite_request]).page(params[:page]).per(PER_PAGE) @form = Form::AccountBatch.new diff --git a/app/controllers/admin/roles_controller.rb b/app/controllers/admin/roles_controller.rb index 13f56e9beb5..3e502ccc4d3 100644 --- a/app/controllers/admin/roles_controller.rb +++ b/app/controllers/admin/roles_controller.rb @@ -2,20 +2,63 @@ module Admin class RolesController < BaseController - before_action :set_user + before_action :set_role, except: [:index, :new, :create] - def promote - authorize @user, :promote? - @user.promote! - log_action :promote, @user - redirect_to admin_account_path(@user.account_id) + def index + authorize :user_role, :index? + + @roles = UserRole.order(position: :desc).page(params[:page]) end - def demote - authorize @user, :demote? - @user.demote! - log_action :demote, @user - redirect_to admin_account_path(@user.account_id) + def new + authorize :user_role, :create? + + @role = UserRole.new + end + + def create + authorize :user_role, :create? + + @role = UserRole.new(resource_params) + @role.current_account = current_account + + if @role.save + redirect_to admin_roles_path + else + render :new + end + end + + def edit + authorize @role, :update? + end + + def update + authorize @role, :update? + + @role.current_account = current_account + + if @role.update(resource_params) + redirect_to admin_roles_path + else + render :edit + end + end + + def destroy + authorize @role, :destroy? + @role.destroy! + redirect_to admin_roles_path + end + + private + + def set_role + @role = UserRole.find(params[:id]) + end + + def resource_params + params.require(:user_role).permit(:name, :color, :highlighted, :position, permissions_as_keys: []) end end end diff --git a/app/controllers/admin/statuses_controller.rb b/app/controllers/admin/statuses_controller.rb index 817c0caa900..084921cebb0 100644 --- a/app/controllers/admin/statuses_controller.rb +++ b/app/controllers/admin/statuses_controller.rb @@ -14,6 +14,8 @@ module Admin end def batch + authorize :status, :index? + @status_batch_action = Admin::StatusBatchAction.new(admin_status_batch_action_params.merge(current_account: current_account, report_id: params[:report_id], type: action_from_button)) @status_batch_action.save! rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/subscriptions_controller.rb b/app/controllers/admin/subscriptions_controller.rb deleted file mode 100644 index 40500ef43f5..00000000000 --- a/app/controllers/admin/subscriptions_controller.rb +++ /dev/null @@ -1,20 +0,0 @@ -# frozen_string_literal: true - -module Admin - class SubscriptionsController < BaseController - def index - authorize :subscription, :index? - @subscriptions = ordered_subscriptions.page(requested_page) - end - - private - - def ordered_subscriptions - Subscription.order(id: :desc).includes(:account) - end - - def requested_page - params[:page].to_i - end - end -end diff --git a/app/controllers/admin/tags_controller.rb b/app/controllers/admin/tags_controller.rb index 749e2f144d3..4f727c398a0 100644 --- a/app/controllers/admin/tags_controller.rb +++ b/app/controllers/admin/tags_controller.rb @@ -16,6 +16,8 @@ module Admin if @tag.update(tag_params.merge(reviewed_at: Time.now.utc)) redirect_to admin_tag_path(@tag.id), notice: I18n.t('admin.tags.updated_msg') else + @time_period = (6.days.ago.to_date...Time.now.utc.to_date) + render :show end end @@ -27,7 +29,7 @@ module Admin end def tag_params - params.require(:tag).permit(:name, :trendable, :usable, :listable) + params.require(:tag).permit(:name, :display_name, :trendable, :usable, :listable) end end end diff --git a/app/controllers/admin/trends/links/preview_card_providers_controller.rb b/app/controllers/admin/trends/links/preview_card_providers_controller.rb index 40a466cd630..97dee8eca44 100644 --- a/app/controllers/admin/trends/links/preview_card_providers_controller.rb +++ b/app/controllers/admin/trends/links/preview_card_providers_controller.rb @@ -2,13 +2,15 @@ class Admin::Trends::Links::PreviewCardProvidersController < Admin::BaseController def index - authorize :preview_card_provider, :index? + authorize :preview_card_provider, :review? @preview_card_providers = filtered_preview_card_providers.page(params[:page]) @form = Trends::PreviewCardProviderBatch.new end def batch + authorize :preview_card_provider, :review? + @form = Trends::PreviewCardProviderBatch.new(trends_preview_card_provider_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/trends/links_controller.rb b/app/controllers/admin/trends/links_controller.rb index 434eec5feea..a497eae4119 100644 --- a/app/controllers/admin/trends/links_controller.rb +++ b/app/controllers/admin/trends/links_controller.rb @@ -2,13 +2,15 @@ class Admin::Trends::LinksController < Admin::BaseController def index - authorize :preview_card, :index? + authorize :preview_card, :review? @preview_cards = filtered_preview_cards.page(params[:page]) @form = Trends::PreviewCardBatch.new end def batch + authorize :preview_card, :review? + @form = Trends::PreviewCardBatch.new(trends_preview_card_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/trends/statuses_controller.rb b/app/controllers/admin/trends/statuses_controller.rb index 7662427387d..c538962f991 100644 --- a/app/controllers/admin/trends/statuses_controller.rb +++ b/app/controllers/admin/trends/statuses_controller.rb @@ -2,13 +2,15 @@ class Admin::Trends::StatusesController < Admin::BaseController def index - authorize :status, :index? + authorize :status, :review? @statuses = filtered_statuses.page(params[:page]) @form = Trends::StatusBatch.new end def batch + authorize :status, :review? + @form = Trends::StatusBatch.new(trends_status_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/trends/tags_controller.rb b/app/controllers/admin/trends/tags_controller.rb index f4d1ec0d1f6..98dd6c8ec22 100644 --- a/app/controllers/admin/trends/tags_controller.rb +++ b/app/controllers/admin/trends/tags_controller.rb @@ -2,13 +2,15 @@ class Admin::Trends::TagsController < Admin::BaseController def index - authorize :tag, :index? + authorize :tag, :review? @tags = filtered_tags.page(params[:page]) @form = Trends::TagBatch.new end def batch + authorize :tag, :review? + @form = Trends::TagBatch.new(trends_tag_batch_params.merge(current_account: current_account, action: action_from_button)) @form.save rescue ActionController::ParameterMissing diff --git a/app/controllers/admin/users/roles_controller.rb b/app/controllers/admin/users/roles_controller.rb new file mode 100644 index 00000000000..0db50cee929 --- /dev/null +++ b/app/controllers/admin/users/roles_controller.rb @@ -0,0 +1,33 @@ +# frozen_string_literal: true + +module Admin + class Users::RolesController < BaseController + before_action :set_user + + def show + authorize @user, :change_role? + end + + def update + authorize @user, :change_role? + + @user.current_account = current_account + + if @user.update(resource_params) + redirect_to admin_account_path(@user.account_id), notice: I18n.t('admin.accounts.change_role.changed_msg') + else + render :show + end + end + + private + + def set_user + @user = User.find(params[:user_id]) + end + + def resource_params + params.require(:user).permit(:role_id) + end + end +end diff --git a/app/controllers/admin/two_factor_authentications_controller.rb b/app/controllers/admin/users/two_factor_authentications_controller.rb similarity index 86% rename from app/controllers/admin/two_factor_authentications_controller.rb rename to app/controllers/admin/users/two_factor_authentications_controller.rb index f7fb7eb8fe3..5e3fb2b3cfb 100644 --- a/app/controllers/admin/two_factor_authentications_controller.rb +++ b/app/controllers/admin/users/two_factor_authentications_controller.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Admin - class TwoFactorAuthenticationsController < BaseController + class Users::TwoFactorAuthenticationsController < BaseController before_action :set_target_user def destroy diff --git a/app/controllers/api/v1/admin/account_actions_controller.rb b/app/controllers/api/v1/admin/account_actions_controller.rb index 6c9e04402c9..7249797a40b 100644 --- a/app/controllers/api/v1/admin/account_actions_controller.rb +++ b/app/controllers/api/v1/admin/account_actions_controller.rb @@ -1,11 +1,16 @@ # frozen_string_literal: true class Api::V1::Admin::AccountActionsController < Api::BaseController + include Authorization + before_action -> { authorize_if_got_token! :'admin:write', :'admin:write:accounts' } - before_action :require_staff! before_action :set_account + after_action :verify_authorized + def create + authorize @account, :show? + account_action = Admin::AccountAction.new(resource_params) account_action.target_account = @account account_action.current_account = current_account diff --git a/app/controllers/api/v1/admin/accounts_controller.rb b/app/controllers/api/v1/admin/accounts_controller.rb index 65ed69f7ba4..0dee02e94f2 100644 --- a/app/controllers/api/v1/admin/accounts_controller.rb +++ b/app/controllers/api/v1/admin/accounts_controller.rb @@ -8,11 +8,11 @@ class Api::V1::Admin::AccountsController < Api::BaseController before_action -> { authorize_if_got_token! :'admin:read', :'admin:read:accounts' }, only: [:index, :show] before_action -> { authorize_if_got_token! :'admin:write', :'admin:write:accounts' }, except: [:index, :show] - before_action :require_staff! before_action :set_accounts, only: :index before_action :set_account, except: :index before_action :require_local_account!, only: [:enable, :approve, :reject] + after_action :verify_authorized after_action :insert_pagination_headers, only: :index FILTER_PARAMS = %i( @@ -119,7 +119,9 @@ class Api::V1::Admin::AccountsController < Api::BaseController translated_params[:status] = status.to_s if params[status].present? end - translated_params[:permissions] = 'staff' if params[:staff].present? + if params[:staff].present? + translated_params[:role_ids] = UserRole.that_can(:manage_reports).map(&:id) + end translated_params end diff --git a/app/controllers/api/v1/admin/dimensions_controller.rb b/app/controllers/api/v1/admin/dimensions_controller.rb index 49a5be1c365..4a72ad08be7 100644 --- a/app/controllers/api/v1/admin/dimensions_controller.rb +++ b/app/controllers/api/v1/admin/dimensions_controller.rb @@ -1,11 +1,15 @@ # frozen_string_literal: true class Api::V1::Admin::DimensionsController < Api::BaseController + include Authorization + before_action -> { authorize_if_got_token! :'admin:read' } - before_action :require_staff! before_action :set_dimensions + after_action :verify_authorized + def create + authorize :dashboard, :index? render json: @dimensions, each_serializer: REST::Admin::DimensionSerializer end diff --git a/app/controllers/api/v1/admin/domain_allows_controller.rb b/app/controllers/api/v1/admin/domain_allows_controller.rb index 838978ddb3e..59aa807d6f4 100644 --- a/app/controllers/api/v1/admin/domain_allows_controller.rb +++ b/app/controllers/api/v1/admin/domain_allows_controller.rb @@ -8,10 +8,10 @@ class Api::V1::Admin::DomainAllowsController < Api::BaseController before_action -> { authorize_if_got_token! :'admin:read', :'admin:read:domain_allows' }, only: [:index, :show] before_action -> { authorize_if_got_token! :'admin:write', :'admin:write:domain_allows' }, except: [:index, :show] - before_action :require_staff! before_action :set_domain_allows, only: :index before_action :set_domain_allow, only: [:show, :destroy] + after_action :verify_authorized after_action :insert_pagination_headers, only: :index PAGINATION_PARAMS = %i(limit).freeze diff --git a/app/controllers/api/v1/admin/domain_blocks_controller.rb b/app/controllers/api/v1/admin/domain_blocks_controller.rb index 229870eee96..de8fd9d089e 100644 --- a/app/controllers/api/v1/admin/domain_blocks_controller.rb +++ b/app/controllers/api/v1/admin/domain_blocks_controller.rb @@ -8,10 +8,10 @@ class Api::V1::Admin::DomainBlocksController < Api::BaseController before_action -> { authorize_if_got_token! :'admin:read', :'admin:read:domain_blocks' }, only: [:index, :show] before_action -> { authorize_if_got_token! :'admin:write', :'admin:write:domain_blocks' }, except: [:index, :show] - before_action :require_staff! before_action :set_domain_blocks, only: :index before_action :set_domain_block, only: [:show, :update, :destroy] + after_action :verify_authorized after_action :insert_pagination_headers, only: :index PAGINATION_PARAMS = %i(limit).freeze diff --git a/app/controllers/api/v1/admin/measures_controller.rb b/app/controllers/api/v1/admin/measures_controller.rb index da95d34220d..d78d7e10b33 100644 --- a/app/controllers/api/v1/admin/measures_controller.rb +++ b/app/controllers/api/v1/admin/measures_controller.rb @@ -1,11 +1,15 @@ # frozen_string_literal: true class Api::V1::Admin::MeasuresController < Api::BaseController + include Authorization + before_action -> { authorize_if_got_token! :'admin:read' } - before_action :require_staff! before_action :set_measures + after_action :verify_authorized + def create + authorize :dashboard, :index? render json: @measures, each_serializer: REST::Admin::MeasureSerializer end diff --git a/app/controllers/api/v1/admin/reports_controller.rb b/app/controllers/api/v1/admin/reports_controller.rb index 865ba3d23c8..9dfb181a288 100644 --- a/app/controllers/api/v1/admin/reports_controller.rb +++ b/app/controllers/api/v1/admin/reports_controller.rb @@ -8,10 +8,10 @@ class Api::V1::Admin::ReportsController < Api::BaseController before_action -> { authorize_if_got_token! :'admin:read', :'admin:read:reports' }, only: [:index, :show] before_action -> { authorize_if_got_token! :'admin:write', :'admin:write:reports' }, except: [:index, :show] - before_action :require_staff! before_action :set_reports, only: :index before_action :set_report, except: :index + after_action :verify_authorized after_action :insert_pagination_headers, only: :index FILTER_PARAMS = %i( diff --git a/app/controllers/api/v1/admin/retention_controller.rb b/app/controllers/api/v1/admin/retention_controller.rb index 98d1a3d813f..59d6b838833 100644 --- a/app/controllers/api/v1/admin/retention_controller.rb +++ b/app/controllers/api/v1/admin/retention_controller.rb @@ -1,11 +1,15 @@ # frozen_string_literal: true class Api::V1::Admin::RetentionController < Api::BaseController + include Authorization + before_action -> { authorize_if_got_token! :'admin:read' } - before_action :require_staff! before_action :set_cohorts + after_action :verify_authorized + def create + authorize :dashboard, :index? render json: @cohorts, each_serializer: REST::Admin::CohortSerializer end diff --git a/app/controllers/api/v1/admin/trends/links_controller.rb b/app/controllers/api/v1/admin/trends/links_controller.rb index 0a191fe4b26..cc638898065 100644 --- a/app/controllers/api/v1/admin/trends/links_controller.rb +++ b/app/controllers/api/v1/admin/trends/links_controller.rb @@ -1,17 +1,19 @@ # frozen_string_literal: true -class Api::V1::Admin::Trends::LinksController < Api::BaseController +class Api::V1::Admin::Trends::LinksController < Api::V1::Trends::LinksController before_action -> { authorize_if_got_token! :'admin:read' } - before_action :require_staff! - before_action :set_links - - def index - render json: @links, each_serializer: REST::Trends::LinkSerializer - end private - def set_links - @links = Trends.links.query.limit(limit_param(10)) + def enabled? + super || current_user&.can?(:manage_taxonomies) + end + + def links_from_trends + if current_user&.can?(:manage_taxonomies) + Trends.links.query + else + super + end end end diff --git a/app/controllers/api/v1/admin/trends/statuses_controller.rb b/app/controllers/api/v1/admin/trends/statuses_controller.rb index cb145f165c3..c39f77363c6 100644 --- a/app/controllers/api/v1/admin/trends/statuses_controller.rb +++ b/app/controllers/api/v1/admin/trends/statuses_controller.rb @@ -1,17 +1,19 @@ # frozen_string_literal: true -class Api::V1::Admin::Trends::StatusesController < Api::BaseController +class Api::V1::Admin::Trends::StatusesController < Api::V1::Trends::StatusesController before_action -> { authorize_if_got_token! :'admin:read' } - before_action :require_staff! - before_action :set_statuses - - def index - render json: @statuses, each_serializer: REST::StatusSerializer - end private - def set_statuses - @statuses = cache_collection(Trends.statuses.query.limit(limit_param(DEFAULT_STATUSES_LIMIT)), Status) + def enabled? + super || current_user&.can?(:manage_taxonomies) + end + + def statuses_from_trends + if current_user&.can?(:manage_taxonomies) + Trends.statuses.query + else + super + end end end diff --git a/app/controllers/api/v1/admin/trends/tags_controller.rb b/app/controllers/api/v1/admin/trends/tags_controller.rb index 9c28b0412b4..f3c0c4b6b4b 100644 --- a/app/controllers/api/v1/admin/trends/tags_controller.rb +++ b/app/controllers/api/v1/admin/trends/tags_controller.rb @@ -1,17 +1,19 @@ # frozen_string_literal: true -class Api::V1::Admin::Trends::TagsController < Api::BaseController +class Api::V1::Admin::Trends::TagsController < Api::V1::Trends::TagsController before_action -> { authorize_if_got_token! :'admin:read' } - before_action :require_staff! - before_action :set_tags - - def index - render json: @tags, each_serializer: REST::Admin::TagSerializer - end private - def set_tags - @tags = Trends.tags.query.limit(limit_param(10)) + def enabled? + super || current_user&.can?(:manage_taxonomies) + end + + def tags_from_trends + if current_user&.can?(:manage_taxonomies) + Trends.tags.query + else + super + end end end diff --git a/app/controllers/api/v1/featured_tags/suggestions_controller.rb b/app/controllers/api/v1/featured_tags/suggestions_controller.rb index 75545d3c7f7..76633210a1d 100644 --- a/app/controllers/api/v1/featured_tags/suggestions_controller.rb +++ b/app/controllers/api/v1/featured_tags/suggestions_controller.rb @@ -6,7 +6,7 @@ class Api::V1::FeaturedTags::SuggestionsController < Api::BaseController before_action :set_recently_used_tags, only: :index def index - render json: @recently_used_tags, each_serializer: REST::TagSerializer + render json: @recently_used_tags, each_serializer: REST::TagSerializer, relationships: TagRelationshipsPresenter.new(@recently_used_tags, current_user&.account_id) end private diff --git a/app/controllers/api/v1/featured_tags_controller.rb b/app/controllers/api/v1/featured_tags_controller.rb index e4e836c9711..c1ead4f5405 100644 --- a/app/controllers/api/v1/featured_tags_controller.rb +++ b/app/controllers/api/v1/featured_tags_controller.rb @@ -13,9 +13,7 @@ class Api::V1::FeaturedTagsController < Api::BaseController end def create - @featured_tag = current_account.featured_tags.new(featured_tag_params) - @featured_tag.reset_data - @featured_tag.save! + @featured_tag = current_account.featured_tags.create!(featured_tag_params) render json: @featured_tag, serializer: REST::FeaturedTagSerializer end diff --git a/app/controllers/api/v1/followed_tags_controller.rb b/app/controllers/api/v1/followed_tags_controller.rb new file mode 100644 index 00000000000..f0dfd044cc0 --- /dev/null +++ b/app/controllers/api/v1/followed_tags_controller.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +class Api::V1::FollowedTagsController < Api::BaseController + TAGS_LIMIT = 100 + + before_action -> { doorkeeper_authorize! :follow, :read, :'read:follows' }, except: :show + before_action :require_user! + before_action :set_results + + after_action :insert_pagination_headers, only: :show + + def index + render json: @results.map(&:tag), each_serializer: REST::TagSerializer, relationships: TagRelationshipsPresenter.new(@results.map(&:tag), current_user&.account_id) + end + + private + + def set_results + @results = TagFollow.where(account: current_account).joins(:tag).eager_load(:tag).to_a_paginated_by_id( + limit_param(TAGS_LIMIT), + params_slice(:max_id, :since_id, :min_id) + ) + end + + def insert_pagination_headers + set_pagination_headers(next_path, prev_path) + end + + def next_path + api_v1_followed_tags_url pagination_params(max_id: pagination_max_id) if records_continue? + end + + def prev_path + api_v1_followed_tags_url pagination_params(since_id: pagination_since_id) unless @results.empty? + end + + def pagination_max_id + @results.last.id + end + + def pagination_since_id + @results.first.id + end + + def records_continue? + @results.size == limit_param(TAG_LIMIT) + end + + def pagination_params(core_params) + params.slice(:limit).permit(:limit).merge(core_params) + end +end diff --git a/app/controllers/api/v1/tags_controller.rb b/app/controllers/api/v1/tags_controller.rb new file mode 100644 index 00000000000..d45015ff5a0 --- /dev/null +++ b/app/controllers/api/v1/tags_controller.rb @@ -0,0 +1,29 @@ +# frozen_string_literal: true + +class Api::V1::TagsController < Api::BaseController + before_action -> { doorkeeper_authorize! :follow, :write, :'write:follows' }, except: :show + before_action :require_user!, except: :show + before_action :set_or_create_tag + + override_rate_limit_headers :follow, family: :follows + + def show + render json: @tag, serializer: REST::TagSerializer + end + + def follow + TagFollow.create!(tag: @tag, account: current_account, rate_limit: true) + render json: @tag, serializer: REST::TagSerializer + end + + def unfollow + TagFollow.find_by(account: current_account, tag: @tag)&.destroy! + render json: @tag, serializer: REST::TagSerializer + end + + private + + def set_or_create_tag + @tag = Tag.find_normalized(params[:id]) || Tag.new(name: Tag.normalize(params[:id]), display_name: params[:id]) + end +end diff --git a/app/controllers/api/v1/trends/links_controller.rb b/app/controllers/api/v1/trends/links_controller.rb index 2385fe4380d..1a9f918f299 100644 --- a/app/controllers/api/v1/trends/links_controller.rb +++ b/app/controllers/api/v1/trends/links_controller.rb @@ -13,10 +13,14 @@ class Api::V1::Trends::LinksController < Api::BaseController private + def enabled? + Setting.trends + end + def set_links @links = begin - if Setting.trends - links_from_trends + if enabled? + links_from_trends.offset(offset_param).limit(limit_param(DEFAULT_LINKS_LIMIT)) else [] end @@ -24,7 +28,7 @@ class Api::V1::Trends::LinksController < Api::BaseController end def links_from_trends - Trends.links.query.allowed.in_locale(content_locale).offset(offset_param).limit(limit_param(DEFAULT_LINKS_LIMIT)) + Trends.links.query.allowed.in_locale(content_locale) end def insert_pagination_headers diff --git a/app/controllers/api/v1/trends/statuses_controller.rb b/app/controllers/api/v1/trends/statuses_controller.rb index 1f2fff582de..c275d5fc816 100644 --- a/app/controllers/api/v1/trends/statuses_controller.rb +++ b/app/controllers/api/v1/trends/statuses_controller.rb @@ -11,10 +11,14 @@ class Api::V1::Trends::StatusesController < Api::BaseController private + def enabled? + Setting.trends + end + def set_statuses @statuses = begin - if Setting.trends - cache_collection(statuses_from_trends, Status) + if enabled? + cache_collection(statuses_from_trends.offset(offset_param).limit(limit_param(DEFAULT_STATUSES_LIMIT)), Status) else [] end @@ -24,7 +28,7 @@ class Api::V1::Trends::StatusesController < Api::BaseController def statuses_from_trends scope = Trends.statuses.query.allowed.in_locale(content_locale) scope = scope.filtered_for(current_account) if user_signed_in? - scope.offset(offset_param).limit(limit_param(DEFAULT_STATUSES_LIMIT)) + scope end def insert_pagination_headers diff --git a/app/controllers/api/v1/trends/tags_controller.rb b/app/controllers/api/v1/trends/tags_controller.rb index 38003f599af..21adfa2a1fc 100644 --- a/app/controllers/api/v1/trends/tags_controller.rb +++ b/app/controllers/api/v1/trends/tags_controller.rb @@ -8,21 +8,29 @@ class Api::V1::Trends::TagsController < Api::BaseController DEFAULT_TAGS_LIMIT = 10 def index - render json: @tags, each_serializer: REST::TagSerializer + render json: @tags, each_serializer: REST::TagSerializer, relationships: TagRelationshipsPresenter.new(@tags, current_user&.account_id) end private + def enabled? + Setting.trends + end + def set_tags @tags = begin - if Setting.trends - Trends.tags.query.allowed.offset(offset_param).limit(limit_param(DEFAULT_TAGS_LIMIT)) + if enabled? + tags_from_trends.offset(offset_param).limit(limit_param(DEFAULT_TAGS_LIMIT)) else [] end end end + def tags_from_trends + Trends.tags.query.allowed + end + def insert_pagination_headers set_pagination_headers(next_path, prev_path) end diff --git a/app/controllers/api/v2/admin/accounts_controller.rb b/app/controllers/api/v2/admin/accounts_controller.rb index a89e6835ee1..bcc1a07339f 100644 --- a/app/controllers/api/v2/admin/accounts_controller.rb +++ b/app/controllers/api/v2/admin/accounts_controller.rb @@ -11,6 +11,7 @@ class Api::V2::Admin::AccountsController < Api::V1::Admin::AccountsController email ip invited_by + role_ids ).freeze PAGINATION_PARAMS = (%i(limit) + FILTER_PARAMS).freeze @@ -18,7 +19,17 @@ class Api::V2::Admin::AccountsController < Api::V1::Admin::AccountsController private def filtered_accounts - AccountFilter.new(filter_params).results + AccountFilter.new(translated_filter_params).results + end + + def translated_filter_params + translated_params = filter_params.slice(*AccountFilter::KEYS) + + if params[:permissions] == 'staff' + translated_params[:role_ids] = UserRole.that_can(:manage_reports).map(&:id) + end + + translated_params end def filter_params diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 0f948ff5f80..ee3c5204d83 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -58,14 +58,6 @@ class ApplicationController < ActionController::Base store_location_for(:user, request.url) unless [:json, :rss].include?(request.format&.to_sym) end - def require_admin! - forbidden unless current_user&.admin? - end - - def require_staff! - forbidden unless current_user&.staff? - end - def require_functional! redirect_to edit_user_registration_path unless current_user.functional? end diff --git a/app/controllers/custom_css_controller.rb b/app/controllers/custom_css_controller.rb index e1dc5eaf6d3..9270c467dc4 100644 --- a/app/controllers/custom_css_controller.rb +++ b/app/controllers/custom_css_controller.rb @@ -13,6 +13,6 @@ class CustomCssController < ApplicationController def show expires_in 3.minutes, public: true request.session_options[:skip] = true - render plain: Setting.custom_css || '', content_type: 'text/css' + render content_type: 'text/css' end end diff --git a/app/controllers/settings/featured_tags_controller.rb b/app/controllers/settings/featured_tags_controller.rb index e805527d07c..aadff7c8351 100644 --- a/app/controllers/settings/featured_tags_controller.rb +++ b/app/controllers/settings/featured_tags_controller.rb @@ -11,7 +11,6 @@ class Settings::FeaturedTagsController < Settings::BaseController def create @featured_tag = current_account.featured_tags.new(featured_tag_params) - @featured_tag.reset_data if @featured_tag.save redirect_to settings_featured_tags_path diff --git a/app/helpers/accounts_helper.rb b/app/helpers/accounts_helper.rb index d2e1982659c..2a17b69e357 100644 --- a/app/helpers/accounts_helper.rb +++ b/app/helpers/accounts_helper.rb @@ -61,21 +61,13 @@ module AccountsHelper end end - def account_badge(account, all: false) + def account_badge(account) if account.bot? content_tag(:div, content_tag(:div, t('accounts.roles.bot'), class: 'account-role bot'), class: 'roles') elsif account.group? content_tag(:div, content_tag(:div, t('accounts.roles.group'), class: 'account-role group'), class: 'roles') - elsif (Setting.show_staff_badge && account.user_staff?) || all - content_tag(:div, class: 'roles') do - if all && !account.user_staff? - content_tag(:div, t('admin.accounts.roles.user'), class: 'account-role') - elsif account.user_admin? - content_tag(:div, t('accounts.roles.admin'), class: 'account-role admin') - elsif account.user_moderator? - content_tag(:div, t('accounts.roles.moderator'), class: 'account-role moderator') - end - end + elsif account.user_role&.highlighted? + content_tag(:div, content_tag(:div, account.user_role.name, class: "account-role user-role-#{account.user_role.id}"), class: 'roles') end end diff --git a/app/javascript/flavours/glitch/components/status_action_bar.js b/app/javascript/flavours/glitch/components/status_action_bar.js index 0a5c5b69d4c..667afac5a88 100644 --- a/app/javascript/flavours/glitch/components/status_action_bar.js +++ b/app/javascript/flavours/glitch/components/status_action_bar.js @@ -5,10 +5,11 @@ import IconButton from './icon_button'; import DropdownMenuContainer from 'flavours/glitch/containers/dropdown_menu_container'; import { defineMessages, injectIntl } from 'react-intl'; import ImmutablePureComponent from 'react-immutable-pure-component'; -import { me, isStaff } from 'flavours/glitch/util/initial_state'; +import { me } from 'flavours/glitch/util/initial_state'; import RelativeTimestamp from './relative_timestamp'; import { accountAdminLink, statusAdminLink } from 'flavours/glitch/util/backend_links'; import classNames from 'classnames'; +import { PERMISSION_MANAGE_USERS } from 'flavours/glitch/permissions'; const messages = defineMessages({ delete: { id: 'status.delete', defaultMessage: 'Delete' }, @@ -47,6 +48,7 @@ class StatusActionBar extends ImmutablePureComponent { static contextTypes = { router: PropTypes.object, + identity: PropTypes.object, }; static propTypes = { @@ -240,7 +242,7 @@ class StatusActionBar extends ImmutablePureComponent { menu.push({ text: intl.formatMessage(messages.block, { name: status.getIn(['account', 'username']) }), action: this.handleBlockClick }); menu.push({ text: intl.formatMessage(messages.report, { name: status.getIn(['account', 'username']) }), action: this.handleReport }); - if (isStaff && (accountAdminLink || statusAdminLink)) { + if ((this.context.identity.permissions & PERMISSION_MANAGE_USERS) === PERMISSION_MANAGE_USERS && (accountAdminLink || statusAdminLink)) { menu.push(null); if (accountAdminLink !== undefined) { menu.push({ diff --git a/app/javascript/flavours/glitch/containers/mastodon.js b/app/javascript/flavours/glitch/containers/mastodon.js index 989e37024a9..d07b2b3d0eb 100644 --- a/app/javascript/flavours/glitch/containers/mastodon.js +++ b/app/javascript/flavours/glitch/containers/mastodon.js @@ -31,6 +31,7 @@ const createIdentityContext = state => ({ signedIn: !!state.meta.me, accountId: state.meta.me, accessToken: state.meta.access_token, + permissions: state.role.permissions, }); export default class Mastodon extends React.PureComponent { diff --git a/app/javascript/flavours/glitch/features/account/components/header.js b/app/javascript/flavours/glitch/features/account/components/header.js index 45aba53f74a..53170b7a6e0 100644 --- a/app/javascript/flavours/glitch/features/account/components/header.js +++ b/app/javascript/flavours/glitch/features/account/components/header.js @@ -3,7 +3,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes'; import PropTypes from 'prop-types'; import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; import ImmutablePureComponent from 'react-immutable-pure-component'; -import { autoPlayGif, me, isStaff } from 'flavours/glitch/util/initial_state'; +import { autoPlayGif, me } from 'flavours/glitch/util/initial_state'; import { preferencesLink, profileLink, accountAdminLink } from 'flavours/glitch/util/backend_links'; import classNames from 'classnames'; import Icon from 'flavours/glitch/components/icon'; @@ -13,6 +13,7 @@ import Button from 'flavours/glitch/components/button'; import { NavLink } from 'react-router-dom'; import DropdownMenuContainer from 'flavours/glitch/containers/dropdown_menu_container'; import AccountNoteContainer from '../containers/account_note_container'; +import { PERMISSION_MANAGE_USERS } from 'flavours/glitch/permissions'; const messages = defineMessages({ unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' }, @@ -64,6 +65,10 @@ const dateFormatOptions = { export default @injectIntl class Header extends ImmutablePureComponent { + static contextTypes = { + identity: PropTypes.object, + }; + static propTypes = { account: ImmutablePropTypes.map, identity_props: ImmutablePropTypes.list, @@ -244,7 +249,7 @@ class Header extends ImmutablePureComponent { } } - if (account.get('id') !== me && isStaff && accountAdminLink) { + if (account.get('id') !== me && (this.context.identity.permissions & PERMISSION_MANAGE_USERS) === PERMISSION_MANAGE_USERS && accountAdminLink) { menu.push(null); menu.push({ text: intl.formatMessage(messages.admin_account, { name: account.get('username') }), href: accountAdminLink(account.get('id')) }); } diff --git a/app/javascript/flavours/glitch/features/notifications/components/column_settings.js b/app/javascript/flavours/glitch/features/notifications/components/column_settings.js index a8502f5637e..42ab9de35b4 100644 --- a/app/javascript/flavours/glitch/features/notifications/components/column_settings.js +++ b/app/javascript/flavours/glitch/features/notifications/components/column_settings.js @@ -6,10 +6,14 @@ import ClearColumnButton from './clear_column_button'; import GrantPermissionButton from './grant_permission_button'; import SettingToggle from './setting_toggle'; import PillBarButton from './pill_bar_button'; -import { isStaff } from 'flavours/glitch/util/initial_state'; +import { PERMISSION_MANAGE_USERS, PERMISSION_MANAGE_REPORTS } from 'flavours/glitch/permissions'; export default class ColumnSettings extends React.PureComponent { + static contextTypes = { + identity: PropTypes.object, + }; + static propTypes = { settings: ImmutablePropTypes.map.isRequired, pushSettings: ImmutablePropTypes.map.isRequired, @@ -167,7 +171,7 @@ export default class ColumnSettings extends React.PureComponent { - {isStaff && ( + {(this.context.identity.permissions & PERMISSION_MANAGE_USERS === PERMISSION_MANAGE_USERS) && (
<a>
و <em>
.
title: وصف مثيل الخادوم
@@ -1026,7 +1011,6 @@ ar:
title: تعديل عامل التصفية
errors:
invalid_context: لم تقم بتحديد أي مجال أو أنّ المجال غير صالح
- invalid_irreversible: إلّا مجالات الإشعارات و الخيط الرئيسي معنية بالتصفية اللارجعية
index:
delete: إزالة
empty: ليست لديك أية عوامل تصفية.
diff --git a/config/locales/ast.yml b/config/locales/ast.yml
index 1fb1cee900d..f4765360e61 100644
--- a/config/locales/ast.yml
+++ b/config/locales/ast.yml
@@ -70,11 +70,6 @@ ast:
resend_confirmation:
already_confirmed: Esti usuariu yá ta confirmáu
send: Reunviar les instrucciones
- role: Permisos
- roles:
- admin: Alministrador
- moderator: Llendador
- user: Usuariu
statuses: Estaos
title: Cuentes
username: Nome d'usuariu
@@ -134,10 +129,12 @@ ast:
are_you_sure: "¿De xuru?"
status: Estáu
title: Informes
+ roles:
+ everyone: Permisos predeterminaos
+ permissions_count:
+ one: "%{count} permisu"
+ other: "%{count} permisos"
settings:
- registrations:
- min_invite_role:
- disabled: Naide
site_description:
title: Descripción del sirvidor
site_title: Nome del sirvidor
@@ -353,7 +350,7 @@ ast:
followers: Siguidores
most_recent: Lo más recién
relationship: Rellación
- remove_selected_follows: Dexar de siguir a los usuarios esbillaos
+ remove_selected_follows: Dexar de siguir a los usuarios seleicionaos
status: Estáu
remote_follow:
acct: Introduz el nome_usuariu@dominiu dende'l que lo quies facer
diff --git a/config/locales/bg.yml b/config/locales/bg.yml
index 04296b342aa..a7b8ffc2366 100644
--- a/config/locales/bg.yml
+++ b/config/locales/bg.yml
@@ -71,10 +71,8 @@ bg:
posts_tab_heading: Публикации
posts_with_replies: Публикации и отговори
roles:
- admin: Админ
bot: Бот
group: Група
- moderator: Мод
unavailable: Профилът не е наличен
unfollow: Не следвай
admin:
@@ -90,7 +88,6 @@ bg:
avatar: Аватар
by_domain: Домейн
change_email:
- changed_msg: Имейлът на акаунта беше успешно променен!
current_email: Текущ имейл
label: Промяна на имейл
new_email: Нов имейл
diff --git a/config/locales/bn.yml b/config/locales/bn.yml
index ae1ced4506e..bbeab865571 100644
--- a/config/locales/bn.yml
+++ b/config/locales/bn.yml
@@ -74,10 +74,8 @@ bn:
posts_tab_heading: লেখাগুলো
posts_with_replies: লেখা এবং মতামত
roles:
- admin: পরিচালক
bot: রোবট
group: গোষ্ঠী
- moderator: পরিচালক
unavailable: প্রোফাইল অনুপলব্ধ
unfollow: অনুসরণ বাদ
admin:
@@ -95,7 +93,6 @@ bn:
avatar: অবতার
by_domain: ওয়েবসাইট/কার্যক্ষেত্র
change_email:
- changed_msg: নিবন্ধনের ইমেইল সঠিকভাবে পরিবর্তন হয়েছে!
current_email: এখনকার ইমেইল
label: ইমেইল পরিবর্তন
new_email: নতুন ইমেইল
@@ -160,12 +157,6 @@ bn:
reset: পুনরায় সেট করুন
reset_password: পাসওয়ার্ড পুনঃস্থাপন করুন
resubscribe: পুনরায় সদস্যতা নিন
- role: অনুমতিসমূহ
- roles:
- admin: পরিচালক
- moderator: নিয়ামক
- staff: কর্মী
- user: ব্যবহারকারী
search: অনুসন্ধান
search_same_email_domain: একই ইমেল ডোমেন সহ অন্যান্য ব্যবহারকারীরা
search_same_ip: একই IP সহ অন্যান্য ব্যবহারকারীরা
diff --git a/config/locales/br.yml b/config/locales/br.yml
index f7c06057941..61e85d163f1 100644
--- a/config/locales/br.yml
+++ b/config/locales/br.yml
@@ -48,7 +48,6 @@ br:
posts_tab_heading: Toudoù
posts_with_replies: Toudoù ha respontoù
roles:
- admin: Merour
bot: Robot
group: Strollad
unavailable: Profil dihegerz
@@ -83,10 +82,6 @@ br:
remove_header: Dilemel an talbenn
reset: Adderaouekaat
reset_password: Adderaouekaat ar ger-tremen
- roles:
- admin: Merour
- moderator: Habaskaer·ez
- user: Implijer·ez
search: Klask
suspended: Astalet
title: Kontoù
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index 8c8fa1ffb82..dfc1c1e27b2 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -83,10 +83,8 @@ ca:
posts_tab_heading: Publicacions
posts_with_replies: Publicacions i respostes
roles:
- admin: Administrador
bot: Bot
group: Grup
- moderator: Moderador
unavailable: Perfil inaccessible
unfollow: Deixa de seguir
admin:
@@ -111,6 +109,11 @@ ca:
new_email: Adreça electrònica nova
submit: Canvia l'adreça electrònica
title: Canvia l'adreça electrònica de %{username}
+ change_role:
+ changed_msg: Els privilegis del compte s'han canviat correctament!
+ label: Canvia rol
+ no_role: Sense rol
+ title: Canvia el rol per a %{username}
confirm: Confirma
confirmed: Confirmat
confirming: Confirmant
@@ -154,6 +157,7 @@ ca:
active: Actiu
all: Tot
pending: Pendent
+ silenced: Limitat
suspended: Suspès
title: Moderació
moderation_notes: Notes de moderació
@@ -161,6 +165,7 @@ ca:
most_recent_ip: IP més recent
no_account_selected: No s'han canviat els comptes perquè no s'han seleccionat
no_limits_imposed: Sense límits imposats
+ no_role_assigned: Cap rol assignat
not_subscribed: No subscrit
pending: Revisió pendent
perform_full_suspension: Suspèn
@@ -187,12 +192,7 @@ ca:
reset: Reinicialitza
reset_password: Restableix la contrasenya
resubscribe: Torna a subscriure
- role: Permisos
- roles:
- admin: Administrador
- moderator: Moderador
- staff: Personal
- user: Usuari
+ role: Rol
search: Cerca
search_same_email_domain: Altres usuaris amb el mateix domini de correu
search_same_ip: Altres usuaris amb la mateixa IP
@@ -649,6 +649,67 @@ ca:
unresolved: No resolt
updated_at: Actualitzat
view_profile: Veure perfil
+ roles:
+ add_new: Afegir rol
+ assigned_users:
+ one: "%{count} usuari"
+ other: "%{count} usuaris"
+ categories:
+ administration: Administració
+ devops: Operadors de desenvolupament
+ invites: Invitacions
+ moderation: Moderació
+ special: Especial
+ delete: Esborra
+ description_html: Amb rols d'usuari, pots personalitzar quines funcions i àrees de Mastodon els teus usuaris poden accedir.
+ edit: Editar el rol %{name}
+ everyone: Permisos per defecte
+ everyone_full_description_html: Aquest és el rol base que afecta tots els usuaris, fins i tot els que no en tenen cap d'assignat. Tots els altres rols n'hereten els permisos.
+ permissions_count:
+ one: "%{count} permís"
+ other: "%{count} permisos"
+ privileges:
+ administrator: Administrador
+ administrator_description: Els usuaris amb aquest permís passaran per alt tots els permisos
+ delete_user_data: Esborra dades d'usuari
+ delete_user_data_description: Permet als usuaris suprimir les dades d'altres usuaris sense demora
+ invite_users: Convida usuaris
+ invite_users_description: Permet als usuaris convidar persones noves al servidor
+ manage_announcements: Gestiona els anuncis
+ manage_announcements_description: Permet als usuaris gestionar els anuncis al servidor
+ manage_appeals: Gestiona apel·lacions
+ manage_appeals_description: Permet als usuaris revisar les apel·lacions contra les accions de moderació
+ manage_blocks: Gestiona blocs
+ manage_blocks_description: Permet als usuaris bloquejar proveïdors de correu electrònic i adreces IP
+ manage_custom_emojis: Gestiona emojis personalitzats
+ manage_custom_emojis_description: Permet als usuaris gestionar emojis personalitzats al servidor
+ manage_federation: Gestiona federació
+ manage_federation_description: Permet als usuaris bloquejar o permetre la federació amb altres dominis i controlar la capacitat de lliurament
+ manage_invites: Gestiona invitacions
+ manage_invites_description: Permet als usuaris veure i desactivar els enllaços d'invitació
+ manage_reports: Gestiona informes
+ manage_reports_description: Permet als usuaris revisar informes i realitzar accions de moderació contra ells
+ manage_roles: Gestionar rols
+ manage_roles_description: Permet als usuaris gestionar i assignar rols per sota dels seus
+ manage_rules: Gestiona normes
+ manage_rules_description: Permet als usuaris canviar les normes del servidor
+ manage_settings: Gestiona configuració
+ manage_settings_description: Permet als usuaris canviar la configuració del lloc
+ manage_taxonomies: Gestionar taxonomies
+ manage_taxonomies_description: Permet als usuaris revisar el contingut actual i actualitzar la configuració de l'etiqueta
+ manage_user_access: Gestionar l'accés dels usuaris
+ manage_user_access_description: Permet als usuaris desactivar l'autenticació de dos factors d'altres usuaris, canviar la seva adreça de correu electrònic i restablir la seva contrasenya
+ manage_users: Gestionar usuaris
+ manage_users_description: Permet als usuaris veure els detalls d'altres usuaris i realitzar accions de moderació contra ells
+ manage_webhooks: Gestionar Webhooks
+ manage_webhooks_description: Permet als usuaris configurar webhooks per a esdeveniments administratius
+ view_audit_log: Veure el registre d'auditoria
+ view_audit_log_description: Permet als usuaris veure un historial d'accions administratives al servidor
+ view_dashboard: Veure panell
+ view_dashboard_description: Permet als usuaris accedir al tauler i a diverses mètriques
+ view_devops: Operadors de desenvolupament
+ view_devops_description: Permet als usuaris accedir als taulers de control de Sidekiq i pgHero
+ title: Rols
rules:
add_new: Afegir norma
delete: Suprimeix
@@ -701,9 +762,6 @@ ca:
deletion:
desc_html: Permet a qualsevol usuari d'esborrar el seu compte
title: Obre la supressió del compte
- min_invite_role:
- disabled: Ningú
- title: Permet les invitacions de
require_invite_text:
desc_html: Quan el registre requereix aprovació manual, fer que sigui obligatori enlloc d'opcions l escriure el text de la solicitud d'invitació "Perquè vols unirte?"
title: Requerir als nous usuaris omplir el text de la solicitud d'invitació
@@ -716,9 +774,6 @@ ca:
show_known_fediverse_at_about_page:
desc_html: Quan està desactivat, restringeix la línia de temps pública enllaçada des de la pàgina inicial a mostrar només contingut local
title: Inclou el contingut federat a la pàgina no autenticada de la línia de temps pública
- show_staff_badge:
- desc_html: Mostra una insígnia de personal en la pàgina d'usuari
- title: Mostra insígnia de personal
site_description:
desc_html: Paràgraf introductori a la pàgina principal i en etiquetes meta. Pots utilitzar etiquetes HTML, en particular <a>
i <em>
.
title: Descripció del servidor
@@ -1124,15 +1179,24 @@ ca:
public: Línies de temps públiques
thread: Converses
edit:
+ add_keyword: Afegeix paraula clau
+ keywords: Paraules clau
title: Editar filtre
errors:
+ deprecated_api_multiple_keywords: Aquests paràmetres no poden ser canviats des d'aquesta aplicació perquè apliquen a més d'un filtre per paraula clau. Utilitza una aplicació més recent o la interfície web.
invalid_context: Cap o el context proporcionat no és vàlid
- invalid_irreversible: El filtratge irreversible només funciona amb el contextos inici o notificacions
index:
+ contexts: Filtres en %{contexts}
delete: Esborra
empty: No hi tens cap filtre.
+ expires_in: Expira en %{distance}
+ expires_on: Expira el %{date}
+ keywords:
+ one: "%{count} paraula clau"
+ other: "%{count} paraules clau"
title: Filtres
new:
+ save: Desa el nou filtre
title: Afegir un nou filtre
footer:
developers: Desenvolupadors
@@ -1251,6 +1315,8 @@ ca:
copy_account_note_text: 'Aquest usuari s’ha mogut des de %{acct}, aquí estaven les teves notes prèvies sobre ell:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} ha presentat un informe"
sign_up:
subject: "%{name} s'ha registrat"
digest:
@@ -1545,6 +1611,78 @@ ca:
tags:
does_not_match_previous_name: no coincideix amb el nom anterior
terms:
+ body_html: |
+ Aquesta pàgina conté els nostres Termes del servei (adaptats de la Bsd.network ToS) i la nostra Política de privadesa. + +
La nostra intenció és que utilitzis aquest servei per al gaudi personal i la interacció respectuosa i amistosa. A aquest efecte, esperem fomentar un entorn favorable i integrador. + +
Aquest servidor és de propietat privada i obert als usuaris voluntàriament, no un espai públic. S'espera que els usuaris que vulguin unir-se a aquesta comunitat actuïn sense malícia i de bona fe. Fer-ho d'una altra manera pot conduir a l'eliminació de l'usuari del servei, independentment de si viola qualsevol regla que s'esbossi a continuació. + +
La nostra instància està subjecta a un conjunt de normes que regeixen el comportament dels usuaris. Les regles sempre són visibles a la nostra pàgina Quant a. + +
Aquestes normes estan dissenyades per a mantenir un ambient amistós i obert, i per a evitar l'assetjament i la discriminació. Per tant, són un conjunt de directrius, però per necessitat incompletes. Els usuaris que violen l'esperit d'aquestes normes no es tractaran de manera diferent que els usuaris que violen una regla específica. + +
Si us plau, tingues en compte que les nostres normes contenen una secció sobre les millors pràctiques, i els usuaris que repetidament i que malaurat els advertiments ignoren aquestes millors pràctiques poden veure's violant les nostres normes. + +
Els moderadors poden eliminar els comptes que publiquin spam, o si se sospita que un compte és creat només per reservar un nom d'usuari. La violació de les polítiques i les normes també pot portar a l'eliminació de comptes a discreció dels moderadors. + +
El contingut d'aquest servidor no s'ha d'utilitzar per a l'aprenentatge automàtic o altres propòsits de "recerca" sense el consentiment explícit dels usuaris implicats. + +
El contingut d'aquest servidor més enllà d'aquesta pàgina no s'ha d'arxivar o indexar a l'engròs per mitjans automatitzats per qualsevol usuari o servei. Els usuaris actius poden exportar les seves llistes i publicacions a través de l'exportació proporcionada a la seva pàgina de configuració, o l'API. + +
Informació obligatòria del compte: nom d'usuari (sempre públic), adreça de correu electrònic i contrasenya. + +
Informació del compte opcional: nom de visualització, biografia, camps d'informació del perfil, imatge de perfil i imatge de capçalera. El nom de visualització, la biografia, la imatge de perfil i la imatge de capçalera sempre seran públics. + +
Estat i interaccions: Retenim totes les vostres publicacions, inclosos els adjunts, i altres interaccions (com ara els preferits, els segueix i els impulsos). A més del contingut i les persones implicades, també emmagatzemen els codis de temps per a totes les entrades de dades enumerades. Si aquestes interaccions impacten en un altre servidor (per exemple, seguint, impulsant o missatger a un usuari en un servidor diferent), aquest altre servidor rebrà tota la informació requerida. Les publicacions públiques, no llistades i fitxades són públiques. Els teus seguidors només tenen missatges de seguiment, i els missatges directes estan disponibles per a tu i totes les persones esmentades en el missatge. Tingues en compte que, com que no podem controlar altres servidors, això significa que no podem garantir l'estat de privacitat dels teus missatges tan aviat abandonin aquest servidor. + +
Galetes: Utilitzem galetes per mantenir-te registrat i guardar les teves preferències per a futures visites. + +
Altres metadades: No registrem ni emmagatzem la teva adreça IP com a norma general. Es faran excepcions quan busquem activament errors. Una vegada que s'hagi finalitzat la cerca d'errors, les adreces IP recollides s'eliminaran. Retenim el nom de l'aplicació del teu navegador per permetre't revisar les sessions actualment iniciades per motius de seguretat. + +
Tota la informació que recopilem de tu pot ser utilitzada de les maneres següents: + +
Per proporcionar la funcionalitat principal d'aquest servidor. Només pots interaccionar amb el contingut d'altres persones i publicar el teu propi contingut quan hagis iniciat la sessió. Per exemple, pots seguir a altres persones per veure les seves publicacions en la teva pròpia línia de temps personalitzada. + +
Per a ajudar a la moderació de la comunitat, quan s'informi d'una publicació o un compte, examinarem la qüestió com a part de les nostres tasques de moderació. + +
L'adreça de correu electrònic que proporcionis es pot utilitzar per enviar-te informació, notificacions sobre altres persones que interaccionen amb el teu contingut o que t'envien missatges, i per respondre a les investigacions, i/o altres peticions o preguntes. + +
Apliquem una varietat de mesures de seguretat per a mantenir la seguretat de la teva informació personal quan entres, presentes o accedeixes a la teva informació personal. Entre altres coses, la teva sessió de navegador, així com el trànsit entre les teves aplicacions i l'API, estan assegurades amb HTTPS, i la teva contrasenya es resumeix mitjançant un algorisme d'un únic sentit. Pots habilitar l'autenticació de doble factor per a un accés més segur al teu compte. + +
Pots sol·licitar i descarregar un arxiu del teu contingut, incloent-hi les entrades, el contingut gràfic, la imatge del perfil i la imatge de capçalera. + +
En qualsevol moment pots suprimir el teu compte de manera irreversible. + +
Si jutgem que estàs incomplint les nostres normes, pot ser que eliminem de manera irreversible el teu compte en qualsevol moment. + +
La informació no es revela tret que ho permetis explícitament. L'única excepció és el proveïdor d'aquest servidor, que és un tercer de confiança i inevitable. + +
Contactar o permetre el contacte d'un usuari d'una instància diferent implica el consentiment que les dades necessàries es comparteixen amb el servidor en qüestió. + +
L'autorització d'una aplicació de tercers concedeix accés a la informació en funció de l'abast dels permisos que aprovis. L'aplicació pot accedir a la teva informació de perfil públic, la teva llista següent, els teus seguidors, les teves llistes, tots els teus missatges i els teus preferits. Les aplicacions no poden accedir mai a la teva adreça de correu electrònic o contrasenya. + +
This text is free to be adapted and remixed under the terms of the CC-BY (Attribution 4.0 International) license.
title: "%{instance} Condicions del servei i política de privadesa"
themes:
contrast: Mastodon (alt contrast)
diff --git a/config/locales/ckb.yml b/config/locales/ckb.yml
index 35e826c9c4f..3e9f414dfdd 100644
--- a/config/locales/ckb.yml
+++ b/config/locales/ckb.yml
@@ -81,10 +81,8 @@ ckb:
posts_tab_heading: تووتەکان
posts_with_replies: تووتەکان و وڵامەکان
roles:
- admin: بەڕێوەبەر
bot: بۆت
group: گرووپ
- moderator: مۆد
unavailable: پرۆفایل بەردەست نیە
unfollow: بەدوادانەچو
admin:
@@ -103,7 +101,6 @@ ckb:
avatar: وێنۆچکە
by_domain: دۆمەین
change_email:
- changed_msg: ئیمەیڵی ئەژمێر بە سەرکەوتوویی گۆڕا!
current_email: ئیمەیلی ئێستا
label: گۆڕینی ئیمێڵ
new_email: ئیمەیڵی نوێ
@@ -182,12 +179,6 @@ ckb:
reset: ڕێکخستنەوە
reset_password: گەڕانەوەی تێپەڕوشە
resubscribe: دووبارە ئابونەبوون
- role: مۆڵەتەکان
- roles:
- admin: بەڕێوەبەر
- moderator: بەڕێوەبەر
- staff: ستاف
- user: بەکارهێنەر
search: گەڕان
search_same_email_domain: بەکارهێنەرانی دیکە بە ئیمەیلی یەکسان
search_same_ip: بەکارهێنەرانی تر بەهەمان ئای پی
@@ -621,9 +612,6 @@ ckb:
deletion:
desc_html: ڕێ بدە بە هەر کەسێک هەژمارەکەی بسڕیتەوە
title: سڕینەوەی هەژمارە بکەوە
- min_invite_role:
- disabled: هیچکەس
- title: ڕێپێدانی بانگهێشتەکان لەلایەن
require_invite_text:
desc_html: کاتێک تۆمارکردنەکان پێویستیان بە ڕەزامەندی دەستی هەیە، "بۆچی دەتەوێت بەشداری بکەیت؟" نووسینی دەق ئیجبارییە نەک ئیختیاری
registrations_mode:
@@ -635,9 +623,6 @@ ckb:
show_known_fediverse_at_about_page:
desc_html: کاتێک ناچالاک کرا، هێڵی کاتی گشتی کە بەستراوەتەوە بە لاپەڕەی ئێستا سنووردار دەبن، تەنها ناوەڕۆکی ناوخۆیی پیشاندەدرێن
title: نیشاندانی ڕاژەکانی دیکە لە پێشنەمایەشی ئەم ڕاژە
- show_staff_badge:
- desc_html: پیشاندانی هێمایەک هاوکار لە سەر پەڕەی بەکارهێنەر
- title: نیشاندانی هێمای هاوکار
site_description:
desc_html: کورتە باسیک دەربارەی API، دەربارەی ئەوە چ شتێک دەربارەی ئەم ڕاژەی ماستۆدۆن تایبەتە یان هەر شتێکی گرینگی دیکە. دەتوانن HTML بنووسن، بەتایبەت <a>
وە <em>
.
title: دەربارەی ئەم ڕاژە
@@ -884,7 +869,6 @@ ckb:
title: دەستکاری فلتەر
errors:
invalid_context: هیچ دەقێکی نادروست نییە یان بێ بڕوایە
- invalid_irreversible: فلتەرکردنی بێ گەڕانەوە تەنها کار دەکات لەگەڵ چوارچێوەی ماڵ یان ئاگانامەکان
index:
delete: سڕینەوە
empty: هیچ پالێوەرێکت نیە.
diff --git a/config/locales/co.yml b/config/locales/co.yml
index 183439447fc..a71c187fca9 100644
--- a/config/locales/co.yml
+++ b/config/locales/co.yml
@@ -79,10 +79,8 @@ co:
posts_tab_heading: Statuti
posts_with_replies: Statuti è risposte
roles:
- admin: Amministratore
bot: Bot
group: Gruppu
- moderator: Muderatore
unavailable: Prufile micca dispunibule
unfollow: Ùn siguità più
admin:
@@ -101,7 +99,6 @@ co:
avatar: Ritrattu di prufile
by_domain: Duminiu
change_email:
- changed_msg: Email di u contu cambiatu!
current_email: E-mail attuale
label: Mudificà l’e-mail
new_email: Novu e-mail
@@ -178,12 +175,6 @@ co:
reset: Riinizializà
reset_password: Riinizializà a chjave d’accessu
resubscribe: Riabbunassi
- role: Auturizazione
- roles:
- admin: Amministratore
- moderator: Muderatore
- staff: Squadra
- user: Utilizatore
search: Cercà
search_same_email_domain: Altri utilizatori cù listessu duminiu d'e-mail
search_same_ip: Altri utilizatori cù listessa IP
@@ -579,9 +570,6 @@ co:
deletion:
desc_html: Auturizà tuttu u mondu à sguassà u so propiu contu
title: Auturizà à sguassà i conti
- min_invite_role:
- disabled: Nimu
- title: Auturizà l’invitazione da
require_invite_text:
desc_html: Quandu l'arregistramenti necessitanu un'apprubazione manuale, fà chì u testu "Perchè vulete ghjunghje?" sia ubligatoriu invece d'esse facultativu
title: Richiede chì i novi utilizatori empiinu una dumanda d'invitazione
@@ -594,9 +582,6 @@ co:
show_known_fediverse_at_about_page:
desc_html: Quandu ghjè selezziunatu, statuti di tuttu l’istanze cunnisciute saranu affissati indè a vista di e linee. Altrimente soli i statuti lucali saranu mustrati
title: Vedde tuttu u fediverse cunnisciutu nant’a vista di e linee
- show_staff_badge:
- desc_html: Mustrerà un badge Squadra nant’à un prufile d’utilizatore
- title: Mustrà un badge staff
site_description:
desc_html: Paragrafu di prisentazione nant’a pagina d’accolta. Parlate di cio chì rende stu servore speziale, o d'altre cose impurtante. Pudete fà usu di marchi HTML, in particulare <a>
è <em>
.
title: Discrizzione di u servore
@@ -862,7 +847,6 @@ co:
title: Mudificà u filtru
errors:
invalid_context: Micca abbastanza cuntestu
- invalid_irreversible: A filtrazione irreversibile marchja solu per l'accolta è e nutificazione
index:
delete: Toglie
empty: Ùn avete manc'un filtru.
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index 1868b9dd738..3a58fd23bf8 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -91,10 +91,8 @@ cs:
posts_tab_heading: Příspěvky
posts_with_replies: Příspěvky a odpovědi
roles:
- admin: Administrátor
bot: Robot
group: Skupina
- moderator: Moderátor
unavailable: Profil není dostupný
unfollow: Přestat sledovat
admin:
@@ -113,12 +111,16 @@ cs:
avatar: Avatar
by_domain: Doména
change_email:
- changed_msg: E-mail k tomuto účtu byl úspěšně změněn!
current_email: Současný e-mail
label: Změnit e-mail
new_email: Nový e-mail
submit: Změnit e-mail
title: Změnit e-mail uživateli %{username}
+ change_role:
+ changed_msg: Role úspěšně změněna!
+ label: Změnit roli
+ no_role: Žádná role
+ title: Změnit roli pro %{username}
confirm: Potvrdit
confirmed: Potvrzeno
confirming: Potvrzuji
@@ -197,12 +199,7 @@ cs:
reset: Obnovit
reset_password: Obnovit heslo
resubscribe: Znovu odebírat
- role: Oprávnění
- roles:
- admin: Administrátor
- moderator: Moderátor
- staff: Personál
- user: Uživatel
+ role: Role
search: Hledat
search_same_email_domain: Ostatní uživatelé se stejnou e-mailovou doménou
search_same_ip: Další uživatelé se stejnou IP adresou
@@ -677,6 +674,51 @@ cs:
unresolved: Nevyřešeno
updated_at: Aktualizováno
view_profile: Zobrazit profil
+ roles:
+ add_new: Přidat roli
+ assigned_users:
+ few: "%{count} uživatelé"
+ many: "%{count} uživatelů"
+ one: "%{count} uživatel"
+ other: "%{count} uživatelů"
+ categories:
+ administration: Administrace
+ devops: Devops
+ invites: Pozvánky
+ moderation: Moderování
+ special: Speciální
+ delete: Smazat
+ edit: Upravit roli „%{name}“
+ everyone: Výchozí oprávnění
+ permissions_count:
+ few: "%{count} oprávnění"
+ many: "%{count} oprávnění"
+ one: "%{count} oprávnění"
+ other: "%{count} oprávnění"
+ privileges:
+ administrator: Správce
+ delete_user_data: Mazat uživatelská data
+ delete_user_data_description: Umožňuje uživatelům bezodkladně mazat data jiných uživatelů
+ invite_users: Zvát uživatele
+ invite_users_description: Umožňuje uživatelům zvát na server nové lidi
+ manage_announcements: Spravovat oznámení
+ manage_appeals: Spravovat odvolání
+ manage_appeals_description: Umožňuje uživatelům posuzovat odvolání proti moderátorským zásahům
+ manage_blocks: Spravovat blokace
+ manage_custom_emojis: Spravovat vlastní emoji
+ manage_custom_emojis_description: Umožňuje uživatelům spravovat vlastní emoji na serveru
+ manage_invites: Spravovat pozvánky
+ manage_reports: Spravovat hlášení
+ manage_roles: Spravovat role
+ manage_rules: Spravovat pravidla
+ manage_settings: Spravovat nastavení
+ manage_user_access: Spravovat uživatelské přístupy
+ manage_user_access_description: Umožňuje uživatelům rušit jiným uživatelům dvoufázové ověřování, měnit jejich e-mailovou adresu a obnovovat jim hesla
+ manage_users: Spravovat uživatele
+ manage_webhooks: Spravovat webhooky
+ view_audit_log: Zobrazovat protokol auditu
+ view_devops: Devops
+ title: Role
rules:
add_new: Přidat pravidlo
delete: Smazat
@@ -729,9 +771,6 @@ cs:
deletion:
desc_html: Povolit komukoliv smazat svůj účet
title: Zpřístupnit smazání účtu
- min_invite_role:
- disabled: Nikdo
- title: Povolit pozvánky od
require_invite_text:
desc_html: Když jsou registrace schvalovány ručně, udělat odpověď na otázku "Proč se chcete připojit?" povinnou
title: Požadovat od nových uživatelů zdůvodnění založení
@@ -744,9 +783,6 @@ cs:
show_known_fediverse_at_about_page:
desc_html: Je-li vypnuto, bude veřejná časová osa, na kterou odkazuje hlavní stránka serveru, omezena pouze na místní obsah
title: Zahrnout federovaný obsah na neautentizované stránce veřejné časové osy
- show_staff_badge:
- desc_html: Zobrazit na stránce uživatele odznak personálu
- title: Zobrazit odznak personálu
site_description:
desc_html: Úvodní odstavec v API. Popište, čím se tento server Mastodon odlišuje od ostatních, a cokoliv jiného, co je důležité. Můžete zde používat HTML značky, hlavně <a>
a <em>
.
title: Popis serveru
@@ -1116,7 +1152,7 @@ cs:
invalid_domain: není platné doménové jméno
errors:
'400': Žádost, kterou jste odeslali, byla neplatná nebo poškozená.
- '403': Nemáte povolení zobrazit tuto stránku.
+ '403': Nejste oprávněni tuto stránku zobrazit.
'404': Stránka, kterou hledáte, tu není.
'406': Tato stránka není v požadovaném formátu dostupná.
'410': Stránka, kterou hledáte, tu již není.
@@ -1163,7 +1199,6 @@ cs:
title: Upravit filtr
errors:
invalid_context: Nebyl poskytnut žádný nebo jen neplatný kontext
- invalid_irreversible: Nezvratné filtrování funguje pouze v souvislosti s domovskou osou či oznámeními
index:
delete: Smazat
empty: Nemáte žádný filtr.
@@ -1291,6 +1326,8 @@ cs:
copy_account_note_text: 'Tento účet se přesunul z %{acct}, zde byly Vaše předchozí poznámky o něm:'
notification_mailer:
admin:
+ report:
+ subject: Uživatel %{name} podal hlášení
sign_up:
subject: Uživatel %{name} se zaregistroval
digest:
diff --git a/config/locales/cy.yml b/config/locales/cy.yml
index 91375332568..a1e9835d66b 100644
--- a/config/locales/cy.yml
+++ b/config/locales/cy.yml
@@ -98,10 +98,8 @@ cy:
posts_tab_heading: Postiadau
posts_with_replies: Postiadau ac atebion
roles:
- admin: Gweinyddwr
bot: Bot
group: Grŵp
- moderator: Safonwr
unavailable: Proffil ddim ar gael
unfollow: Dad-ddilyn
admin:
@@ -120,7 +118,6 @@ cy:
avatar: Afatar
by_domain: Parth
change_email:
- changed_msg: E-bost cyfrif wedi ei newid yn llwyddiannus!
current_email: E-bost Cyfredol
label: Newid E-bost
new_email: E-bost Newydd
@@ -197,11 +194,7 @@ cy:
reset: Ailosod
reset_password: Ailosod cyfrinair
resubscribe: Aildanysgrifio
- role: Caniatâd
- roles:
- admin: Gweinyddwr
- moderator: Aroglygydd
- user: Defnyddiwr
+ role: Rôl
search: Chwilio
search_same_email_domain: Defnyddwyr eraill gyda'r un parth ebost
search_same_ip: Defnyddwyr eraill gyda'r un IP
@@ -488,9 +481,6 @@ cy:
deletion:
desc_html: Caniatau i unrhywun i ddileu eu cyfrif
title: Agor dileu cyfrif
- min_invite_role:
- disabled: Neb
- title: Caniatau gwahoddiadau gan
registrations_mode:
modes:
approved: Mae angen cymeradwyaeth ar gyfer cofrestru
@@ -500,9 +490,6 @@ cy:
show_known_fediverse_at_about_page:
desc_html: Wedi'i ddewis, bydd yn dangos rhagolwg o dŵtiau o'r holl ffedysawd. Fel arall bydd ond yn dangos tŵtiau lleol.
title: Dangos ffedysawd hysbys ar ragolwg y ffrwd
- show_staff_badge:
- desc_html: Dangos bathodyn staff ar dudalen defnyddiwr
- title: Dangos bathodyn staff
site_description:
desc_html: Paragraff agoriadol ar y dudalen flaen. Disgrifiwch yr hyn sy'n arbennig am y gweinydd Mastodon hwn ac unrhywbeth arall o bwys. Mae modd defnyddio tagiau HTML <a>
a <em>
.
title: Disgrifiad achos
@@ -734,7 +721,6 @@ cy:
title: Golygu hidlydd
errors:
invalid_context: Dim cyd-destun neu cyd-destun annilys wedi ei ddarparu
- invalid_irreversible: Mae hidlo anadferadwy ond yn gweithio yng nghyd-destun cartref neu hysbysiadau
index:
delete: Dileu
empty: Nid oes gennych chi hidlyddion.
diff --git a/config/locales/da.yml b/config/locales/da.yml
index 337005369e2..a08748deb7e 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -83,10 +83,8 @@ da:
posts_tab_heading: Indlæg
posts_with_replies: Indlæg og svar
roles:
- admin: Admin
bot: Bot
group: Gruppe
- moderator: Moderator
unavailable: Profil utilgængelig
unfollow: Følg ikke længere
admin:
@@ -105,12 +103,17 @@ da:
avatar: Profilbillede
by_domain: Domæne
change_email:
- changed_msg: Kontoens e-mail er skiftet!
+ changed_msg: E-mail skiftet!
current_email: Nuværende e-mail
label: Skift e-mail
new_email: Ny e-mail
submit: Skift e-mail
title: Skift e-mail for %{username}
+ change_role:
+ changed_msg: Rolle ændret!
+ label: Ændr rolle
+ no_role: Ingen rolle
+ title: Ændr rolle for %{username}
confirm: Bekræft
confirmed: Bekræftet
confirming: Bekræfter
@@ -154,6 +157,7 @@ da:
active: Aktiv
all: Alle
pending: Afventer
+ silenced: Begrænset
suspended: Suspenderet
title: Moderation
moderation_notes: Moderationsnotater
@@ -161,6 +165,7 @@ da:
most_recent_ip: Seneste IP
no_account_selected: Ingen kontiændringer, da ingen var valgt
no_limits_imposed: Ingen begrænsninger pålagt
+ no_role_assigned: Ingen rolle tildelt
not_subscribed: Abonnerer ikke
pending: Afventende vurdering
perform_full_suspension: Suspendér
@@ -187,12 +192,7 @@ da:
reset: Nulstil
reset_password: Nulstil adgangskode
resubscribe: Genabonnér
- role: Tilladelser
- roles:
- admin: Administrator
- moderator: Moderator
- staff: Personale
- user: Bruger
+ role: Rolle
search: Søg
search_same_email_domain: Øvrige brugere med samme e-maildomæne
search_same_ip: Øvrige brugere med identisk IP
@@ -649,6 +649,66 @@ da:
unresolved: Uløst
updated_at: Opdateret
view_profile: Vis profil
+ roles:
+ add_new: Tilføj rolle
+ assigned_users:
+ one: "%{count} bruger"
+ other: "%{count} brugere"
+ categories:
+ administration: Håndtering
+ devops: Devops
+ invites: Invitationer
+ moderation: Moderering
+ special: Speciel
+ delete: Slet
+ description_html: Med brugerrollerkan man tilpasse sine brugeres adgang til Mastodon-funktioner og -områder.
+ edit: Redigér rolle for '%{name}
+ everyone: Standardtilladelser
+ everyone_full_description_html: Dette er basisrollen med indvirkning på alle brugere, selv dem uden rolletildeling. Alle øvrige rolletilladelser nedarves herfra.
+ permissions_count:
+ one: "%{count} tilladelse"
+ other: "%{count} tilladelser"
+ privileges:
+ administrator: Administrator
+ administrator_description: Brugere med denne rolle kan omgå alle tilladelser
+ delete_user_data: Slet brugerdata
+ invite_users: Invitere brugere
+ invite_users_description: Tillader brugere at invitere nye personer til serveren
+ manage_announcements: Håndtere bekendtgørelser
+ manage_announcements_description: Tillader brugere at håndtere bekendtgørelser på serveren
+ manage_appeals: Håndtere appeller
+ manage_appeals_description: Tillader brugere at vurdere appeller af modereringshandlinger
+ manage_blocks: Håndtere blokeringer
+ manage_blocks_description: Tillader brugere at blokere e-mailudbydere og IP-adresser
+ manage_custom_emojis: Håndtere tilpassede emojier
+ manage_custom_emojis_description: Tillader brugere at håndtere tilpassede emojier på serveren
+ manage_federation: Håndtere federation
+ manage_federation_description: Tillader brugere at blokere eller tillade federation med andre domæner og styre leverbarhed
+ manage_invites: Håndtere invitationer
+ manage_invites_description: Tillader brugere at gennemse og deaktivere invitationslinks
+ manage_reports: Håndtere rapporter
+ manage_reports_description: Tillader brugere at vurdere rapporter og, i overensstemmelse hermed, at udføre moderationshandlinger
+ manage_roles: Håndtere roller
+ manage_roles_description: Tillader brugere at håndtere og tildele roller under deres privilegiestatus
+ manage_rules: Håndtere regler
+ manage_rules_description: Tillad brugere at ændre serverregler
+ manage_settings: Håndtere indstillinger
+ manage_settings_description: Tillader brugere at ændre webstedsindstillinger
+ manage_taxonomies: Håndtere taksonomier
+ manage_taxonomies_description: Tillader brugere at gennemse tenderende indhold og opdatere hashtag-indstillinger
+ manage_user_access: Håndtere brugeradgang
+ manage_user_access_description: Tillader brugere at deaktivere andre brugeres tofaktorgodkendelse, skifte deres e-mailadresse og nulstille deres adgangskode
+ manage_users: Håndtere brugere
+ manage_users_description: Tillader brugere at se andre brugeres oplysninger og underkaste dem moderationshandlinger
+ manage_webhooks: Håndtere Webhooks
+ manage_webhooks_description: Tillader brugere at opsætte webhooks til administrative begivenheder
+ view_audit_log: Vis revisionslog
+ view_audit_log_description: Tillader brugere at se en historik over administrative handlinger på serveren
+ view_dashboard: Vis Dashboard
+ view_dashboard_description: Tillader brugere at tilgå Dashboard'et og forskellige målinger
+ view_devops: Devops
+ view_devops_description: Tillader brugere at tilgå Sidekiq- og pgHero-dashboards
+ title: Roller
rules:
add_new: Tilføj regel
delete: Slet
@@ -701,9 +761,6 @@ da:
deletion:
desc_html: Tillad enhver at slette sin konto
title: Åbn kontosletning
- min_invite_role:
- disabled: Ingen
- title: Tillad invitationer fra
require_invite_text:
desc_html: Når tilmelding kræver manuel godkendelse, så gør “Hvorfor ønsker du at deltage?” tekstinput obligatorisk i stedet for valgfrit
title: Nye brugere afkræves tilmeldingsbegrundelse
@@ -716,9 +773,6 @@ da:
show_known_fediverse_at_about_page:
desc_html: Når deaktiveret, begrænses den fra indgangssiden linkede offentlige tidslinje til kun at vise lokalt indhold
title: Medtag federeret indhold på ikke-godkendt, offentlig tidslinjeside
- show_staff_badge:
- desc_html: Vis et personale-badge på en brugerside
- title: Vis personale-badge
site_description:
desc_html: Introduktionsafsnit på API'en. Beskriv, hvad der gør denne Mastodonserver speciel samt alt andet vigtigt. HTML-tags kan bruges, især <a>
og <em>
.
title: Serverbeskrivelse
@@ -1124,15 +1178,24 @@ da:
public: Offentlig tidslinje
thread: Konversationer
edit:
+ add_keyword: Tilføj nøgleord
+ keywords: Nøgleord
title: Redigere filter
errors:
+ deprecated_api_multiple_keywords: Disse parametre kan ikke ændres fra denne applikation, da de gælder for flere end ét filternøgleord. Brug en nyere applikation eller webgrænsefladen.
invalid_context: Ingen eller ugyldig kontekst angivet
- invalid_irreversible: Uigenkaldelig filtrering virker kun med hjemme- eller notifikationskontekster
index:
+ contexts: Filtre i %{contexts}
delete: Slet
empty: Du har ingen filtre.
+ expires_in: Udløber om %{distance}
+ expires_on: Udløber om %{date}
+ keywords:
+ one: "%{count} nøgleord"
+ other: "%{count} nøgleord"
title: Filtre
new:
+ save: Gem nye filter
title: Tilføj nyt filter
footer:
developers: Udviklere
@@ -1251,6 +1314,8 @@ da:
copy_account_note_text: 'Denne bruger er flyttet fra %{acct}, hvor dine tidligere noter om dem var:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} indsendte en anmeldelse"
sign_up:
subject: "%{name} tilmeldte sig"
digest:
diff --git a/config/locales/de.yml b/config/locales/de.yml
index d15011a5ea5..0c8321295fe 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -83,10 +83,8 @@ de:
posts_tab_heading: Beiträge
posts_with_replies: Beiträge mit Antworten
roles:
- admin: Administrator
bot: Bot
group: Gruppe
- moderator: Moderator
unavailable: Profil nicht verfügbar
unfollow: Entfolgen
admin:
@@ -105,7 +103,6 @@ de:
avatar: Profilbild
by_domain: Domain
change_email:
- changed_msg: E-Mail-Adresse des Kontos erfolgreich geändert!
current_email: Aktuelle E-Mail-Adresse
label: E-Mail-Adresse ändern
new_email: Neue E-Mail-Adresse
@@ -187,12 +184,6 @@ de:
reset: Zurücksetzen
reset_password: Passwort zurücksetzen
resubscribe: Wieder abonnieren
- role: Berechtigungen
- roles:
- admin: Administrator
- moderator: Moderator_in
- staff: Mitarbeiter
- user: Nutzer
search: Suche
search_same_email_domain: Andere Benutzer mit der gleichen E-Mail-Domain
search_same_ip: Andere Benutzer mit derselben IP
@@ -701,9 +692,6 @@ de:
deletion:
desc_html: Allen erlauben, ihr Konto eigenmächtig zu löschen
title: Kontolöschung erlauben
- min_invite_role:
- disabled: Niemand
- title: Einladungen erlauben von
require_invite_text:
desc_html: Wenn eine Registrierung manuell genehmigt werden muss, mache den "Warum möchtest du beitreten?" Text eher obligatorisch als optional
title: Neue Benutzer müssen einen Einladungstext ausfüllen
@@ -716,9 +704,6 @@ de:
show_known_fediverse_at_about_page:
desc_html: Wenn aktiviert, wird es alle Beiträge aus dem bereits bekannten Teil des Fediversums auf der Startseite anzeigen. Andernfalls werden lokale Beitrage des Servers angezeigt.
title: Zeige eine öffentliche Zeitleiste auf der Einstiegsseite
- show_staff_badge:
- desc_html: Zeige Mitarbeiter-Badge auf Benutzerseite
- title: Zeige Mitarbeiter-Badge
site_description:
desc_html: Einleitungsabschnitt auf der Frontseite. Beschreibe, was diesen Mastodon-Server ausmacht. Du kannst HTML-Tags benutzen, insbesondere <a>
und <em>
.
title: Beschreibung des Servers
@@ -1127,7 +1112,6 @@ de:
title: Filter bearbeiten
errors:
invalid_context: Ungültiger oder fehlender Kontext übergeben
- invalid_irreversible: Unwiderrufliche Filterung funktioniert nur mit Heim- oder Benachrichtigungskontext
index:
delete: Löschen
empty: Du hast keine Filter.
diff --git a/config/locales/devise.nl.yml b/config/locales/devise.nl.yml
index bf3b02e3f98..2cbbee6cfa9 100644
--- a/config/locales/devise.nl.yml
+++ b/config/locales/devise.nl.yml
@@ -21,7 +21,7 @@ nl:
action: E-mailadres verifiëren
action_with_app: Bevestigen en naar %{app} teruggaan
explanation: Je hebt een account op %{host} aangemaakt en met één klik kun je deze activeren. Wanneer jij dit account niet hebt aangemaakt, mag je deze e-mail negeren.
- explanation_when_pending: Je vroeg met dit e-mailadres een uitnodiging aan voor %{host}. Nadat je jouw e-mailadres hebt bevestigd, beoordelen we jouw aanvraag. Je kunt tot dan nog niet inloggen. Wanneer jouw aanvraag wordt afgekeurd, worden jouw gegevens verwijderd en hoef je daarna verder niets meer te doen. Wanneer jij dit niet was, kun je deze e-mail negeren.
+ explanation_when_pending: Je vroeg met dit e-mailadres een uitnodiging aan voor %{host}. Nadat je jouw e-mailadres hebt bevestigd, beoordelen we jouw aanvraag. Je kunt tot dan nog niet inloggen. Wanneer jouw aanvraag wordt afgewezen, worden jouw gegevens verwijderd en hoef je daarna verder niets meer te doen. Wanneer jij dit niet was, kun je deze e-mail negeren.
extra_html: Bekijk ook de regels van de Mastodonserver en onze gebruiksvoorwaarden.
subject: 'Mastodon: E-mail bevestigen voor %{instance}'
title: E-mailadres verifiëren
diff --git a/config/locales/devise.si.yml b/config/locales/devise.si.yml
index b9aa1527cec..08b7286cbf5 100644
--- a/config/locales/devise.si.yml
+++ b/config/locales/devise.si.yml
@@ -1,42 +1,115 @@
---
si:
devise:
+ confirmations:
+ confirmed: ඔබගේ විද්යුත් තැපැල් ලිපිනය සාර්ථකව තහවුරු කර ඇත.
+ send_instructions: මිනිත්තු කිහිපයකින් ඔබගේ විද්යුත් තැපැල් ලිපිනය තහවුරු කරන ආකාරය පිළිබඳ උපදෙස් සහිත විද්යුත් තැපෑලක් ඔබට ලැබෙනු ඇත. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් ෆෝල්ඩරය පරීක්ෂා කරන්න.
+ send_paranoid_instructions: ඔබගේ විද්යුත් තැපැල් ලිපිනය අපගේ දත්ත ගබඩාවේ තිබේ නම්, මිනිත්තු කිහිපයකින් ඔබගේ විද්යුත් තැපැල් ලිපිනය තහවුරු කරන ආකාරය පිළිබඳ උපදෙස් සහිත විද්යුත් තැපෑලක් ඔබට ලැබෙනු ඇත. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් ෆෝල්ඩරය පරීක්ෂා කරන්න.
failure:
already_authenticated: ඔබ දැනටමත් පිවිස ඇත.
+ inactive: ඔබගේ ගිණුම තවම සක්රිය කර නොමැත.
+ invalid: වලංගු නොවන %{authentication_keys} හෝ මුරපදය.
+ last_attempt: ඔබගේ ගිණුම අගුලු දැමීමට පෙර ඔබට තවත් එක් උත්සාහයක් ඇත.
locked: ඔබගේ ගිණුම අගුළු දමා ඇත.
+ not_found_in_database: වලංගු නොවන %{authentication_keys} හෝ මුරපදය.
+ pending: ඔබගේ ගිණුම තවමත් සමාලෝචනය වෙමින් පවතී.
+ timeout: ඔබේ සැසිය කල් ඉකුත් විය. ඉදිරියට යාමට කරුණාකර නැවත පුරන්න.
+ unauthenticated: ඉදිරියට යාමට පෙර ඔබ පුරනය වීමට හෝ ලියාපදිංචි වීමට අවශ්ය වේ.
+ unconfirmed: දිගටම කරගෙන යාමට පෙර ඔබ ඔබේ ඊමේල් ලිපිනය තහවුරු කළ යුතුය.
mailer:
confirmation_instructions:
+ action: ඊමේල් ලිපිනය තහවුරු කරන්න
+ action_with_app: තහවුරු කර %{app}වෙත ආපසු යන්න
+ explanation: ඔබ මෙම ඊමේල් ලිපිනය සමඟ %{host} හි ගිණුමක් සාදා ඇත. ඔබ එය සක්රිය කිරීමට එක ක්ලික් කිරීමක් ඇත. මේ ඔබ නොවේ නම්, කරුණාකර මෙම විද්යුත් තැපෑල නොසලකා හරින්න.
+ explanation_when_pending: ඔබ මෙම විද්යුත් තැපැල් ලිපිනය සමඟ %{host} වෙත ආරාධනාවක් සඳහා ඉල්ලුම් කළා. ඔබ ඔබගේ විද්යුත් තැපැල් ලිපිනය තහවුරු කළ පසු, අපි ඔබගේ අයදුම්පත සමාලෝචනය කරන්නෙමු. ඔබගේ විස්තර වෙනස් කිරීමට හෝ ඔබගේ ගිණුම මකා දැමීමට ඔබට පුරනය විය හැක, නමුත් ඔබගේ ගිණුම අනුමත වන තුරු ඔබට බොහෝ කාර්යයන් වෙත ප්රවේශ විය නොහැක. ඔබගේ අයදුම්පත ප්රතික්ෂේප කළහොත්, ඔබගේ දත්ත ඉවත් කරනු ඇත, එබැවින් ඔබෙන් වැඩිදුර ක්රියාමාර්ග අවශ්ය නොවනු ඇත. මේ ඔබ නොවේ නම්, කරුණාකර මෙම විද්යුත් තැපෑල නොසලකා හරින්න.
+ extra_html: කරුණාකර සේවාදායකයේ නීති සහ අපගේ සේවා කොන්දේසිද පරීක්ෂා කරන්න.
+ subject: 'Mastodon: %{instance}සඳහා තහවුරු කිරීමේ උපදෙස්'
title: වි. තැපැල් ලිපිනය තහවුරු කරන්න
email_changed:
+ explanation: 'ඔබගේ ගිණුම සඳහා ඊමේල් ලිපිනය වෙනස් වෙමින් පවතී:'
+ extra: ඔබ ඔබගේ විද්යුත් තැපෑල වෙනස් නොකළේ නම්, යම් අයෙකු ඔබගේ ගිණුමට ප්රවේශය ලබා ගෙන ඇති බව පෙනෙන්නට තිබේ. ඔබගේ ගිණුමෙන් අගුලු දමා ඇත්නම් කරුණාකර ඔබගේ මුරපදය වහාම වෙනස් කරන්න හෝ සේවාදායක පරිපාලක අමතන්න.
subject: 'මාස්ටඩන්: වි-තැපෑල වෙනස් විය'
title: නව විද්යුත් තැපැල් ලිපිනය
password_change:
- title: මුරපදය වෙනස් කරන ලදි
+ explanation: ඔබගේ ගිණුම සඳහා මුරපදය වෙනස් කර ඇත.
+ extra: ඔබ ඔබගේ මුරපදය වෙනස් නොකළේ නම්, යමෙකු ඔබගේ ගිණුමට ප්රවේශය ලබා ගෙන ඇති බව පෙනෙන්නට තිබේ. ඔබගේ ගිණුමෙන් අගුලු දමා ඇත්නම් කරුණාකර ඔබගේ මුරපදය වහාම වෙනස් කරන්න හෝ සේවාදායක පරිපාලක අමතන්න.
+ subject: 'Mastodon: මුරපදය වෙනස් විය'
+ title: මුරපදය වෙනස් කරන ලදී
reconfirmation_instructions:
+ explanation: ඔබගේ ඊමේල් වෙනස් කිරීමට නව ලිපිනය තහවුරු කරන්න.
+ extra: මෙම වෙනස ඔබ විසින් ආරම්භ කරන ලද්දක් නොවේ නම්, කරුණාකර මෙම විද්යුත් තැපෑල නොසලකා හරින්න. ඔබ ඉහත සබැඳියට ප්රවේශ වන තෙක් Mastodon ගිණුම සඳහා ඊමේල් ලිපිනය වෙනස් නොවේ.
+ subject: 'Mastodon: %{instance}සඳහා විද්යුත් තැපෑල තහවුරු කරන්න'
title: වි. තැපැල් ලිපිනය තහවුරු කරන්න
reset_password_instructions:
action: මුරපදය වෙනස් කරන්න
+ explanation: ඔබ ඔබගේ ගිණුම සඳහා නව මුරපදයක් ඉල්ලා ඇත.
+ extra: ඔබ මෙය ඉල්ලා නොසිටියේ නම්, කරුණාකර මෙම විද්යුත් තැපෑල නොසලකා හරින්න. ඔබ ඉහත සබැඳියට ප්රවේශ වී අලුත් එකක් සාදන තෙක් ඔබේ මුරපදය වෙනස් නොවනු ඇත.
+ subject: 'Mastodon: මුරපද උපදෙස් යළි පිහිටුවන්න'
title: මුරපදය නැවත සැකසීම
two_factor_disabled:
+ explanation: ඔබගේ ගිණුම සඳහා ද්වි-සාධක සත්යාපනය අබල කර ඇත. විද්යුත් තැපැල් ලිපිනය සහ මුරපදය පමණක් භාවිතයෙන් දැන් පුරනය විය හැක.
+ subject: 'Mastodon: ද්වි සාධක සත්යාපනය අක්රීය කර ඇත'
title: ද්විපියවර අබලයි
two_factor_enabled:
+ explanation: ඔබගේ ගිණුම සඳහා ද්වි-සාධක සත්යාපනය සක්රීය කර ඇත. යුගල කළ TOTP යෙදුම මගින් ජනනය කරන ලද ටෝකනයක් පුරනය වීමට අවශ්ය වනු ඇත.
+ subject: 'Mastodon: ද්වි සාධක සත්යාපනය සක්රීය කර ඇත'
title: ද්විපියවර සබලයි
two_factor_recovery_codes_changed:
- title: ද්විපියවර ප්රතිසාධන කේත වෙනස්විණි
+ explanation: පෙර ප්රතිසාධන කේත අවලංගු කර නව ඒවා උත්පාදනය කර ඇත.
+ subject: 'Mastodon: ද්වි-සාධක ප්රතිසාධන කේත නැවත උත්පාදනය කරන ලදී'
+ title: ද්විපියවර ප්රතිසාධන කේත වෙනස් වේ
unlock_instructions:
- subject: 'මාස්ටඩන්: අගුලුහැරීමේ උපදේශ'
+ subject: 'මාස්ටඩන්: අගුලුහැරීමේ උපදේශනය'
webauthn_credential:
added:
+ explanation: පහත ආරක්ෂක යතුර ඔබගේ ගිණුමට එක් කර ඇත
subject: 'මාස්ටඩන්: නව ආරක්ෂණ යතුර'
title: ආරක්ෂණ යතුරක් එකතු කර ඇත
+ deleted:
+ explanation: පහත ආරක්ෂක යතුර ඔබගේ ගිණුමෙන් මකා ඇත
+ subject: 'Mastodon: ආරක්ෂක යතුර මකා ඇත'
+ title: ඔබගේ ආරක්ෂක යතුරු වලින් එකක් මකා ඇත
webauthn_disabled:
+ explanation: ඔබගේ ගිණුම සඳහා ආරක්ෂක යතුරු සමඟ සත්යාපනය අබල කර ඇත. යුගල කළ TOTP යෙදුම මගින් ජනනය කරන ලද ටෝකනය පමණක් භාවිතයෙන් දැන් පුරනය විය හැක.
+ subject: 'Mastodon: ආරක්ෂක යතුරු සමඟ සත්යාපනය අක්රිය කර ඇත'
title: ආරක්ෂණ යතුරු අබල කර ඇත
webauthn_enabled:
+ explanation: ඔබගේ ගිණුම සඳහා ආරක්ෂක යතුරු සත්යාපනය සක්රීය කර ඇත. ඔබගේ ආරක්ෂක යතුර දැන් පුරනය වීම සඳහා භාවිතා කළ හැක.
+ subject: 'Mastodon: ආරක්ෂක යතුරු සත්යාපනය සක්රීය කර ඇත'
title: ආරක්ෂණ යතුරු සබල කර ඇත
+ omniauth_callbacks:
+ failure: '"%{reason}" නිසා %{kind} සිට ඔබව සත්යාපනය කළ නොහැක.'
+ success: "%{kind} ගිණුමෙන් සාර්ථකව සත්යාපනය කරන ලදී."
+ passwords:
+ no_token: මුරපද යළි පිහිටුවීමේ විද්යුත් තැපෑලකින් නොපැමිණ ඔබට මෙම පිටුවට ප්රවේශ විය නොහැක. ඔබ පැමිණෙන්නේ මුරපද යළි පිහිටුවීමේ විද්යුත් තැපෑලකින් නම්, කරුණාකර ඔබ සපයා ඇති සම්පූර්ණ URL භාවිතා කර ඇති බවට වග බලා ගන්න.
+ send_instructions: ඔබගේ විද්යුත් තැපැල් ලිපිනය අපගේ දත්ත ගබඩාවේ තිබේ නම්, මිනිත්තු කිහිපයකින් ඔබගේ විද්යුත් තැපැල් ලිපිනයට මුරපද ප්රතිසාධන සබැඳියක් ලැබෙනු ඇත. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් ෆෝල්ඩරය පරීක්ෂා කරන්න.
+ send_paranoid_instructions: ඔබගේ විද්යුත් තැපැල් ලිපිනය අපගේ දත්ත ගබඩාවේ තිබේ නම්, මිනිත්තු කිහිපයකින් ඔබගේ විද්යුත් තැපැල් ලිපිනයට මුරපද ප්රතිසාධන සබැඳියක් ලැබෙනු ඇත. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් ෆෝල්ඩරය පරීක්ෂා කරන්න.
+ updated: ඔබගේ මුරපදය සාර්ථකව වෙනස් කර ඇත. ඔබ දැන් පුරනය වී ඇත.
+ updated_not_active: ඔබගේ මුරපදය සාර්ථකව වෙනස් කර ඇත.
registrations:
- update_needs_confirmation: ඔබ ඔබගේ ගිණුම සාර්ථකව යාවත්කාලීන කළ නමුත් අපට ඔබගේ නව විද්යුත් තැපැල් ලිපිනය තහවුරු කළ යුතුය. කරුණාකර ඔබගේ විද්යුත් තැපෑල පරීක්ෂා කර තහවුරු කිරීමේ සබැඳිය අනුගමනය කර ඔබගේ නව විද්යුත් තැපැල් ලිපිනය තහවුරු කරන්න. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් බහාලුම පරීක්ෂා කරන්න.
+ destroyed: ආයුබෝවන්! ඔබගේ ගිණුම සාර්ථකව අවලංගු කර ඇත. ඉක්මනින්ම ඔබව නැවත හමුවීමට අපි බලාපොරොත්තු වෙමු.
+ signed_up: සාදරයෙන් පිළිගනිමු! ඔබ සාර්ථකව ලියාපදිංචි වී ඇත.
+ signed_up_but_inactive: ඔබ සාර්ථකව ලියාපදිංචි වී ඇත. කෙසේ වෙතත්, ඔබගේ ගිණුම තවමත් සක්රිය කර නොමැති නිසා අපට ඔබව පුරනය වීමට නොහැකි විය.
+ signed_up_but_locked: ඔබ සාර්ථකව ලියාපදිංචි වී ඇත. කෙසේ වෙතත්, ඔබගේ ගිණුම අගුලු දමා ඇති නිසා අපට ඔබව පුරනය කිරීමට නොහැකි විය.
+ signed_up_but_pending: තහවුරු කිරීමේ සබැඳියක් සහිත පණිවිඩයක් ඔබගේ විද්යුත් තැපැල් ලිපිනයට යවා ඇත. ඔබ සබැඳිය ක්ලික් කළ පසු, අපි ඔබගේ අයදුම්පත සමාලෝචනය කරන්නෙමු. එය අනුමත වුවහොත් ඔබට දැනුම් දෙනු ලැබේ.
+ signed_up_but_unconfirmed: තහවුරු කිරීමේ සබැඳියක් සහිත පණිවිඩයක් ඔබගේ විද්යුත් තැපැල් ලිපිනයට යවා ඇත. ඔබගේ ගිණුම සක්රිය කිරීමට කරුණාකර සබැඳිය අනුගමනය කරන්න. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් ෆෝල්ඩරය පරීක්ෂා කරන්න.
+ update_needs_confirmation: ඔබගේ ගිණුම සාර්ථකව යාවත්කාලීන කළ හැකි නමුත් අපට ඔබගේ නව විද්යුත් තැපැල් ලිපිනය තහවුරු කර ගත යුතුය. කරුණාකර ඔබගේ විද්යුත් තැපෑල පරීක්ෂා කර තහවුරු කිරීමේ සබැඳිය අනුගමනය කරන්න ඔබගේ නව විද්යුත් තැපැල් ලිපිනය තහවුරු කරන්න. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් බහාලුම පරීක්ෂා කරන්න.
updated: ඔබගේ ගිණුම සාර්ථකව යාවත්කාලීන කර ඇත.
sessions:
already_signed_out: සාර්ථකව නික්මුනි.
- signed_in: සාර්ථකව පිවිසුනි.
+ signed_in: සාර්ථකව පිවිසෙන්න.
signed_out: සාර්ථකව නික්මුනි.
+ unlocks:
+ send_instructions: මිනිත්තු කිහිපයකින් ඔබගේ ගිණුම අගුළු හරින ආකාරය පිළිබඳ උපදෙස් සහිත විද්යුත් තැපෑලක් ඔබට ලැබෙනු ඇත. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් ෆෝල්ඩරය පරීක්ෂා කරන්න.
+ send_paranoid_instructions: ඔබගේ ගිණුම තිබේ නම්, මිනිත්තු කිහිපයකින් එය අගුළු හරින ආකාරය පිළිබඳ උපදෙස් සහිත විද්යුත් තැපෑලක් ඔබට ලැබෙනු ඇත. ඔබට මෙම විද්යුත් තැපෑල නොලැබුනේ නම් කරුණාකර ඔබගේ අයාචිත තැපැල් ෆෝල්ඩරය පරීක්ෂා කරන්න.
+ unlocked: ඔබගේ ගිණුම සාර්ථකව අගුලු හැර ඇත. ඉදිරියට යාමට කරුණාකර පුරනය වන්න.
+ errors:
+ messages:
+ already_confirmed: දැනටමත් තහවුරු කර ඇත, කරුණාකර පුරනය වීමට උත්සාහ කරන්න
+ confirmation_period_expired: "%{period}තුළ තහවුරු කළ යුතුය, කරුණාකර අලුත් එකක් ඉල්ලන්න"
+ expired: කල් ඉකුත් වී ඇත, කරුණාකර අලුත් එකක් ඉල්ලන්න
+ not_found: හමු වුණේ නැහැ
+ not_locked: අගුලු දමා නොතිබුණි
+ not_saved:
+ one: '1 දෝෂයක් මෙම %{resource} සුරැකීම තහනම් කර ඇත:'
+ other: 'දෝෂ %{count} කින් මෙම %{resource} සුරැකීම තහනම් කර ඇත:'
diff --git a/config/locales/doorkeeper.cy.yml b/config/locales/doorkeeper.cy.yml
index 4dc4b5e0ae8..85aaccea607 100644
--- a/config/locales/doorkeeper.cy.yml
+++ b/config/locales/doorkeeper.cy.yml
@@ -69,6 +69,7 @@ cy:
confirmations:
revoke: Ydych chi'n sicr?
index:
+ scopes: Caniatâd
title: Eich rhaglenni awdurdodedig
errors:
messages:
@@ -100,6 +101,12 @@ cy:
authorized_applications:
destroy:
notice: Diddymwyd y cais.
+ grouped_scopes:
+ title:
+ accounts: Cyfrifon
+ bookmarks: Tudalnodau
+ filters: Hidlyddion
+ search: Chwilio
layouts:
admin:
nav:
diff --git a/config/locales/doorkeeper.eo.yml b/config/locales/doorkeeper.eo.yml
index 1584fddf007..473757a37ad 100644
--- a/config/locales/doorkeeper.eo.yml
+++ b/config/locales/doorkeeper.eo.yml
@@ -110,6 +110,7 @@ eo:
bookmarks: Legosignoj
lists: Listoj
mutes: Silentigitaj
+ reports: Raportoj
search: Serĉi
statuses: Afiŝoj
layouts:
diff --git a/config/locales/doorkeeper.si.yml b/config/locales/doorkeeper.si.yml
index 6416fd08205..4bbfa4e90e6 100644
--- a/config/locales/doorkeeper.si.yml
+++ b/config/locales/doorkeeper.si.yml
@@ -4,10 +4,22 @@ si:
attributes:
doorkeeper/application:
name: යෙදුමේ නම
+ redirect_uri: URI යළි-යොමු කරන්න
+ scopes: විෂය පථයන්
website: යෙදුමේ වියමන අඩවිය
+ errors:
+ models:
+ doorkeeper/application:
+ attributes:
+ redirect_uri:
+ fragment_present: කොටසක් අඩංගු විය නොහැක.
+ invalid_uri: වලංගු URI එකක් විය යුතුය.
+ relative_uri: නිරපේක්ෂ URI විය යුතුය.
+ secured_uri: HTTPS/SSL URI එකක් විය යුතුය.
doorkeeper:
applications:
buttons:
+ authorize: අවසරලත්
cancel: අවලංගු
destroy: විනාශ කරන්න
edit: සංස්කරණය
@@ -16,11 +28,20 @@ si:
destroy: ඔබට විශ්වාසද?
edit:
title: යෙදුම සංස්කරණය
+ form:
+ error: අපොයි! විය හැකි දෝෂ සඳහා ඔබේ පෝරමය පරීක්ෂා කරන්න
+ help:
+ native_redirect_uri: දේශීය පරීක්ෂණ සඳහා %{native_redirect_uri} භාවිතා කරන්න
+ redirect_uri: URI එකකට එක පේළියක් භාවිතා කරන්න
+ scopes: අවකාශයන් සහිත විෂය පථයන් වෙන් කරන්න. පෙරනිමි විෂය පථ භාවිතා කිරීමට හිස්ව තබන්න.
index:
application: යෙදුම
+ callback_url: ආපසු ඇමතුම් URL
+ delete: මකන්න
empty: ඔබට කිසිම යෙදුමක් නැත.
name: නම
new: නව යෙදුම
+ scopes: විෂය පථයන්
show: පෙන්වන්න
title: ඔබගේ යෙදුම්
new:
@@ -28,33 +49,137 @@ si:
show:
actions: ක්රියාමාර්ග
application_id: අනුග්රාහක යතුර
+ callback_urls: ආපසු ඇමතුම් URL
+ scopes: විෂය පථයන්
secret: අනුග්රාහකයේ රහස
title: 'යෙදුම: %{name}'
authorizations:
buttons:
authorize: සත්යාපනය
+ deny: ප්රතික්ෂේප කරන්න
+ error:
+ title: දෝෂයක් සිදුවී ඇත
+ new:
+ prompt_html: "%{client_name} ඔබගේ ගිණුමට ප්රවේශ වීමට අවසර ලබා ගැනීමට කැමති වේ. එය තෙවන පාර්ශවීය යෙදුමකි. ඔබ එය විශ්වාස නොකරන්නේ නම්, ඔබ එයට අවසර නොදිය යුතුය."
+ review_permissions: අවසර සමාලෝචනය කරන්න
+ title: බලය පැවරීමේ අවශ්ය
+ show:
+ title: මෙම අවසර කේතය පිටපත් කර එය යෙදුමට අලවන්න.
authorized_applications:
+ buttons:
+ revoke: අවලංගු කරන්න
confirmations:
revoke: ඔබට විශ්වාසද?
+ index:
+ authorized_at: "%{date}මත අවසර දී ඇත"
+ description_html: මේවා API භාවිතයෙන් ඔබගේ ගිණුමට ප්රවේශ විය හැකි යෙදුම් වේ. ඔබ මෙහි හඳුනා නොගත් යෙදුම් තිබේ නම්, හෝ යෙදුමක් වැරදි ලෙස හැසිරෙන්නේ නම්, ඔබට එහි ප්රවේශය අවලංගු කළ හැක.
+ last_used_at: අවසන් වරට භාවිතා කළේ %{date}
+ never_used: කවදාවත් පාවිච්චි කළේ නැහැ
+ scopes: අවසර
+ superapp: අභ්යන්තර
+ title: ඔබගේ බලයලත් අයදුම්පත්
+ errors:
+ messages:
+ access_denied: සම්පත් හිමිකරු හෝ අවසර සේවාදායකය ඉල්ලීම ප්රතික්ෂේප කළේය.
+ credential_flow_not_configured: Doorkeeper.configure.resource_owner_from_credentials වින්යාස නොකිරීම හේතුවෙන් සම්පත් හිමිකරුගේ මුරපද අක්තපත්ර ප්රවාහය අසාර්ථක විය.
+ invalid_client: නොදන්නා සේවාලාභියා නිසා සේවාලාභී සත්යාපනය අසාර්ථක විය, සේවාලාභී සත්යාපනය ඇතුළත් කර නැත, හෝ සහය නොදක්වන සත්යාපන ක්රමයක්.
+ invalid_grant: සපයා ඇති අවසර දීමනාව වලංගු නැත, කල් ඉකුත් වී ඇත, අවලංගු කර ඇත, අවසර ඉල්ලීමේ භාවිතා කරන ලද යළි-යොමුවීම් URI සමඟ නොගැලපේ, නැතහොත් වෙනත් සේවාදායකයෙකුට නිකුත් කර ඇත.
+ invalid_redirect_uri: ඇතුළත් කර ඇති යළි-යොමුවීම් uri වලංගු නොවේ.
+ invalid_request:
+ missing_param: 'අවශ්ය පරාමිතිය අස්ථානගත වී ඇත: %{value}.'
+ request_not_authorized: ඉල්ලීම අනුමත කළ යුතුය. අවසර ඉල්ලීම සඳහා අවශ්ය පරාමිතිය අස්ථානගත වී හෝ වලංගු නොවේ.
+ unknown: ඉල්ලීමට අවශ්ය පරාමිතියක් අස්ථානගත වී ඇත, සහය නොදක්වන පරාමිති අගයක් ඇතුළත් වේ, නැතහොත් වෙනත් ආකාරයකින් විකෘති වී ඇත.
+ invalid_resource_owner: සපයන ලද සම්පත් හිමිකරු අක්තපත්ර වලංගු නැත, නැතහොත් සම්පත් හිමිකරු සොයාගත නොහැක
+ invalid_scope: ඉල්ලා සිටින විෂය පථය වලංගු නැත, නොදන්නා, හෝ විකෘති වී ඇත.
+ invalid_token:
+ expired: ප්රවේශ ටෝකනය කල් ඉකුත් විය
+ revoked: ප්රවේශ ටෝකනය අවලංගු කරන ලදී
+ unknown: ප්රවේශ ටෝකනය වලංගු නොවේ
+ resource_owner_authenticator_not_configured: Doorkeeper.configure.resource_owner_authenticator වින්යාසගත නොවීම හේතුවෙන් සම්පත් හිමිකරු සොයා ගැනීම අසාර්ථක විය.
+ server_error: අවසර සේවාදායකයට අනපේක්ෂිත කොන්දේසියක් ඇති වූ අතර එය ඉල්ලීම ඉටු කිරීම වළක්වයි.
+ temporarily_unavailable: තාවකාලික අධි බර පැටවීමක් හෝ සේවාදායකයේ නඩත්තුවක් හේතුවෙන් අවසර සේවාදායකයට ඉල්ලීම හැසිරවීමට දැනට නොහැක.
+ unauthorized_client: මෙම ක්රමය භාවිතයෙන් මෙම ඉල්ලීම ඉටු කිරීමට සේවාදායකයාට අවසර නැත.
+ unsupported_grant_type: අවසර ප්රදාන වර්ගයට බලය පැවරීමේ සේවාදායකය විසින් සහය නොදක්වයි.
+ unsupported_response_type: අවසර සේවාදායකය මෙම ප්රතිචාර වර්ගයට සහය නොදක්වයි.
+ flash:
+ applications:
+ create:
+ notice: යෙදුම නිර්මාණය කරන ලදී.
+ destroy:
+ notice: යෙදුම මකා ඇත.
+ update:
+ notice: යෙදුම යාවත්කාලීන කරන ලදී.
+ authorized_applications:
+ destroy:
+ notice: අයදුම්පත අවලංගු කරන ලදී.
+ grouped_scopes:
+ access:
+ read: කියවීමට පමණක් ප්රවේශය
+ read/write: කියවීමට සහ ලිවීමට ප්රවේශය
+ write: ලිවීමට පමණක් ප්රවේශය
+ title:
+ accounts: ගිණුම්
+ admin/accounts: ගිණුම් පරිපාලනය
+ admin/all: සියලුම පරිපාලන කාර්යයන්
+ admin/reports: වාර්තා පරිපාලනය
+ all: සියල්ල
+ blocks: කුට්ටි
+ bookmarks: පිටු සලකුණු
+ conversations: සංවාද
+ crypto: අන්තයේ සිට අගට සංකේතනය කිරීම
+ favourites: ප්රියතම
+ filters: පෙරහන්
+ follow: සබඳතා
+ follows: පහත සඳහන්
+ lists: ලැයිස්තු
+ media: මාධ්ය ඇමුණුම්
+ mutes: නිහඬ කරයි
+ notifications: දැනුම්දීම්
+ push: තල්ලු දැනුම්දීම්
+ reports: වාර්තා
+ search: සොයන්න
+ statuses: තනතුරු
layouts:
admin:
nav:
applications: යෙදුම්
oauth2_provider: වි.සත්යා.2 (OAuth) සැපයුම්කරු
application:
- title: වි.සත්යා. (OAuth) අනුමැතිය අවශ්යයයි
+ title: වි.සත්යා. (OAuth) තොරතුරු අවශ්යයි
scopes:
admin:read: සේවාදායකයේ ඇති සියලුම දත්ත කියවන්න
admin:read:accounts: සියලුම ගිණුම් වල සංවේදී තොරතුරු කියවන්න
admin:read:reports: සියලුම වාර්තා සහ වාර්තා කළ ගිණුම් වල සංවේදී තොරතුරු කියවන්න
+ admin:write: සේවාදායකයේ සියලුම දත්ත වෙනස් කරන්න
+ admin:write:accounts: ගිණුම් මත මධ්යස්ථ ක්රියා සිදු කරන්න
+ admin:write:reports: වාර්තා මත මධ්යස්ථ ක්රියා සිදු කරන්න
+ crypto: end-to-end encryption භාවිතා කරන්න
+ follow: ගිණුම් සබඳතා වෙනස් කරන්න
+ push: ඔබගේ තල්ලු දැනුම්දීම් ලබා ගන්න
read: ඔබගේ ගිණුමේ සියලුම දත්ත කියවන්න
+ read:accounts: ගිණුම් තොරතුරු බලන්න
+ read:blocks: ඔබගේ වාරණ බලන්න
+ read:bookmarks: ඔබගේ පිටු සලකුණු බලන්න
+ read:favourites: ඔබේ ප්රියතම බලන්න
read:filters: ඔබගේ පෙරහන් බලන්න
+ read:follows: ඔබගේ පහත සඳහන් බලන්න
read:lists: ඔබගේ ලැයිස්තු බලන්න
+ read:mutes: ඔබේ ගොළු බලන්න
read:notifications: ඔබගේ දැනුම්දීම් බලන්න
- read:search: ඔබ වෙනුවට සොයන්න
+ read:reports: ඔබගේ වාර්තා බලන්න
+ read:search: ඔබ වෙනුවෙන් සොයන්න
+ read:statuses: සියලුම පෝස්ට් බලන්න
+ write: ඔබගේ ගිණුමේ සියලුම දත්ත වෙනස් කරන්න
+ write:accounts: ඔබගේ පැතිකඩ වෙනස් කරන්න
write:blocks: ගිණුම් සහ වසම් අවහිර කරන්න
- write:filters: පෙරහන් සාදන්න
+ write:bookmarks: පිටු සලකුණු සටහන්
+ write:conversations: සංවාද නිහඬ කිරීම සහ මකා දැමීම
+ write:favourites: ප්රියතම තනතුරු
+ write:filters: පෙරහන් කරන්න
+ write:follows: මිනිසුන් අනුගමනය කරන්න
+ write:lists: ලැයිස්තු සාදන්න
write:media: මාධ්ය ගොනු උඩුගත කරන්න
- write:mutes: මිනිසුන් සහ සංවාද නිහඬකරන්න
+ write:mutes: මිනිසුන් සහ සංවාද කරන්න
write:notifications: ඔබගේ දැනුම්දීම් හිස්කරන්න
- write:reports: වෙනත් මිනිසුන් වාර්තා කරන්න
+ write:reports: වෙනත් පුද්ගලයින් වාර්තා කරන්න
+ write:statuses: පළ කිරීම් පළ කරන්න
diff --git a/config/locales/el.yml b/config/locales/el.yml
index 96ec15247a4..8bbb0282206 100644
--- a/config/locales/el.yml
+++ b/config/locales/el.yml
@@ -80,10 +80,8 @@ el:
posts_tab_heading: Τουτ
posts_with_replies: Τουτ και απαντήσεις
roles:
- admin: Διαχειριστής
bot: Μποτ (αυτόματος λογαριασμός)
group: Ομάδα
- moderator: Μεσολαβητής
unavailable: Το προφίλ δεν είναι διαθέσιμο
unfollow: Διακοπή παρακολούθησης
admin:
@@ -102,12 +100,15 @@ el:
avatar: Αβατάρ
by_domain: Τομέας
change_email:
- changed_msg: Επιτυχής αλλαγή email λογαριασμού!
current_email: Τρέχον email
label: Αλλαγή email
new_email: Νέο email
submit: Αλλαγή email
title: Αλλαγή email για %{username}
+ change_role:
+ label: Αλλαγή ρόλου
+ no_role: Κανένας ρόλος
+ title: Αλλαγή ρόλου για %{username}
confirm: Επιβεβαίωση
confirmed: Επιβεβαιώθηκε
confirming: Προς επιβεβαίωση
@@ -148,6 +149,7 @@ el:
active: Ενεργός/ή
all: Όλα
pending: Εκκρεμούν
+ silenced: Περιορισμένοι
suspended: Σε αναστολή
title: Μεσολάβηση
moderation_notes: Σημειώσεις μεσολάβησης
@@ -155,6 +157,7 @@ el:
most_recent_ip: Πιο πρόσφατη IP
no_account_selected: Κανείς λογαριασμός δεν ενημερώθηκε αφού κανείς δεν ήταν επιλεγμένος
no_limits_imposed: Χωρίς όρια
+ no_role_assigned: Δεν έχει ανατεθεί ρόλος
not_subscribed: Άνευ συνδρομής
pending: Εκκρεμεί έγκριση
perform_full_suspension: Αναστολή
@@ -177,12 +180,7 @@ el:
reset: Επαναφορά
reset_password: Επαναφορά συνθηματικού
resubscribe: Επανεγγραφή
- role: Δικαιώματα
- roles:
- admin: Διαχειριστής
- moderator: Συντονιστής
- staff: Προσωπικό
- user: Χρήστης
+ role: Ρόλος
search: Αναζήτηση
search_same_email_domain: Άλλοι χρήστες με τον ίδιο τομέα e-mail
search_same_ip: Υπόλοιποι χρήστες με την ίδια διεύθυνση IP
@@ -492,6 +490,16 @@ el:
unresolved: Άλυτη
updated_at: Ενημερωμένη
view_profile: Προβολή προφίλ
+ roles:
+ add_new: Προσθήκη ρόλου
+ assigned_users:
+ one: "%{count} χρήστης"
+ other: "%{count} χρήστες"
+ categories:
+ administration: Διαχείριση
+ devops: Devops
+ invites: Προσκλήσεις
+ delete: Διαγραφή
rules:
add_new: Προσθήκη κανόνα
delete: Διαγραφή
@@ -544,9 +552,6 @@ el:
deletion:
desc_html: Επέτρεψε σε οποιονδήποτε να διαγράψει το λογαριασμό του/της
title: Άνοιξε τη διαγραφή λογαριασμού
- min_invite_role:
- disabled: Κανείς
- title: Επέτρεψε προσκλήσεις από
registrations_mode:
modes:
approved: Απαιτείται έγκριση για εγγραφή
@@ -556,9 +561,6 @@ el:
show_known_fediverse_at_about_page:
desc_html: Όταν αντιστραφεί, θα δείχνει τα τουτ από όλο το γνωστό fediverse στην προεπισκόπηση. Διαφορετικά θα δείχνει μόνο τοπικά τουτ.
title: Εμφάνιση του γνωστού fediverse στην προεπισκόπηση ροής
- show_staff_badge:
- desc_html: Δείξε ένα σήμα προσωπικού στη σελίδα ενός χρήστη
- title: Δείξε διακριτικό προσωπικού
site_description:
desc_html: Εισαγωγική παράγραφος στην αρχική σελίδα. Περιέγραψε τι κάνει αυτό τον διακομιστή Mastodon διαφορετικό και ό,τι άλλο ενδιαφέρον. Μπορείς να χρησιμοποιήσεις HTML tags, συγκεκριμένα < a>
και < em>
.
title: Περιγραφή κόμβου
@@ -820,15 +822,20 @@ el:
public: Δημόσιες ροές
thread: Συζητήσεις
edit:
+ add_keyword: Προσθήκη λέξης-κλειδιού
+ keywords: Λέξεις-κλειδιά
title: Ενημέρωση φίλτρου
errors:
invalid_context: Έδωσες λάθος ή ανύπαρκτο πλαίσιο
- invalid_irreversible: Τα μη αντιστρέψιμα φίλτρα δουλεύουν μόνο στα πλαίσια της αρχικής ροής και των ειδοποιήσεων
index:
+ contexts: Φίλτρα σε %{contexts}
delete: Διαγραφή
empty: Δεν έχεις φίλτρα.
+ expires_in: Λήγει σε %{distance}
+ expires_on: Λήγει στις %{date}
title: Φίλτρα
new:
+ save: Αποθήκευση νέου φίλτρου
title: Πρόσθεσε νέο φίλτρο
footer:
developers: Ανάπτυξη
@@ -935,6 +942,8 @@ el:
copy_account_note_text: 'Ο/Η χρήστης μετακόμισε από το %{acct}, ορίστε οι προηγούμενες σημειώσεις σου:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} υπέβαλε μια αναφορά"
sign_up:
subject: "%{name} έχει εγγραφεί"
digest:
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 91ae3a3bce6..2cd4f45ac2f 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -83,10 +83,8 @@ en:
posts_tab_heading: Posts
posts_with_replies: Posts and replies
roles:
- admin: Admin
bot: Bot
group: Group
- moderator: Mod
unavailable: Profile unavailable
unfollow: Unfollow
admin:
@@ -105,12 +103,17 @@ en:
avatar: Avatar
by_domain: Domain
change_email:
- changed_msg: Account email successfully changed!
+ changed_msg: Email successfully changed!
current_email: Current email
label: Change email
new_email: New email
submit: Change email
title: Change email for %{username}
+ change_role:
+ changed_msg: Role successfully changed!
+ label: Change role
+ no_role: No role
+ title: Change role for %{username}
confirm: Confirm
confirmed: Confirmed
confirming: Confirming
@@ -154,6 +157,7 @@ en:
active: Active
all: All
pending: Pending
+ silenced: Limited
suspended: Suspended
title: Moderation
moderation_notes: Moderation notes
@@ -161,6 +165,7 @@ en:
most_recent_ip: Most recent IP
no_account_selected: No accounts were changed as none were selected
no_limits_imposed: No limits imposed
+ no_role_assigned: No role assigned
not_subscribed: Not subscribed
pending: Pending review
perform_full_suspension: Suspend
@@ -187,12 +192,7 @@ en:
reset: Reset
reset_password: Reset password
resubscribe: Resubscribe
- role: Permissions
- roles:
- admin: Administrator
- moderator: Moderator
- staff: Staff
- user: User
+ role: Role
search: Search
search_same_email_domain: Other users with the same e-mail domain
search_same_ip: Other users with the same IP
@@ -649,6 +649,67 @@ en:
unresolved: Unresolved
updated_at: Updated
view_profile: View profile
+ roles:
+ add_new: Add role
+ assigned_users:
+ one: "%{count} user"
+ other: "%{count} users"
+ categories:
+ administration: Administration
+ devops: Devops
+ invites: Invites
+ moderation: Moderation
+ special: Special
+ delete: Delete
+ description_html: With user roles, you can customize which functions and areas of Mastodon your users can access.
+ edit: Edit '%{name}' role
+ everyone: Default permissions
+ everyone_full_description_html: This is the base role affecting all users, even those without an assigned role. All other roles inherit permissions from it.
+ permissions_count:
+ one: "%{count} permission"
+ other: "%{count} permissions"
+ privileges:
+ administrator: Administrator
+ administrator_description: Users with this permission will bypass every permission
+ delete_user_data: Delete User Data
+ delete_user_data_description: Allows users to delete other users' data without delay
+ invite_users: Invite Users
+ invite_users_description: Allows users to invite new people to the server
+ manage_announcements: Manage Announcements
+ manage_announcements_description: Allows users to manage announcements on the server
+ manage_appeals: Manage Appeals
+ manage_appeals_description: Allows users to review appeals against moderation actions
+ manage_blocks: Manage Blocks
+ manage_blocks_description: Allows users to block e-mail providers and IP addresses
+ manage_custom_emojis: Manage Custom Emojis
+ manage_custom_emojis_description: Allows users to manage custom emojis on the server
+ manage_federation: Manage Federation
+ manage_federation_description: Allows users to block or allow federation with other domains, and control deliverability
+ manage_invites: Manage Invites
+ manage_invites_description: Allows users to browse and deactivate invite links
+ manage_reports: Manage Reports
+ manage_reports_description: Allows users to review reports and perform moderation actions against them
+ manage_roles: Manage Roles
+ manage_roles_description: Allows users to manage and assign roles below theirs
+ manage_rules: Manage Rules
+ manage_rules_description: Allows users to change server rules
+ manage_settings: Manage Settings
+ manage_settings_description: Allows users to change site settings
+ manage_taxonomies: Manage Taxonomies
+ manage_taxonomies_description: Allows users to review trending content and update hashtag settings
+ manage_user_access: Manage User Access
+ manage_user_access_description: Allows users to disable other users' two-factor authentication, change their e-mail address, and reset their password
+ manage_users: Manage Users
+ manage_users_description: Allows users to view other users' details and perform moderation actions against them
+ manage_webhooks: Manage Webhooks
+ manage_webhooks_description: Allows users to set up webhooks for administrative events
+ view_audit_log: View Audit Log
+ view_audit_log_description: Allows users to see a history of administrative actions on the server
+ view_dashboard: View Dashboard
+ view_dashboard_description: Allows users to access the dashboard and various metrics
+ view_devops: Devops
+ view_devops_description: Allows users to access Sidekiq and pgHero dashboards
+ title: Roles
rules:
add_new: Add rule
delete: Delete
@@ -701,9 +762,6 @@ en:
deletion:
desc_html: Allow anyone to delete their account
title: Open account deletion
- min_invite_role:
- disabled: No one
- title: Allow invitations by
require_invite_text:
desc_html: When registrations require manual approval, make the “Why do you want to join?” text input mandatory rather than optional
title: Require new users to enter a reason to join
@@ -716,9 +774,6 @@ en:
show_known_fediverse_at_about_page:
desc_html: When disabled, restricts the public timeline linked from the landing page to showing only local content
title: Include federated content on unauthenticated public timeline page
- show_staff_badge:
- desc_html: Show a staff badge on a user page
- title: Show staff badge
site_description:
desc_html: Introductory paragraph on the API. Describe what makes this Mastodon server special and anything else important. You can use HTML tags, in particular <a>
and <em>
.
title: Server description
diff --git a/config/locales/eo.yml b/config/locales/eo.yml
index 9e1eaaffa8a..8d71055a97f 100644
--- a/config/locales/eo.yml
+++ b/config/locales/eo.yml
@@ -13,8 +13,8 @@ eo:
browse_directory: Esplori profilujo kaj filtri per interesoj
browse_local_posts: Vidi vivantan fluon de publikaj mesaĝoj al Mastodon
browse_public_posts: Vidi vivantan fluon de publikaj mesaĝoj al Mastodon
- contact: Kontakti
- contact_missing: Ne elektita
+ contact: Kontakto
+ contact_missing: Ne ŝargita
contact_unavailable: Ne disponebla
continue_to_web: Daŭrigi al la retaplikaĵo
discover_users: Malkovri uzantojn
@@ -22,7 +22,7 @@ eo:
federation_hint_html: Per konto ĉe %{instance}, vi povos sekvi homojn ĉe iu ajn Mastodon nodo kaj preter.
get_apps: Provu telefonan aplikaĵon
hosted_on: "%{domain} estas nodo de Mastodon"
- instance_actor_flash: 'Ĉi tiu konto estas virtuala aganto uzata por reprezenti la servilon mem kaj neniun individuan uzanton. Ĝi estas uzata por celoj de la federaĵo kaj devas ne esti brokita se vi ne volas bloki la tutan servilon, tiuokaze vi devas uzi blokadon de domajno.
+ instance_actor_flash: 'Ĉi tiu konto estas virtuala agento uzata por reprezenti la servilon mem kaj neniu individua uzanto. Ĝi estas uzata por celoj de la federaĵo kaj devas ne esti brokita se vi ne volas bloki la tutan servilon, en kiu okazo vi devas uzi blokadon de domajno.
'
learn_more: Lerni pli
@@ -36,14 +36,16 @@ eo:
one: mesaĝo
other: mesaĝoj
status_count_before: Kie skribiĝis
- terms: Uzkondiĉoj
+ terms: Kondiĉoj de la servo
unavailable_content: Moderigitaj serviloj
unavailable_content_description:
domain: Servilo
reason: 'Kialo:'
+ rejecting_media: 'La aŭdovidaj dosieroj de ĉi tiuj serviloj ne estos prilaboritaj aŭ stokitaj, kaj neniu bildeto estos montrita, do necesas klaki permane por vidi la originalan afiŝon:'
rejecting_media_title: Filtritaj aŭdovidaĵoj
+ silenced: 'La mesaĝoj de tiuj serviloj estos kaŝitaj de publikaj templinio kaj konversacioj, kaj la interagoj de la uzantoj donas neniun sciigon, ĝis vi sekvos ilin:'
silenced_title: Silentigitaj serviloj
- suspended_title: Haltigitaj serviloj
+ suspended_title: Suspenditaj serviloj
user_count_after:
one: uzanto
other: uzantoj
@@ -56,6 +58,7 @@ eo:
one: Sekvanto
other: Sekvantoj
following: Sekvatoj
+ instance_actor_flash: Ĉi tiu konto estas virtuala agento uzata por reprezenti la servilon mem kaj neniu individua uzanto. Ĝi estas uzata por celoj de la federaĵo kaj devas ne esti suspendita.
joined: Aliĝis je %{date}
last_active: laste aktiva
link_verified_on: Proprieto de ĉi tiu ligilo estis kontrolita je %{date}
@@ -73,10 +76,8 @@ eo:
posts_tab_heading: Mesaĝoj
posts_with_replies: Mesaĝoj kaj respondoj
roles:
- admin: Administranto
bot: Roboto
group: Grupo
- moderator: Kontrolanto
unavailable: Profilo ne disponebla
unfollow: Ne plu sekvi
admin:
@@ -91,10 +92,9 @@ eo:
add_email_domain_block: Bloki retadresan domajnon
approve: Aprobi
are_you_sure: Ĉu vi certas?
- avatar: Profilbildo
+ avatar: Rolfiguro
by_domain: Domajno
change_email:
- changed_msg: Konta retadreso sukcese ŝanĝita!
current_email: Nuna retadreso
label: Ŝanĝi retadreson
new_email: Nova retadreso
@@ -131,14 +131,14 @@ eo:
remote: Foraj
title: Loko
login_status: Ensaluta stato
- media_attachments: Ligitaj aŭdovidaĵoj
+ media_attachments: Aŭdovidaj aldonaĵoj
memorialize: Ŝanĝi al memoro
memorialized: Memorita
moderation:
active: Aktiva
all: Ĉio
pending: Pritraktata
- suspended: Haltigita
+ suspended: Suspendita
title: Moderigado
moderation_notes: Notoj de moderigado
most_recent_activity: Lasta ago
@@ -154,7 +154,7 @@ eo:
push_subscription_expires: Eksvalidiĝo de la abono al PuSH
redownload: Aktualigi profilon
reject: Malakcepti
- remove_avatar: Forigi profilbildon
+ remove_avatar: Forigi la rolfigron
remove_header: Forigi kapan bildon
resend_confirmation:
already_confirmed: Ĉi tiu uzanto jam estas konfirmita
@@ -163,12 +163,6 @@ eo:
reset: Restarigi
reset_password: Restarigi pasvorton
resubscribe: Reaboni
- role: Permesoj
- roles:
- admin: Administranto
- moderator: Moderigisto
- staff: Teamo
- user: Uzanto
search: Serĉi
search_same_email_domain: Aliaj uzantoj kun la sama retpoŝta domajno
search_same_ip: Aliaj uzantoj kun la sama IP
@@ -179,14 +173,15 @@ eo:
sensitized: markita tikla
shared_inbox_url: URL de kunhavigita leterkesto
show:
- created_reports: Kreitaj raportoj
+ created_reports: Faritaj raportoj
targeted_reports: Raporitaj de alia
- silence: Kaŝi
+ silence: Mutigita
silenced: Silentigita
statuses: Mesaĝoj
subscribe: Aboni
suspend: Haltigu
- suspended: Haltigita
+ suspended: Suspendita
+ suspension_reversible_hint_html: La konto estas suspendita, kaj la datumoj estos komplete forgitaj en la %{date}. Ĝis tiam, la konto povas esti restaŭrita sen malutila efiko. Se vi deziras tuj forigi ĉiujn datumojn de la konto, vi povas fari ĉi-sube.
title: Kontoj
unblock_email: Malbloki retpoŝtadresojn
unblocked_email_msg: Sukcese malblokis la retpoŝtadreson de %{username}
@@ -195,6 +190,7 @@ eo:
undo_silenced: Malfari kaŝon
undo_suspension: Malfari haltigon
unsubscribe: Malaboni
+ unsuspended_msg: La konto de %{username} estas sukcese reaktivigita
username: Uzantnomo
view_domain: Vidi la resumon de la domajno
warn: Averti
@@ -206,7 +202,7 @@ eo:
assigned_to_self_report: Atribui Raporton
change_email_user: Ŝanĝi retadreson de uzanto
confirm_user: Konfermi uzanto
- create_account_warning: Krei Averton
+ create_account_warning: Krei averton
create_announcement: Krei Anoncon
create_custom_emoji: Krei Propran emoĝion
create_domain_allow: Krei Domajnan Permeson
@@ -226,11 +222,12 @@ eo:
disable_custom_emoji: Malebligi Propran Emoĝion
disable_user: Malebligi uzanton
enable_custom_emoji: Ebligi Propran Emoĝion
+ enable_sign_in_token_auth_user: Aktivigi la aŭtentigon de peco per retpoŝto por la uzanto
enable_user: Ebligi uzanton
memorialize_account: Memorigu Konton
promote_user: Promocii Uzanton
reject_user: Malakcepti Uzanton
- remove_avatar_user: Forigi profilbildon
+ remove_avatar_user: Forigi la rolfigron
reopen_report: Remalfermi signalon
reset_password_user: Restarigi pasvorton
resolve_report: Solvitaj reporto
@@ -274,8 +271,10 @@ eo:
memorialize_account_html: "%{name} ŝanĝis la konton de %{target} al memora paĝo"
promote_user_html: "%{name} plirangigis uzanton %{target}"
reject_user_html: "%{name} malakceptis registriĝon de %{target}"
- remove_avatar_user_html: "%{name} forigis profilbildon de %{target}"
+ remove_avatar_user_html: "%{name} forigis la rolfiguron de %{target}"
reopen_report_html: "%{name} remalfermis signalon %{target}"
+ suspend_account_html: "%{name} suspendis la konton de %{target}"
+ unsuspend_account_html: "%{name} reaktivigis la konton de %{target}"
update_announcement_html: "%{name} ĝisdatigis anoncon %{target}"
deleted_status: "(forigita mesaĝo)"
empty: Neniu protokolo trovita.
@@ -334,7 +333,7 @@ eo:
dashboard:
active_users: aktivaj uzantoj
interactions: interago
- media_storage: Aŭdvidaĵa memorilo
+ media_storage: Memorilo de aŭdovidaĵoj
new_users: novaj uzantoj
opened_reports: raportoj malfermitaj
resolved_reports: raportoj solvitaj
@@ -361,13 +360,13 @@ eo:
severity:
desc_html: "Kaŝi igos la mesaĝojn de la konto nevideblaj al tiuj, kiuj ne sekvas tiun. Haltigi forigos ĉiujn enhavojn, aŭdovidaĵojn kaj datumojn de la konto. Uzu Nenio se vi simple volas malakcepti aŭdovidaĵojn."
noop: Nenio
- silence: Kaŝi
+ silence: Mutigi
suspend: Haltigi
title: Nova domajna blokado
obfuscate: Malklara domajna nomo
private_comment: Privata komento
public_comment: Publika komento
- reject_media: Malakcepti aŭdovidajn dosierojn
+ reject_media: Malakcepti la aŭdovidajn dosierojn
reject_media_hint: Forigas aŭdovidaĵojn loke konservitajn kaj rifuzas alŝuti ajnan estonte. Ne koncernas haltigojn
reject_reports: Malakcepti signalojn
reject_reports_hint: Ignori ĉiujn signalojn el tiu domajno. Ne koncernas haltigojn
@@ -398,6 +397,7 @@ eo:
by_domain: Domajno
content_policies:
policies:
+ reject_media: Malakcepti la aŭdovidaĵojn
reject_reports: Malakcepti raportojn
silence: Kaŝu
policy: Politiko
@@ -406,10 +406,12 @@ eo:
instance_accounts_measure: konservitaj kontoj
instance_followers_measure: niaj sekvantoj tie
instance_follows_measure: iliaj sekvantoj ĉi tie
+ instance_media_attachments_measure: stokitaj aŭdovidaj aldonaĵoj
instance_reports_measure: raportoj pri ili
instance_statuses_measure: konservitaj afiŝoj
delivery:
all: Ĉiuj
+ unavailable: Nedisponebla
delivery_available: Liverado disponeblas
empty: Neniuj domajnoj trovitaj.
moderation:
@@ -475,6 +477,8 @@ eo:
one: "%{count} noto"
other: "%{count} notoj"
action_taken_by: Ago farita de
+ actions:
+ other_description_html: Vidu pli da elektebloj por kontroli la agadon de la konto kaj personecigi la komunikadon kun la konto pri kiu raporto.
add_to_report: Aldoni pli al raporto
are_you_sure: Ĉu vi certas?
assign_to_self: Asigni al mi
@@ -512,6 +516,8 @@ eo:
unresolved: Nesolvitaj
updated_at: Ĝisdatigita
view_profile: Vidi profilon
+ roles:
+ everyone: Implicitaj permesoj
rules:
add_new: Aldoni regulon
delete: Forigi
@@ -547,7 +553,7 @@ eo:
desc_html: Nomoj de domajnoj, kiujn ĉi tiu servilo renkontis en la federauniverso
title: Publikigi liston de malkovritaj serviloj
preview_sensitive_media:
- desc_html: Antaŭvido de ligiloj en aliaj retejoj montros bildeton eĉ se la aŭdovidaĵo estas markita kiel tikla
+ desc_html: La antaŭmontroj de ligilo al la aliaj retejoj montros bildeton eĉ se la aŭdovidaĵo estas markita kiel tikla
title: Montri tiklajn aŭdovidaĵojn en la antaŭvidoj de OpenGraph
profile_directory:
desc_html: Permesi al uzantoj esti troveblaj
@@ -559,21 +565,15 @@ eo:
deletion:
desc_html: Permesi al iu ajn forigi propran konton
title: Permesi forigi konton
- min_invite_role:
- disabled: Neniu
- title: Permesi invitojn de
registrations_mode:
modes:
approved: Bezonas aprobi por aliĝi
none: Neniu povas aliĝi
open: Iu povas aliĝi
- title: Registrado modo
+ title: Reĝimo de registriĝo
show_known_fediverse_at_about_page:
desc_html: Kiam ŝaltita, ĝi montros mesaĝojn de la tuta konata fediverse antaŭvide. Aliokaze, ĝi montros nur lokajn mesaĝojn.
- title: Montri konatan fediverse en tempolinia antaŭvido
- show_staff_badge:
- desc_html: Montri teaman insignon en paĝo de uzanto
- title: Montri teaman insignon
+ title: Inkluzivi frataran enhavon en la neaŭtentigita publika antaŭmontro de templinio
site_description:
desc_html: Enkonduka alineo en la ĉefpaĝo. Priskribu la unikaĵojn de ĉi tiu nodo de Mastodon, kaj ĉiujn aliajn gravaĵojn. Vi povas uzi HTML-etikedojn, kiel <a>
kaj <em>
.
title: Priskribo de la servilo
@@ -585,14 +585,14 @@ eo:
title: Mallonga priskribo de la servilo
site_terms:
desc_html: Vi povas skribi vian propran privatecan politikon, viajn uzkondiĉojn aŭ aliajn leĝaĵojn. Vi povas uzi HTML-etikedojn
- title: Propraj uzkondiĉoj
+ title: Propraj kondiĉoj de la servo
site_title: Nomo de la servilo
thumbnail:
desc_html: Uzata por antaŭvidoj per OpenGraph kaj per API. 1200x630px rekomendita
title: Bildeto de la servilo
timeline_preview:
desc_html: Montri publikan templinion en komenca paĝo
- title: Tempolinia antaŭvido
+ title: Permesi la neaŭtentigitan aliron al la publika templinio
title: Retejaj agordoj
trends:
desc_html: Publike montri antaŭe kontrolitajn kradvortojn, kiuj nune furoras
@@ -615,6 +615,7 @@ eo:
actions:
delete_statuses: "%{name} forigis afiŝojn de %{target}"
disable: "%{name} malebligis la konton de %{target}"
+ suspend: "%{name} suspendis la konton de %{target}"
appeal_approved: Apelaciita
system_checks:
database_schema_check:
@@ -649,8 +650,8 @@ eo:
title: Tendencoj
warning_presets:
add_new: Aldoni novan
- delete: Forigi
- edit_preset: Redakti avertan antaŭagordon
+ delete: Forviŝi
+ edit_preset: Redakti la antaŭagordojn de averto
title: Administri avertajn antaŭagordojn
admin_mailer:
new_appeal:
@@ -710,6 +711,7 @@ eo:
description:
prefix_invited_by_user: "@%{name} invitigi vin aligiĝi ĉi tiu servilo de Mastodon!"
prefix_sign_up: Registriĝi ĉe Mastodon hodiaŭ!
+ suffix: Kun konto, vi povos sekvi aliajn homojn, skribi afiŝojn kaj interŝanĝi mesaĝojn kun la uzantoj de iu ajn Mastodon'a servilo kaj multe pli!
didnt_get_confirmation: Ĉu vi ne ricevis la instrukciojn por konfirmi?
dont_have_your_security_key: Ne havas vi vian sekurecan ŝlosilon?
forgot_password: Pasvorto forgesita?
@@ -727,7 +729,7 @@ eo:
register: Registriĝi
registration_closed: "%{instance} ne estas akcepti nova uzantojn"
resend_confirmation: Resendi la instrukciojn por konfirmi
- reset_password: Ŝanĝi pasvorton
+ reset_password: Restarigi pasvorton
security: Sekureco
set_new_password: Elekti novan pasvorton
setup:
@@ -759,7 +761,7 @@ eo:
invalid_signature: 올바른 Ed25519 시그니처가 아닙니다
date:
formats:
- default: "%Y-%m-%d "
+ default: "%d de %b %Y"
with_month_name: "%e-a de %B %Y"
datetime:
distance_in_words:
@@ -846,15 +848,23 @@ eo:
public: Publika templinio
thread: Konversacioj
edit:
+ add_keyword: Aldoni ĉefvorton
+ keywords: Ĉefvortoj
title: Ŝanĝi filtrilojn
errors:
invalid_context: Neniu aŭ nevalida kunteksto donita
- invalid_irreversible: Nemalfarebla filtrado funkcias nur por hejma aŭ sciiga kuntekstoj
index:
+ contexts: Filtri en %{contexts}
delete: Forigi
empty: Vi havas neniun filtrilon.
+ expires_in: Eksvalidiĝi en %{distance}
+ expires_on: Eksvalidiĝi je %{date}
+ keywords:
+ one: "%{count} ĉefvorto"
+ other: "%{count} ĉefvortoj"
title: Filtriloj
new:
+ save: Konservi novan filtrilon
title: Aldoni novan filtrilon
footer:
developers: Programistoj
@@ -1010,9 +1020,9 @@ eo:
wrong_code: La enmetita kodo estis nevalida! Ĉu la servila tempo kaj la aparata tempo ĝustas?
pagination:
newer: Pli nova
- next: Sekva
+ next: Antaŭen
older: Malpli nova
- prev: Antaŭa
+ prev: Malantaŭen
truncate: "…"
polls:
errors:
@@ -1027,7 +1037,7 @@ eo:
too_many_options: ne povas enhavi pli da %{max} proponoj
preferences:
other: Aliaj aferoj
- posting_defaults: Afiŝadoj defaŭltoj
+ posting_defaults: Implicitaj agordoj de afiŝado
public_timelines: Publikaj templinioj
reactions:
errors:
@@ -1060,13 +1070,15 @@ eo:
remote_interaction:
favourite:
proceed: Konfirmi la stelumon
- prompt: 'Vi volas stelumi ĉi tiun mesaĝon:'
+ prompt: 'Vi volas aldoni ĉi tiun mesaĝon al viaj preferaĵoj:'
reblog:
proceed: Konfirmi la diskonigon
prompt: 'Vi volas diskonigi ĉi tiun mesaĝon:'
reply:
proceed: Konfirmi la respondon
prompt: 'Vi volas respondi al ĉi tiu mesaĝo:'
+ rss:
+ content_warning: 'Averto pri enhavo:'
scheduled_statuses:
over_daily_limit: Vi transpasis la limigon al %{limit} samtage planitaj mesaĝoj
over_total_limit: Vi transpasis la limigon al %{limit} planitaj mesaĝoj
@@ -1125,7 +1137,7 @@ eo:
export: Eksporti datumojn
featured_tags: Elstarigitaj kradvortoj
import: Importi
- import_and_export: Alporto kaj elporto
+ import_and_export: Enporti kaj elporti
migrate: Konta migrado
notifications: Sciigoj
preferences: Preferoj
@@ -1146,7 +1158,8 @@ eo:
one: "%{count} video"
other: "%{count} videoj"
boosted_from_html: Diskonigita de %{acct_link}
- content_warning: 'Enhava averto: %{warning}'
+ content_warning: 'Averto de la enhavo: %{warning}'
+ default_language: Same kiel lingvo de la fasado
disallowed_hashtags:
one: 'enhavas malpermesitan kradvorton: %{tags}'
other: 'enhavis malpermesitan kradvorton: %{tags}'
@@ -1181,10 +1194,13 @@ eo:
statuses_cleanup:
enabled: Aŭtomate forigi malnovajn postojn
exceptions: Esceptoj
- ignore_favs: Ignori ŝatatajn
+ ignore_favs: Ignori la preferaĵojn
ignore_reblogs: Ignori akcelojn
keep_direct: Konservi rektajn mesaĝojn
keep_direct_hint: Ne forigos viajn rektajn mesagôjn
+ keep_media: Konservi la mesaĝojn kun aŭdovidaj aldonaĵoj
+ keep_media_hint: Ne forviŝi la mesaĝojn kiuj enhavas aŭdovidajn aldonaĵojn
+ keep_self_fav_hint: Ne forviŝi viajn proprajn afiŝojn, se vi aldonis ilin al viaj preferaĵoj
min_age:
'1209600': 2 semajnoj
'15778476': 6 monatoj
@@ -1208,7 +1224,7 @@ eo:
mastodon-light: Mastodon (Luma)
time:
formats:
- default: "%Y-%m-%d %H:%M"
+ default: "%Y.%b.%d, %H:%M"
month: "%b %Y"
time: "%H:%M"
two_factor_authentication:
@@ -1238,12 +1254,12 @@ eo:
disable: Via konto %{acct} estas frostigita
none: Averto por %{acct}
silence: Via konto %{acct} estas limigita
- suspend: Via konto %{acct} estas haltigita
+ suspend: Via konto %{acct} estas suspendita
title:
disable: Konto frostigita
none: Averto
silence: Konto limigita
- suspend: Konto haltigita
+ suspend: Konto suspendita
welcome:
edit_profile_action: Agordi profilon
edit_profile_step: Vi povas proprigi vian profilon per alŝuto de profilbildo, fonbildo, ŝanĝo de via afiŝita nomo kaj pli. Se vi ŝatus kontroli novajn sekvantojn antaŭ ol ili rajtas sekvi vin, vi povas ŝlosi vian konton.
@@ -1255,9 +1271,9 @@ eo:
review_preferences_action: Ŝanĝi preferojn
review_preferences_step: Estu certa ke vi agordis viajn preferojn, kiel kiujn retmesaĝojn vi ŝatus ricevi, aŭ kiun dekomencan privatecan nivelon vi ŝatus ke viaj mesaĝoj havu. Se tio ne ĝenas vin, vi povas ebligi aŭtomatan ekigon de GIF-oj.
subject: Bonvenon en Mastodon
- tip_federated_timeline: La federata templinio estas rekta vido de la reto de Mastodon. Sed ĝi inkluzivas nur personojn kiujn via najbaroj abonas, do ĝi ne estas kompleta.
+ tip_federated_timeline: La fratara templinio estas rekta montro de la reto de Mastodon. Sed ĝi inkluzivas nur personojn kiujn viaj najbaroj abonas, do ĝi ne estas kompleta.
tip_following: Vi dekomence sekvas la administrantojn de via servilo. Por trovi pli da interesaj homoj, rigardu la lokan kaj frataran templiniojn.
- tip_local_timeline: La loka templinio estas antaŭvido de la homoj en %{instance}. Ĉi tiuj estas viaj apudaj najbaroj!
+ tip_local_timeline: La loka templinio estas rekta montro de personoj ĉe %{instance}. Ĉi tiuj estas viaj senperaj najbaroj!
tip_mobile_webapp: Se via telefona retumilo proponas al vi aldoni Mastodon al via hejma ekrano, vi povas ricevi puŝsciigojn. Tio multmaniere funkcias kiel operaciuma aplikaĵo!
tips: Konsiloj
title: Bonvenon, %{name}!
diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml
index 79ae68bf45b..c4d9ee969b5 100644
--- a/config/locales/es-AR.yml
+++ b/config/locales/es-AR.yml
@@ -83,10 +83,8 @@ es-AR:
posts_tab_heading: Mensajes
posts_with_replies: Mensajes y respuestas
roles:
- admin: Administrador
bot: Bot
group: Grupo
- moderator: Moderador
unavailable: Perfil no disponible
unfollow: Dejar de seguir
admin:
@@ -105,12 +103,17 @@ es-AR:
avatar: Avatar
by_domain: Dominio
change_email:
- changed_msg: "¡Correo electrónico de cuenta cambiado exitosamente!"
+ changed_msg: "¡Correo electrónico cambiado exitosamente!"
current_email: Correo electrónico actual
label: Cambiar correo electrónico
new_email: Nuevo correo electrónico
submit: Cambiar correo electrónico
title: Cambiar correo electrónico para %{username}
+ change_role:
+ changed_msg: "¡Rol cambiado exitosamente!"
+ label: Cambiar rol
+ no_role: Sin rol
+ title: Cambiar rol para %{username}
confirm: Confirmar
confirmed: Confirmado
confirming: Confirmación
@@ -154,6 +157,7 @@ es-AR:
active: Activas
all: Todas
pending: Pendientes
+ silenced: Limitada
suspended: Suspendidas
title: Moderación
moderation_notes: Notas de moderación
@@ -161,6 +165,7 @@ es-AR:
most_recent_ip: Dirección IP más reciente
no_account_selected: No se cambió ninguna cuenta ya que ninguna fue seleccionada
no_limits_imposed: Sin límites impuestos
+ no_role_assigned: Sin rol asignado
not_subscribed: No suscripto
pending: Revisión pendiente
perform_full_suspension: Suspender
@@ -187,12 +192,7 @@ es-AR:
reset: Restablecer
reset_password: Cambiar contraseña
resubscribe: Resuscribir
- role: Permisos
- roles:
- admin: Administrador
- moderator: Moderador
- staff: Administración
- user: Usuario
+ role: Rol
search: Buscar
search_same_email_domain: Otros usuarios con el mismo dominio de correo electrónico
search_same_ip: Otros usuarios con la misma dirección IP
@@ -649,6 +649,67 @@ es-AR:
unresolved: No resueltas
updated_at: Actualizadas
view_profile: Ver perfil
+ roles:
+ add_new: Agregar rol
+ assigned_users:
+ one: "%{count} usuario"
+ other: "%{count} usuarios"
+ categories:
+ administration: Administración
+ devops: Operadores de desarrollo
+ invites: Invitaciones
+ moderation: Moderación
+ special: Especial
+ delete: Eliminar
+ description_html: Con roles de usuario, podés personalizar las funciones y áreas de Mastodon a las que pueden acceder tus usuarios.
+ edit: Editar rol de «%{name}»
+ everyone: Permisos predeterminados
+ everyone_full_description_html: Este es el rol base que afecta a todos los usuarios, incluso aquellos sin un rol asignado. Todos los otros roles heredan permisos de él.
+ permissions_count:
+ one: "%{count} permiso"
+ other: "%{count} permisos"
+ privileges:
+ administrator: Administrador
+ administrator_description: Los usuarios con este permiso saltarán todos los permisos
+ delete_user_data: Eliminar datos del usuario
+ delete_user_data_description: Permite a los usuarios eliminar los datos de otros usuarios sin demora
+ invite_users: Invitar usuarios
+ invite_users_description: Permite a los usuarios invitar a nuevas personas al servidor
+ manage_announcements: Administrar anuncios
+ manage_announcements_description: Permite a los usuarios administrar anuncios en el servidor
+ manage_appeals: Administrar apelaciones
+ manage_appeals_description: Permite a los usuarios revisar apelaciones contra acciones de moderación
+ manage_blocks: Administrar bloqueos
+ manage_blocks_description: Permite a los usuarios bloquear proveedores de correo electrónico y direcciones IP
+ manage_custom_emojis: Administrar emojis personalizados
+ manage_custom_emojis_description: Permite a los usuarios administrar emojis personalizados en el servidor
+ manage_federation: Administrar Federación
+ manage_federation_description: Permite a los usuarios bloquear o permitir la federación con otros dominios y controlar las entregas
+ manage_invites: Administrar invitaciones
+ manage_invites_description: Permite a los usuarios navegar y desactivar los enlaces de invitación
+ manage_reports: Administrar denuncias
+ manage_reports_description: Permite a los usuarios revisar denuncias y realizar acciones de moderación contra ellas
+ manage_roles: Administrar roles
+ manage_roles_description: Permite a los usuarios administrar y asignar roles por debajo de los suyos
+ manage_rules: Administrar reglas
+ manage_rules_description: Permite a los usuarios cambiar las reglas del servidor
+ manage_settings: Administrar configuración
+ manage_settings_description: Permite a los usuarios cambiar la configuración del sitio
+ manage_taxonomies: Administrar taxonomías
+ manage_taxonomies_description: Permite a los usuarios revisar el contenido de tendencia y actualizar la configuración de las etiquetas
+ manage_user_access: Administrar acceso de usuario
+ manage_user_access_description: Permite a los usuarios deshabilitar la autenticación de dos factores de otros usuarios, cambiar su dirección de correo electrónico y restablecer su contraseña
+ manage_users: Administrar usuarios
+ manage_users_description: Permite a los usuarios ver los detalles de otros usuarios y realizar acciones de moderación contra ellos
+ manage_webhooks: Administrar Webhooks
+ manage_webhooks_description: Permite a los usuarios configurar webhooks para eventos administrativos
+ view_audit_log: Ver auditoría
+ view_audit_log_description: Permite a los usuarios ver un historial de acciones administrativas en el servidor
+ view_dashboard: Ver panel
+ view_dashboard_description: Permite a los usuarios acceder al panel de control y varias métricas
+ view_devops: Operadores de desarrollo
+ view_devops_description: Permite a los usuarios acceder a los paneles de Sidekiq y pgHero
+ title: Roles
rules:
add_new: Agregar regla
delete: Eliminar
@@ -701,9 +762,6 @@ es-AR:
deletion:
desc_html: Permitir que cualquiera elimine su cuenta
title: Abrir eliminación de cuenta
- min_invite_role:
- disabled: Nadie
- title: Permitir invitaciones de
require_invite_text:
desc_html: Cuando los registros requieran aprobación manual, hacé que la solicitud de invitación "¿Por qué querés unirte?" sea obligatoria, en vez de opcional
title: Requerir que los nuevos usuarios llenen un texto de solicitud de invitación
@@ -716,9 +774,6 @@ es-AR:
show_known_fediverse_at_about_page:
desc_html: Cuando está deshabilitado, restringe la línea temporal pública enlazada desde la página de inicio para mostrar sólo contenido local
title: Incluir contenido federado en la página de línea temporal pública no autenticada
- show_staff_badge:
- desc_html: Mostrar una insignia de administración en la página de un usuario
- title: Mostrar insignia de administración
site_description:
desc_html: Párrafo introductorio en la API. Describe qué hace especial a este servidor de Mastodon y todo lo demás que sea importante. Podés usar etiquetas HTML, en particular <a>
y <em>
.
title: Descripción del servidor
@@ -1124,15 +1179,24 @@ es-AR:
public: Líneas temporales públicas
thread: Conversaciones
edit:
+ add_keyword: Agregar palabra clave
+ keywords: Palabras clave
title: Editar filtro
errors:
+ deprecated_api_multiple_keywords: Estos parámetros no se pueden cambiar de esta aplicación porque se aplican a más de una palabra clave de filtro. Usá una aplicación más reciente o la interface web.
invalid_context: Se suministró un contexto no válido o vacío
- invalid_irreversible: El filtrado irreversible sólo funciona con los contextos de "Principal" o de "Notificaciones"
index:
+ contexts: Filtros en %{contexts}
delete: Eliminar
empty: No tenés filtros.
+ expires_in: Caduca en %{distance}
+ expires_on: Caduca en %{date}
+ keywords:
+ one: "%{count} palabra clave"
+ other: "%{count} palabras clave"
title: Filtros
new:
+ save: Guardar nuevo filtro
title: Agregar nuevo filtro
footer:
developers: Desarrolladores
@@ -1251,6 +1315,8 @@ es-AR:
copy_account_note_text: 'Este usuario se mudó desde %{acct}, acá están tus notas previas sobre él/ella:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} envió una denuncia"
sign_up:
subject: Se registró %{name}
digest:
diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml
index f57fb960156..7ba46a89c30 100644
--- a/config/locales/es-MX.yml
+++ b/config/locales/es-MX.yml
@@ -83,10 +83,8 @@ es-MX:
posts_tab_heading: Toots
posts_with_replies: Toots con respuestas
roles:
- admin: Administrador
bot: Bot
group: Grupo
- moderator: Moderador
unavailable: Perfil no disponible
unfollow: Dejar de seguir
admin:
@@ -105,7 +103,6 @@ es-MX:
avatar: Foto de perfil
by_domain: Dominio
change_email:
- changed_msg: "¡El correo electrónico se ha actualizado correctamente!"
current_email: Correo electrónico actual
label: Cambiar el correo electrónico
new_email: Nuevo correo electrónico
@@ -187,12 +184,6 @@ es-MX:
reset: Reiniciar
reset_password: Reiniciar contraseña
resubscribe: Re-suscribir
- role: Permisos
- roles:
- admin: Administrador
- moderator: Moderador
- staff: Personal
- user: Usuario
search: Buscar
search_same_email_domain: Otros usuarios con el mismo dominio de correo
search_same_ip: Otros usuarios con la misma IP
@@ -701,9 +692,6 @@ es-MX:
deletion:
desc_html: Permite a cualquiera a eliminar su cuenta
title: Eliminación de cuenta abierta
- min_invite_role:
- disabled: Nadie
- title: Permitir invitaciones de
require_invite_text:
desc_html: Cuando los registros requieren aprobación manual, haga obligatorio en la invitaciones el campo "¿Por qué quieres unirte?" en lugar de opcional
title: Requiere a los nuevos usuarios rellenar un texto de solicitud de invitación
@@ -716,9 +704,6 @@ es-MX:
show_known_fediverse_at_about_page:
desc_html: Cuando esté activado, se mostrarán toots de todo el fediverso conocido en la vista previa. En otro caso, se mostrarán solamente toots locales.
title: Mostrar fediverso conocido en la vista previa de la historia
- show_staff_badge:
- desc_html: Mostrar un parche de staff en la página de un usuario
- title: Mostrar parche de staff
site_description:
desc_html: Párrafo introductorio en la portada y en meta tags. Puedes usar tags HTML, en particular <a>
y <em>
.
title: Descripción de instancia
@@ -852,6 +837,26 @@ es-MX:
edit_preset: Editar aviso predeterminado
empty: Aún no has definido ningún preajuste de advertencia.
title: Editar configuración predeterminada de avisos
+ webhooks:
+ add_new: Añadir endpoint
+ delete: Eliminar
+ description_html: Un webhook permite a Mastodon enviar notificaciones en tiempo real sobre los eventos elegidos a tu propia aplicación, para que tu aplicación pueda lanzar reacciones automáticamente.
+ disable: Deshabilitar
+ disabled: Deshabilitado
+ edit: Editar endpoint
+ empty: Aún no tienes ningún endpoint de webhook configurado.
+ enable: Habilitar
+ enabled: Activo
+ enabled_events:
+ one: 1 evento habilitado
+ other: "%{count} eventos habilitados"
+ events: Eventos
+ new: Nuevo webhook
+ rotate_secret: Rotar secreto
+ secret: Firmando secreto
+ status: Estado
+ title: Webhooks
+ webhook: Webhook
admin_mailer:
new_appeal:
actions:
@@ -1104,15 +1109,24 @@ es-MX:
public: Timeline público
thread: Conversaciones
edit:
+ add_keyword: Añadir palabra clave
+ keywords: Palabras clave
title: Editar filtro
errors:
+ deprecated_api_multiple_keywords: Estos parámetros no se pueden cambiar desde esta aplicación porque se aplican a más de una palabra clave de filtro. Utilice una aplicación más reciente o la interfaz web.
invalid_context: Se suminstró un contexto inválido o vacío
- invalid_irreversible: El filtrado irreversible solo funciona con los contextos propios o de notificaciones
index:
+ contexts: Filtros en %{contexts}
delete: Borrar
empty: No tienes filtros.
+ expires_in: Caduca en %{distance}
+ expires_on: Expira el %{date}
+ keywords:
+ one: "%{count} palabra clave"
+ other: "%{count} palabras clave"
title: Filtros
new:
+ save: Guardar nuevo filtro
title: Añadir un nuevo filtro
footer:
developers: Desarrolladores
@@ -1231,6 +1245,8 @@ es-MX:
copy_account_note_text: 'Este usuario se mudó desde %{acct}, aquí estaban tus notas anteriores sobre él:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} envió un informe"
sign_up:
subject: "%{name} se registró"
digest:
diff --git a/config/locales/es.yml b/config/locales/es.yml
index 96d985f530a..568ad46d914 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -83,10 +83,8 @@ es:
posts_tab_heading: Publicaciones
posts_with_replies: Publicaciones y respuestas
roles:
- admin: Administrador
bot: Bot
group: Grupo
- moderator: Moderador
unavailable: Perfil no disponible
unfollow: Dejar de seguir
admin:
@@ -105,12 +103,17 @@ es:
avatar: Avatar
by_domain: Dominio
change_email:
- changed_msg: "¡El correo electrónico se ha actualizado correctamente!"
+ changed_msg: "¡Email cambiado con éxito!"
current_email: Correo electrónico actual
label: Cambiar el correo electrónico
new_email: Nuevo correo electrónico
submit: Cambiar el correo electrónico
title: Cambiar el correo electrónico de %{username}
+ change_role:
+ changed_msg: "¡Rol cambiado con éxito!"
+ label: Cambiar rol
+ no_role: Sin rol
+ title: Cambiar rol para %{username}
confirm: Confirmar
confirmed: Confirmado
confirming: Confirmando
@@ -154,6 +157,7 @@ es:
active: Activo
all: Todos
pending: Pendiente
+ silenced: Limitado
suspended: Suspendidos
title: Moderación
moderation_notes: Notas de moderación
@@ -161,6 +165,7 @@ es:
most_recent_ip: IP más reciente
no_account_selected: Ninguna cuenta se cambió como ninguna fue seleccionada
no_limits_imposed: Sin límites impuestos
+ no_role_assigned: Ningún rol asignado
not_subscribed: No se está suscrito
pending: Revisión pendiente
perform_full_suspension: Suspender
@@ -187,12 +192,7 @@ es:
reset: Reiniciar
reset_password: Reiniciar contraseña
resubscribe: Re-suscribir
- role: Permisos
- roles:
- admin: Administrador
- moderator: Moderador
- staff: Personal
- user: Usuario
+ role: Rol
search: Buscar
search_same_email_domain: Otros usuarios con el mismo dominio de correo
search_same_ip: Otros usuarios con la misma IP
@@ -649,6 +649,67 @@ es:
unresolved: No resuelto
updated_at: Actualizado
view_profile: Ver perfil
+ roles:
+ add_new: Añadir rol
+ assigned_users:
+ one: "%{count} usuario"
+ other: "%{count} usuarios"
+ categories:
+ administration: Administración
+ devops: DevOps
+ invites: Invitaciones
+ moderation: Moderación
+ special: Especial
+ delete: Eliminar
+ description_html: Con roles de usuario, puede personalizar las funciones y áreas de Mastodon a las que pueden acceder sus usuarios.
+ edit: Editar rol '%{name}'
+ everyone: Permisos por defecto
+ everyone_full_description_html: Este es el rol base que afecta a todos los usuarios, incluso aquellos sin un rol asignado. Todos los otros roles heredan permisos de él.
+ permissions_count:
+ one: "%{count} permiso"
+ other: "%{count} permisos"
+ privileges:
+ administrator: Administrador
+ administrator_description: Los usuarios con este permiso saltarán todos los permisos
+ delete_user_data: Borrar Datos de Usuario
+ delete_user_data_description: Permite a los usuarios eliminar los datos de otros usuarios sin demora
+ invite_users: Invitar usuarios
+ invite_users_description: Permite a los usuarios invitar a nuevas personas al servidor
+ manage_announcements: Administrar Anuncios
+ manage_announcements_description: Permite a los usuarios gestionar anuncios en el servidor
+ manage_appeals: Administrar Apelaciones
+ manage_appeals_description: Permite a los usuarios revisar apelaciones contra acciones de moderación
+ manage_blocks: Administrar Bloqueos
+ manage_blocks_description: Permite a los usuarios bloquear los proveedores de e-mail y las direcciones IP
+ manage_custom_emojis: Administrar Emojis Personalizados
+ manage_custom_emojis_description: Permite a los usuarios gestionar emojis personalizados en el servidor
+ manage_federation: Administrar Federación
+ manage_federation_description: Permite a los usuarios bloquear o permitir la federación con otros dominios, y controlar la entregabilidad
+ manage_invites: Administrar Invitaciones
+ manage_invites_description: Permite a los usuarios navegar y desactivar los enlaces de invitación
+ manage_reports: Administrar Informes
+ manage_reports_description: Permite a los usuarios revisar informes y realizar acciones de moderación basadas en ellos
+ manage_roles: Administrar Roles
+ manage_roles_description: Permite a los usuarios administrar y asignar roles por debajo de los suyos
+ manage_rules: Gestionar Reglas
+ manage_rules_description: Permite a los usuarios cambiar las reglas del servidor
+ manage_settings: Administrar Ajustes
+ manage_settings_description: Permite a los usuarios cambiar la configuración del sitio
+ manage_taxonomies: Administrar Taxonomías
+ manage_taxonomies_description: Permite a los usuarios revisar el contenido en tendencia y actualizar la configuración de las etiquetas
+ manage_user_access: Administrar Acceso de Usuarios
+ manage_user_access_description: Permite a los usuarios desactivar la autenticación de dos factores de otros usuarios, cambiar su dirección de correo electrónico y restablecer su contraseña
+ manage_users: Administrar Usuarios
+ manage_users_description: Permite a los usuarios ver los detalles de otros usuarios y realizar acciones de moderación contra ellos
+ manage_webhooks: Administrar Webhooks
+ manage_webhooks_description: Permite a los usuarios configurar webhooks para eventos administrativos
+ view_audit_log: Ver Registro de Auditoría
+ view_audit_log_description: Permite a los usuarios ver un historial de acciones administrativas en el servidor
+ view_dashboard: Ver Panel de Control
+ view_dashboard_description: Permite a los usuarios acceder al panel de control y varias métricas
+ view_devops: DevOps
+ view_devops_description: Permite a los usuarios acceder a los paneles de control Sidekiq y pgHero
+ title: Roles
rules:
add_new: Añadir norma
delete: Eliminar
@@ -701,9 +762,6 @@ es:
deletion:
desc_html: Permite a cualquiera a eliminar su cuenta
title: Eliminación de cuenta abierta
- min_invite_role:
- disabled: Nadie
- title: Permitir invitaciones de
require_invite_text:
desc_html: Cuando los registros requieren aprobación manual, haga obligatorio en la invitaciones el campo "¿Por qué quieres unirte?" en lugar de opcional
title: Requiere a los nuevos usuarios rellenar un texto de solicitud de invitación
@@ -716,9 +774,6 @@ es:
show_known_fediverse_at_about_page:
desc_html: Cuando esté desactivado, se mostrarán solamente publicaciones locales en la línea temporal pública
title: Incluye contenido federado en la página de línea de tiempo pública no autenticada
- show_staff_badge:
- desc_html: Mostrar un parche de staff en la página de un usuario
- title: Mostrar parche de staff
site_description:
desc_html: Párrafo introductorio en la portada y en meta tags. Puedes usar tags HTML, en particular <a>
y <em>
.
title: Descripción de instancia
@@ -1124,15 +1179,24 @@ es:
public: Líneas de tiempo públicas
thread: Conversaciones
edit:
+ add_keyword: Añadir palabra clave
+ keywords: Palabras clave
title: Editar filtro
errors:
+ deprecated_api_multiple_keywords: Estos parámetros no se pueden cambiar desde esta aplicación porque se aplican a más de una palabra clave de filtro. Utilice una aplicación más reciente o la interfaz web.
invalid_context: Se suminstró un contexto inválido o vacío
- invalid_irreversible: El filtrado irreversible solo funciona con los contextos propios o de notificaciones
index:
+ contexts: Filtros en %{contexts}
delete: Borrar
empty: No tienes filtros.
+ expires_in: Caduca en %{distance}
+ expires_on: Expira el %{date}
+ keywords:
+ one: "%{count} palabra clave"
+ other: "%{count} palabras clave"
title: Filtros
new:
+ save: Guardar nuevo filtro
title: Añadir nuevo filtro
footer:
developers: Desarrolladores
@@ -1251,6 +1315,8 @@ es:
copy_account_note_text: 'Este usuario se mudó desde %{acct}, aquí estaban tus notas anteriores sobre él:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} envió un informe"
sign_up:
subject: "%{name} se registró"
digest:
diff --git a/config/locales/et.yml b/config/locales/et.yml
index a551ab42459..6aab7a219e4 100644
--- a/config/locales/et.yml
+++ b/config/locales/et.yml
@@ -75,10 +75,8 @@ et:
posts_tab_heading: Postitused
posts_with_replies: Postitused ja vastused
roles:
- admin: Administraator
bot: Robot
group: Grupp
- moderator: Moderaator
unavailable: Profiil pole saadaval
unfollow: Lõpeta jälgimine
admin:
@@ -96,7 +94,6 @@ et:
avatar: Profiilipilt
by_domain: Domeen
change_email:
- changed_msg: Konto e-postiaadress edukalt muudetud!
current_email: Praegune e-postiaadress
label: Muuda e-posti aadressi
new_email: Uus е-posti aadress
@@ -160,12 +157,6 @@ et:
reset: Lähtesta
reset_password: Lähtesta salasõna
resubscribe: Telli taas
- role: Õigused
- roles:
- admin: Administraator
- moderator: Moderaator
- staff: Personal
- user: Kasutaja
search: Otsi
search_same_email_domain: Muud kasutajad sama e-posti domeeniga
search_same_ip: Teised kasutajad, kellel on sama IP
@@ -443,9 +434,6 @@ et:
deletion:
desc_html: Luba kasutajatel oma konto kustutada
title: Ava kontode kustutamine
- min_invite_role:
- disabled: Mitte keegi
- title: Luba kutseid
registrations_mode:
modes:
approved: Kinnitus vajalik konto loomisel
@@ -455,9 +443,6 @@ et:
show_known_fediverse_at_about_page:
desc_html: Kui lubatud, näitab kõiki teatud fediversumi tuututusi. Vastasel juhul näidatakse ainult kohalike tuututusi.
title: Näita teatud fediversumit ajajoone eelvaates
- show_staff_badge:
- desc_html: Näita personalimärki kasutaja profiilil
- title: Näita personalimärki
site_description:
desc_html: Sissejuhatuslik lõik API kohta. Kirjelda, mis teeb selle Mastodoni serveri eriliseks ja ka muud tähtsat. Te saate kasutada HTMLi silte, peamiselt <a>
ja <em>
.
title: Serveri kirjeldus
@@ -683,7 +668,6 @@ et:
title: Muuda filtrit
errors:
invalid_context: Puudulik või vale kontekst
- invalid_irreversible: Taastamatu filter töötab ainult kodu või teavituste kontekstis
index:
delete: Kustuta
empty: Teil pole filtreid.
diff --git a/config/locales/eu.yml b/config/locales/eu.yml
index a71cd186d1e..3202b9b9c02 100644
--- a/config/locales/eu.yml
+++ b/config/locales/eu.yml
@@ -80,10 +80,8 @@ eu:
posts_tab_heading: Bidalketa
posts_with_replies: Bidalketak eta erantzunak
roles:
- admin: Administratzailea
bot: Bot-a
group: Taldea
- moderator: Moderatzailea
unavailable: Profila ez dago eskuragarri
unfollow: Utzi jarraitzeari
admin:
@@ -102,7 +100,6 @@ eu:
avatar: Abatarra
by_domain: Domeinua
change_email:
- changed_msg: e-mail kontua ongi aldatu da!
current_email: Uneko e-mail helbidea
label: Aldatu e-mail helbidea
new_email: E-mail berria
@@ -184,12 +181,6 @@ eu:
reset: Berrezarri
reset_password: Berrezarri pasahitza
resubscribe: Berriro harpidetu
- role: Baimenak
- roles:
- admin: Administratzailea
- moderator: Moderatzailea
- staff: Langilea
- user: Erabiltzailea
search: Bilatu
search_same_email_domain: E-mail domeinu bera duten beste erabiltzailean
search_same_ip: IP bera duten beste erabiltzaileak
@@ -674,9 +665,6 @@ eu:
deletion:
desc_html: Baimendu edonori bere kontua ezabatzea
title: Ireki kontu ezabaketa
- min_invite_role:
- disabled: Inor ez
- title: Baimendu hauen gobidapenak
require_invite_text:
desc_html: Izen emateak eskuz onartu behar direnean, "Zergatik elkartu nahi duzu?" testu sarrera derrigorrezko bezala ezarri, ez hautazko
title: Eskatu erabiltzaile berriei bat egiteko arrazoia sartzeko
@@ -689,9 +677,6 @@ eu:
show_known_fediverse_at_about_page:
desc_html: Txandakatzean, fedibertso ezagun osoko tootak bistaratuko ditu aurrebistan. Bestela, toot lokalak besterik ez ditu erakutsiko
title: Erakutsi fedibertsu ezagun osoko denbora-lerroa aurrebistan
- show_staff_badge:
- desc_html: Erakutsi langile banda erabiltzailearen orrian
- title: Erakutsi langile banda
site_description:
desc_html: Azaleko orrian agertuko den sarrera paragrafoa. Azaldu zerk egiten duen berezi Mastodon zerbitzari hau eta garrantzizko beste edozer. HTML etiketak erabili ditzakezu, zehazki <a>
eta <em>
.
title: Zerbitzariaren deskripzioa
@@ -1020,7 +1005,6 @@ eu:
title: Editatu iragazkia
errors:
invalid_context: Testuinguru baliogabe edo hutsa eman da
- invalid_irreversible: Behin betiko iragazketa hasiera edo jakinarazpenen testuinguruan besterik ez dabil
index:
delete: Ezabatu
empty: Ez duzu iragazkirik.
diff --git a/config/locales/fa.yml b/config/locales/fa.yml
index 93b766859a7..d6acaf5341c 100644
--- a/config/locales/fa.yml
+++ b/config/locales/fa.yml
@@ -82,10 +82,8 @@ fa:
posts_tab_heading: فرستهها
posts_with_replies: فرستهها و پاسخها
roles:
- admin: مدیر
bot: ربات
group: گروه
- moderator: ناظر
unavailable: نمایهٔ ناموجود
unfollow: پایان پیگیری
admin:
@@ -104,7 +102,6 @@ fa:
avatar: تصویر نمایه
by_domain: دامین
change_email:
- changed_msg: نشانی رایانامهٔ این حساب با موفقیت تغییر کرد!
current_email: رایانامهٔ کنونی
label: تغییر رایانامه
new_email: رایانامهٔ جدید
@@ -183,12 +180,6 @@ fa:
reset: بازنشانی
reset_password: بازنشانی رمز
resubscribe: اشتراک دوباره
- role: اجازهها
- roles:
- admin: مدیر
- moderator: ناظر
- staff: کارمند
- user: کاربر
search: جستجو
search_same_email_domain: دیگر کاربران با دامنهٔ رایانامهٔ یکسان
search_same_ip: دیگر کاربران با IP یکسان
@@ -654,9 +645,6 @@ fa:
deletion:
desc_html: هر کسی بتواند حساب خود را پاک کند
title: فعالسازی پاککردن حساب
- min_invite_role:
- disabled: هیچ کس
- title: اجازهٔ دعوت به
require_invite_text:
desc_html: زمانی که نامنویسی نیازمند تایید دستی است، متن «چرا میخواهید عضو شود؟» بخش درخواست دعوت را به جای اختیاری، اجباری کنید
title: نیازمند پر کردن متن درخواست دعوت توسط کاربران جدید
@@ -669,9 +657,6 @@ fa:
show_known_fediverse_at_about_page:
desc_html: اگر از کار انداخته شود، خطزمانی همگانی را محدود میکند؛ تا فقط محتوای محلّی را نمایش دهد.
title: نمایش سرورهای دیگر در پیشنمایش این سرور
- show_staff_badge:
- desc_html: نمایش علامت همکار روی صفحهٔ کاربر
- title: نمایش علامت همکار
site_description:
desc_html: معرفی کوتاهی دربارهٔ رابط برنامهنویسی کاربردی. دربارهٔ این که چه چیزی دربارهٔ این کارساز ماستودون ویژه است یا هر چیز مهم دیگری بنویسید. میتوانید HTML بنویسید، بهویژه <a>
و <em>
.
title: دربارهٔ این سرور
@@ -983,7 +968,6 @@ fa:
title: ویرایش پالایه
errors:
invalid_context: زمینهای موجود نیست یا نامعتبر است
- invalid_irreversible: پالایش برگشتناپذیر تنها در زمینهٔ خانه یا آگاهیها کار میکنند
index:
delete: پاککردن
empty: هیچ پالایهای ندارید.
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index ff369f2fe78..bbc44d644f1 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -82,10 +82,8 @@ fi:
posts_tab_heading: Julkaisut
posts_with_replies: Julkaisut ja vastaukset
roles:
- admin: Ylläpitäjä
bot: Botti
group: Ryhmä
- moderator: Moderaattori
unavailable: Profiili ei saatavilla
unfollow: Lopeta seuraaminen
admin:
@@ -104,7 +102,6 @@ fi:
avatar: Profiilikuva
by_domain: Verkkotunnus
change_email:
- changed_msg: Tilin sähköposti vaihdettu onnistuneesti!
current_email: Nykyinen sähköposti
label: Vaihda sähköposti
new_email: Uusi sähköposti
@@ -183,12 +180,6 @@ fi:
reset: Palauta
reset_password: Palauta salasana
resubscribe: Tilaa uudelleen
- role: Oikeudet
- roles:
- admin: Ylläpitäjä
- moderator: Moderaattori
- staff: Henkilöstö
- user: Käyttäjä
search: Hae
search_same_email_domain: Muut käyttäjät, joilla on sama sähköpostiverkkotunnus
search_same_ip: Muut käyttäjät samalla IP-osoitteella
@@ -657,9 +648,6 @@ fi:
deletion:
desc_html: Salli jokaisen poistaa oma tilinsä
title: Avoin tilin poisto
- min_invite_role:
- disabled: Ei kukaan
- title: Salli kutsut käyttäjältä
require_invite_text:
desc_html: Kun rekisteröinnit edellyttävät manuaalista hyväksyntää, tee “Miksi haluat liittyä?” teksti pakolliseksi eikä valinnaiseksi
title: Vaadi uusia käyttäjiä antamaan liittymisen syy
@@ -672,9 +660,6 @@ fi:
show_known_fediverse_at_about_page:
desc_html: Kun tämä on valittu, esikatselussa näytetään tuuttaukset kaikkialta tunnetusta fediversumista. Muutoin näytetään vain paikalliset tuuttaukset.
title: Näytä aikajanan esikatselussa koko tunnettu fediversumi
- show_staff_badge:
- desc_html: Näytä käyttäjäsivulla henkilöstömerkki
- title: Näytä henkilöstömerkki
site_description:
desc_html: Esittelykappale etusivulla ja metatunnisteissa. HTML-tagit käytössä, tärkeimmät ovat <a>
ja <em>
.
title: Instanssin kuvaus
@@ -1048,7 +1033,6 @@ fi:
title: Muokkaa suodatinta
errors:
invalid_context: Ei sisältöä tai se on virheellinen
- invalid_irreversible: Sen sijaan suodatus toimii vain kodin tai ilmoitusten yhteydessä
index:
delete: Poista
empty: Sinulla ei ole suodattimia.
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 5f74972f951..018dea3afb2 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -83,10 +83,8 @@ fr:
posts_tab_heading: Messages
posts_with_replies: Messages et réponses
roles:
- admin: Admin
bot: Robot
group: Groupe
- moderator: Modérateur·trice
unavailable: Profil non disponible
unfollow: Ne plus suivre
admin:
@@ -105,12 +103,17 @@ fr:
avatar: Avatar
by_domain: Domaine
change_email:
- changed_msg: Courriel du compte modifié avec succès !
+ changed_msg: Courriel modifié avec succès !
current_email: Courriel actuel
label: Modifier le courriel
new_email: Nouveau courriel
submit: Modifier le courriel
title: Modifier le courriel pour %{username}
+ change_role:
+ changed_msg: Rôle modifié avec succès !
+ label: Modifier le rôle
+ no_role: Aucun rôle
+ title: Modifier le rôle de %{username}
confirm: Confirmer
confirmed: Confirmé
confirming: Confirmation
@@ -154,6 +157,7 @@ fr:
active: Actifs
all: Tous
pending: En cours de traitement
+ silenced: Limité
suspended: Suspendus
title: Modération
moderation_notes: Notes de modération
@@ -161,6 +165,7 @@ fr:
most_recent_ip: Adresse IP la plus récente
no_account_selected: Aucun compte n’a été modifié, car aucun n’a été sélectionné
no_limits_imposed: Aucune limite imposée
+ no_role_assigned: Aucun rôle assigné
not_subscribed: Non abonné
pending: En attente d’approbation
perform_full_suspension: Suspendre
@@ -187,12 +192,7 @@ fr:
reset: Réinitialiser
reset_password: Réinitialiser le mot de passe
resubscribe: Se réabonner
- role: Permissions
- roles:
- admin: Administrateur
- moderator: Modérateur
- staff: Équipe
- user: Utilisateur
+ role: Rôle
search: Rechercher
search_same_email_domain: Autres utilisateurs·trices avec le même domaine de courriel
search_same_ip: Autres utilisateur·rice·s avec la même IP
@@ -234,7 +234,7 @@ fr:
approve_appeal: Approuver l'appel
approve_user: Approuver l’utilisateur
assigned_to_self_report: Affecter le signalement
- change_email_user: Modifier le courriel pour
+ change_email_user: Modifier le courriel pour ce compte
confirm_user: Confirmer l’utilisateur
create_account_warning: Créer une alerte
create_announcement: Créer une annonce
@@ -481,8 +481,8 @@ fr:
instances:
availability:
description_html:
- one: Si la livraison au domaine échoue pendant %{count} jour sans succès, aucune autre tentative de livraison ne sera faite à moins qu'une livraison depuis le domaine soit reçue.
- other: Si la livraison au domaine échoue pendant %{count} jours différents sans succès, aucune autre tentative de livraison ne sera faite à moins qu'une livraison depuis le domaine soit reçue.
+ one: Si la livraison au domaine échoue pendant %{count} jour, aucune autre tentative de livraison ne sera faite à moins qu'une livraison depuis le domaine ne soit reçue.
+ other: Si la livraison au domaine échoue pendant %{count} jours différents, aucune autre tentative de livraison ne sera faite à moins qu'une livraison depuis le domaine ne soit reçue.
failure_threshold_reached: Le seuil de défaillance a été atteint le %{date}.
failures_recorded:
one: Tentative échouée pendant %{count} jour.
@@ -649,6 +649,67 @@ fr:
unresolved: Non résolus
updated_at: Mis à jour
view_profile: Voir le profil
+ roles:
+ add_new: Ajouter un rôle
+ assigned_users:
+ one: "%{count} utilisateur·rice"
+ other: "%{count} utilisateur·rice·s"
+ categories:
+ administration: Administration
+ devops: Devops
+ invites: Invitations
+ moderation: Modération
+ special: Spécial
+ delete: Supprimer
+ description_html: Les rôles utilisateur vous permettent de personnaliser les fonctions et les zones de Mastodon auxquelles vos utilisateur⋅rice⋅s peuvent accéder.
+ edit: Modifier le rôle '%{name}'
+ everyone: Autorisations par défaut
+ everyone_full_description_html: Ceci est le rôle de base qui impacte tou⋅te⋅s les utilisateur⋅rice⋅s, même celleux sans rôle assigné. Tous les autres rôles héritent des autorisations de celui-ci.
+ permissions_count:
+ one: "%{count} autorisation"
+ other: "%{count} autorisations"
+ privileges:
+ administrator: Administrateur·rice
+ administrator_description: Les utilisateur⋅rice⋅s ayant cette autorisation pourront contourner toutes les autorisations
+ delete_user_data: Supprimer les données de l'utilisateur⋅rice
+ delete_user_data_description: Permet aux utilisateur⋅rice⋅s de supprimer sans délai les données des autres utilisateur⋅rice⋅s
+ invite_users: Inviter des utilisateur⋅rice⋅s
+ invite_users_description: Permet aux utilisateur⋅rice⋅s d'inviter de nouvelles personnes sur le serveur
+ manage_announcements: Gérer les annonces
+ manage_announcements_description: Permet aux utilisateur⋅rice⋅s de gérer les annonces sur le serveur
+ manage_appeals: Gérer les contestations
+ manage_appeals_description: Permet aux utilisateur⋅rice⋅s d'examiner les appels contre les actions de modération
+ manage_blocks: Gérer les blocages
+ manage_blocks_description: Permet aux utilisateur⋅rice⋅s de bloquer des fournisseurs de courriel et des adresses IP
+ manage_custom_emojis: Gérer les émojis personnalisés
+ manage_custom_emojis_description: Permet aux utilisateur⋅rice⋅s de gérer les émoticônes personnalisées sur le serveur
+ manage_federation: Gérer de la féderation
+ manage_federation_description: Permet aux utilisateur⋅rice⋅s de bloquer ou d'autoriser la fédération avec d'autres domaines, et de contrôler la capacité de livraison
+ manage_invites: Gérer les invitations
+ manage_invites_description: Permet aux utilisateur⋅rice⋅s de parcourir et de désactiver les liens d'invitation
+ manage_reports: Gérer les rapports
+ manage_reports_description: Permet aux utilisateur⋅rice⋅s d'examiner les signalements et d'effectuer des actions de modération en conséquence
+ manage_roles: Gérer les rôles
+ manage_roles_description: Permet aux utilisateur⋅rice⋅s de gérer et d'assigner des rôles inférieurs au leur
+ manage_rules: Gérer les règles
+ manage_rules_description: Permet aux utilisateur·rice·s de modifier les règles du serveur
+ manage_settings: Gérer les paramètres
+ manage_settings_description: Permet aux utilisateur·rice·s de modifier les paramètres du site
+ manage_taxonomies: Gérer les taxonomies
+ manage_taxonomies_description: Permet aux utilisateur⋅rice⋅s d'examiner les contenus tendance et de mettre à jour les paramètres des hashtags
+ manage_user_access: Gérer l'accès utilisateur
+ manage_user_access_description: Permet aux utilisateur⋅rice⋅s de désactiver l'authentification à deux facteurs, de modifier l'adresse courriel et de réinitialiser le mot de passe des autres utilisateur⋅rice⋅s
+ manage_users: Gérer les utilisateur·rice·s
+ manage_users_description: Permet aux utilisateur⋅rice⋅s de voir les détails des autres utilisateur⋅rice⋅s et d'effectuer des actions de modération en conséquence
+ manage_webhooks: Gérer les points d’ancrage web
+ manage_webhooks_description: Permet aux utilisateur⋅rice⋅s de configurer des webhooks pour des événements d'administration
+ view_audit_log: Afficher le journal d'audit
+ view_audit_log_description: Permet aux utilisateur⋅rice⋅s de voir l'historique des opérations d'administration sur le serveur
+ view_dashboard: Voir le tableau de bord
+ view_dashboard_description: Permet aux utilisateur⋅rice⋅s d'accéder au tableau de bord et à diverses statistiques
+ view_devops: Devops
+ view_devops_description: Permet aux utilisateur⋅rice⋅s d'accéder aux tableaux de bord Sidekiq et pgHero
+ title: Rôles
rules:
add_new: Ajouter une règle
delete: Supprimer
@@ -701,9 +762,6 @@ fr:
deletion:
desc_html: Permettre à tou·te·s les utilisateur·rice·s de supprimer leur compte
title: Autoriser les suppressions de compte
- min_invite_role:
- disabled: Personne
- title: Autoriser les invitations par
require_invite_text:
desc_html: Lorsque les enregistrements nécessitent une approbation manuelle, rendre le texte de l’invitation "Pourquoi voulez-vous vous inscrire ?" obligatoire plutôt que facultatif
title: Exiger que les nouveaux utilisateurs remplissent un texte de demande d’invitation
@@ -716,9 +774,6 @@ fr:
show_known_fediverse_at_about_page:
desc_html: Lorsque désactivée, restreint le fil public accessible via la page d’accueil de l’instance pour ne montrer que le contenu local
title: Inclure le contenu fédéré sur la page de fil public sans authentification
- show_staff_badge:
- desc_html: Montrer un badge de responsable sur une page utilisateur·rice
- title: Montrer un badge de responsable
site_description:
desc_html: Paragraphe introductif sur l'API. Décrivez les particularités de ce serveur Mastodon et précisez toute autre chose qui vous semble importante. Vous pouvez utiliser des balises HTML, en particulier <a>
et <em>
.
title: Description du serveur
@@ -868,6 +923,7 @@ fr:
events: Événements
new: Nouveau point d’ancrage web
rotate_secret: Effectuer une rotation du secret
+ secret: Jeton de connexion
status: État
title: Points d’ancrage web
webhook: Point d’ancrage web
@@ -1123,15 +1179,24 @@ fr:
public: Fils publics
thread: Discussions
edit:
+ add_keyword: Ajouter un mot-clé
+ keywords: Mots-clés
title: Éditer le filtre
errors:
+ deprecated_api_multiple_keywords: Ces paramètres ne peuvent pas être modifiés depuis cette application, car ils s'appliquent à plus d'un filtre de mot-clé. Utilisez une application plus récente ou l'interface web.
invalid_context: Contexte invalide ou insuffisant
- invalid_irreversible: Le filtrage irréversible ne fonctionne que pour l’accueil et les notifications
index:
+ contexts: Filtres dans %{contexts}
delete: Supprimer
empty: Vous n'avez aucun filtre.
+ expires_in: Expire dans %{distance}
+ expires_on: Expire le %{date}
+ keywords:
+ one: "%{count} mot-clé"
+ other: "%{count} mots-clés"
title: Filtres
new:
+ save: Enregistrer le nouveau filtre
title: Ajouter un nouveau filtre
footer:
developers: Développeurs
@@ -1250,6 +1315,8 @@ fr:
copy_account_note_text: 'Cet·te utilisateur·rice est parti·e de %{acct}, voici vos notes précédentes à son sujet :'
notification_mailer:
admin:
+ report:
+ subject: "%{name} a soumis un signalement"
sign_up:
subject: "%{name} s'est inscrit·e"
digest:
@@ -1544,6 +1611,87 @@ fr:
tags:
does_not_match_previous_name: ne correspond pas au nom précédent
terms:
+ body_html: |
+
Toutes les informations que nous collectons sur vous peuvent être utilisées des manières suivantes :
+ +Nous mettons en œuvre une variété de mesures de sécurité afin de garantir la sécurité de vos informations personnelles quand vous les saisissez, les soumettez et les consultez. Entre autres choses, votre session de navigation ainsi que le trafic entre votre application et l’API sont protégées par un certificat SSL ; tandis que votre mot de passe est haché à l'aide d'un puissant algorithme à sens unique. Vous pouvez également activer l’authentification à deux facteurs pour sécuriser encore plus l’accès à votre compte.
+ +Nous ferons un effort de bonne foi pour :
+ +Vous pouvez demander à télécharger une archive de votre contenu, incluant vos posts, vos médias joints, votre image de profil et votre image d’en-tête.
+ +Vous pouvez supprimer votre compte de manière définitive à tout moment.
+ +Oui. Les témoins de connexion sont de petits fichiers qu’un site ou un service transfère sur le disque dur de votre ordinateur via votre navigateur web (si vous l’y avez autorisé). Ces témoins permettent au site de reconnaître votre navigateur et, dans le cas où vous possédez un compte, de vous associer avec ce dernier.
+ +Nous utilisons les témoins de connexion afin de comprendre et de sauvegarder vos préférences pour vos prochaines visites.
+ +Nous ne vendons, n’échangeons ou ne transférons d’une quelconque manière que ce soit des informations permettant de vous identifier personnellement. Cela n’inclut pas les tiers de confiance qui nous aident à faire fonctionner ce site, à conduire nos activités commerciales ou à vous servir, du moment qu’ils acceptent de garder ces informations confidentielles. Nous sommes également susceptibles de partager vos informations quand nous pensons que cela est nécessaire pour nous conformer à la loi, pour faire respecter les règles de notre site, ainsi que pour défendre nos droits, notre propriété, notre sécurité, ou ceux d’autres personnes.
+ +Votre contenu public peut être téléchargé par d’autres serveurs du réseau. Dans le cas où vos abonné·e·s et vos destinataires résident sur des serveurs différents du vôtre, vos posts publics et abonné·e·s uniquement sont délivrés vers les serveurs de vos abonné·e·s tandis que vos messages directs sont délivrés aux serveurs de vos destinataires.
+ +Quand vous autorisez une application à utiliser votre compte, en fonction de l’étendue des permissions que vous approuvez, il est possible qu’elle puisse accéder aux informations publiques de votre profil, à votre liste d’abonnements, votre liste d’abonné·e·s, vos listes, tous vos posts et vos favoris. Les applications ne peuvent en aucun cas accéder à votre adresse électronique et à votre mot de passe.
+ +Si ce serveur est situé dans l’UE ou l’EEE : notre site, nos produits et nos services sont tous destinés à des personnes âgées de 16 ans ou plus. Si vous avez moins de 16 ans, en application du RGPD (Réglement Général sur la Protection des Données), merci de ne pas utiliser ce site.
+ +Si ce serveur est situé aux États-Unis d’Amérique : notre site, nos produits et nos services sont tous destinés à des personnes âgées de 13 ans ou plus. Si vous avez moins de 13 ans, en application du COPPA (Children's Online Privacy Protection Act), merci de ne pas utiliser ce site.
+ +Les exigences légales peuvent être différentes si ce serveur dépend d'une autre juridiction.
+ +Dans le cas où nous déciderions de changer notre politique de confidentialité, nous posterons les modifications sur cette page.
+ +Ce document est publié sous licence CC-BY-SA. Il a été mis à jour pour la dernière fois le 26 mai 2022.
+ +Initialement adapté de la politique de confidentialité de Discourse.
title: Conditions d’utilisation et politique de confidentialité de %{instance} themes: contrast: Mastodon (Contraste élevé) diff --git a/config/locales/ga.yml b/config/locales/ga.yml index 8a280c00122..19a67a8ec3a 100644 --- a/config/locales/ga.yml +++ b/config/locales/ga.yml @@ -11,7 +11,6 @@ ga: roles: bot: Róbat group: Grúpa - moderator: Modhnóir unfollow: Ná lean admin: accounts: @@ -27,11 +26,6 @@ ga: all: Uile public: Poiblí reject: Diúltaigh - roles: - admin: Riarthóir - moderator: Modhnóir - staff: Foireann - user: Úsáideoir search: Cuardaigh statuses: Postálacha title: Cuntais diff --git a/config/locales/gd.yml b/config/locales/gd.yml index 387ba6c2a38..bdbd26199f8 100644 --- a/config/locales/gd.yml +++ b/config/locales/gd.yml @@ -90,10 +90,8 @@ gd: posts_tab_heading: Postaichean posts_with_replies: Postaichean ’s freagairtean roles: - admin: Rianaire bot: Bot group: Buidheann - moderator: Maor unavailable: Chan eil a’ phròifil ri làimh unfollow: Na lean tuilleadh admin: @@ -112,7 +110,6 @@ gd: avatar: Avatar by_domain: Àrainn change_email: - changed_msg: Chaidh post-d a’ chunntais atharrachadh! current_email: Am post-d làithreach label: Atharraich am post-d new_email: Post-d ùr @@ -196,12 +193,6 @@ gd: reset: Ath-shuidhich reset_password: Ath-shuidhich am facal-faire resubscribe: Fo-sgrìobh a-rithist - role: Ceadan - roles: - admin: Rianaire - moderator: Maor - staff: Ball dhen sgioba - user: Cleachdaiche search: Lorg search_same_email_domain: Cleachdaichean eile aig a bheil an aon àrainn puist-d search_same_ip: Cleachdaichean eile aig a bheil an t-aon IP @@ -728,9 +719,6 @@ gd: deletion: desc_html: Leig le neach sa bith an cunntas a sguabadh às title: Fosgail sguabadh às chunntasan - min_invite_role: - disabled: Na ceadaich idir - title: Ceadaich cuiridhean le require_invite_text: desc_html: Nuair a bhios aontachadh a làimh riatanach dhan chlàradh, dèan an raon teacsa “Carson a bu mhiann leat ballrachd fhaighinn?” riatanach seach roghainneil title: Iarr air cleachdaichean ùra gun innis iad carson a tha iad ag iarraidh ballrachd @@ -743,9 +731,6 @@ gd: show_known_fediverse_at_about_page: desc_html: Nuair a bhios seo à comas, cha sheall an loidhne-ama phoblach a thèid a cheangal rithe on duilleag-landaidh ach susbaint ionadail title: Gabh a-staigh susbaint cho-naisgte air duilleag na loidhne-ama poblaich gun ùghdarrachadh - show_staff_badge: - desc_html: Seall bràist sgioba air duilleag cleachdaiche - title: Seall bràist sgioba site_description: desc_html: Earrann tuairisgeil air an API. Mìnich dè tha sònraichte mun fhrithealaiche Mastodon seo agus rud sa bith eile a tha cudromach. ’S urrainn dhut tagaichean HTML a chleachdadh agus<a>
’s <em>
gu sònraichte.
title: Tuairisgeul an fhrithealaiche
@@ -1140,7 +1125,6 @@ gd:
title: Deasaich a’ chriathrag
errors:
invalid_context: Cha deach co-theacs a sholar no tha e mì-dhligheach
- invalid_irreversible: Chan obraich criathradh buan ach ann an co-theacsa na dachaigh no na brathan
index:
delete: Sguab às
empty: Chan eil criathrag agad.
diff --git a/config/locales/gl.yml b/config/locales/gl.yml
index 10454b5fde3..a5baa17f28c 100644
--- a/config/locales/gl.yml
+++ b/config/locales/gl.yml
@@ -83,10 +83,8 @@ gl:
posts_tab_heading: Publicacións
posts_with_replies: Publicacións e respostas
roles:
- admin: Administradora
bot: Bot
group: Grupo
- moderator: Moderadora
unavailable: Perfil non dispoñíbel
unfollow: Deixar de seguir
admin:
@@ -105,12 +103,17 @@ gl:
avatar: Imaxe de perfil
by_domain: Dominio
change_email:
- changed_msg: Email da conta mudado de xeito correcto!
+ changed_msg: Email mudado de xeito correcto!
current_email: Email actual
label: Mudar email
new_email: Novo email
submit: Mudar email
title: Mudar email de %{username}
+ change_role:
+ changed_msg: Rol mudado correctamente!
+ label: Cambiar rol
+ no_role: Sen rol
+ title: Cambiar o rol de %{username}
confirm: Confirmar
confirmed: Confirmado
confirming: Estase a confirmar
@@ -154,6 +157,7 @@ gl:
active: Activa
all: Todo
pending: Pendente
+ silenced: Limitada
suspended: Suspendidos
title: Moderación
moderation_notes: Notas de moderación
@@ -161,6 +165,7 @@ gl:
most_recent_ip: IP máis recente
no_account_selected: Ningunha conta mudou porque ningunha foi seleccionada
no_limits_imposed: Sen límites impostos
+ no_role_assigned: Sen rol asignado
not_subscribed: Non subscrita
pending: Revisión pendente
perform_full_suspension: Suspender
@@ -187,12 +192,7 @@ gl:
reset: Restabelecer
reset_password: Restabelecer contrasinal
resubscribe: Resubscribir
- role: Permisos
- roles:
- admin: Administrador
- moderator: Moderador
- staff: Persoal (staff)
- user: Usuaria
+ role: Rol
search: Procurar
search_same_email_domain: Outras usuarias co mesmo dominio de email
search_same_ip: Outras usuarias co mesmo IP
@@ -601,7 +601,7 @@ gl:
delete_description_html: As publicacións denunciadas van ser eliminadas e gárdase un aviso para axudarche a xestionar futuras infraccións desta conta.
mark_as_sensitive_description_html: Os multimedia das publicacións denunciadas serán marcados como sensibles e engadirase un aviso para axudarche a xestionar futuras infraccións da mesma conta.
other_description_html: Mira máis opcións para controlar o comportamento da conta e personalizar as comunicacións coa conta denunciada.
- resolve_description_html: Non se van tomar accións contra a conta denunciada, nin se gardan avisos, e a denuncia arquivada.
+ resolve_description_html: Non se van tomar accións contra a conta denunciada, nin se gardarán avisos, e pecharase a denuncia.
silence_description_html: O perfil será visible só para quen xa o está a seguir ou quen o buscou manualmente, limitando moito o seu alcance. Pódese cambiar.
suspend_description_html: O perfil e tódolos seus contidos será inaccesbles e finalmente eliminados. A interacción coa conta non será posible. Reversible durante 30 días.
actions_description_html: Decide que acción tomar respecto desta denuncia. Se tomas accións punitivas contra a conta denunciada, enviaráselles un email coa notificación, excepto se está seleccionada a categoría Spam.
@@ -631,7 +631,7 @@ gl:
placeholder: Describir que accións foron tomadas ou calquera outra novidade sobre esta denuncia...
title: Notas
notes_description_html: Ver e deixar unha nota para ti no futuro e outras moderadoras
- quick_actions_description_html: 'Tomar unha acción rápida ou desprázate abaixo para ver o contido denunciado:'
+ quick_actions_description_html: 'Toma unha acción rápida ou desprázate abaixo para ver o contido denunciado:'
remote_user_placeholder: a usuaria remota desde %{instance}
reopen: Reabrir denuncia
report: 'Denuncia #%{id}'
@@ -649,6 +649,67 @@ gl:
unresolved: Non resolto
updated_at: Actualizado
view_profile: Ver perfil
+ roles:
+ add_new: Engadir rol
+ assigned_users:
+ one: "%{count} usuaria"
+ other: "%{count} usuarias"
+ categories:
+ administration: Administración
+ devops: DevOps
+ invites: Convites
+ moderation: Moderación
+ special: Especial
+ delete: Eliminar
+ description_html: Cos roles das usuarias podes personalizar as funcións e áreas de Mastodon ás que as usuarias poden acceder.
+ edit: Editar rol '%{name}'
+ everyone: Permisos por defecto
+ everyone_full_description_html: Este é o rol básico que afecta a tódalas usuarias, incluso aquelas sen un rol asignado. Tódolos outros roles herdan os seus permisos.
+ permissions_count:
+ one: "%{count} permiso"
+ other: "%{count} permisos"
+ privileges:
+ administrator: Administradora
+ administrator_description: As usuarias con este permiso poderán superar calquera restrición
+ delete_user_data: Eliminar datos de usuarias
+ delete_user_data_description: Permite eliminar datos doutras usuarias sen demoras
+ invite_users: Convidar usuarias
+ invite_users_description: Permite que outras usuarias conviden a xente ao servidor
+ manage_announcements: Xestionar anuncios
+ manage_announcements_description: Permite que xestionen os anuncios publicados no servidor
+ manage_appeals: Xestionar recursos
+ manage_appeals_description: Permite revisar as apelacións contra as accións de moderación
+ manage_blocks: Xestionar bloqueos
+ manage_blocks_description: Permite bloquear provedores de email e enderezos IP
+ manage_custom_emojis: Xestionar Emojis personalizados
+ manage_custom_emojis_description: Permite xestionar os emojis personalizados do servidor
+ manage_federation: Xestionar a federación
+ manage_federation_description: Permite bloquear ou permitir a federación con outros dominios, e controlar as entregas
+ manage_invites: Xestionar Convites
+ manage_invites_description: Permite ver e desactivar ligazóns de convite
+ manage_reports: Xestionar Denuncias
+ manage_reports_description: Permite revisar as denuncias e realizar accións de moderación sobre elas
+ manage_roles: Xestionar Roles
+ manage_roles_description: Permite xestionar e asignar roles a niveis inferiores
+ manage_rules: Xestionar Regras
+ manage_rules_description: Permite cambiar as regras do servidor
+ manage_settings: Xestionar Axustes
+ manage_settings_description: Permite cambiar os axustes do sitio web
+ manage_taxonomies: Xestionar Taxonomías
+ manage_taxonomies_description: Permite revisar o contido en voga e actualizar os axustes dos cancelos
+ manage_user_access: Xestionar Acceso das usuarias
+ manage_user_access_description: Permite desactivar o segundo factor de autenticación doutras usuarias, cambiar o enderezo de email e restablecer o contrasinal
+ manage_users: Xestionar Usuarias
+ manage_users_description: Permite ver os detalles doutras usuarias e realizar accións de moderación sobre elas
+ manage_webhooks: Xestionar Webhooks
+ manage_webhooks_description: Permite establecer webhooks para eventos administrativos
+ view_audit_log: Ver Rexistro de auditoría
+ view_audit_log_description: Permite ver o historial de accións administrativas no servidor
+ view_dashboard: Ver Taboleiro
+ view_dashboard_description: Permite acceder ao taboleiro e varias métricas do servidor
+ view_devops: Devops
+ view_devops_description: Permite acceder aos taboleiros Sidekiq e phHero
+ title: Roles
rules:
add_new: Engadir regra
delete: Eliminar
@@ -701,9 +762,6 @@ gl:
deletion:
desc_html: Permitirlle a calquera que elimine a súa conta
title: Abrir o borrado da conta
- min_invite_role:
- disabled: Ninguén
- title: Permitir convites por
require_invite_text:
desc_html: Cando os rexistros requiren aprobación manual, facer que o texto "Por que te queres rexistrar?" do convite sexa obrigatorio en lugar de optativo
title: Require que as novas usuarias completen solicitude de texto do convite
@@ -716,9 +774,6 @@ gl:
show_known_fediverse_at_about_page:
desc_html: Si activado, mostraralle os toots de todo o fediverso coñecido nunha vista previa. Si non só mostrará os toots locais.
title: Incluír contido federado na páxina da cronoloxía pública sen autenticación
- show_staff_badge:
- desc_html: Mostrar unha insignia de membresía nunha páxina de usuaria
- title: Mostrar insigna de membresía
site_description:
desc_html: Parágrafo de presentación na páxina principal. Describe o que fai especial a este servidor Mastodon e calquera outra ouca importante. Pode utilizar cancelos HTML, en particular <a>
e <em>
.
title: Descrición do servidor
@@ -1124,15 +1179,24 @@ gl:
public: Cronoloxías públicas
thread: Conversas
edit:
+ add_keyword: Engadir palabra chave
+ keywords: Palabras chave
title: Editar filtro
errors:
+ deprecated_api_multiple_keywords: Estes parámetros non se poden cambiar desde esta aplicación porque son de aplicación a máis dun filtro de palabras chave. Usa unha aplicación máis recente ou a interface web.
invalid_context: Non se proporcionou un contexto válido
- invalid_irreversible: O filtrado non reversible só funciona con contexto de avisos ou Inicio
index:
+ contexts: Filtros para %{contexts}
delete: Eliminar
empty: Non tes filtros.
+ expires_in: Caduca en %{distance}
+ expires_on: Caduca o %{date}
+ keywords:
+ one: "%{count} palabra chave"
+ other: "%{count} palabras chave"
title: Filtros
new:
+ save: Gardar o novo filtro
title: Engadir novo filtro
footer:
developers: Desenvolvedoras
@@ -1251,6 +1315,8 @@ gl:
copy_account_note_text: 'Esta usuaria chegou desde %{acct}, aquí están as túas notas previas acerca dela:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} enviou unha denuncia"
sign_up:
subject: "%{name} rexistrouse"
digest:
@@ -1279,7 +1345,7 @@ gl:
title: Nova petición de seguimento
mention:
action: Responder
- body: 'Foi mencionada por %{name} en:'
+ body: "%{name} mencionoute en:"
subject: Foches mencionada por %{name}
title: Nova mención
poll:
diff --git a/config/locales/he.yml b/config/locales/he.yml
index 04003412559..4daa4f3b6d3 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -90,10 +90,8 @@ he:
posts_tab_heading: חצרוצים
posts_with_replies: חצרוצים ותגובות
roles:
- admin: מנהל
bot: בוט
group: קבוצה
- moderator: מנחה
unavailable: פרופיל לא זמין
unfollow: הפסקת מעקב
admin:
@@ -112,7 +110,6 @@ he:
avatar: יַצְגָן
by_domain: שם מתחם
change_email:
- changed_msg: כתובת הדוא"ל המשוייכת לחשבון שונתה בהצלחה !
current_email: כתובת דוא"ל נוכחית
label: שינוי כתובת דוא"ל משוייכת לחשבון
new_email: כתובת דוא"ל חדשה
@@ -196,12 +193,6 @@ he:
reset: איפוס
reset_password: אתחול סיסמא
resubscribe: להרשם מחדש
- role: הרשאות
- roles:
- admin: מנהל מערכת
- moderator: מנחה דיונים
- staff: צוות
- user: משתמש(ת)
search: חיפוש
search_same_email_domain: משתמשים אחרים מאותו דומיין דוא"ל
search_same_ip: משתמשים אחרים מאותה כתובת IP
@@ -727,9 +718,6 @@ he:
deletion:
desc_html: הרשאה לכולם למחוק את חשבונם
title: פתיחת מחיקת חשבון
- min_invite_role:
- disabled: אף אחד
- title: אפשר הזמנות לפי
require_invite_text:
desc_html: כאשר הרשמות דורשות אישור ידני, הפיכת טקסט ה"מדוע את/ה רוצה להצטרף" להכרחי במקום אופציונלי
title: אלץ משתמשים חדשים למלא סיבת הצטרפות
@@ -742,9 +730,6 @@ he:
show_known_fediverse_at_about_page:
desc_html: כאשר לא מופעל, מגביל את הפיד הפומבי המקושר מדף הנחיתה להצגת תוכן מקומי בלבד
title: הכללת תוכן פדרטיבי בדף הפיד הפומבי הבלתי מאומת
- show_staff_badge:
- desc_html: הצג תג צוות בדף המשתמש
- title: הצג תג צוות
site_description:
desc_html: מוצג כפסקה על הדף הראשי ומשמש כתגית מטא. ניתן להשתמש בתגיות HTML, ובמיוחד ב־ < a>
ו־ < em>
.
title: תיאור האתר
@@ -1145,7 +1130,6 @@ he:
title: ערוך מסנן
errors:
invalid_context: לא סופק הקשר או הקשר לא תקין
- invalid_irreversible: סינון בלתי הפיך עובד רק בהקשר פיד הבית או התראות
index:
delete: למחוק
empty: אין לך מסננים.
diff --git a/config/locales/hr.yml b/config/locales/hr.yml
index fd90a5ac469..3a2af1662d8 100644
--- a/config/locales/hr.yml
+++ b/config/locales/hr.yml
@@ -44,7 +44,6 @@ hr:
are_you_sure: Jeste li sigurni?
by_domain: Domena
change_email:
- changed_msg: E-pošta računa uspješno je promijenjena!
current_email: Trenutna e-pošta
label: Promijeni e-poštu
new_email: Nova e-pošta
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index 5ee01ea2cfa..9a601c4cafd 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -85,10 +85,8 @@ hu:
posts_tab_heading: Bejegyzés
posts_with_replies: Bejegyzés válaszokkal
roles:
- admin: Adminisztrátor
bot: Bot
group: Csoport
- moderator: Moderátor
unavailable: Nincs ilyen profil
unfollow: Követés vége
admin:
@@ -107,12 +105,17 @@ hu:
avatar: Profilkép
by_domain: Domain
change_email:
- changed_msg: A fiókhoz tartozó e-mailt megváltoztattuk!
+ changed_msg: Az emailt sikeresen megváltoztattuk!
current_email: Jelenlegi e-mail
label: E-mail megváltoztatása
new_email: Új e-mail
submit: E-mail megváltoztatása
title: "%{username} felhasználó e-mail változás"
+ change_role:
+ changed_msg: A szerepet sikeresen megváltoztattuk!
+ label: Szerep megváltoztatása
+ no_role: Nincs szerep
+ title: "%{username} szerepének megváltoztatása"
confirm: Megerősítés
confirmed: Megerősítve
confirming: Megerősítés alatt
@@ -156,6 +159,7 @@ hu:
active: Aktív
all: Összes
pending: Függőben
+ silenced: Korlátozott
suspended: Felfüggesztve
title: Moderáció
moderation_notes: Moderációs bejegyzés
@@ -163,6 +167,7 @@ hu:
most_recent_ip: Legutóbbi IP-cím
no_account_selected: Nem változott meg egy fiók sem, mert semmi sem volt kiválasztva
no_limits_imposed: Nincs korlátozás
+ no_role_assigned: Nincs szerep hozzárendelve
not_subscribed: Nincs feliratkozás
pending: Engedélyezés alatt
perform_full_suspension: Felfüggesztés
@@ -189,12 +194,7 @@ hu:
reset: Visszaállítás
reset_password: Jelszó visszaállítása
resubscribe: Feliratkozás ismét
- role: Engedélyek
- roles:
- admin: Adminisztrátor
- moderator: Moderátor
- staff: Stáb
- user: Felhasználó
+ role: Szerep
search: Keresés
search_same_email_domain: Felhasználók ugyanezzel az email domainnel
search_same_ip: Más felhasználók ugyanezzel az IP-vel
@@ -651,6 +651,67 @@ hu:
unresolved: Megoldatlan
updated_at: Frissítve
view_profile: Profil megtekintése
+ roles:
+ add_new: Szerep hozzáadása
+ assigned_users:
+ one: "%{count} felhasználó"
+ other: "%{count} felhasználó"
+ categories:
+ administration: Adminisztráció
+ devops: Devops
+ invites: Meghívások
+ moderation: Moderáció
+ special: Speciális
+ delete: Törlés
+ description_html: A felhasználói szerepekkel testreszabhatod, hogy a felhasználóid milyen Mastodon funkciókat és területeket érjenek el.
+ edit: "'%{name}' szerep szerkesztése"
+ everyone: Alapértelmezett engedélyek
+ everyone_full_description_html: Ez az alap szerep, mely minden felhasználóra kihat, azokra is, akiknek nincs hozzárendelt szerepük. Minden más szerep ebből örökli az engedélyeit.
+ permissions_count:
+ one: "%{count} engedély"
+ other: "%{count} engedély"
+ privileges:
+ administrator: Adminisztrátor
+ administrator_description: A felhasználók ezzel a szereppel minden jogosultsággal rendelkeznek
+ delete_user_data: Felhasználói adatok törlése
+ delete_user_data_description: Lehetővé teszi a felhasználónak, hogy azonnal törölhesse más felhasználó adatait
+ invite_users: Felhasználók meghívása
+ invite_users_description: Lehetővé teszi a felhasználónak, hogy új embereket hívjon meg a kiszolgálóra
+ manage_announcements: Hirdetmények kezelése
+ manage_announcements_description: Lehetővé teszi a felhasználónak, hogy a kiszolgáló hirdetményeit kezelje
+ manage_appeals: Fellebbezések kezelése
+ manage_appeals_description: Lehetővé teszi, hogy a felhasználó átnézze a moderációval kapcsolatos fellebbezéseket
+ manage_blocks: Letiltások kezelése
+ manage_blocks_description: Lehetővé teszi, hogy a felhasználó letiltson email szolgáltatókat és IP címeket
+ manage_custom_emojis: Egyedi emodzsik kezelése
+ manage_custom_emojis_description: Lehetővé teszi a felhasználó számára, hogy a kiszolgáló egyedi emodzsiait kezelje
+ manage_federation: Föderáció kezelése
+ manage_federation_description: Lehetővé teszi a felhasználó számára, hogy más domainnekkel való föderációt engedélyezzen vagy letiltson, illetve szabályozza a kézbesítést
+ manage_invites: Meghívások kezelése
+ manage_invites_description: Lehetővé teszi a felhasználó számára, hogy böngéssze és deaktiválja a meghívási hivatkozásokat
+ manage_reports: Bejelentések kezelése
+ manage_reports_description: Lehetővé teszi a felhasználó számára, hogy átnézze a bejelentéseket és moderáljon ezek alapján
+ manage_roles: Szerepek kezelése
+ manage_roles_description: Lehetővé teszi a felhasználó számára, hogy a sajátjánál alacsonyabb rangú szerepeket kezeljen és hozzárendeljen másokhoz
+ manage_rules: Szabályok kezelése
+ manage_rules_description: Lehetővé teszi a felhasználó számára, hogy megváltoztassa a kiszolgáló szabályait
+ manage_settings: Beállítások kezelése
+ manage_settings_description: Lehetővé teszi, hogy a felhasználó megváltoztassa az oldal beállításait
+ manage_taxonomies: Taxonómiák kezelése
+ manage_taxonomies_description: Lehetővé teszi, hogy a felhasználó átnézze a népszerű tartalmakat és frissítse a hashtag-ek beállításait
+ manage_user_access: Felhasználói hozzáférések kezelése
+ manage_user_access_description: Lehetővé teszi, hogy a felhasználó letiltsa mások kétlépcsős azonosítását, megváltoztassa az email címüket, és alaphelyzetbe állítsa a jelszavukat
+ manage_users: Felhasználók kezelése
+ manage_users_description: Lehetővé teszi, hogy a felhasználó megtekintse mások részletes adatait és moderálja őket
+ manage_webhooks: Webhookok kezelése
+ manage_webhooks_description: Lehetővé teszi, hogy a felhasználó webhookokat állítson be adminisztratív eseményekhez
+ view_audit_log: Audit napló megtekintése
+ view_audit_log_description: Lehetővé teszi, hogy a felhasználó megtekintse a kiszolgáló adminisztratív eseményeinek történetét
+ view_dashboard: Irányítópult megtekintése
+ view_dashboard_description: Lehetővé teszi, hogy a felhasználó elérje az irányítópultot és vele számos metrikát
+ view_devops: Devops
+ view_devops_description: Lehetővé teszi, hogy a felhasználó elérje a Sidekiq és pgHero irányítópultjait
+ title: Szerepek
rules:
add_new: Szabály hozzáadása
delete: Törlés
@@ -703,9 +764,6 @@ hu:
deletion:
desc_html: Engedélyezed a felhasználóknak, hogy töröljék fiókjukat
title: Fiók törlésének engedélyezése
- min_invite_role:
- disabled: Senki
- title: Meghívások engedélyezése
require_invite_text:
desc_html: Ha a regisztrációhoz kézi jóváhagyásra van szükség, akkor a „Miért akarsz csatlakozni?” válasz kitöltése legyen kötelező, és ne opcionális
title: Az új felhasználóktól legyen megkövetelve a meghívási kérés szövegének kitöltése
@@ -718,9 +776,6 @@ hu:
show_known_fediverse_at_about_page:
desc_html: Ha le van tiltva, a nyilvános, főoldalról elérhető idővonalon csak helyi tartalmak jelennek meg
title: Mutassuk az általunk ismert föderációt az idővonal előnézetben
- show_staff_badge:
- desc_html: Stáb-jelvény megjelenítése a felhasználó oldalán
- title: Stáb-jelvény megjelenítése
site_description:
desc_html: Rövid bemutatkozás a főoldalon és a meta fejlécekben. Írd le, mi teszi ezt a szervert különlegessé! Használhatod a <a>
és <em>
HTML tageket.
title: Kiszolgáló leírása
@@ -1126,15 +1181,24 @@ hu:
public: Nyilvános idővonalak
thread: Beszélgetések
edit:
+ add_keyword: Kulcsszó hozzáadása
+ keywords: Kulcsszavak
title: Szűrő szerkesztése
errors:
+ deprecated_api_multiple_keywords: Ezek a paraméterek nem módosíthatóak az alkalmazásból, mert több mint egy szűrőkulcsszóra is hatással vannak. Használd az alkalmazás vagy a webes felület újabb verzióját.
invalid_context: A megadott kontextus hamis vagy hiányzik
- invalid_irreversible: Visszafordíthatatlan szűrést csak saját idővonalon vagy értesítéseken lehet végezni
index:
+ contexts: 'Szűrés helye: %{contexts}'
delete: Törlés
empty: Nincs szűrés.
+ expires_in: 'Ennyi idő múlva jár le: %{distance}'
+ expires_on: 'Lejárat ideje: %{date}'
+ keywords:
+ one: "%{count} kulcsszó"
+ other: "%{count} kulcsszó"
title: Szűrők
new:
+ save: Új szűrő mentése
title: Új szűrő hozzáadása
footer:
developers: Fejlesztőknek
@@ -1253,6 +1317,8 @@ hu:
copy_account_note_text: 'Ez a fiók elköltözött innen %{acct}, itt vannak a bejegyzéseitek róla:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} bejelentést küldött"
sign_up:
subject: "%{name} feliratkozott"
digest:
diff --git a/config/locales/hy.yml b/config/locales/hy.yml
index 831ca662165..e04f2088c64 100644
--- a/config/locales/hy.yml
+++ b/config/locales/hy.yml
@@ -77,10 +77,8 @@ hy:
posts_tab_heading: Գրառումներ
posts_with_replies: Գրառումներ եւ պատասխաններ
roles:
- admin: Ադմինիստրատոր
bot: Բոտ
group: Խումբ
- moderator: Մոդերատոր
unavailable: Պրոֆիլը հասանելի չի
unfollow: Չհետևել
admin:
@@ -99,7 +97,6 @@ hy:
avatar: Աւատար
by_domain: Դոմէն
change_email:
- changed_msg: Հաշուի էլ․ հասցէն բարեյաջող փոփոխուեց
current_email: Ներկայիս էլ․ հասցէ
label: Փոխել էլ. հասցէն
new_email: Նոր էլ․ փոստ
@@ -174,12 +171,6 @@ hy:
reset: Վերականգնել
reset_password: Վերականգնել գաղտանաբառը
resubscribe: Կրկին բաժանորդագրուել
- role: Թոյլտուութիւններ
- roles:
- admin: Ադմինիստրատոր
- moderator: Մոդերատոր
- staff: Անձնակազմ
- user: Oգտատէր
search: Որոնել
search_same_email_domain: Այլ օգտատէրեր նոյն էլ․ փոստի դոմէյնով
search_same_ip: Այլ օգտատէրեր նոյն IP֊ով
@@ -466,18 +457,12 @@ hy:
deletion:
desc_html: Բոլորին թոյլատրել ջնջել իրենց հաշիւը
title: Բացել հաշուի ջնջումը
- min_invite_role:
- disabled: Ոչ ոք
- title: Թոյլատրել հրաւէրներ
registrations_mode:
modes:
approved: Գրանցման համար անհրաժեշտ է հաստատում
none: Ոչ ոք չի կարող գրանցուել
open: Բոլորը կարող են գրանցուել
title: Գրանցումային ռեժիմ
- show_staff_badge:
- desc_html: Ցուցադրել անձնակազմի անդամի նշանը օգտատիրոջ էջում
- title: Ցուցադրել անձնակազմի անդամի նշանը
site_description:
title: Կայքի նկարագրութիւն
site_short_description:
diff --git a/config/locales/id.yml b/config/locales/id.yml
index 368b21add11..2bf3e7d1392 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -77,10 +77,8 @@ id:
posts_tab_heading: Toot
posts_with_replies: Toot dan balasan
roles:
- admin: Admin
bot: Bot
group: Grup
- moderator: Moderator
unavailable: Profil tidak tersedia
unfollow: Berhenti mengikuti
admin:
@@ -99,7 +97,6 @@ id:
avatar: Avatar
by_domain: Domian
change_email:
- changed_msg: Email akun ini berhasil diubah!
current_email: Email saat ini
label: Ganti email
new_email: Email baru
@@ -180,12 +177,6 @@ id:
reset: Atur ulang
reset_password: Reset kata sandi
resubscribe: Langganan ulang
- role: Hak akses
- roles:
- admin: Administrator
- moderator: Moderator
- staff: Staf
- user: Pengguna
search: Cari
search_same_email_domain: Pengguna lain dengan domain email yang sama
search_same_ip: Pengguna lain dengan IP yang sama
@@ -685,9 +676,6 @@ id:
deletion:
desc_html: Izinkan siapapun untuk menghapus akun miliknya
title: Buka penghapusan akun
- min_invite_role:
- disabled: Tidak ada satu pun
- title: Izinkan undangan oleh
require_invite_text:
desc_html: Saat pendaftaran harus disetujui manual, buat input teks "Mengapa Anda ingin bergabung?" sebagai hal wajib bukan opsional
title: Pengguna baru harus memasukkan alasan bergabung
@@ -700,9 +688,6 @@ id:
show_known_fediverse_at_about_page:
desc_html: Ketika dimatikan, batasi linimasa publik yang ditautkan dari halaman landas untuk menampilkan konten lokal saja
title: Masukkan konten gabungan di halaman linimasa publik tanpa autentifikasi
- show_staff_badge:
- desc_html: Tampilkan lencana staf pada halaman pengguna
- title: Tampilkan lencana staf
site_description:
desc_html: Ditampilkan sebagai sebuah paragraf di halaman depan dan digunakan sebagai tag meta.<a>
dan <em>
.
title: Deskripsi situs
@@ -1103,7 +1088,6 @@ id:
title: Ubah saringan
errors:
invalid_context: Konteks tidak ada atau invalid
- invalid_irreversible: Penyaringan yang tidak dapat dipulihkan hanya bekerja di beranda atau konteks notifikasi
index:
delete: Hapus
empty: Anda tidak memiliki filter.
diff --git a/config/locales/io.yml b/config/locales/io.yml
index 7cf253089e1..f88ab41646c 100644
--- a/config/locales/io.yml
+++ b/config/locales/io.yml
@@ -83,10 +83,8 @@ io:
posts_tab_heading: Posti
posts_with_replies: Posti e respondi
roles:
- admin: Administrero
bot: Boto
group: Grupo
- moderator: Jerero
unavailable: Profilo esas nedisponebla
unfollow: Dessequar
admin:
@@ -111,6 +109,11 @@ io:
new_email: Nova retposto
submit: Chanjez retposto
title: Chanjez retposto por %{username}
+ change_role:
+ changed_msg: Rolo sucesoze chanjesis!
+ label: Chanjez rolo
+ no_role: Nula rolo
+ title: Chanjez rolo por %{username}
confirm: Konfirmez
confirmed: Konfirmita
confirming: Ankore konfirmesas
@@ -154,6 +157,7 @@ io:
active: Aktiva
all: Omna
pending: Vartanta
+ silenced: Limitizita
suspended: Restriktita
title: Jero
moderation_notes: Jernoti
@@ -161,6 +165,7 @@ io:
most_recent_ip: Maxim recenta IP
no_account_selected: Nula konti chanjesis pro ke nulo selektesis
no_limits_imposed: Limiti ne fixesis
+ no_role_assigned: Nula rolo
not_subscribed: Ne abonita
pending: Vartar kontrolo
perform_full_suspension: Perform full suspension
@@ -187,12 +192,7 @@ io:
reset: Richanjez
reset_password: Richanjez pasvorto
resubscribe: Riabonez
- role: Permisi
- roles:
- admin: Administrero
- moderator: Jerero
- staff: Laborero
- user: Uzanto
+ role: Rolo
search: Trovez
search_same_email_domain: Altra uzanti kun sama retpostodomeno
search_same_ip: Altra uzanti kun sama IP
@@ -649,6 +649,67 @@ io:
unresolved: Nerezolvita
updated_at: Novigesis
view_profile: Videz profilo
+ roles:
+ add_new: Insertez rolo
+ assigned_users:
+ one: "%{count} uzanto"
+ other: "%{count} uzanti"
+ categories:
+ administration: Administro
+ devops: Developeri
+ invites: Inviti
+ moderation: Jero
+ special: Specala
+ delete: Efacez
+ description_html: Per uzantoroli, vu povas kustumizar funciono e siti di Mastodon quon vua uzanti povas uzar.
+ edit: Modifikez rolo di '%{name}'
+ everyone: Originala permisi
+ everyone_full_description_html: Co esas bazrolo quo efektigas omna uzanti, mem personi sen rolo. Omna altra roli ganas sama permisi de ol.
+ permissions_count:
+ one: "%{count} permiso"
+ other: "%{count} permisi"
+ privileges:
+ administrator: Administrero
+ administrator_description: Uzanti kun ca permiso ignoros singla permiso
+ delete_user_data: Efacez uzantinformi
+ delete_user_data_description: Permisez uzanti efacar informi di altra uzanti sen varto
+ invite_users: Invitez uzanti
+ invite_users_description: Permisez uzanti invitar nova personi a la servilo
+ manage_announcements: Jerez anunci
+ manage_announcements_description: Permisez uzanti jerar anunci en la servilo
+ manage_appeals: Jerez apeli
+ manage_appeals_description: Permisez uzanti kontrolar apeli kontra jero
+ manage_blocks: Jerez obstrukti
+ manage_blocks_description: Permisez uzanti obstruktar retpostoservilo e adresi di IP
+ manage_custom_emojis: Jerez kustumizita emocimaji
+ manage_custom_emojis_description: Permisez uzanti jerar kustumizita emocimaji en la servilo
+ manage_federation: Jerez federo
+ manage_federation_description: Permisez uzanti obstruktar o permisez federo kun altra domeni, e dominacar sendebleso
+ manage_invites: Jerez inviti
+ manage_invites_description: Permisez uzanti vidar e desaktivigar invitligili
+ manage_reports: Jerez raporti
+ manage_reports_description: Permisez uzanti kontrolar raporti e jerez kontra oli
+ manage_roles: Jerez roli
+ manage_roles_description: Permisez uzanti jerar e ajustar plu basa roli di olia
+ manage_rules: Jerez reguli
+ manage_rules_description: Permisez uzanti chanjar servilreguli
+ manage_settings: Jerez opcioni
+ manage_settings_description: Permisez uzanti chanjar sitopcioni
+ manage_taxonomies: Jerez nomkategorii
+ manage_taxonomies_description: Permisez uzanti kontrolar tendencoza kontenajo e novigar hashtagopcioni
+ manage_user_access: Jerez uzantoeniro
+ manage_user_access_description: Permisez uzanti desaktivigar 2-faktoryurizeso di altra uzanti, chanjar olia retpostoadreso e richanjar olia pasvorto
+ manage_users: Jerez uzanti
+ manage_users_description: Permisez uzanti vidar detali di altra uzanti e jerar kontra oli
+ manage_webhooks: Jerez interrethoki
+ manage_webhooks_description: Permisez uzanti igas interrethoki por administrala eventi
+ view_audit_log: Videz kontrollogo
+ view_audit_log_description: Permisez uzanti vidar historio di administrala agi en la servilo
+ view_dashboard: Videz chefpanelo
+ view_dashboard_description: Permisez uzanti uzar chefpanelo e diversa opcioni
+ view_devops: Developeri
+ view_devops_description: Permisez uzanti uzar chefpaneli Sidekiq e pgHero
+ title: Roli
rules:
add_new: Insertez regulo
delete: Efacez
@@ -701,9 +762,6 @@ io:
deletion:
desc_html: Permisez irgu efacar sua konto
title: Apertez kontoefaco
- min_invite_role:
- disabled: Nulu
- title: Permisez inviti da
require_invite_text:
desc_html: Se registri bezonas manuala aprobo, kauzigar "Por quo vu volas juntar?" textoenpoz divenar obligata
title: Bezonez nova uzanti insertar motivo por juntar
@@ -716,9 +774,6 @@ io:
show_known_fediverse_at_about_page:
desc_html: Se desaktivigesis, co permisas publika tempolineo quo ligesas de atingopagino montrar nur lokala kontenajo
title: Inkluzez federatita kontenajo che neyurizita publika tempolineopagino
- show_staff_badge:
- desc_html: Montrez laborerinsigno che uzantopagino
- title: Montrez laborerinsigno
site_description:
desc_html: Displayed as a paragraph on the frontpage and used as a meta tag.<a>
and <em>
.
title: Site description
@@ -1124,15 +1179,24 @@ io:
public: Publika tempolinei
thread: Konversi
edit:
+ add_keyword: Insertez klefvorto
+ keywords: Klefvorti
title: Modifikez filtrilo
errors:
+ deprecated_api_multiple_keywords: Ca parametri ne povas chanjesar per ca softwaro pro quo oli efektigas plu kam 1 filtrilklefvorto. Uzez plu recenta softwaro o interretintervizajo.
invalid_context: Nula o nevalida kuntexto donesis
- invalid_irreversible: Neinversigebla filtro nur funcionas kun hemo- e aviz- kuntexto
index:
+ contexts: Filtrili kun %{contexts}
delete: Efacez
empty: Vu ne havas filtrili.
+ expires_in: Expiras ye %{distance}
+ expires_on: Expiras ye %{date}
+ keywords:
+ one: "%{count} klefvorto"
+ other: "%{count} klefvorti"
title: Filtrili
new:
+ save: Salvez nova filtrilo
title: Insertez nova filtrilo
footer:
developers: Developeri
@@ -1251,6 +1315,8 @@ io:
copy_account_note_text: 'Ca uzanti transferesis de %{acct}, co esas vua antea noti pri ol:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} sendis raporto"
sign_up:
subject: "%{name} registris"
digest:
diff --git a/config/locales/is.yml b/config/locales/is.yml
index 5978ac41c36..1a13e322230 100644
--- a/config/locales/is.yml
+++ b/config/locales/is.yml
@@ -83,10 +83,8 @@ is:
posts_tab_heading: Færslur
posts_with_replies: Færslur og svör
roles:
- admin: Stjóri
bot: Róbót
group: Hópur
- moderator: Umsjón
unavailable: Notandasnið ekki tiltækt
unfollow: Hætta að fylgja
admin:
@@ -105,12 +103,17 @@ is:
avatar: Auðkennismynd
by_domain: Lén
change_email:
- changed_msg: Tölvupóstfangi notandaaðgangsins hefur verið breytt!
+ changed_msg: Tókst að breyta tölvupóstfangi!
current_email: Núverandi tölvupóstfang
label: Breyta tölvupóstfangi
new_email: Nýr tölvupóstur
submit: Breyta tölvupóstfangi
title: Breyta tölvupóstfangi fyrir %{username}
+ change_role:
+ changed_msg: Tókst að breyta hlutverki!
+ label: Breyta hlutverki
+ no_role: Ekkert hlutverk
+ title: Breyta hlutverki fyrir %{username}
confirm: Staðfesta
confirmed: Staðfest
confirming: Staðfesti
@@ -154,6 +157,7 @@ is:
active: Virkur
all: Allt
pending: Í bið
+ silenced: Takmarkað
suspended: Í bið
title: Umsjón
moderation_notes: Minnispunktar umsjónarmanna
@@ -161,6 +165,7 @@ is:
most_recent_ip: Nýjasta IP-vistfang
no_account_selected: Engum aðgöngum var breytt þar sem engir voru valdir
no_limits_imposed: Engra takmarka krafist
+ no_role_assigned: Engu hlutverki úthlutað
not_subscribed: Ekki í áskrift
pending: Bíður eftir yfirlestri
perform_full_suspension: Setja í bið
@@ -187,12 +192,7 @@ is:
reset: Endurstilla
reset_password: Endurstilla lykilorð
resubscribe: Gerast áskrifandi aftur
- role: Heimildir
- roles:
- admin: Stjórnandi
- moderator: Umsjónarmaður
- staff: Starfsmaður
- user: Notandi
+ role: Hlutverk
search: Leita
search_same_email_domain: Aðra notendur með sama tölvupóstlén
search_same_ip: Aðrir notendur með sama IP-vistfang
@@ -649,6 +649,47 @@ is:
unresolved: Óleyst
updated_at: Uppfært
view_profile: Skoða notandasnið
+ roles:
+ add_new: Bæta við hlutverki
+ assigned_users:
+ one: "%{count} notandi"
+ other: "%{count} notendur"
+ categories:
+ administration: Stjórnun
+ devops: Kerfisstjórar
+ invites: Boðsgestir
+ moderation: Umsjón
+ special: Sérstakt
+ delete: Eyða
+ description_html: Með hlutverkum notenda geturðu sérsniðið að hvaða aðgerðum og hvaða svæðum í Mastodon notendurnir þínir hafa aðgang.
+ edit: Breyta hlutverki fyrir '%{name}'
+ everyone: Sjálfgefnar heimildir
+ everyone_full_description_html: Þetta er grunnhlutverk sem allir notendur fá, líka þeir sem ekki hafa fengið neitt sérstakt hlutverk. Öll önnur hlutverk erfa heimildir frá þessu.
+ permissions_count:
+ one: "%{count} heimild"
+ other: "%{count} heimildir"
+ privileges:
+ administrator: Stjórnandi
+ administrator_description: Notendur með þessa heimild fara framhjá öllum öðrum heimildum
+ delete_user_data: Eyða gögnum notanda
+ delete_user_data_description: Leyfir notendum að eyða gögnum annarra notenda án tafar
+ invite_users: Bjóða notendum
+ invite_users_description: Leyfir notendum að bjóða nýju fólki inn á netþjóninn
+ manage_announcements: Sýsla með tilkynningar
+ manage_announcements_description: Leyfir notendum að sýsla með tilkynningar á netþjóninum
+ manage_appeals: Sýsla með áfrýanir
+ manage_appeals_description: Leyfir notendum að yfirfara áfrýjanir vegna aðgerða umsjónarfólks
+ manage_blocks: Sýsla með útilokanir
+ manage_blocks_description: Leyfir notendum að loka á tölvupóstþjónustur og IP-vistföng
+ manage_rules: Sýsla með reglur
+ manage_rules_description: Leyfir notendum að breyta reglum á netþjóninum
+ manage_settings: Sýsla með stillingar
+ manage_settings_description: Leyfir notendum að breyta stillingum vefsvæðisins
+ view_dashboard: Skoða stjórnborð
+ view_dashboard_description: Leyfir notendum að skoða stjórnborðið og sjá ýmsar mælingar
+ view_devops: Kerfisstjórar
+ view_devops_description: Leyfir notendum að skoða Sidekiq og pgHero stjórnborð
+ title: Hlutverk
rules:
add_new: Skrá reglu
delete: Eyða
@@ -701,9 +742,6 @@ is:
deletion:
desc_html: Leyfa öllum að eyða aðgangnum sínum
title: Opna eyðingu á notandaaðgangi
- min_invite_role:
- disabled: Enginn
- title: Leyfa boð frá
require_invite_text:
desc_html: Þegar nýskráningar krefjast handvirks samþykkis, skal gera "Hvers vegna viltu taka þátt?" boðstexta að skyldu fremur en valkvæðan
title: Krefja nýja notendur um að fylla út boðstexta
@@ -716,9 +754,6 @@ is:
show_known_fediverse_at_about_page:
desc_html: Þegar þetta er óvirkt, takmarkast opinbera tímalínan sem tengt er í af upphafssíðunni við að birta einungis staðvært efni (af sama vefþjóni)
title: Hafa með efni úr skýjasambandi á síðu fyrir óauðkennda opinbera tímalínu
- show_staff_badge:
- desc_html: Sýna starfsmannamerki á síðu notandans
- title: Sýna starfsmannamerki
site_description:
desc_html: Kynningarmálsgrein í API. Lýstu því hvað það er sem geri þennan Mastodon-þjón sérstakan, auk annarra mikilvægra upplýsinga. Þú getur notað HTML-einindi, sér í lagi <a>
og <em>
.
title: Lýsing á vefþjóni
@@ -1124,15 +1159,24 @@ is:
public: Opinberar tímalínur
thread: Samtöl
edit:
+ add_keyword: Bæta við stikkorði
+ keywords: Stikkorð
title: Breyta síu
errors:
+ deprecated_api_multiple_keywords: Þessum viðföngum er ekki hægt að breyta úr þessu forriti, þar sem þau eiga við fleiri en eitt stikkorð síu. Notaðu nýrra forrit eða farðu í vefviðmótið.
invalid_context: Ekkert eða ógilt samhengi var gefið
- invalid_irreversible: Óendurkræf síun virkar bara í sambandi við heimasvæði eða tilkynningar
index:
+ contexts: Síur í %{contexts}
delete: Eyða
empty: Þú ert ekki með neinar síur.
+ expires_in: Rennur út %{distance}
+ expires_on: Rennur út þann %{date}
+ keywords:
+ one: "%{count} stikkorð"
+ other: "%{count} stikkorð"
title: Síur
new:
+ save: Vista nýja síu
title: Bæta við nýrri síu
footer:
developers: Forritarar
@@ -1251,6 +1295,8 @@ is:
copy_account_note_text: 'Þessi notandi fluttist frá %{acct}, hér eru fyrri minnispunktar þínir um hann:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} sendi inn kæru"
sign_up:
subject: "%{name} nýskráði sig"
digest:
diff --git a/config/locales/it.yml b/config/locales/it.yml
index f97779d26c2..f269cc542ac 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -83,10 +83,8 @@ it:
posts_tab_heading: Toot
posts_with_replies: Toot e risposte
roles:
- admin: Amministratore
bot: Bot
group: Gruppo
- moderator: Moderatore
unavailable: Profilo non disponibile
unfollow: Non seguire più
admin:
@@ -105,12 +103,17 @@ it:
avatar: Immagine di profilo
by_domain: Dominio
change_email:
- changed_msg: Account email cambiato con successo!
+ changed_msg: Email modificata!
current_email: Email attuale
label: Cambia email
new_email: Nuova email
submit: Cambia email
title: Cambia email per %{username}
+ change_role:
+ changed_msg: Ruolo modificato correttamente!
+ label: Cambia ruolo
+ no_role: Nessun ruolo
+ title: Cambia ruolo per %{username}
confirm: Conferma
confirmed: Confermato
confirming: Confermando
@@ -154,6 +157,7 @@ it:
active: Attivo
all: Tutto
pending: In attesa
+ silenced: Limitato
suspended: Sospesi
title: Moderazione
moderation_notes: Note di moderazione
@@ -161,6 +165,7 @@ it:
most_recent_ip: IP più recente
no_account_selected: Nessun account è stato modificato visto che non ne è stato selezionato nessuno
no_limits_imposed: Nessun limite imposto
+ no_role_assigned: Nessun ruolo assegnato
not_subscribed: Non sottoscritto
pending: Revisioni in attesa
perform_full_suspension: Sospendi
@@ -187,12 +192,7 @@ it:
reset: Reimposta
reset_password: Reimposta password
resubscribe: Riscriversi
- role: Permessi
- roles:
- admin: Amministratore
- moderator: Moderatore
- staff: Personale
- user: Utente
+ role: Ruolo
search: Cerca
search_same_email_domain: Altri utenti con lo stesso dominio e-mail
search_same_ip: Altri utenti con lo stesso IP
@@ -649,6 +649,67 @@ it:
unresolved: Non risolto
updated_at: Aggiornato
view_profile: Visualizza profilo
+ roles:
+ add_new: Aggiungi ruolo
+ assigned_users:
+ one: "%{count} utente"
+ other: "%{count} utenti"
+ categories:
+ administration: Amministrazione
+ devops: Devops
+ invites: Inviti
+ moderation: Moderazione
+ special: Speciale
+ delete: Cancella
+ description_html: Con i ruoli utente, puoi personalizzare a quali funzioni e aree di Mastodon i tuoi utenti possono accedere.
+ edit: Modifica il ruolo '%{name}'
+ everyone: Permessi predefiniti
+ everyone_full_description_html: Questo è il ruolo base che influenza tutti gli utenti, anche quelli senza un ruolo assegnato. Tutti gli altri ruoli ereditano i permessi da esso.
+ permissions_count:
+ one: "%{count} permesso"
+ other: "%{count} permessi"
+ privileges:
+ administrator: Amministratore
+ administrator_description: Gli utenti con questo permesso saranno esentati da ogni permesso
+ delete_user_data: Cancella dati utente
+ delete_user_data_description: Consente agli utenti di eliminare subito i dati degli altri utenti
+ invite_users: Invita Utenti
+ invite_users_description: Consente agli utenti di invitare nuove persone su questo server
+ manage_announcements: Gestisci Annunci
+ manage_announcements_description: Consente agli utenti di gestire gli annunci sul server
+ manage_appeals: Gestisci appelli
+ manage_appeals_description: Consente agli utenti di esaminare i ricorsi contro le azioni di moderazione
+ manage_blocks: Gestisci Blocchi
+ manage_blocks_description: Consente agli utenti di bloccare provider e-mail e indirizzi IP
+ manage_custom_emojis: Gestisci emoji personalizzate
+ manage_custom_emojis_description: Consente agli utenti di gestire emoji personalizzate sul server
+ manage_federation: Gestisci Federazione
+ manage_federation_description: Consente agli utenti di bloccare o consentire la federazione con altri domini e controllare la consegnabilità
+ manage_invites: Gestisci Inviti
+ manage_invites_description: Consente agli utenti di esaminare e disattivare i link di invito
+ manage_reports: Gestisci report
+ manage_reports_description: Consente agli utenti di esaminare i report ed eseguire azioni di moderazione su di essi
+ manage_roles: Gestisci Ruoli
+ manage_roles_description: Consente agli utenti di gestire e assegnare i ruoli inferiori al loro
+ manage_rules: Gestisci Regole
+ manage_rules_description: Consente agli utenti di modificare le regole del server
+ manage_settings: Gestisci impostazioni
+ manage_settings_description: Consente agli utenti di modificare le impostazioni del sito
+ manage_taxonomies: Gestisci Tassonomie
+ manage_taxonomies_description: Consente agli utenti di esaminare i contenuti di tendenza e aggiornare le impostazioni degli hashtag
+ manage_user_access: Gestisci accesso utenti
+ manage_user_access_description: Consente agli utenti di disabilitare l'autenticazione a due fattori degli altri utenti, modificare il loro indirizzo e-mail e reimpostare la password
+ manage_users: Gestisci utenti
+ manage_users_description: Consente agli utenti di visualizzare le informazioni sugli altri utenti ed eseguire azioni di moderazione contro di loro
+ manage_webhooks: Gestisci Webhook
+ manage_webhooks_description: Consente agli utenti di impostare webhook per eventi amministrativi
+ view_audit_log: Visualizza Registro Attività
+ view_audit_log_description: Consente agli utenti di vedere una cronologia delle azioni amministrative sul server
+ view_dashboard: Mostra dashboard
+ view_dashboard_description: Consente agli utenti di accedere alla dashboard e alle varie metriche
+ view_devops: Devops
+ view_devops_description: Consente agli utenti di accedere alle dashboard Sidekiq e pgHero
+ title: Ruoli
rules:
add_new: Aggiungi regola
delete: Cancella
@@ -701,9 +762,6 @@ it:
deletion:
desc_html: Consenti a chiunque di cancellare il proprio account
title: Apri la cancellazione dell'account
- min_invite_role:
- disabled: Nessuno
- title: Permetti inviti da
require_invite_text:
desc_html: Quando le iscrizioni richiedono l'approvazione manuale, rendere la richiesta “Perché si desidera iscriversi?” obbligatoria invece che opzionale
title: Richiedi ai nuovi utenti di rispondere alla richiesta di motivazione per l'iscrizione
@@ -716,9 +774,6 @@ it:
show_known_fediverse_at_about_page:
desc_html: Quando attivato, mostra nell'anteprima i toot da tutte le istanze conosciute. Altrimenti mostra solo i toot locali.
title: Mostra la fediverse conosciuta nell'anteprima della timeline
- show_staff_badge:
- desc_html: Mostra un distintivo dello staff sulla pagina dell'utente
- title: Mostra badge staff
site_description:
desc_html: Paragrafo introduttivo nella pagina iniziale. Descrive ciò che rende speciale questo server Mastodon e qualunque altra cosa sia importante dire. Potete usare marcatori HTML, in particolare <a>
e <em>
.
title: Descrizione del server
@@ -1126,15 +1181,24 @@ it:
public: Timeline pubbliche
thread: Conversazioni
edit:
+ add_keyword: Aggiungi parola chiave
+ keywords: Parole chiave
title: Modifica filtro
errors:
+ deprecated_api_multiple_keywords: Questi parametri non possono essere modificati da questa applicazione perché si applicano a più di una parola chiave che fa da filtro. Utilizzare un'applicazione più recente o l'interfaccia web.
invalid_context: Contesto mancante o non valido
- invalid_irreversible: Il filtraggio irreversibile funziona solo nei contesti di home o notifiche
index:
+ contexts: Filtri in %{contexts}
delete: Cancella
empty: Non hai alcun filtro.
+ expires_in: Scade tra %{distance}
+ expires_on: Scade il %{date}
+ keywords:
+ one: "%{count} parola chiave"
+ other: "%{count} parole chiave"
title: Filtri
new:
+ save: Salva nuovo filtro
title: Aggiungi filtro
footer:
developers: Sviluppatori
@@ -1253,6 +1317,8 @@ it:
copy_account_note_text: 'Questo utente si è spostato da %{acct}, ecco le tue note precedenti su di loro:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} ha inviato una segnalazione"
sign_up:
subject: "%{name} si è iscritto"
digest:
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index b7139523b5a..cb7a1526c65 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -77,10 +77,8 @@ ja:
posts_tab_heading: 投稿
posts_with_replies: 投稿と返信
roles:
- admin: Admin
bot: Bot
group: Group
- moderator: Mod
unavailable: プロフィールは利用できません
unfollow: フォロー解除
admin:
@@ -99,7 +97,6 @@ ja:
avatar: アイコン
by_domain: ドメイン
change_email:
- changed_msg: メールアドレスの変更に成功しました!
current_email: 現在のメールアドレス
label: メールアドレスを変更
new_email: 新しいメールアドレス
@@ -180,12 +177,6 @@ ja:
reset: リセット
reset_password: パスワード再設定
resubscribe: 再講読
- role: 役割
- roles:
- admin: 管理者
- moderator: モデレーター
- staff: スタッフ
- user: ユーザー
search: 検索
search_same_email_domain: 同じドメインのメールアドレスを使用しているユーザー
search_same_ip: 同じIPのユーザーを検索
@@ -681,9 +672,6 @@ ja:
deletion:
desc_html: 誰でも自分のアカウントを削除できるようにします
title: アカウント削除を受け付ける
- min_invite_role:
- disabled: 誰にも許可しない
- title: 招待の作成を許可
require_invite_text:
desc_html: アカウント登録が承認制の場合、「意気込みをお聞かせください」のテキストを必須入力にする
title: 新規ユーザー登録時の理由を必須入力にする
@@ -696,9 +684,6 @@ ja:
show_known_fediverse_at_about_page:
desc_html: チェックを外すと、ランディングページからリンクされた公開タイムラインにローカルの公開投稿のみ表示します。
title: 公開タイムラインに連合先のコンテンツも表示する
- show_staff_badge:
- desc_html: ユーザーページにスタッフのバッジを表示します
- title: スタッフバッジを表示する
site_description:
desc_html: フロントページへの表示に使用される紹介文です。このMastodonサーバーを特徴付けることやその他重要なことを記述してください。HTMLタグ、特に<a>
と <em>
が使えます。
title: サーバーの説明
@@ -1085,13 +1070,16 @@ ja:
public: 公開タイムライン
thread: 会話
edit:
+ add_keyword: キーワードを追加
+ keywords: キーワード
title: フィルターを編集
errors:
invalid_context: 対象がないか無効です
- invalid_irreversible: この機能はホームタイムラインまたは通知と一緒に指定する場合のみ機能します
index:
delete: 削除
empty: フィルターはありません。
+ keywords:
+ other: "%{count}件のキーワード"
title: フィルター
new:
title: 新規フィルターを追加
diff --git a/config/locales/ka.yml b/config/locales/ka.yml
index bd02b0f8de4..9948ae49394 100644
--- a/config/locales/ka.yml
+++ b/config/locales/ka.yml
@@ -34,9 +34,7 @@ ka:
following: იმ ადამიანს, ვინც მოგწონთ, უკვე უნდა მიჰყვებოდეთ
posts_with_replies: ტუტები და პასუხები
roles:
- admin: ადმინისტრატორი
bot: ბოტი
- moderator: მოდერატორი
unfollow: ნუღარ მიჰყვები
admin:
account_moderation_notes:
@@ -48,7 +46,6 @@ ka:
avatar: ავატარი
by_domain: დომენი
change_email:
- changed_msg: ანგარიშის ელ-ფოსტა წარმატებით შეიცვალა!
current_email: მიმდინარე ელ-ფოსტა
label: ელ-ფოსტის შეცვლა
new_email: ახალი ელ-ფოსტა
@@ -102,12 +99,6 @@ ka:
reset: გადატვირთვა
reset_password: პაროლის გადატვირთვა
resubscribe: ხელახალი გამოწერა
- role: უფლებები
- roles:
- admin: ადმინისტრატორი
- moderator: მოდერატორი
- staff: სტაფი
- user: მომხმარებელი
search: ძებნა
shared_inbox_url: გაზიარებული ინბოქსის ურლ
show:
@@ -254,15 +245,9 @@ ka:
deletion:
desc_html: უფლება მიეცით ყველას, გააუქმონ თავიანთი ანგარიში
title: ღია ანგარიშის გაუქმება
- min_invite_role:
- disabled: არავინ
- title: ნება დაერთოს მოწვეევებს
show_known_fediverse_at_about_page:
desc_html: ჩართვისას, ეს გამოაჩენს ტუტებს ყველა ცნობილი ფედივერსისგან პრევიუზე. სხვა შემთხვევაში, გამოაჩენს მხოლოდ ლოკალურ ტუტებს.
title: გამოჩნდეს ცნობილი ვედივერსი თაიმლაინ პრევიუში
- show_staff_badge:
- desc_html: გამოჩნდეს სტაფის ნიშანი მომხმარებლის გვერდზე
- title: სტაფის ნიშნის გამოჩენა
site_description:
desc_html: საშესავლო პარაგრაფი წინა გვერდზე. აღწერეთ თუ რა ხდის ამ მასტოდონის სერვერს განსაკუთრებულს და სხვა მნიშვნელოვანი. შეგიძლიათ გამოიყენოთ ჰტმლ ტეგები, კერძოდ <a>
და <em>
.
title: ინსტანციის აღწერილობა
@@ -395,7 +380,6 @@ ka:
title: ფილტრის ცვლილება
errors:
invalid_context: მოწოდებულია არასწორი ან ცარიელი კონტექსტი
- invalid_irreversible: დაუბრუნებელი ფილტრაცია მუშაობს მხოლოდ სახლის ან ნოტიფიკაციის კონტექსტში
index:
delete: გაუქმება
title: ფილტრები
diff --git a/config/locales/kab.yml b/config/locales/kab.yml
index 0db4e1c9dcb..4fac9a7964b 100644
--- a/config/locales/kab.yml
+++ b/config/locales/kab.yml
@@ -63,10 +63,8 @@ kab:
posts_tab_heading: Tijewwiqin
posts_with_replies: Tijewwaqin akked tririyin
roles:
- admin: Anedbal
bot: Aṛubut
group: Agraw
- moderator: Atrar
unavailable: Ur nufi ara amaɣnu-a
unfollow: Ur ṭṭafaṛ ara
admin:
@@ -81,7 +79,6 @@ kab:
avatar: Tugna n umaɣnu
by_domain: Taɣult
change_email:
- changed_msg: Imayl n umiḍan yettwabeddel mebla ugur!
current_email: Imayl n tura
label: Beddel imayl
new_email: Imayl amaynut
@@ -152,12 +149,6 @@ kab:
reset: Wennez
reset_password: Beddel awal uffir
resubscribe: Ales ajerred
- role: Tisirag
- roles:
- admin: Anedbal
- moderator: Aseɣyad
- staff: Tarbaɛt
- user: Amseqdac
search: Nadi
search_same_email_domain: Iseqdacen-nniḍen s yiwet n taɣult n yimayl
search_same_ip: Imseqdacen-nniḍen s tansa IP am tinn-ik
@@ -446,9 +437,6 @@ kab:
users: Γef yimseqdacen idiganen i yeqqnen
profile_directory:
title: Rmed akaram n imaγnuten
- registrations:
- min_invite_role:
- disabled: Ula yiwen·t
registrations_mode:
modes:
none: Yiwen·t ur yzmir ad izeddi
diff --git a/config/locales/kk.yml b/config/locales/kk.yml
index 406f7e3c87b..b12f791636a 100644
--- a/config/locales/kk.yml
+++ b/config/locales/kk.yml
@@ -72,10 +72,8 @@ kk:
posts_tab_heading: Жазба
posts_with_replies: Жазбалар және жауаптар
roles:
- admin: Админ
bot: Бот
group: Топ
- moderator: Мод
unavailable: Профиль қолжетімді емес
unfollow: Оқымау
admin:
@@ -92,7 +90,6 @@ kk:
avatar: Аватар
by_domain: Домен
change_email:
- changed_msg: Аккаунт email-і сәтті өзгертілді!
current_email: Қазіргі email
label: email өзгерту
new_email: Жаңа email
@@ -157,12 +154,6 @@ kk:
reset: Қалпына келтіру
reset_password: Құпиясөзді қалпына келтіру
resubscribe: Resubscribе
- role: Рұқсаттар
- roles:
- admin: Админ
- moderator: Модератор
- staff: Қызметкерлер
- user: Қолданушы
search: Іздеу
search_same_ip: Осы ІРмен кірген басқа қолданушылар
shared_inbox_url: Бөлісілген инбокс URL
@@ -385,9 +376,6 @@ kk:
deletion:
desc_html: Allow anyone to delete their аккаунт
title: Open аккаунт deletion
- min_invite_role:
- disabled: Ешкім
- title: Allow шақырулар by
registrations_mode:
modes:
approved: Тіркелу үшін мақұлдау қажет
@@ -397,9 +385,6 @@ kk:
show_known_fediverse_at_about_page:
desc_html: When toggled, it will show toots from all the known fediverse on preview. Otherwise it will only show жергілікті toots.
title: Show known fediverse on timeline превью
- show_staff_badge:
- desc_html: Show a staff badge on a user бет
- title: Көрсет staff badge
site_description:
desc_html: Introductory paragraph on the басты бет. Describe what makes this Mastodon server special and anything else important. You can use HTML tags, in particular <a>
and <em>
.
title: Сервер туралы
@@ -618,7 +603,6 @@ kk:
title: Фильтр өңдеу
errors:
invalid_context: Жоқ немесе жарамсыз контекст берілген
- invalid_irreversible: Қайтарылмайтын сүзгі тек ішкі немесе ескертпелер контекстімен жұмыс істейді
index:
delete: Өшіру
empty: Сізде ешқандай фильтр жоқ.
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index 2397b63e587..4109bfb4a7f 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -79,10 +79,8 @@ ko:
posts_tab_heading: 게시물
posts_with_replies: 게시물과 답장
roles:
- admin: 관리자
bot: 봇
group: 그룹
- moderator: 중재자
unavailable: 프로필 사용 불가
unfollow: 팔로우 해제
admin:
@@ -101,12 +99,17 @@ ko:
avatar: 아바타
by_domain: 도메인
change_email:
- changed_msg: 이메일이 성공적으로 바뀌었습니다!
+ changed_msg: 이메일이 성공적으로 변경되었습니다!
current_email: 현재 이메일 주소
label: 이메일 주소 변경
new_email: 새 이메일 주소
submit: 이메일 주소 변경
title: "%{username}의 이메일 주소 변경"
+ change_role:
+ changed_msg: 역할이 성공적으로 변경되었습니다!
+ label: 역할 변경
+ no_role: 역할 없음
+ title: "%{username}의 역할 변경"
confirm: 확인
confirmed: 확인됨
confirming: 확인 중
@@ -150,6 +153,7 @@ ko:
active: 활동
all: 전체
pending: 대기중
+ silenced: 제한됨
suspended: 정지 중
title: 중재
moderation_notes: 중재 기록
@@ -157,6 +161,7 @@ ko:
most_recent_ip: 최근 IP
no_account_selected: 아무 계정도 선택 되지 않아 아무 것도 변경 되지 않았습니다
no_limits_imposed: 제한 없음
+ no_role_assigned: 할당된 역할 없음
not_subscribed: 구독하지 않음
pending: 심사 대기
perform_full_suspension: 정지시키기
@@ -182,12 +187,7 @@ ko:
reset: 초기화
reset_password: 암호 초기화
resubscribe: 다시 구독
- role: 권한
- roles:
- admin: 관리자
- moderator: 중재자
- staff: 스태프
- user: 사용자
+ role: 역할
search: 검색
search_same_email_domain: 같은 이메일 도메인을 가진 다른 사용자들
search_same_ip: 같은 IP의 다른 사용자들
@@ -637,6 +637,63 @@ ko:
unresolved: 미해결
updated_at: 업데이트 시각
view_profile: 프로필 보기
+ roles:
+ add_new: 역할 추가
+ assigned_users:
+ other: "%{count} 명의 사용자"
+ categories:
+ administration: 관리
+ devops: 데브옵스
+ invites: 초대
+ moderation: 중재
+ special: 특수
+ delete: 삭제
+ edit: "%{name} 역할 수정"
+ everyone: 기본 권한
+ permissions_count:
+ other: "%{count} 개의 권한"
+ privileges:
+ administrator: 관리자
+ administrator_description: 이 권한을 가진 사용자는 모든 권한을 우회합니다
+ delete_user_data: 사용자 데이터 삭제
+ delete_user_data_description: 사용자가 다른 사용자의 데이터를 지체 없이 삭제할 수 있도록 허용
+ invite_users: 사용자 초대
+ invite_users_description: 사용자가 다른 사람들을 서버에 초대할 수 있도록 허용
+ manage_announcements: 공지 관리
+ manage_announcements_description: 사용자가 서버의 공지사항을 관리할 수 있도록 허용
+ manage_appeals: 이의제기 관리
+ manage_appeals_description: 사용자가 중재에 대한 이의제기를 리뷰할 수 있도록 허용
+ manage_blocks: 차단 관리
+ manage_blocks_description: 사용자가 이메일 제공자와 IP 주소를 차단할 수 있도록 허용
+ manage_custom_emojis: 커스텀 에모지 관리
+ manage_custom_emojis_description: 사용자가 서버의 커스텀 에모지를 관리할 수 있도록 허용
+ manage_federation: 연합 관리
+ manage_federation_description: 사용자가 다른 도메인과의 연합을 차단하거나 허용할 수 있도록 하고, 전달 가능 여부를 조정할 수 있도록 허용
+ manage_invites: 초대 관리
+ manage_invites_description: 사용자가 초대 링크를 보고 비활성화 할 수 있도록 허용
+ manage_reports: 신고 관리
+ manage_reports_description: 사용자가 신고를 리뷰하고 해당 사용자에 대한 중재활동을 수행할 수 있도록 허용
+ manage_roles: 역할 관리
+ manage_roles_description: 사용자가 그들 이하의 권한에 대해 관리하고 할당할 수 있도록 허용
+ manage_rules: 규칙 관리
+ manage_rules_description: 사용자가 서버 규칙을 수정할 수 있도록 허용합니다
+ manage_settings: 설정 관리
+ manage_settings_description: 사용자가 서버 설정을 수정할 수 있도록 허용합니다
+ manage_taxonomies: 분류 관리
+ manage_taxonomies_description: 사용자가 트렌드를 리뷰하고 해시태그 설정을 수정할 수 있도록 허용합니다
+ manage_user_access: 사용자 접근 관리
+ manage_user_access_description: 사용자가 다른 사용자의 2차 인증을 비활성화 하거나, 이메일 주소를 바꾸거나, 암호를 초기화 할 수 있도록 허용
+ manage_users: 사용자 관리
+ manage_users_description: 사용자가 다른 사용자의 상세정보를 보고 해당 사용자에 대한 중재활동을 할 수 있도록 허용
+ manage_webhooks: 웹훅 관리
+ manage_webhooks_description: 사용자가 관리용 웹훅을 설정할 수 있도록 허용
+ view_audit_log: 감사 기록 보기
+ view_audit_log_description: 사용자가 서버의 감사 기록을 볼 수 있도록 허용
+ view_dashboard: 대시보드 보기
+ view_dashboard_description: 사용자가 여러 통계정보를 볼 수 있는 대시보드에 접근할 수 있도록 허용
+ view_devops: 데브옵스
+ view_devops_description: Sidekiq과 pgHero 대시보드에 접근할 수 있도록 허용
+ title: 역할
rules:
add_new: 규칙 추가
delete: 삭제
@@ -689,9 +746,6 @@ ko:
deletion:
desc_html: 사용자가 자신의 계정을 삭제할 수 있도록 허용합니다
title: 계정 삭제를 허가함
- min_invite_role:
- disabled: 아무도 못 하게
- title: 초대링크를 만들 수 있는 권한
require_invite_text:
desc_html: 가입이 수동 승인을 필요로 할 때, "왜 가입하려고 하나요?" 항목을 선택사항으로 두는 것보다는 필수로 두는 것이 낫습니다
title: 새 사용자가 초대 요청 글을 작성해야 하도록
@@ -704,9 +758,6 @@ ko:
show_known_fediverse_at_about_page:
desc_html: 활성화 되면 프리뷰 페이지에서 페디버스의 모든 게시물을 표시합니다. 비활성화시 로컬에 있는 게시물만 표시 됩니다.
title: 타임라인 프리뷰에 알려진 페디버스 표시하기
- show_staff_badge:
- desc_html: 사용자 페이지에 스태프 배지를 표시합니다
- title: 스태프 배지 표시
site_description:
desc_html: API의 소개문에 사용 됩니다.이 마스토돈 서버의 특별한 점 등을 설명하세요. HTML 태그, 주로 <a>
, <em>
같은 것을 사용 가능합니다.
title: 서버 설명
@@ -1108,15 +1159,23 @@ ko:
public: 퍼블릭 타임라인
thread: 대화
edit:
+ add_keyword: 키워드 추가
+ keywords: 키워드
title: 필터 편집
errors:
+ deprecated_api_multiple_keywords: 이 파라미터들은 하나를 초과하는 필터 키워드에 적용되기 때문에 이 응용프로그램에서 수정될 수 없습니다. 더 최신의 응용프로그램이나 웹 인터페이스를 사용하세요.
invalid_context: 컨텍스트가 없거나 올바르지 않습니다
- invalid_irreversible: 되돌릴 수 없는 필터링은 홈 타임라인과 알림에서만 동작합니다
index:
+ contexts: "%{contexts}에 대한 필터"
delete: 삭제
empty: 필터가 없습니다.
+ expires_in: "%{distance} 안에 만료됨"
+ expires_on: "%{date}에 만료됨"
+ keywords:
+ other: "%{count}개의 키워드"
title: 필터
new:
+ save: 새 필터 저장
title: 필터 추가
footer:
developers: 개발자
@@ -1233,6 +1292,8 @@ ko:
copy_account_note_text: '이 사용자는 %{acct}로부터 이동하였습니다. 당신의 이전 노트는 이렇습니다:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} 님이 신고를 제출했습니다"
sign_up:
subject: "%{name} 님이 가입했습니다"
digest:
diff --git a/config/locales/ku.yml b/config/locales/ku.yml
index a157dbb4e4b..ccc70d9c5e9 100644
--- a/config/locales/ku.yml
+++ b/config/locales/ku.yml
@@ -83,10 +83,8 @@ ku:
posts_tab_heading: Şandî
posts_with_replies: Şandî û bersiv
roles:
- admin: Rêvebir
bot: Bot
group: Kom
- moderator: Moderator
unavailable: Profîl nay bikaranîn
unfollow: Neşopîne
admin:
@@ -105,12 +103,17 @@ ku:
avatar: Wêne
by_domain: Navper
change_email:
- changed_msg: E-nameya ajimêr bi awayekî serkeftî hate guhertin!
+ changed_msg: E-name bi awayekî serkeftî hate guhertin!
current_email: E-nameya heyî
label: E-nameyê biguherîne
new_email: E-nameya nû
submit: E-nameyê biguherîne
title: E-nameyê biguherîne bo %{username}
+ change_role:
+ changed_msg: Rol bi awayekî serkeftî hate guhertin!
+ label: Rolê biguherîne
+ no_role: Rol tune
+ title: Rolê biguherîne ji bo %{username}
confirm: Bipejirîne
confirmed: Hate pejirandin
confirming: Tê pejirandin
@@ -154,6 +157,7 @@ ku:
active: Çalak
all: Hemû
pending: Tê nirxandin
+ silenced: Sînorkirî
suspended: Sekinandî
title: Çavdêrî
moderation_notes: Nîşeyên Rêvebirinê
@@ -161,6 +165,7 @@ ku:
most_recent_ip: IP' a dawî
no_account_selected: Tu ajimêr nehat hilbijartin ji ber vê tu ajimêr nehat guhertin
no_limits_imposed: Sînor nay danîn
+ no_role_assigned: Ti rol nehatin diyarkirin
not_subscribed: Beşdar nebû
pending: Li benda nirxandinê ye
perform_full_suspension: Sekinî
@@ -187,12 +192,7 @@ ku:
reset: Ji nû ve saz bike
reset_password: Borînpeyvê ji nû ve saz bike
resubscribe: Dîsa beşdar bibe
- role: Maf
- roles:
- admin: Rêvebir
- moderator: Çavdêr
- staff: Xebatkar
- user: Bikarhêner
+ role: Rol
search: Bigere
search_same_email_domain: Bikarhênerên din ên bi heman navpera e-nameyê
search_same_ip: Bikarhênerên din ên xwedî heman IP
@@ -651,6 +651,35 @@ ku:
unresolved: Neçareserkirî
updated_at: Rojanekirî
view_profile: Profîlê nîşan bide
+ roles:
+ add_new: Rolê tevlî bike
+ assigned_users:
+ one: "%{count} bikarhêner"
+ other: "%{count} bikarhêner"
+ categories:
+ administration: Rêvebirî
+ devops: Devops
+ invites: Vexwendin
+ moderation: Çavdêrî
+ special: Taybet
+ delete: Jê bibe
+ description_html: Bi rolên bikarhêner, tu dikarî fonksiyon û deverên Mastodon ku bikarhênerên wê dikarin xwe bigihînin kesane bikî.
+ edit: Rolê '%{name}' serrast bike
+ everyone: Mafdayînên berdest
+ everyone_full_description_html: Ev rola bingehîn bandorê li hemû bikarhêneran dike, tevî yên bêyî rolek diyarkirî jî. Hemû rolên din mafdayînan jê digirin.
+ permissions_count:
+ one: "%{count} mafdayîn"
+ other: "%{count} mafdayîn"
+ privileges:
+ administrator: Rêvebir
+ invite_users: Bikarhêneran vexwîne
+ manage_custom_emojis: Emojiyên kesane bi rêve bibe
+ manage_invites: Vexwendinan bi rêve bibe
+ manage_roles: Rolan bi rêve bibe
+ manage_rules: Rolan bi rêve bibe
+ manage_settings: Sazkariyan bi rê ve bibe
+ manage_users: Bikarhêneran bi rêve bibe
+ title: Rol
rules:
add_new: Rêbazekê tevlî bike
delete: Jê bibe
@@ -703,9 +732,6 @@ ku:
deletion:
desc_html: Maf bide ku herkes bikaribe ajimêrê te jê bibe
title: Jê birina ajimêrê vekek
- min_invite_role:
- disabled: Ne yek
- title: Maf bide vexwendinên ji alîyê
require_invite_text:
desc_html: Gava ku tomarkirin pêdiviya pejirandina destan dike, Têketina nivîsê "Tu çima dixwazî beşdar bibî?" Bibe sereke ji devla vebijêrkî be
title: Ji bo bikarhênerên nû divê ku sedemek tevlêbûnê binivîsinin
@@ -718,9 +744,6 @@ ku:
show_known_fediverse_at_about_page:
desc_html: Dema ku neçalak be, demnameya gerdûnî ya ku ji rûpela zeviyê ve hatî girêdan tenê bi nîşandana naveroka herêmî tên sînorkirin
title: Li ser rûpela demnameya ne naskirî naveroka giştî nîşan bide
- show_staff_badge:
- desc_html: Di rûpela bikarhêner da rozeta xebatkaran nîşan bike
- title: Rozeta xebatkara nîşan bike
site_description:
desc_html: Paragrafa destpêkê li ser API. Dide nasîn ka çi ev rajekarê Mastodon taybet dike û tiştên din ên girîn. Tu dikarî hashtagên HTML-ê, bi kar bîne di <a>
û <em>
de.
title: Danasîna rajekar
@@ -1126,10 +1149,10 @@ ku:
public: Demnameya gelemperî
thread: Axaftin
edit:
+ keywords: Peyvkilît
title: Parzûnê serrast bike
errors:
invalid_context: Naverok tune ye yan jî nederbasdar tê peydakirin
- invalid_irreversible: Tenê qadên agahdarkirinê û serrûpel bi parzûna bêveger re dixebitin
index:
delete: Jê bibe
empty: Parzûnên te tune ne.
@@ -1253,6 +1276,8 @@ ku:
copy_account_note_text: 'Ev bikarhêner ji %{acct} livî ye, li vir nîşeyên te yên berê ku te di derbarê wî/ê de nivîsandiye:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} ragihandinek şand"
sign_up:
subject: "%{name} tomar bû"
digest:
diff --git a/config/locales/lt.yml b/config/locales/lt.yml
index 5846f7d5d4a..96119216d1e 100644
--- a/config/locales/lt.yml
+++ b/config/locales/lt.yml
@@ -35,9 +35,7 @@ lt:
posts_tab_heading: Tootai
posts_with_replies: Tootai ir atsakymai
roles:
- admin: Administratorius
bot: Bot'as
- moderator: Moderatorius
unfollow: Nesekti
admin:
account_actions:
@@ -52,7 +50,6 @@ lt:
avatar: Profilio nuotrauka
by_domain: Domenas
change_email:
- changed_msg: Paskyros el paštas sėkmingai pakeistas!
current_email: Dabartinis el paštas
label: Pakeisti el pašto adresą
new_email: Naujas el pašto adresas
@@ -112,12 +109,6 @@ lt:
reset: Iš naujo
reset_password: Atkurti slaptažodį
resubscribe: Per prenumeruoti
- role: Leidimai
- roles:
- admin: Administratorius
- moderator: Moderatorius
- staff: Personalas
- user: Vartotojas
search: Ieškoti
shared_inbox_url: Bendroji gautųjų URL
show:
@@ -297,15 +288,9 @@ lt:
deletion:
desc_html: Leisti visiems ištrinti savo paskyrą
title: Atidaryti paskyros trynimą
- min_invite_role:
- disabled: Nei vienas
- title: Leisti pakvietimus
show_known_fediverse_at_about_page:
desc_html: Kai įjungta, rodys įrašus iš visos žinomos fedi-visatos. Kitokiu atvėju, rodys tik lokalius įrašus.
title: Rodyti žinoma fedi-visatos laiko juosta peržiūroje
- show_staff_badge:
- desc_html: Rodyti personalo ženklelį vartotojo puslapyje
- title: Rodyti personalo ženklelį
site_description:
desc_html: Introdukcinis paragrafas pagrindiniame puslapyje. Apibūdink, kas padaro šį Mastodon serverį išskirtiniu ir visa kita, kas svarbu. Nebijok naudoti HTML žymes, pavyzdžiui < a >
bei <em>
.
title: Serverio apibūdinimas
@@ -449,7 +434,6 @@ lt:
title: Keisti filtrą
errors:
invalid_context: Jokio arba netinkamas pateiktas kontekstas
- invalid_irreversible: Negrąžinamas filtras veikia tik namų ir priminimų kontekste
index:
delete: Ištrinti
title: Filtrai
diff --git a/config/locales/lv.yml b/config/locales/lv.yml
index 2ceec30b222..cc7306c09d1 100644
--- a/config/locales/lv.yml
+++ b/config/locales/lv.yml
@@ -62,7 +62,7 @@ lv:
choices_html: "%{name} izvēles:"
endorsements_hint: Jūs varat apstiprināt cilvēkus, kuriem sekojat no tīmekļa saskarnes, un viņi tiks parādīti šeit.
featured_tags_hint: Šeit vari norādīt īpašus tēmturus, kuri tiks parādīti šeit.
- follow: Seko
+ follow: Sekot
followers:
one: Sekotājs
other: Sekotāji
@@ -87,10 +87,8 @@ lv:
posts_tab_heading: Ziņas
posts_with_replies: Ziņas un atbildes
roles:
- admin: Admins
bot: Bots
group: Grupa
- moderator: Moder
unavailable: Profils nav pieejams
unfollow: Pārstāt sekot
admin:
@@ -109,12 +107,17 @@ lv:
avatar: Avatars
by_domain: Domēns
change_email:
- changed_msg: Konta e-pasts veiksmīgi nomainīts!
+ changed_msg: E-pasts veiksmīgi nomainīts!
current_email: Pašreizējais e-pasts
label: Mainīt e-pastu
new_email: Jaunā e-pasta adrese
submit: Mainīt e-pastu
title: Mainīt e-pastu %{username}
+ change_role:
+ changed_msg: Loma veiksmīgi nomainīta!
+ label: Mainīt lomu
+ no_role: Nav lomas
+ title: Mainīt lomu %{username}
confirm: Apstiprināt
confirmed: Apstiprināts
confirming: Apstiprina
@@ -150,7 +153,7 @@ lv:
remote: Attālinātie
title: Atrašanās vieta
login_status: Pieteikšanās statuss
- media_attachments: Mediju pielikumi
+ media_attachments: Multivides pielikumi
memorialize: Pārvērst atmiņās
memorialized: Piemiņa saglabāta
memorialized_msg: "%{username} veiksmīgi pārvērsts par piemiņas kontu"
@@ -158,6 +161,7 @@ lv:
active: Aktīvie
all: Visi
pending: Gaida
+ silenced: Ierobežotie
suspended: Apturētie
title: Moderācija
moderation_notes: Moderācijas piezīmes
@@ -165,6 +169,7 @@ lv:
most_recent_ip: Pati pēdējā IP
no_account_selected: Neviens konts netika mainīts, jo neviens netika atlasīts
no_limits_imposed: Nav noteikti ierobežojumi
+ no_role_assigned: Loma nav piešķirta
not_subscribed: Nav abonēts
pending: Gaida pārskatīšanu
perform_full_suspension: Apturēt
@@ -192,12 +197,7 @@ lv:
reset: Atiestatīt
reset_password: Atiestatīt paroli
resubscribe: Pieteikties vēlreiz
- role: Privilēģijas
- roles:
- admin: Administrators
- moderator: Moderators
- staff: Personāls
- user: Lietotājs
+ role: Loma
search: Meklēt
search_same_email_domain: Citi lietotāji ar tādu pašu e-pasta domēnu
search_same_ip: Citi lietotāji ar tādu pašu IP
@@ -663,6 +663,69 @@ lv:
unresolved: Neatrisinātie
updated_at: Atjaunināts
view_profile: Skatīt profilu
+ roles:
+ add_new: Pievienot lomu
+ assigned_users:
+ one: "%{count} lietotājs"
+ other: "%{count} lietotāji"
+ zero: "%{count} lietotāju"
+ categories:
+ administration: Administrēšana
+ devops: Izstrādātāji
+ invites: Uzaicinājumi
+ moderation: Moderācija
+ special: Īpašās
+ delete: Dzēst
+ description_html: Izmantojot lietotāju lomas, vari pielāgot, kurām Mastodon funkcijām un apgabaliem var piekļūt tavi lietotāji.
+ edit: Rediģēt lomu '%{name}'
+ everyone: Noklusētās atļaujas
+ everyone_full_description_html: Šī ir pamata loma, kas ietekmē visus lietotājus, pat tos, kuriem nav piešķirta loma. Visas pārējās lomas manto atļaujas no šīs.
+ permissions_count:
+ one: "%{count} atļauja"
+ other: "%{count} atļaujas"
+ zero: "%{count} atļauju"
+ privileges:
+ administrator: Administrators
+ administrator_description: Lietotāji ar šo atļauju apies visas atļaujas
+ delete_user_data: Dzēst Lietotāja Datus
+ delete_user_data_description: Ļauj lietotājiem bez kavēšanās dzēst citu lietotāju datus
+ invite_users: Uzaicināt Lietotājus
+ invite_users_description: Ļauj lietotājiem uzaicināt jaunus cilvēkus uz šo serveri
+ manage_announcements: Pārvaldīt Paziņojumus
+ manage_announcements_description: Ļauj lietotājiem pārvaldīt paziņojumus serverī
+ manage_appeals: Pārvaldīt Pārsūdzības
+ manage_appeals_description: Ļauj lietotājiem izskatīt apelācijas pret regulēšanas darbībām
+ manage_blocks: Pārvaldīt Bloķus
+ manage_blocks_description: Ļauj lietotājiem bloķēt e-pasta pakalpojumu sniedzējus un IP adreses
+ manage_custom_emojis: Pārvaldīt Pielāgotās Emocijzīmes
+ manage_custom_emojis_description: Ļauj lietotājiem pārvaldīt pielāgotās emocijzīmes serverī
+ manage_federation: Pārvaldīt Federāciju
+ manage_federation_description: Ļauj lietotājiem bloķēt vai atļaut federāciju ar citiem domēniem un kontrolēt piegādi
+ manage_invites: Pārvaldīt Uzaicinājumus
+ manage_invites_description: Ļauj lietotājiem pārlūkot un deaktivizēt uzaicinājuma saites
+ manage_reports: Pārvaldīt Pārskatus
+ manage_reports_description: Ļauj lietotājiem pārskatīt pārskatus un veikt pret tiem regulēšanas darbības
+ manage_roles: Pārvaldīt Lomas
+ manage_roles_description: Ļauj lietotājiem pārvaldīt un piešķirt lomas, kas ir zemākas par viņu lomu
+ manage_rules: Pārvaldīt Noteikumus
+ manage_rules_description: Ļauj lietotājiem mainīt servera noteikumus
+ manage_settings: Pārvaldīt Iestatījumus
+ manage_settings_description: Ļauj lietotājiem mainīt vietnes uzstādījumus
+ manage_taxonomies: Pārvaldīt Taksonomijas
+ manage_taxonomies_description: Ļauj lietotājiem pārskatīt aktuālo saturu un atjaunināt atsauces iestatījumus
+ manage_user_access: Pārvaldīt Lietotāju Piekļuves
+ manage_user_access_description: Ļauj lietotājiem atspējot citu lietotāju divu faktoru autentifikāciju, mainīt savu e-pasta adresi un atiestatīt paroli
+ manage_users: Pārvaldīt Lietotājus
+ manage_users_description: Ļauj lietotājiem skatīt citu lietotāju informāciju un veikt pret viņiem regulēšanas darbības
+ manage_webhooks: Pārvaldīt Tīmekļa Aizķeres
+ manage_webhooks_description: Ļauj lietotājiem iestatīt tīmekļa aizķeres administratīviem pasākumiem
+ view_audit_log: Skatīt Audita Žurnālu
+ view_audit_log_description: Ļauj lietotājiem redzēt serverī veikto administratīvo darbību vēsturi
+ view_dashboard: Skatīt Informācijas Paneli
+ view_dashboard_description: Ļauj lietotājiem piekļūt informācijas panelim un dažādiem rādītājiem
+ view_devops: Izstrādātāji
+ view_devops_description: Ļauj lietotājiem piekļūt Sidekiq un pgHero informācijas paneļiem
+ title: Lomas
rules:
add_new: Pievienot noteikumu
delete: Dzēst
@@ -715,9 +778,6 @@ lv:
deletion:
desc_html: Atļaut ikvienam dzēst savu kontu
title: Atvērt konta dzēšanu
- min_invite_role:
- disabled: Nevienam
- title: Atļaut uzaicinājumus
require_invite_text:
desc_html: 'Ja reģistrācijai nepieciešama manuāla apstiprināšana, izdari, lai teksta: “Kāpēc vēlaties pievienoties?” ievade ir obligāta, nevis neobligāts'
title: Pieprasīt jauniem lietotājiem ievadīt pievienošanās iemeslu
@@ -730,9 +790,6 @@ lv:
show_known_fediverse_at_about_page:
desc_html: Ja šī funkcija ir atspējota, tā ierobežo publisko ziņu lentu, kas ir saistīta ar galveno lapu, lai parādītu tikai vietējo saturu
title: Iekļaut federēto saturu neautentificētā publiskā ziņu lentas lapā
- show_staff_badge:
- desc_html: Parāda personāla emblēmu lietotāja lapā
- title: Parādīt personāla emblēmu
site_description:
desc_html: Ievadpunkts par API. Apraksti, kas padara šo Mastodon serveri īpašu, un jebko citu svarīgu. Vari izmantot HTML tagus, jo īpaši <a>
un <em>
.
title: Servera apraksts
@@ -1142,15 +1199,25 @@ lv:
public: Publiskās ziņu lentas
thread: Sarunas
edit:
+ add_keyword: Pievienot atslēgvārdu
+ keywords: Atslēgvārdi
title: Rediģēt filtru
errors:
+ deprecated_api_multiple_keywords: Šos parametrus šajā lietojumprogrammā nevar mainīt, jo tie attiecas uz vairāk nekā vienu filtra atslēgvārdu. Izmanto jaunāku lietojumprogrammu vai tīmekļa saskarni.
invalid_context: Nav, vai piegādāts nederīgs konteksts
- invalid_irreversible: Neatgriezeniskā filtrēšana darbojas tikai sākuma vai paziņojumu kontekstā
index:
+ contexts: Filtri %{contexts}
delete: Dzēst
empty: Tev nav filtru.
+ expires_in: Beidzas %{distance}
+ expires_on: Beidzas %{date}
+ keywords:
+ one: "%{count} atsēgvārds"
+ other: "%{count} atslēgvārdi"
+ zero: "%{count} atslēgvārdu"
title: Filtri
new:
+ save: Saglabāt jauno filtru
title: Pievienot jaunu filtru
footer:
developers: Izstrādātāji
@@ -1271,6 +1338,8 @@ lv:
copy_account_note_text: 'Šis lietotājs pārcēlās no %{acct}, šeit bija tavas iepriekšējās piezīmes par viņu:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} iesniedza ziņojumu"
sign_up:
subject: "%{name} ir pierakstījies"
digest:
diff --git a/config/locales/ml.yml b/config/locales/ml.yml
index f035633ca9b..76a3ec07cef 100644
--- a/config/locales/ml.yml
+++ b/config/locales/ml.yml
@@ -35,7 +35,6 @@ ml:
posts_tab_heading: ടൂട്ടുകൾ
posts_with_replies: ടൂട്ടുകളും മറുപടികളും
roles:
- admin: അഡ്മിന്
bot: ബോട്ട്
group: ഗ്രൂപ്പ്
unavailable: പ്രൊഫൈൽ ലഭ്യമല്ല
@@ -47,7 +46,6 @@ ml:
avatar: അവതാർ
by_domain: മേഖല
change_email:
- changed_msg: അംഗത്തിന്റെ ഇലക്ട്രോണിക് കത്തിന്റെ മേൽവിലാസം വിജയകരമായി മാറ്റിയിരിക്കുന്നു!
current_email: ഇപ്പോഴത്തെ ഇലക്ട്രോണിക് കത്തിന്റെ മേൽവിലാസം
label: മാറിയ ഇലക്ട്രോണിക് കത്തിന്റെ മേൽവിലാസം
new_email: പുതിയ ഇലക്ട്രോണിക് കത്ത്
@@ -83,9 +81,6 @@ ml:
success: സ്ഥിരീകരണ ഇമെയിൽ വിജയകരമായി അയച്ചു!
reset: പുനഃക്രമീകരിക്കുക
reset_password: പാസ്വേഡ് പുനഃക്രമീകരിക്കുക
- role: അനുമതികൾ
- roles:
- user: ഉപയോക്താവ്
search: തിരയുക
title: അക്കൗണ്ടുകൾ
unconfirmed_email: സ്ഥിരീകരിക്കാത്ത ഇമെയിൽ
diff --git a/config/locales/ms.yml b/config/locales/ms.yml
index d400d3256a0..36aa351d9d4 100644
--- a/config/locales/ms.yml
+++ b/config/locales/ms.yml
@@ -75,10 +75,8 @@ ms:
posts_tab_heading: Hantaran
posts_with_replies: Hantaran dan balasan
roles:
- admin: Pentadbir
bot: Bot
group: Kumpulan
- moderator: Penyederhana
unavailable: Profil tidak tersedia
unfollow: Nyahikut
admin:
@@ -97,7 +95,6 @@ ms:
avatar: Avatar
by_domain: Domain
change_email:
- changed_msg: E-mel akaun telah berjaya ditukar!
current_email: E-mel semasa
label: Ubah e-mel
new_email: E-mel baharu
@@ -172,12 +169,6 @@ ms:
reset: Tetapkan semula
reset_password: Tetapkan semula kata laluan
resubscribe: Langgan semula
- role: Kebenaran
- roles:
- admin: Pentadbir
- moderator: Penyederhana
- staff: Kakitangan
- user: Pengguna
search: Cari
search_same_email_domain: Pengguna lain dengan domain e-mel yang sama
search_same_ip: Pengguna lain dengan alamat IP yang sama
@@ -529,9 +520,6 @@ ms:
deletion:
desc_html: Benarkan sesiapapun memadamkan akaun mereka
title: Buka pemadaman akaun
- min_invite_role:
- disabled: Tiada sesiapa
- title: Benarkan jemputan dari
require_invite_text:
desc_html: Apabila pendaftaran memerlukan kelulusan manual, tandakan input teks "Kenapa anda mahu menyertai?" sebagai wajib, bukan pilihan
title: Memerlukan alasan bagi pengguna baru untuk menyertai
diff --git a/config/locales/nl.yml b/config/locales/nl.yml
index b5040153e12..caf3370d877 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -81,10 +81,8 @@ nl:
posts_tab_heading: Berichten
posts_with_replies: Berichten en reacties
roles:
- admin: Beheerder
bot: Bot
group: Groep
- moderator: Moderator
unavailable: Profiel niet beschikbaar
unfollow: Ontvolgen
admin:
@@ -103,12 +101,17 @@ nl:
avatar: Avatar
by_domain: Domein
change_email:
- changed_msg: E-mailadres van account succesvol veranderd!
+ changed_msg: E-mailadres succesvol veranderd!
current_email: Huidig e-mailadres
label: E-mailadres wijzigen
new_email: Nieuw e-mailadres
submit: E-mailadres veranderen
title: E-mailadres wijzigen voor %{username}
+ change_role:
+ changed_msg: Rol succesvol veranderd!
+ label: Rol veranderen
+ no_role: Geen rol
+ title: Rol van %{username} veranderen
confirm: Bevestigen
confirmed: Bevestigd
confirming: Bevestiging
@@ -135,7 +138,7 @@ nl:
invite_request_text: Redenen om te registreren
invited_by: Uitgenodigd door
ip: IP
- joined: Geregistreerd in
+ joined: Geregistreerd
location:
all: Alles
local: Lokaal
@@ -150,6 +153,7 @@ nl:
active: Actief
all: Alles
pending: In afwachting
+ silenced: Beperkt
suspended: Opgeschort
title: Moderatie
moderation_notes: Opmerkingen voor moderatoren
@@ -157,10 +161,11 @@ nl:
most_recent_ip: Laatst gebruikt IP-adres
no_account_selected: Er zijn geen accounts veranderd, omdat er geen een was geselecteerd
no_limits_imposed: Geen limieten ingesteld
+ no_role_assigned: Geen rol toegewezen
not_subscribed: Niet geabonneerd
pending: Moet nog beoordeeld worden
perform_full_suspension: Opschorten
- previous_strikes: Vorige overtredingen
+ previous_strikes: Eerdere overtredingen
previous_strikes_description_html:
one: Dit account heeft één overtreding.
other: Dit account heeft %{count} overtredingen.
@@ -170,7 +175,7 @@ nl:
push_subscription_expires: PuSH-abonnement verloopt op
redownload: Profiel vernieuwen
redownloaded_msg: Het herstellen van het oorspronkelijke profiel van %{username} is geslaagd
- reject: Afkeuren
+ reject: Afwijzen
rejected_msg: Het afwijzen van het registratieverzoek van %{username} is geslaagd
remove_avatar: Avatar verwijderen
remove_header: Omslagfoto verwijderen
@@ -183,15 +188,13 @@ nl:
reset: Opnieuw
reset_password: Wachtwoord opnieuw instellen
resubscribe: Opnieuw abonneren
- role: Bevoegdheden
- roles:
- admin: Beheerder
- moderator: Moderator
- staff: Medewerkers
- user: Gebruiker
+ role: Rol
search: Zoeken
search_same_email_domain: Andere gebruikers met hetzelfde e-maildomein
search_same_ip: Andere gebruikers met hetzelfde IP-adres
+ security_measures:
+ only_password: Alleen wachtwoord
+ password_and_2fa: Wachtwoord en tweestapsverificatie
sensitive: Gevoelig forceren
sensitized: als gevoelig gemarkeerd
shared_inbox_url: Gedeelde inbox-URL
@@ -201,11 +204,14 @@ nl:
silence: Beperken
silenced: Beperkt
statuses: Berichten
+ strikes: Eerdere overtredingen
subscribe: Abonneren
+ suspend: Opschorten
suspended: Opgeschort
suspension_irreversible: De gegevens van dit account zijn onomkeerbaar verwijderd. Je kunt het opschorten van dit account ongedaan maken zodat het weer valt te gebruiken, maar de verwijderde gegevens worden hiermee niet hersteld.
suspension_reversible_hint_html: Dit account is opgeschort en de gegevens worden volledig verwijderd op %{date}. Tot die tijd kan dit account worden hersteld zonder nadelige gevolgen. Wanneer je alle gegevens van dit account onmiddellijk wilt verwijderen, kun je dit hieronder doen.
title: Accounts
+ unblock_email: E-mailadres deblokkeren
unconfirmed_email: Onbevestigd e-mailadres
undo_sensitized: Niet meer als gevoelig forceren
undo_silenced: Niet langer beperken
@@ -220,6 +226,8 @@ nl:
whitelisted: Goedgekeurd voor federatie
action_logs:
action_types:
+ approve_appeal: Bezwaar goedkeuren
+ approve_user: Gebruiker goedkeuren
assigned_to_self_report: Rapportage toewijzen
change_email_user: E-mailadres van gebruiker wijzigen
confirm_user: Gebruiker bevestigen
@@ -237,6 +245,7 @@ nl:
destroy_domain_allow: Domeingoedkeuring verwijderen
destroy_domain_block: Domeinblokkade verwijderen
destroy_email_domain_block: Blokkade van e-maildomein verwijderen
+ destroy_instance: Domein volledig verwijderen
destroy_ip_block: IP-regel verwijderen
destroy_status: Toot verwijderen
destroy_unavailable_domain: Niet beschikbaar domein verwijderen
@@ -247,6 +256,8 @@ nl:
enable_user: Gebruiker inschakelen
memorialize_account: Het account in een In memoriam veranderen
promote_user: Gebruiker promoveren
+ reject_appeal: Bezwaar afwijzen
+ reject_user: Gebruiker afwijzen
remove_avatar_user: Avatar verwijderen
reopen_report: Rapportage heropenen
reset_password_user: Wachtwoord opnieuw instellen
@@ -255,6 +266,7 @@ nl:
silence_account: Account beperken
suspend_account: Account opschorten
unassigned_report: Rapportage niet langer toewijzen
+ unblock_email_account: E-mailadres deblokkeren
unsensitive_account: De media in jouw account niet langer als gevoelig markeren
unsilence_account: Account niet langer beperken
unsuspend_account: Account niet langer opschorten
@@ -263,6 +275,7 @@ nl:
update_domain_block: Domeinblokkade bijwerken
update_status: Bericht bijwerken
actions:
+ approve_appeal_html: "%{name} heeft het bezwaar tegen de moderatie-actie van %{target} goedgekeurd"
assigned_to_self_report_html: "%{name} heeft rapportage %{target} aan zichzelf toegewezen"
change_email_user_html: "%{name} veranderde het e-mailadres van gebruiker %{target}"
confirm_user_html: E-mailadres van gebruiker %{target} is door %{name} bevestigd
@@ -290,6 +303,8 @@ nl:
enable_user_html: Inloggen voor %{target} is door %{name} ingeschakeld
memorialize_account_html: Het account %{target} is door %{name} in een In memoriam veranderd
promote_user_html: Gebruiker %{target} is door %{name} gepromoveerd
+ reject_appeal_html: "%{name} heeft het bezwaar tegen de moderatie-actie van %{target} afgewezen"
+ reject_user_html: "%{name} heeft de registratie van %{target} afgewezen"
remove_avatar_user_html: "%{name} verwijderde de avatar van %{target}"
reopen_report_html: "%{name} heeft rapportage %{target} heropend"
reset_password_user_html: Wachtwoord van gebruiker %{target} is door %{name} opnieuw ingesteld
@@ -360,9 +375,26 @@ nl:
updated_msg: Bijwerken van emoji is geslaagd!
upload: Uploaden
dashboard:
+ active_users: actieve gebruikers
+ interactions: interacties
+ media_storage: Opgeslagen mediabestanden
+ new_users: nieuwe gebruikers
+ opened_reports: aangemaakte rapportages
+ pending_appeals_html:
+ one: "%{count} bezwaar te beoordelen"
+ other: "%{count} bezwaren te beoordelen"
+ resolved_reports: opgeloste rapportages
software: Software
+ sources: Locatie van registratie
space: Ruimtegebruik
title: Dashboard
+ top_languages: Meest actieve talen
+ top_servers: Meest actieve servers
+ website: Website
+ disputes:
+ appeals:
+ empty: Geen bezwaren gevonden.
+ title: Bezwaren
domain_allows:
add_new: Federatie met domein goedkeuren
created_msg: Federatie met domein is succesvol goedgekeurd
@@ -400,6 +432,9 @@ nl:
add_new: Nieuwe toevoegen
created_msg: Blokkeren e-maildomein geslaagd
delete: Verwijderen
+ dns:
+ types:
+ mx: MX-record
domain: Domein
new:
create: Blokkeren
@@ -414,13 +449,37 @@ nl:
title: Aanbevolen accounts
unsuppress: Account weer aanbevelen
instances:
+ availability:
+ title: Beschikbaarheid
+ warning: De laatste poging om met deze server te verbinden was onsuccesvol
back_to_all: Alles
back_to_limited: Beperkt
back_to_warning: Waarschuwing
by_domain: Domein
+ content_policies:
+ comment: Interne reden
+ description_html: Je kunt het beleid bepalen dat op de accounts van dit domein en alle subdomeinen van toepassing is.
+ policies:
+ reject_media: Mediabestanden weigeren
+ reject_reports: Rapportages weigeren
+ silence: Beperkt
+ suspend: Opgeschort
+ policy: Zwaarte
+ reason: Publieke reden
+ title: Beleid
+ dashboard:
+ instance_accounts_dimension: Meest door ons gevolgde accounts
+ instance_accounts_measure: opgeslagen accounts
+ instance_followers_measure: daar ons daar gevolgd
+ instance_follows_measure: door hun hier gevolgd
+ instance_languages_dimension: Meest actieve talen
+ instance_media_attachments_measure: opgeslagen mediabestanden
+ instance_reports_measure: rapportages over hun
+ instance_statuses_measure: opgeslagen berichten
delivery:
all: Alles
clear: Bezorgfouten weghalen
+ failing: Problemen
restart: Bezorging herstarten
stop: Bezorging beëindigen
unavailable: Niet beschikbaar
@@ -434,6 +493,7 @@ nl:
title: Moderatie
private_comment: Privé-opmerking
public_comment: Openbare opmerking
+ purge: Volledig verwijderen
title: Federatie
total_blocked_by_us: Door ons geblokkeerd
total_followed_by_them: Door hun gevolgd
@@ -489,14 +549,17 @@ nl:
notes:
one: "%{count} opmerking"
other: "%{count} opmerkingen"
+ action_log: Auditlog
action_taken_by: Actie uitgevoerd door
are_you_sure: Weet je het zeker?
assign_to_self: Aan mij toewijzen
assigned: Toegewezen moderator
by_target_domain: Domein van gerapporteerde account
+ category: Category
comment:
none: Geen
created_at: Gerapporteerd op
+ delete_and_resolve: Bericht verwijderen
forwarded: Doorgestuurd
forwarded_to: Doorgestuurd naar %{domain}
mark_as_resolved: Markeer als opgelost
@@ -507,17 +570,22 @@ nl:
create_and_unresolve: Heropenen met opmerking
delete: Verwijderen
placeholder: Beschrijf welke acties zijn ondernomen of andere gerelateerde opmerkingen…
+ title: Opmerkingen
reopen: Rapportage heropenen
report: 'Rapportage #%{id}'
reported_account: Gerapporteerde account
reported_by: Gerapporteerd door
resolved: Opgelost
resolved_msg: Rapportage succesvol opgelost!
- status: Bericht
+ status: Rapportages
+ target_origin: Herkomst van de gerapporteerde accounts
title: Rapportages
unassign: Niet langer toewijzen
unresolved: Onopgelost
updated_at: Bijgewerkt
+ view_profile: Profiel bekijken
+ roles:
+ add_new: Rol toevoegen
rules:
add_new: Regel toevoegen
delete: Verwijderen
@@ -570,9 +638,6 @@ nl:
deletion:
desc_html: Toestaan dat iedereen diens eigen account kan verwijderen
title: Verwijderen account toestaan
- min_invite_role:
- disabled: Niemand
- title: Uitnodigingen toestaan door
require_invite_text:
desc_html: Maak het invullen van "Waarom wil je je hier registreren?" verplicht in plaats van optioneel, wanneer registraties handmatig moeten worden goedgekeurd
title: Nieuwe gebruikers moeten een reden invullen waarom ze zich willen registreren
@@ -585,9 +650,6 @@ nl:
show_known_fediverse_at_about_page:
desc_html: Wanneer ingeschakeld wordt de globale tijdlijn op de voorpagina getoond en wanneer uitgeschakeld de lokale tijdlijn
title: De globale tijdlijn op de openbare tijdlijnpagina tonen
- show_staff_badge:
- desc_html: Medewerkersbadge op profielpagina tonen
- title: Medewerkersbadge tonen
site_description:
desc_html: Introductie-alinea voor de API. Beschrijf wat er speciaal is aan deze server en andere zaken die van belang zijn. Je kan HTML gebruiken, zoals <a>
en <em>
.
title: Omschrijving Mastodonserver (API)
@@ -619,12 +681,17 @@ nl:
destroyed_msg: Verwijderen website-upload geslaagd!
statuses:
back_to_account: Terug naar accountpagina
+ batch:
+ report: Rapportage
deleted: Verwijderd
media:
title: Media
no_status_selected: Er werden geen berichten gewijzigd, omdat er geen enkele werd geselecteerd
title: Berichten van account
with_media: Met media
+ strikes:
+ appeal_approved: Bezwaar ingediend
+ appeal_pending: Bezwaar in behandeling
system_checks:
database_schema_check:
message_html: Niet alle databasemigraties zijn voltooid. Je moet deze uitvoeren om er voor te zorgen dat de applicatie blijft werken zoals het hoort
@@ -637,6 +704,20 @@ nl:
review: Status beoordelen
updated_msg: Instellingen hashtag succesvol bijgewerkt
title: Beheer
+ trends:
+ allow: Toestaan
+ disallow: Weigeren
+ links:
+ allow: Link toestaan
+ allow_provider: Uitgever toestaan
+ title: Trending links
+ only_allowed: Alleen toegestaan
+ pending_review: In afwachting van beoordeling
+ preview_card_providers:
+ title: Uitgevers
+ rejected: Afgewezen
+ statuses:
+ allow: Bericht toestaan
warning_presets:
add_new: Nieuwe toevoegen
delete: Verwijderen
@@ -644,8 +725,20 @@ nl:
empty: Je hebt nog geen presets voor waarschuwingen toegevoegd.
title: Presets voor waarschuwingen beheren
admin_mailer:
+ new_appeal:
+ actions:
+ delete_statuses: het verwijderen van diens berichten
+ disable: het bevriezen van diens account
+ mark_statuses_as_sensitive: het markeren van diens berichten als gevoelig
+ none: een waarschuwing
+ sensitive: het gevoelig forceren van diens account
+ silence: het beperken van diens account
+ suspend: het opschorten van diens account
+ body: "%{target} maakt bezwaar tegen een moderatie-actie door %{action_taken_by} op %{date}, betreffende %{type}. De gebruiker schrijft:"
+ next_steps: Je kunt het bezwaar goedkeuren om daarmee de moderatie-actie ongedaan te maken, of je kunt het verwerpen.
+ subject: "%{username} maakt bezwaar tegen een moderatie-actie op %{instance}"
new_pending_account:
- body: Zie hieronder de details van het nieuwe account. Je kunt de aanvraag goedkeuren of afkeuren.
+ body: Zie hieronder de details van het nieuwe account. Je kunt de aanvraag goedkeuren of afwijzen.
subject: Er dient een nieuw account op %{instance} te worden beoordeeld (%{username})
new_report:
body: "%{reporter} heeft %{target} gerapporteerd"
@@ -789,14 +882,26 @@ nl:
explore_mastodon: "%{title} verkennen"
disputes:
strikes:
- appeal: Beroep
- appeal_approved: Het aangetekende beroep is goedgekeurd en deze overtreding is niet langer geldig
- appeal_rejected: Het aangetekende beroep is afgewezen
- appeal_submitted_at: Beroep aangetekend
- appealed_msg: Jouw aangetekende beroep is ingediend. Wanneer deze wordt goedgekeurd, krijg je hiervan bericht.
+ appeal: Bezwaar
+ appeal_approved: Het ingediende bezwaar is goedgekeurd en de eerder vastgestelde overtreding is niet langer geldig
+ appeal_rejected: Het ingediende bezwaar is afgewezen
+ appeal_submitted_at: Bezwaar ingediend
+ appealed_msg: Jouw bezwaar is ingediend. Wanneer deze wordt goedgekeurd, krijg je hiervan bericht.
appeals:
- submit: Beroep aantekenen
- approve_appeal: Beroep goedkeuren
+ submit: Bezwaar indienen
+ approve_appeal: Bezwaar goedkeuren
+ reject_appeal: Bezwaar afgewezen
+ title_actions:
+ delete_statuses: Verwijdering bericht
+ disable: Bevriezen van account
+ mark_statuses_as_sensitive: Berichten als gevoelig markeren
+ none: Waarschuwing
+ sensitive: Volledige account als gevoelig markeren
+ silence: Beperking account
+ suspend: Opschorting account
+ your_appeal_approved: Jouw bezwaar is goedgekeurd
+ your_appeal_pending: Je hebt een bezwaar ingediend
+ your_appeal_rejected: Jouw bezwaar is afgewezen
domain_validator:
invalid_domain: is een ongeldige domeinnaam
errors:
@@ -845,15 +950,24 @@ nl:
public: Openbare tijdlijnen
thread: Gesprekken
edit:
+ add_keyword: Trefwoord toevoegen
+ keywords: Trefwoorden
title: Filter bewerken
errors:
+ deprecated_api_multiple_keywords: Deze instellingen kunnen niet via deze applicatie worden veranderd, omdat er meer dan één trefwoord wordt gebruikt. Gebruik een meer recente applicatie of de webomgeving.
invalid_context: Geen of ongeldige context verstrekt
- invalid_irreversible: Onomkeerbaar filteren werkt alleen met de starttijdlijn en meldingen
index:
+ contexts: Filters in %{contexts}
delete: Verwijderen
empty: Je hebt geen filters aangemaakt.
+ expires_in: Vervalt na %{distance}
+ expires_on: Vervalt op %{date}
+ keywords:
+ one: "%{count} trefwoord"
+ other: "%{count} trefwoorden"
title: Filters
new:
+ save: Nieuwe filter opslaan
title: Nieuw filter toevoegen
footer:
developers: Ontwikkelaars
@@ -917,6 +1031,12 @@ nl:
lists:
errors:
limit: Je hebt het maximaal aantal lijsten bereikt
+ login_activities:
+ authentication_methods:
+ otp: tweestapsverificatie-app
+ password: wachtwoord
+ sign_in_token: beveiligingscode via e-mail
+ webauthn: beveiligingssleutels
media_attachments:
validations:
images_and_video: Een video kan niet aan een bericht met afbeeldingen worden gekoppeld
@@ -960,6 +1080,9 @@ nl:
carry_mutes_over_text: Deze gebruiker is verhuisd vanaf %{acct}. Je hebt dat account genegeerd.
copy_account_note_text: 'Deze gebruiker is verhuisd vanaf %{acct}. Je hebt de volgende opmerkingen over dat account gemaakt:'
notification_mailer:
+ admin:
+ report:
+ subject: "%{name} heeft een rapportage ingediend"
digest:
action: Alle meldingen bekijken
body: Hier is een korte samenvatting van de berichten die je sinds jouw laatste bezoek op %{since} hebt gemist
@@ -1188,10 +1311,23 @@ nl:
public_long: Aan iedereen tonen, ook op openbare tijdlijnen
unlisted: Minder openbaar
unlisted_long: Aan iedereen tonen, maar niet op openbare tijdlijnen
+ statuses_cleanup:
+ min_age:
+ '1209600': 2 weken
+ '15778476': 6 maanden
+ '2629746': 1 maand
+ '31556952': 1 jaar
+ '5259492': 2 maanden
+ '604800': 1 week
+ '63113904': 2 jaar
+ '7889238': 3 maanden
stream_entries:
pinned: Vastgemaakt bericht
reblogged: boostte
sensitive_content: Gevoelige inhoud
+ strikes:
+ errors:
+ too_late: De periode dat je bezwaar kon maken is verstreken
tags:
does_not_match_previous_name: komt niet overeen met de vorige naam
terms:
@@ -1301,14 +1437,31 @@ nl:
recovery_instructions_html: Wanneer je ooit de toegang verliest tot jouw telefoon, kan je met behulp van een van de herstelcodes hieronder opnieuw toegang krijgen tot jouw account. Zorg ervoor dat je de herstelcodes op een veilige plek bewaard. Je kunt ze bijvoorbeeld printen en ze samen met andere belangrijke documenten bewaren.
webauthn: Beveiligingssleutels
user_mailer:
+ appeal_approved:
+ action: Ga naar je account
+ explanation: Het bezwaar tegen een door een moderator vastgestelde overtreding van jou op %{strike_date}, ingediend op %{appeal_date}, is goedgekeurd. De eerder vastgestelde overtreding is hierbij niet langer geldig.
+ subject: Jouw bezwaar van %{date} is goedgekeurd
+ title: Bezwaar goedgekeurd
+ appeal_rejected:
+ explanation: Het bezwaar tegen een door een moderator vastgestelde overtreding van jou op %{strike_date}, ingediend op %{appeal_date}, is afgewezen. De vastgestelde overtreding blijft daarom ongewijzigd.
+ subject: Jouw bezwaar van %{date} is afgewezen
+ title: Bezwaar afgewezen
backup_ready:
explanation: Je hebt een volledige back-up van jouw Mastodon-account opgevraagd. Het staat nu klaar om te worden gedownload!
subject: Jouw archief staat klaar om te worden gedownload
title: Archief ophalen
+ suspicious_sign_in:
+ title: Een nieuwe registratie
warning:
+ appeal: Bezwaar indienen
+ appeal_description: Wanneer je denkt dat dit een fout is, kun je een bezwaar indienen bij de medewerkers van %{instance}.
+ categories:
+ spam: Spam
explanation:
mark_statuses_as_sensitive: Sommige van jouw berichten zijn als gevoelig gemarkeerd door de moderatoren van %{instance}. Dit betekent dat mensen op de media in de berichten moeten klikken/tikken om deze weer te geven. Je kunt media in de toekomst ook zelf als gevoelig markeren.
sensitive: Vanaf nu worden al jouw geüploade media als gevoelig gemarkeerd en verborgen achter een waarschuwing.
+ reason: 'Reden:'
+ statuses: 'Gerapporteerde berichten:'
subject:
disable: Jouw account %{acct} is bevroren
none: Waarschuwing voor %{acct}
diff --git a/config/locales/nn.yml b/config/locales/nn.yml
index 5218270da46..14f9b95adfa 100644
--- a/config/locales/nn.yml
+++ b/config/locales/nn.yml
@@ -74,10 +74,8 @@ nn:
posts_tab_heading: Tut
posts_with_replies: Tut og svar
roles:
- admin: Administrator
bot: Robot
group: Gruppe
- moderator: Moderator
unavailable: Profil ikkje tilgjengeleg
unfollow: Slutt å fylgja
admin:
@@ -96,7 +94,6 @@ nn:
avatar: Bilete
by_domain: Domene
change_email:
- changed_msg: Konto-e-posten er endra!
current_email: Noverande e-post
label: Byt e-post
new_email: Ny e-post
@@ -173,12 +170,6 @@ nn:
reset: Attstill
reset_password: Attstill passord
resubscribe: Ting på nytt
- role: Løyve
- roles:
- admin: Administrator
- moderator: Ordstyrer
- staff: Personell
- user: Brukar
search: Søk
search_same_email_domain: Andre brukarar med same e-postdomene
search_same_ip: Andre brukarar med same IP
@@ -529,9 +520,6 @@ nn:
deletion:
desc_html: Tillat alle å sletta kontoen sin
title: Åpne kontosletting
- min_invite_role:
- disabled: Ingen
- title: Tillat innbydingar frå
require_invite_text:
desc_html: Når registreringer krever manuell godkjenning, må du føye «Hvorfor vil du bli med?» tekstinput obligatoriske i stedet for valgfritt
title: Krev nye brukere for å oppgi en grunn for å delta
@@ -543,9 +531,6 @@ nn:
title: Registreringsmodus
show_known_fediverse_at_about_page:
desc_html: Begrenser den offentlige tidslinjen som er knyttet til landingssiden når den er deaktivert, og viser bare lokalt innhold
- show_staff_badge:
- desc_html: Vis personalmerke på ei brukarside
- title: Vis personalmerke
site_description:
desc_html: Vises som et avsnitt på forsiden og brukes som en meta-tagg. Du kan bruke HTML-tagger, spesielt <a>
og <em>
.
title: Tenarskilding
diff --git a/config/locales/no.yml b/config/locales/no.yml
index 30b7a56fb7d..13f13d8bd45 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -77,10 +77,8 @@
posts_tab_heading: Tuter
posts_with_replies: Tuter med svar
roles:
- admin: Administrator
bot: Bot
group: Gruppe
- moderator: Moderere
unavailable: Profilen er utilgjengelig
unfollow: Slutt å følge
admin:
@@ -99,7 +97,6 @@
avatar: Profilbilde
by_domain: Domene
change_email:
- changed_msg: Konto-E-postadressen ble vellykket endret!
current_email: Nåværende E-post
label: Endre e-post
new_email: Ny E-post
@@ -176,12 +173,6 @@
reset: Tilbakestill
reset_password: Nullstill passord
resubscribe: Abonner på nytt
- role: Rettigheter
- roles:
- admin: Administrator
- moderator: Ordstyrer
- staff: Personale
- user: Bruker
search: Søk
search_same_email_domain: Andre brukere med samme E-postdomene
search_same_ip: Andre brukere med den samme IP-en
@@ -529,9 +520,6 @@
deletion:
desc_html: Tillat alle å slette sin konto
title: Åpne kontosletting
- min_invite_role:
- disabled: Ingen
- title: Tillat invitasjoner fra
require_invite_text:
desc_html: Når registreringer krever manuell godkjenning, må du føye «Hvorfor vil du bli med?» tekstinput obligatoriske i stedet for valgfritt
title: Krev nye brukere for å oppgi en grunn for å delta
@@ -543,9 +531,6 @@
title: Registreringsmodus
show_known_fediverse_at_about_page:
desc_html: Begrenser den offentlige tidslinjen som er knyttet til landingssiden når den er deaktivert, og viser bare lokalt innhold
- show_staff_badge:
- desc_html: Vis personalemerke på brukersiden
- title: Vis personalemerke
site_description:
desc_html: Vises som et avsnitt på forsiden og brukes som en meta-tagg. Du kan bruke HTML-tagger, spesielt <a>
og <em>
.
title: Nettstedsbeskrivelse
diff --git a/config/locales/oc.yml b/config/locales/oc.yml
index 57cecbdc403..46394056714 100644
--- a/config/locales/oc.yml
+++ b/config/locales/oc.yml
@@ -71,10 +71,8 @@ oc:
posts_tab_heading: Tuts
posts_with_replies: Tuts e responsas
roles:
- admin: Admin
bot: Robòt
group: Grop
- moderator: Moderador
unavailable: Perfil indisponible
unfollow: Quitar de sègre
admin:
@@ -92,7 +90,6 @@ oc:
avatar: Avatar
by_domain: Domeni
change_email:
- changed_msg: Adreça corrèctament cambiada !
current_email: Adreça actuala
label: Cambiar d’adreça
new_email: Novèla adreça
@@ -160,12 +157,6 @@ oc:
reset: Reïnicializar
reset_password: Reïnicializar lo senhal
resubscribe: Se tornar abonar
- role: Autorizacions
- roles:
- admin: Administrator
- moderator: Moderador
- staff: Personnal
- user: Uitlizaire
search: Cercar
search_same_ip: Autres utilizaires amb la meteissa IP
security_measures:
@@ -475,9 +466,6 @@ oc:
deletion:
desc_html: Autorizar lo monde a suprimir lor compte
title: Possibilitat de suprimir lo compte
- min_invite_role:
- disabled: Degun
- title: Autorizat amb invitacions
registrations_mode:
modes:
approved: Validacion necessària per s’inscriure
@@ -487,9 +475,6 @@ oc:
show_known_fediverse_at_about_page:
desc_html: Un còp activat mostrarà los tuts de totes los fediverse dins l’apercebut. Autrament mostrarà pas que los tuts locals.
title: Mostrar los fediverse coneguts dins l’apercebut del flux
- show_staff_badge:
- desc_html: Mostrar lo badge Personal sus la pagina de perfil
- title: Mostrar lo badge personal
site_description:
desc_html: Paragraf d’introduccion sus la pagina d’acuèlh. Explicatz çò que fa diferent aqueste servidor Mastodon e tot çò qu’es important de dire. Podètz utilizare de balises HTML, en particular <a>
e<em>
.
title: Descripcion del servidor
@@ -711,7 +696,6 @@ oc:
title: Modificar lo filtre
errors:
invalid_context: Cap de contèxte o contèxte invalid fornit
- invalid_irreversible: Lo filtratge irreversible fonciona pas qu’amb lo flux d’actualitat o en contèxte de notificacion
index:
delete: Suprimir
empty: Avètz pas cap de filtre.
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 7557ab83f14..0044771fb34 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -40,6 +40,7 @@ pl:
one: wpisu
other: wpisów
status_count_before: Są autorami
+ tagline: Zdecentralizowana sieć społecznościowa
terms: Zasady użytkowania
unavailable_content: Niedostępne treści
unavailable_content_description:
@@ -90,10 +91,8 @@ pl:
posts_tab_heading: Wpisy
posts_with_replies: Wpisy z odpowiedziami
roles:
- admin: Administrator
bot: Bot
group: Grupa
- moderator: Moderator
unavailable: Profil niedostępny
unfollow: Przestań śledzić
admin:
@@ -112,12 +111,17 @@ pl:
avatar: Awatar
by_domain: Domena
change_email:
- changed_msg: Pomyślnie zmieniono adres e-mail konta!
+ changed_msg: Pomyślnie zmieniono adres e-mail!
current_email: Obecny adres e-mail
label: Zmień adres e-mail
new_email: Nowy adres e-mail
submit: Zmień adres e-mail
title: Zmień adres e-mail dla %{username}
+ change_role:
+ changed_msg: Pomyślnie zmieniono rolę!
+ label: Zmień rolę
+ no_role: Brak roli
+ title: Zmień rolę dla %{username}
confirm: Potwierdź
confirmed: Potwierdzono
confirming: Potwierdzanie
@@ -161,6 +165,7 @@ pl:
active: Aktywne
all: Wszystkie
pending: Oczekujące
+ silenced: Ograniczone
suspended: Zawieszone
title: Moderacja
moderation_notes: Notatki moderacyjne
@@ -168,6 +173,7 @@ pl:
most_recent_ip: Ostatnie IP
no_account_selected: Żadne konto nie zostało zmienione, bo żadne nie zostało wybrane
no_limits_imposed: Nie nałożono ograniczeń
+ no_role_assigned: Nie przypisano żadnej roli
not_subscribed: Nie zasubskrybowano
pending: Oczekuje na przegląd
perform_full_suspension: Zawieś
@@ -196,12 +202,7 @@ pl:
reset: Resetuj
reset_password: Resetuj hasło
resubscribe: Ponów subskrypcję
- role: Uprawnienia
- roles:
- admin: Administrator
- moderator: Moderator
- staff: Ekipa
- user: Użytkownik
+ role: Rola
search: Szukaj
search_same_email_domain: Inni użytkownicy z e-mail w tej domenie
search_same_ip: Inni użytkownicy z tym samym IP
@@ -499,6 +500,11 @@ pl:
unsuppress: Przywróć polecenie śledzenia konta
instances:
availability:
+ description_html:
+ few: Jeśli dostarczenie do domeny nie powiedzie się %{count} dni bez powodzenia, nie zostaną podjęte dalsze próby dostawy, chyba że otrzymano dostawę od domeny.
+ many: Jeśli dostarczenie do domeny nie powiedzie się %{count} dni bez powodzenia, nie zostaną podjęte dalsze próby dostawy, chyba że otrzymano dostawę od domeny.
+ one: Jeśli dostarczenie do domeny nie powiedzie się %{count} dzień bez powodzenia, nie zostaną podjęte dalsze próby dostawy, chyba że otrzymano dostawę od domeny.
+ other: Jeśli dostarczenie do domeny nie powiedzie się %{count} dni bez powodzenia, nie zostaną podjęte dalsze próby dostawy, chyba że otrzymano dostawę od domeny.
failure_threshold_reached: Próg niepowodzenia osiągnięty dnia %{date}.
failures_recorded:
few: Nieudane próby w %{count} różnych dniach.
@@ -671,6 +677,54 @@ pl:
unresolved: Nierozwiązane
updated_at: Zaktualizowano
view_profile: Wyświetl profil
+ roles:
+ add_new: Dodaj rolę
+ assigned_users:
+ few: "%{count} użytkowników"
+ many: "%{count} użytkowników"
+ one: "%{count} użytkownik"
+ other: "%{count} użytkowników"
+ categories:
+ administration: Administracja
+ devops: DevOps
+ invites: Zaproszenia
+ moderation: Moderacja
+ special: Specjalne
+ delete: Usuń
+ description_html: Za pomocą ról użytkownikówmożesz dostosowywać funkcje i obszary Mastodon, do których użytkownicy mogą uzyskać dostęp.
+ edit: Edytuj rolę '%{name}'
+ everyone: Domyślnie uprawnienia
+ everyone_full_description_html: To jest rola podstawowa wpływająca na wszystkich użytkowników, nawet tych, którzy nie mają przypisanej roli. Wszystkie inne role dziedziczą z niej uprawnienia.
+ privileges:
+ administrator: Administrator
+ administrator_description: Użytkownicy z tym uprawnieniem omijają każde uprawnienie
+ delete_user_data: Usuń dane użytkownika
+ delete_user_data_description: Pozwala użytkownikom na bezzwłoczne usuwanie danych innych użytkowników
+ invite_users: Zaproś użytkowników
+ invite_users_description: Pozwala użytkownikom zapraszać nowych ludzi na serwer
+ manage_announcements: Zarządzaj ogłoszeniami
+ manage_announcements_description: Pozwala użytkownikom zarządzać ogłoszeniami na serwerze
+ manage_appeals: Zarządzaj odwołaniami
+ manage_appeals_description: Pozwala użytkownikom przeglądać odwołania od działań moderacyjnych
+ manage_blocks: Zarządzaj blokami
+ manage_blocks_description: Pozwala użytkownikom na blokowanie dostawców poczty elektronicznej i adresów IP
+ manage_custom_emojis: Zarządzaj niestandardowymi emoji
+ manage_custom_emojis_description: Pozwala użytkownikom zarządzać niestandardowymi emoji na serwerze
+ manage_federation: Zarządzaj federacją
+ manage_federation_description: Pozwala użytkownikom na blokowanie lub zezwalanie federacji z innymi domenami i kontrolowanie doręczania
+ manage_invites: Zarządzaj zaproszeniami
+ manage_invites_description: Pozwala użytkownikom przeglądać i dezaktywować linki z zaproszeniami
+ manage_reports: Zarządzaj raportami
+ manage_reports_description: Pozwala użytkownikom przeglądać raporty i wykonywać przeciwko nim działania moderacyjne
+ manage_roles: Zarządzaj rolami
+ manage_roles_description: Pozwala użytkownikom zarządzać rolami i przypisywać role poniżej ich własnych
+ manage_rules: Zarządzaj regułami
+ manage_rules_description: Pozwala użytkownikom na zmianę reguł serwera
+ manage_settings: Zarządzaj ustawieniami
+ manage_settings_description: Pozwala użytkownikom na zmianę ustawień witryny
+ manage_taxonomies: Zarządzaj taksonomiami
+ manage_taxonomies_description: Pozwala użytkownikom przeglądać najpopularniejsze treści i aktualizować ustawienia hasztagów
+ manage_user_access: Zarządzaj dostępem użytkownika
rules:
add_new: Dodaj zasadę
delete: Usuń
@@ -723,9 +777,6 @@ pl:
deletion:
desc_html: Pozwól każdemu na usunięcie konta
title: Możliwość usunięcia
- min_invite_role:
- disabled: Nikt
- title: Kto może zapraszać użytkowników
require_invite_text:
desc_html: Kiedy rejestracje wymagają ręcznego zatwierdzenia, ustaw pole "Dlaczego chcesz dołączyć?" jako obowiązkowe, a nie opcjonalne
title: Wymagaj od nowych użytkowników wypełnienia tekstu prośby o zaproszenie
@@ -738,9 +789,6 @@ pl:
show_known_fediverse_at_about_page:
desc_html: Jeśli włączone, podgląd instancji będzie wyświetlał wpisy z całego Fediwersum. W innym przypadku, będą wyświetlane tylko lokalne wpisy.
title: Pokazuj wszystkie znane wpisy na podglądzie instancji
- show_staff_badge:
- desc_html: Pokazuj odznakę uprawnień na stronie profilu użytkownika
- title: Pokazuj odznakę administracji
site_description:
desc_html: Akapit wprowadzający, widoczny na stronie głównej. Opisz, co czyni tę instancję wyjątkową. Możesz korzystać ze znaczników HTML, w szczególności <a>
i <em>
.
title: Opis serwera
@@ -820,6 +868,11 @@ pl:
description_html: Są to linki, które są obecnie często udostępniane przez konta, z których Twój serwer widzi posty. Może to pomóc Twoim użytkownikom dowiedzieć się, co dzieje się na świecie. Żadne linki nie są wyświetlane publicznie dopóki nie zaakceptujesz wydawcy. Możesz również zezwolić lub odrzucić indywidualne linki.
disallow: Nie zezwalaj na link
disallow_provider: Nie zezwalaj na wydawcę
+ shared_by_over_week:
+ few: Udostępnione przez %{count} osoby w ciągu ostatniego tygodnia
+ many: Udostępnione przez %{count} osób w ciągu ostatniego tygodnia
+ one: Udostępnione przez jedną osobę w ciągu ostatniego tygodnia
+ other: Udostępnione przez %{count} osoby w ciągu ostatniego tygodnia
title: Popularne linki
usage_comparison: Udostępnione %{today} razy dzisiaj, w porównaniu z %{yesterday} wczoraj
only_allowed: Tylko dozwolone
@@ -837,6 +890,11 @@ pl:
disallow: Nie zezwalaj na post
disallow_account: Nie zezwalaj na autora
not_discoverable: Autor nie włączył opcji, by być wyświetlany w katalogu
+ shared_by:
+ few: Udostępnione i dodane do ulubionych %{friendly_count} razy
+ many: Udostępnione i dodane do ulubionych %{friendly_count} razy
+ one: Udostępnione lub dodane do ulubionych jednorazowo
+ other: Udostępnione i dodane do ulubionych %{friendly_count} razy
title: Popularne teraz
tags:
current_score: Bieżący wynik %{score}
@@ -1144,15 +1202,26 @@ pl:
public: Publiczne osie czasu
thread: Konwersacje
edit:
+ add_keyword: Dodaj słowo kluczowe
+ keywords: Słowa kluczowe
title: Edytuj filtr
errors:
+ deprecated_api_multiple_keywords: Te parametry nie mogą zostać zmienione z tej aplikacji, ponieważ dotyczą więcej niż jednego słowa kluczowego. Użyj nowszej wersji aplikacji lub interfejsu internetowego.
invalid_context: Nie podano lub podano nieprawidłową treść
- invalid_irreversible: Nieodwracalne filtrowanie działa tylko na stronie głównej i w powiadomieniach
index:
+ contexts: Filtry w %{contexts}
delete: Usuń
empty: Nie masz żadnych filtrów.
+ expires_in: Wygasa za %{distance}
+ expires_on: Wygasa %{date}
+ keywords:
+ few: "%{count} słowa kluczowe"
+ many: "%{count} słów kluczowych"
+ one: "%{count} słowo kluczowe"
+ other: "%{count} słów kluczowych"
title: Filtry
new:
+ save: Zapisz jako nowy filtr
title: Dodaj nowy filtr
footer:
developers: Dla programistów
@@ -1275,6 +1344,8 @@ pl:
copy_account_note_text: 'Ten użytkownik przeniósł się z konta %{acct}, oto Twoje poprzednie notatki o nim:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} wysłał raport"
sign_up:
subject: "%{name} zarejestrował(-a) się"
digest:
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index 7661df9a0d5..4a7800b605d 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -38,6 +38,7 @@ pt-BR:
one: toot
other: toots
status_count_before: Autores de
+ tagline: Rede social descentralizada
terms: Termos de serviço
unavailable_content: Conteúdo indisponível
unavailable_content_description:
@@ -82,10 +83,8 @@ pt-BR:
posts_tab_heading: Toots
posts_with_replies: Toots e respostas
roles:
- admin: Admin
bot: Robô
group: Grupo
- moderator: Moderador
unavailable: Perfil indisponível
unfollow: Deixar de seguir
admin:
@@ -104,7 +103,6 @@ pt-BR:
avatar: Imagem de perfil
by_domain: Domínio
change_email:
- changed_msg: E-mail da conta alterado com sucesso!
current_email: E-mail atual
label: Alterar e-mail
new_email: Novo e-mail
@@ -186,12 +184,6 @@ pt-BR:
reset: Redefinir
reset_password: Redefinir senha
resubscribe: Reinscrever-se
- role: Permissões
- roles:
- admin: Administrador
- moderator: Moderador
- staff: Equipe
- user: Usuário
search: Pesquisar
search_same_email_domain: Outros usuários com o mesmo domínio de e-mail
search_same_ip: Outros usuários com o mesmo IP
@@ -695,9 +687,6 @@ pt-BR:
deletion:
desc_html: Permitir que qualquer um exclua a própria conta
title: Exclusão aberta de contas
- min_invite_role:
- disabled: Ninguém
- title: Permitir convites de
require_invite_text:
desc_html: Quando o cadastro de novas contas exigir aprovação manual, tornar obrigatório, ao invés de opcional, o texto de solicitação de convite em "Por que você deseja criar uma conta aqui?"
title: Exigir que novos usuários preencham um texto de solicitação de convite
@@ -710,9 +699,6 @@ pt-BR:
show_known_fediverse_at_about_page:
desc_html: Quando ativado, mostra toots globais na prévia da linha, se não, mostra somente toots locais
title: Mostrar toots globais na prévia da linha
- show_staff_badge:
- desc_html: Mostrar uma insígnia de Equipe na página de usuário
- title: Mostrar insígnia de equipe
site_description:
desc_html: Parágrafo introdutório na página inicial. Descreva o que faz esse servidor especial, e qualquer outra coisa de importante. Você pode usar tags HTML, em especial <a>
e <em>
.
title: Descrição da instância
@@ -746,6 +732,7 @@ pt-BR:
back_to_account: Voltar para página da conta
back_to_report: Voltar às denúncias
batch:
+ remove_from_report: Remover do relatório
report: Denunciar
deleted: Excluídos
media:
@@ -753,9 +740,16 @@ pt-BR:
no_status_selected: Nenhum status foi modificado porque nenhum estava selecionado
title: Toots da conta
with_media: Com mídia
+ strikes:
+ appeal_approved: Apelado
+ appeal_pending: Recurso pendente
system_checks:
database_schema_check:
message_html: Existem migrações de banco de dados pendentes. Por favor, execute-as para garantir que o aplicativo se comporte como esperado
+ elasticsearch_running_check:
+ message_html: Não foi possível conectar ao Elasticsearch. Por favor, verifique se está em execução, ou desabilite a pesquisa de texto completo
+ elasticsearch_version_check:
+ message_html: 'Versão de Elasticsearch incompatível: %{value}'
rules_check:
action: Gerenciar regras do servidor
message_html: Você não definiu nenhuma regra de servidor.
@@ -808,6 +802,14 @@ pt-BR:
edit_preset: Editar o aviso pré-definido
empty: Você ainda não definiu nenhuma predefinição de alerta.
title: Gerenciar os avisos pré-definidos
+ webhooks:
+ delete: Excluir
+ disable: Desabilitar
+ disabled: Desativado
+ enable: Habilitar
+ enabled: Ativo
+ events: Eventos
+ status: Status
admin_mailer:
new_appeal:
actions:
@@ -979,10 +981,12 @@ pt-BR:
appealed_msg: Seu recurso foi enviado. Se ele for aprovado, você será notificado.
appeals:
submit: Enviar recurso
+ approve_appeal: Aprovar recurso
associated_report: Relatório associado
created_at: Datado
description_html: Estas são ações tomadas contra sua conta e avisos que foram enviados a você pela equipe de %{instance}.
recipient: Endereçado para
+ reject_appeal: Rejeitar recurso
status: 'Postagem #%{id}'
status_removed: Postagem já removida do sistema
title: "%{action} de %{date}"
@@ -1045,15 +1049,17 @@ pt-BR:
public: Linhas públicas
thread: Conversas
edit:
+ add_keyword: Adicionar palavra-chave
+ keywords: Palavras-chave
title: Editar filtro
errors:
invalid_context: Contexto inválido ou nenhum contexto informado
- invalid_irreversible: O filtro irreversível só funciona com os contextos página inicial e notificações
index:
delete: Remover
empty: Sem filtros.
title: Filtros
new:
+ save: Salvar novo filtro
title: Adicionar filtro
footer:
developers: Desenvolvedores
@@ -1172,6 +1178,8 @@ pt-BR:
copy_account_note_text: 'Este usuário saiu de %{acct}, aqui estão suas notas anteriores sobre ele:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} enviou uma denúncia"
sign_up:
subject: "%{name} se inscreveu"
digest:
@@ -1297,6 +1305,8 @@ pt-BR:
reports:
errors:
invalid_rules: não faz referência a regras válidas
+ rss:
+ content_warning: 'Aviso de conteúdo:'
scheduled_statuses:
over_daily_limit: Você excedeu o limite de %{limit} toots agendados para esse dia
over_total_limit: Você excedeu o limite de %{limit} toots agendados
diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml
index 9607762bbd5..ac21c330eb8 100644
--- a/config/locales/pt-PT.yml
+++ b/config/locales/pt-PT.yml
@@ -83,10 +83,8 @@ pt-PT:
posts_tab_heading: Publicações
posts_with_replies: Posts e Respostas
roles:
- admin: Administrador(a)
bot: Robô
group: Grupo
- moderator: Moderador
unavailable: Perfil indisponível
unfollow: Deixar de seguir
admin:
@@ -105,12 +103,17 @@ pt-PT:
avatar: Imagem de Perfil
by_domain: Domínio
change_email:
- changed_msg: E-mail da conta alterado com sucesso!
+ changed_msg: E-mail alterado com sucesso!
current_email: E-mail atual
label: Alterar e-mail
new_email: Novo e-mail
submit: Alterar e-mail
title: Alterar e-mail para %{username}
+ change_role:
+ changed_msg: Função alterada com sucesso!
+ label: Alterar função
+ no_role: Nenhuma função
+ title: Alterar a função de %{username}
confirm: Confirmar
confirmed: Confirmado
confirming: A confirmar
@@ -154,6 +157,7 @@ pt-PT:
active: Activo
all: Todos
pending: Pendente
+ silenced: Limitadas
suspended: Supensos
title: Moderação
moderation_notes: Notas de moderação
@@ -161,6 +165,7 @@ pt-PT:
most_recent_ip: IP mais recente
no_account_selected: Nenhuma conta foi alterada porque nenhuma foi selecionada
no_limits_imposed: Sem limites impostos
+ no_role_assigned: Nenhuma função atribuída
not_subscribed: Não inscrito
pending: Pendente de revisão
perform_full_suspension: Fazer suspensão completa
@@ -187,12 +192,7 @@ pt-PT:
reset: Restaurar
reset_password: Reset palavra-passe
resubscribe: Reinscrever
- role: Permissões
- roles:
- admin: Administrador(a)
- moderator: Moderador
- staff: Equipa
- user: Utilizador
+ role: Função
search: Pesquisar
search_same_email_domain: Outros utilizadores com o mesmo domínio de e-mail
search_same_ip: Outros utilizadores com o mesmo IP
@@ -649,6 +649,67 @@ pt-PT:
unresolved: Por resolver
updated_at: Atualizado
view_profile: Ver perfil
+ roles:
+ add_new: Adicionar função
+ assigned_users:
+ one: "%{count} utilizador"
+ other: "%{count} utilizadores"
+ categories:
+ administration: Administração
+ devops: DevOps
+ invites: Convites
+ moderation: Moderação
+ special: Especiais
+ delete: Eliminar
+ description_html: Com as funções de utilizador, pode personalizar quais funções e áreas do Mastodon os seus utilizadores podem aceder.
+ edit: Editar função '%{name}'
+ everyone: Permissões padrão
+ everyone_full_description_html: Esta é a função base que afeta todos os utilizadores, mesmo aqueles sem uma função atribuída. Todas as outras funções herdam as permissões desta.
+ permissions_count:
+ one: "%{count} permissão"
+ other: "%{count} permissões"
+ privileges:
+ administrator: Administrador
+ administrator_description: Utilizadores com esta permissão irão contornar todas as permissões
+ delete_user_data: Eliminar Dados de Utilizador
+ delete_user_data_description: Permite que os utilizadores eliminem os dados de outros utilizadores sem atraso
+ invite_users: Convidar Utilizadores
+ invite_users_description: Permite aos utilizadores convidar pessoas novas para o servidor
+ manage_announcements: Gerir Anúncios
+ manage_announcements_description: Permite aos utilizadores gerir anúncios no servidor
+ manage_appeals: Gerir Recursos
+ manage_appeals_description: Permite aos utilizadores rever recursos de moderação
+ manage_blocks: Gerir Bloqueios
+ manage_blocks_description: Permite aos utilizadores bloquear provedores de e-mail e endereços IP
+ manage_custom_emojis: Gerir Emojis Personalizados
+ manage_custom_emojis_description: Permite aos utilizadores gerir os emojis personalizados do servidor
+ manage_federation: Gerir Federação
+ manage_federation_description: Permite aos utilizadores bloquear ou permitir federação com outros domínios e controlar a entregabilidade
+ manage_invites: Gerir Convites
+ manage_invites_description: Permite aos utilizadores pesquisar e desativar links de convite
+ manage_reports: Gerir Relatórios
+ manage_reports_description: Permite aos utilizadores rever relatórios e executar ações de moderação contra eles
+ manage_roles: Gerir Funções
+ manage_roles_description: Permite aos usuários gerir e atribuir funções abaixo das deles
+ manage_rules: Gerir Regras
+ manage_rules_description: Permite aos utilizadores alterar as regras do servidor
+ manage_settings: Gerir Configurações
+ manage_settings_description: Permite aos utilizadores alterar as configurações do site
+ manage_taxonomies: Gerir Taxonomias
+ manage_taxonomies_description: Permite aos utilizadores rever o conteúdo em tendência e atualizar as configurações de hashtag
+ manage_user_access: Gerir Acesso de Utilizador
+ manage_user_access_description: Permite aos utilizadores desativar a autenticação em duas etapas de outros utilizadores, alterar o seu endereço de e-mail e redefinir a sua palavra-passe
+ manage_users: Gerir Utilizadores
+ manage_users_description: Permite aos utilizadores ver os detalhes de outros utilizadores e executar ações de moderação contra eles
+ manage_webhooks: Gerir Webhooks
+ manage_webhooks_description: Permite aos utilizadores configurar webhooks para eventos administrativos
+ view_audit_log: Ver Registo de Auditoria
+ view_audit_log_description: Permite aos utilizadores ver um histórico de ações administrativas no servidor
+ view_dashboard: Ver Painel de Controlo
+ view_dashboard_description: Permite aos utilizadores aceder ao painel de controlo e várias métricas
+ view_devops: DevOps
+ view_devops_description: Permite aos utilizadores aceder aos painéis de controlo do Sidekiq e pgHero
+ title: Funções
rules:
add_new: Adicionar regra
delete: Eliminar
@@ -701,9 +762,6 @@ pt-PT:
deletion:
desc_html: Permitir a qualquer utilizador eliminar a sua conta
title: Permitir eliminar contas
- min_invite_role:
- disabled: Ninguém
- title: Permitir convites de
require_invite_text:
desc_html: Quando os registos exigirem aprovação manual, faça o texto "Porque se quer juntar a nós?" da solicitação de convite obrigatório, em vez de opcional
title: Exigir que novos utilizadores preencham um texto de solicitação de convite
@@ -716,9 +774,6 @@ pt-PT:
show_known_fediverse_at_about_page:
desc_html: Quando comutado, irá mostrar a previsualização de publicações de todo o fediverse conhecido. De outro modo só mostrará publicações locais.
title: Mostrar o fediverse conhecido na previsualização da cronologia
- show_staff_badge:
- desc_html: Mostrar um crachá da equipa na página de utilizador
- title: Mostrar crachá da equipa
site_description:
desc_html: Mostrar como parágrafo na página inicial e usado como meta tag.Podes usar tags HTML, em particular <a>
e <em>
.
title: Descrição do site
@@ -1124,15 +1179,24 @@ pt-PT:
public: Cronologias públicas
thread: Conversações
edit:
+ add_keyword: Adicionar palavra-chave
+ keywords: Palavras-chave
title: Editar filtros
errors:
+ deprecated_api_multiple_keywords: Estes parâmetros não podem ser alterados a partir deste aplicativo porque se aplicam a mais de um filtro de palavra-chave. Use um aplicativo mais recente ou a interface web.
invalid_context: Inválido ou nenhum contexto fornecido
- invalid_irreversible: Filtragem irreversível só funciona no contexto das notificações ou do início
index:
+ contexts: Filtros em %{contexts}
delete: Eliminar
empty: Não tem filtros.
+ expires_in: Expira em %{distance}
+ expires_on: Expira em %{date}
+ keywords:
+ one: "%{count} palavra-chave"
+ other: "%{count} palavras-chaves"
title: Filtros
new:
+ save: Salvar novo filtro
title: Adicionar novo filtro
footer:
developers: Responsáveis pelo desenvolvimento
@@ -1251,6 +1315,8 @@ pt-PT:
copy_account_note_text: 'Este utilizador migrou de %{acct}, aqui estão as suas notas anteriores sobre ele:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} submeteu uma denúncia"
sign_up:
subject: "%{name} inscreveu-se"
digest:
@@ -1545,6 +1611,87 @@ pt-PT:
tags:
does_not_match_previous_name: não coincide com o nome anterior
terms:
+ body_html: |
+ Qualquer informação que recolhemos sobre sí pode ser utilizada dos seguintes modos:
+ +Implementamos uma variedade de medidas para garantir a segurança da sua informação pessoal quando introduz, submete ou acede à mesma. Entre outras coisas, a sua sessão de navegação, tal como o tráfego entre as tuas aplicações e a API, estão seguras por SSL e a sua palavra-passe é codificada utilizando um forte algoritmo de sentido único. Pode activar a autenticação em duas etapas para aumentar ainda mais a segurança do acesso à sua conta.
+ +Faremos o nosso melhor esforço para:
+ +Pode requer e descarregar um ficheiro com o seu conteúdo, incluindo as suas publicações, os ficheiros multimédia, a imagem de perfil e a imagem de cabeçalho.
+ +Pode eliminar a sua conta de modo irreversível a qualquer momento.
+ +Sim. Cookies são pequenos ficheiros que um site ou o seu fornecedor de serviço transfere para o disco rígido do seu computador através do seu navegador (se você o permitir). Esses cookies possibilitam ao site reconhecer o seu navegador e, se você tiver uma conta registada, associá-lo a ela.
+ +Nós usamos os cookies para compreender e guardar as suas preferências para visitas futuras.
+ +Nós não vendemos, trocamos ou transferimos de qualquer modo a sua informação pessoal que seja identificável para qualquer entidade externa. Isto não inclui entindades terceiras de confiança que nos ajudam a manter o nosso site, conduzir o nosso negócio ou prestar-lhe este serviço, desde que essas entendidades concordem em manter essa informação confidencial. Poderemos também revelar a sua informação quando acreditarmos que isso é o apropriado para cumprir a lei, forçar a aplicação dos nossos termos de serviço ou proteger os direitos, propriedade e segurança, nossos e de outrem.
+ +O seu conteúdo público pode ser descarregado por outros servidores na rede. As suas publicações públicas e exclusivas para os seus seguidores são enviadas para os servidores onde os seus seguidores residem e as mensagens diretas são entregues aos servidores dos seus destinatários, no caso desses seguidores ou destinatários residirem num servidor diferente deste.
+ +Quando autoriza uma aplicação a utilizar a sua conta, dependendo da abrangência das permissões que aprova, ela pode ter acesso à informação pública do seu perfil, à lista de quem segue, aos seus seguidores, às suas listas, a todas as suas publicações e aos seus favoritos. As aplicações nunca terão acesso ao seu endereço de e-mail ou à sua palavra-passe.
+ +Se este servidor estiver na UE ou no EEE: O nosso site, produtos e serviços são todos dirigidos a pessoas que tenham, pelo menos, 16 anos de idade. Se você tem menos de 16 anos de idade, em concordância com os requisitos da GDPR (General Data Protection Regulation) não utilize este site.
+ +Se este servidor estiver nos EUA: O nosso site, produtos e serviços são todos dirigidos a pessoas que tenham, pelo menos, 13 anos de idade. Se você tem menos de 13 anos de idade, em concordância com os requisitos da COPPA (Children's Online Privacy Protection Act) não utilize este site.
+ +Os requisitos legais poderão ser diferentes se este servidor estiver noutra jurisdição.
+ +Se decidirmos alterar a nossa política de privacidade, iremos publicar essas alterações nesta página.
+ +Este documento é CC-BY-SA. Ele foi actualizado pela última vez em 26 de Maio 2022.
+ +Originalmente adaptado de Discourse privacy policy.
title: "%{instance} Termos de Serviço e Política de Privacidade" themes: contrast: Mastodon (Elevado contraste) diff --git a/config/locales/ro.yml b/config/locales/ro.yml index 3203e9178b6..8ed812e5b85 100644 --- a/config/locales/ro.yml +++ b/config/locales/ro.yml @@ -83,10 +83,8 @@ ro: posts_tab_heading: Postări posts_with_replies: Postări și răspunsuri roles: - admin: Admin bot: Robot group: Grup - moderator: Moderator unavailable: Profil indisponibil unfollow: Nu mai urmării admin: @@ -105,7 +103,6 @@ ro: avatar: Poză de profil by_domain: Domeniu change_email: - changed_msg: E-mail de cont schimbat cu succes! current_email: E-mailul curent label: Schimbă adresa de email new_email: E-mail nou @@ -183,12 +180,6 @@ ro: reset: Resetează reset_password: Resetează parola resubscribe: Resubscrie-te - role: Permisiuni - roles: - admin: Administrator - moderator: Moderator - staff: Personal - user: Utilizator search: Caută search_same_email_domain: Alţi utilizatori cu acelaşi domeniu de e-mail search_same_ip: Alţi utilizatori cu acelaşi IP @@ -417,7 +408,6 @@ ro: title: Editează filtru errors: invalid_context: Lipsa conținut sau acesta este invalid - invalid_irreversible: Filtrarea ireversibilă funcționează dor cu context din fluxul Acasă și notificări index: delete: Șterge title: Filtre diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 47f944129d9..7cdf1f0c75a 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -91,10 +91,8 @@ ru: posts_tab_heading: Посты posts_with_replies: Посты с ответами roles: - admin: Администратор bot: Бот group: Группа - moderator: Модератор unavailable: Профиль недоступен unfollow: Отписаться admin: @@ -113,12 +111,17 @@ ru: avatar: Аватар by_domain: Домен change_email: - changed_msg: E-mail учётной записи успешно изменён! + changed_msg: Адрес эл. почты успешно изменен! current_email: Текущий e-mail label: Сменить e-mail new_email: Новый e-mail submit: Сменить e-mail title: Сменить e-mail для %{username} + change_role: + changed_msg: Роль успешно изменена! + label: Изменить роль + no_role: Нет роли + title: Изменить роль %{username} confirm: Подтвердить confirmed: Подтверждено confirming: Подтверждение @@ -162,6 +165,7 @@ ru: active: Действующие all: Все pending: В ожидании + silenced: Ограниченные suspended: Заблокированные title: Модерация moderation_notes: Заметки модератора @@ -169,6 +173,7 @@ ru: most_recent_ip: Последний IP no_account_selected: Ничего не изменилось, так как ни одна учётная запись не была выделена no_limits_imposed: Без ограничений + no_role_assigned: Роль не присвоена not_subscribed: Не подписаны pending: Ожидает рассмотрения perform_full_suspension: Блокировка @@ -197,12 +202,7 @@ ru: reset: Сбросить reset_password: Сбросить пароль resubscribe: Переподписаться - role: Разрешения - roles: - admin: Администратор - moderator: Модератор - staff: Персонал - user: Пользователь + role: Роль search: Поиск search_same_email_domain: Другие пользователи с тем же доменом электронной почты search_same_ip: Другие пользователи с таким же IP @@ -408,6 +408,11 @@ ru: many: "%{count} ожидающих отчетов" one: "%{count} ожидающий отчет" other: "%{count} ожидающих отчетов" + pending_tags_html: + few: "%{count} ожидающих хэштега" + many: "%{count} ожидающих хэштегов" + one: "%{count} ожидающий хэштег" + other: "%{count} ожидающих хэштегов" pending_users_html: few: "%{count} ожидающих пользователя" many: "%{count} ожидающих пользователей" @@ -494,6 +499,11 @@ ru: unsuppress: Восстановить рекомендацию instances: availability: + failures_recorded: + few: Попытки неудачны уже %{count} дня. + many: Попытки неудачны уже %{count} дней. + one: Попытки неудачны %{count} день. + other: Попытки неудачны уже %{count} дней. no_failures_recorded: Сбоев в записи нет. title: Доступность warning: Последняя попытка подключения к этому серверу не удалась @@ -506,6 +516,7 @@ ru: comment: Внутренняя заметка policies: reject_media: Отклонить медиа + reject_reports: Отклонять жалобы silence: Лимит suspend: Приостановить policy: Политика @@ -650,6 +661,38 @@ ru: unresolved: Нерешённые updated_at: Обновлена view_profile: Открыть профиль + roles: + add_new: Добавить роль + assigned_users: + few: "%{count} пользователя" + many: "%{count} пользователей" + one: "%{count} пользователь" + other: "%{count} пользователей" + categories: + administration: Администрация + devops: DevOps + invites: Приглашения + moderation: Модерация + special: Особые + delete: Удалить + description_html: С помощью ролей пользователей вы можете настроить, к каким функциям и областям Mastodon у ваших пользователей будет доступ. + edit: Изменить роль '%{name}' ' + everyone: Разрешения по умолчанию + everyone_full_description_html: Это базовая роль, касающаяся всех пользователей, даже тех, кто не имеет назначенной роли. Все другие роли наследуют разрешения от нее. + permissions_count: + few: "%{count} разрешения" + many: "%{count} разрешений" + one: "%{count} разрешение" + other: "%{count} разрешений" + privileges: + administrator: Администратор + delete_user_data: Удалить пользовательские данные + delete_user_data_description: Позволяет пользователям удалять данные других пользователей без задержки + invite_users: Пригласить пользователей + invite_users_description: Позволяет пользователям приглашать новых людей на сервер + manage_announcements: Управление объявлениями + manage_announcements_description: Позволяет пользователям управлять объявлениями на сервере + title: Роли rules: add_new: Добавить правило delete: Удалить @@ -702,9 +745,6 @@ ru: deletion: desc_html: Позволяет всем удалять собственные учётные записи title: Разрешить удаление учётных записей - min_invite_role: - disabled: Никого - title: Разрешать приглашения от require_invite_text: desc_html: Когда регистрация требует ручного подтверждения, сделать ответ на вопрос "Почему вы хотите присоединиться?" обязательным, а не опциональным title: Обязать новых пользователей заполнять текст запроса на приглашение @@ -717,9 +757,6 @@ ru: show_known_fediverse_at_about_page: desc_html: Если включено, показывает посты со всех известных узлов в предпросмотре ленты. В противном случае отображаются только локальные посты. title: Показывать контент со всей федерации в публичной ленте неавторизованным пользователям - show_staff_badge: - desc_html: Показывать метку персонала на странице пользователя - title: Показывать метку персонала site_description: desc_html: Отображается в качестве параграфа на титульной странице и используется в качестве мета-тега.<a>
и <em>
.
title: Описание сайта
@@ -816,6 +853,11 @@ ru:
allow_account: Разрешить автора
disallow: Запретить пост
disallow_account: Запретить автора
+ shared_by:
+ few: Поделились или добавили в избранное %{friendly_count} раза
+ many: Поделились или добавили в избранное %{friendly_count} раз
+ one: Поделились или добавили в избранное один раз
+ other: Поделились или добавили в избранное %{friendly_count} раз
title: Популярные посты
tags:
current_score: Текущий счет %{score}
@@ -893,6 +935,7 @@ ru:
new_trending_tags:
no_approved_tags: На данный момент популярные подтвержденные хэштеги отсутствуют.
title: Популярные хэштеги
+ subject: Новые тренды для проверки на %{instance}
aliases:
add_new: Создать псевдоним
created_msg: Новый псевдоним установлен. Теперь мы можете начать миграцию со старой учётной записи.
@@ -1109,15 +1152,26 @@ ru:
public: Публичные ленты
thread: Диалоги
edit:
+ add_keyword: Добавить ключевое слово
+ keywords: Ключевые слова
title: Изменить фильтр
errors:
+ deprecated_api_multiple_keywords: Эти параметры нельзя изменить из этого приложения, так как применяются к более чем одному ключевому слову фильтра. Используйте более последнее приложение или веб-интерфейс.
invalid_context: Некорректный контекст или ничего
- invalid_irreversible: Необратимая фильтрация работает только с лентой уведомлений и домашней лентой
index:
+ contexts: Фильтры по %{contexts}
delete: Удалить
empty: У вас пока нет фильтров.
+ expires_in: Истекает через %{distance}
+ expires_on: Истекает %{date}
+ keywords:
+ few: "%{count} ключевых слова"
+ many: "%{count} ключевых слов"
+ one: "%{count} ключевое слово"
+ other: "%{count} ключевых слов"
title: Фильтры
new:
+ save: Сохранить новый фильтр
title: Добавить фильтр
footer:
developers: Разработчикам
@@ -1240,6 +1294,8 @@ ru:
copy_account_note_text: 'Этот пользователь переехал с %{acct}, вот ваша предыдущая заметка о нём:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} отправил жалобу"
sign_up:
subject: "%{name} зарегистрирован"
digest:
diff --git a/config/locales/sc.yml b/config/locales/sc.yml
index 4906541437a..e6ee2bca9e9 100644
--- a/config/locales/sc.yml
+++ b/config/locales/sc.yml
@@ -79,10 +79,8 @@ sc:
posts_tab_heading: Tuts
posts_with_replies: Tuts e rispostas
roles:
- admin: Admin
bot: Bot
group: Grupu
- moderator: Moderatzione
unavailable: Su profilu no est a disponimentu
unfollow: Non sigas prus
admin:
@@ -101,7 +99,6 @@ sc:
avatar: Immàgine de profilu
by_domain: Domìniu
change_email:
- changed_msg: As cambiadu s'indiritzu eletrònicu.
current_email: Indiritzu eletrònicu atuale
label: Muda s'indiritzu eletrònicu
new_email: Indiritzu eletrònicu nou
@@ -176,12 +173,6 @@ sc:
reset: Reseta
reset_password: Reseta sa crae
resubscribe: Torra a sutascrìere
- role: Permissos
- roles:
- admin: Amministratzione
- moderator: Moderatzione
- staff: Personale
- user: Utente
search: Chirca
search_same_email_domain: Àteras persones cun su pròpiu domìniu de posta
search_same_ip: Àteras persones cun sa pròpiu IP
@@ -548,9 +539,6 @@ sc:
deletion:
desc_html: Permite a chie si siat de cantzellare su contu suo
title: Aberi s'eliminatzione de su contu
- min_invite_role:
- disabled: Nemos
- title: Permite invitos de
require_invite_text:
desc_html: Cando is registratziones rechedent s'aprovatzione manuale, faghe chi a incarcare su butone "Pro ite ti boles iscrìere?" siat obligatòriu e no a praghere
title: Rechede a is persones noas chi iscriant una resone prima de aderire
@@ -563,9 +551,6 @@ sc:
show_known_fediverse_at_about_page:
desc_html: Cando ativu, ammustrat in sa previsualizatzione is tuts de totu is istàntzias connòschidas. Si nono, ammustrat isceti is cuntenutos locales
title: Include su cuntenutu federadu in sa pàgina no autenticada de sa lìnia de tempus pùblica
- show_staff_badge:
- desc_html: Ammustra un'insigna de personale in sa pàgina de utente
- title: Ammustra insigna de personale
site_description:
desc_html: Paràgrafu de introdutzione a s'API. Descrie pro ite custu serbidore de Mastodon siat ispetziale e cale si siat àtera cosa de importu. Podes impreare etichetas HTML, mescamente <a>
e <em>
.
title: Descritzione de su serbidore
@@ -816,7 +801,6 @@ sc:
title: Modìfica filtru
errors:
invalid_context: Cuntestu mancante o non vàlidu
- invalid_irreversible: Su filtràgiu non reversìbile funtzionat isceti in is cuntestos printzipale o de notìficas
index:
delete: Cantzella
empty: Non tenes perunu filtru.
diff --git a/config/locales/si.yml b/config/locales/si.yml
index de029aa5015..811cd7a4728 100644
--- a/config/locales/si.yml
+++ b/config/locales/si.yml
@@ -1,66 +1,140 @@
---
si:
about:
+ about_hashtag_html: මේවා #%{hashtag}ටැග් කර ඇති පොදු පළ කිරීම් වේ. ඔබට fediverse හි ඕනෑම තැනක ගිණුමක් තිබේ නම් ඔබට ඔවුන් සමඟ අන්තර් ක්රියා කළ හැක.
+ about_mastodon_html: 'අනාගත සමාජ ජාලය: දැන්වීම් නැත, ආයතනික නිරීක්ෂණ නැත, සදාචාරාත්මක සැලසුම් සහ විමධ්යගත කිරීම! Mastodon සමඟ ඔබේ දත්ත අයිති කරගන්න!'
about_this: පිලිබඳව
active_count_after: සක්රීයයි
active_footnote: මාසික ක්රියාකාරී පරිශීලකයින් (මාක්රිප)
+ administered_by: 'පරිපාලනය කරන්නේ:'
api: යෙ.ක්ර. මු. (API)
apps: ජංගම යෙදුම්
+ apps_platforms: iOS, Android සහ වෙනත් වේදිකා වලින් Mastodon භාවිතා කරන්න
+ browse_directory: පැතිකඩ නාමාවලියක් පිරික්සන්න සහ රුචිකත්වයන් අනුව පෙරහන් කරන්න
+ browse_local_posts: මෙම සේවාදායකයෙන් පොදු පළ කිරීම් වල සජීවී ප්රවාහයක් බ්රවුස් කරන්න
+ browse_public_posts: Mastodon හි පොදු පළ කිරීම් වල සජීවී ප්රවාහයක් බ්රවුස් කරන්න
contact: සබඳතාව
- contact_missing: සකසා නැත
+ contact_missing: සකස් කර නැත
contact_unavailable: අ/නොවේ
+ continue_to_web: වෙබ් යෙදුම වෙත ඉදිරියට යන්න
+ discover_users: පරිශීලකයන් සොයා ගන්න
documentation: ප්රලේඛනය
+ federation_hint_html: "%{instance} හි ගිණුමක් සමඟින් ඔබට ඕනෑම Mastodon සේවාදායකයක සහ ඉන් ඔබ්බෙහි පුද්ගලයින් අනුගමනය කිරීමට හැකි වනු ඇත."
get_apps: ජංගම යෙදුමක් උත්සාහ කරන්න
+ hosted_on: Mastodon %{domain}හි සත්කාරකත්වය දරයි
+ instance_actor_flash: |
+ මෙම ගිණුම සේවාදායකයම නියෝජනය කිරීමට භාවිතා කරන අතථ්ය නළුවෙකු වන අතර කිසිදු තනි පරිශීලකයෙකු නොවේ.
+ එය ෆෙඩරේෂන් අරමුණු සඳහා භාවිතා කරන අතර ඔබට සම්පූර්ණ අවස්ථාව අවහිර කිරීමට අවශ්ය නම් මිස අවහිර නොකළ යුතුය, මෙම අවස්ථාවේදී ඔබ ඩොමේන් බ්ලොක් එකක් භාවිතා කළ යුතුය.
learn_more: තව දැනගන්න
+ logged_in_as_html: ඔබ දැනට %{username}ලෙස පුරනය වී ඇත.
+ logout_before_registering: ඔබ දැනටමත් පුරනය වී ඇත.
privacy_policy: රහස්යතා ප්රතිපත්තිය
rules: සේවාදායකයේ නීති
+ rules_html: 'ඔබට Mastodon හි මෙම සේවාදායකයේ ගිණුමක් ඇති කර ගැනීමට අවශ්ය නම් ඔබ අනුගමනය කළ යුතු නීති වල සාරාංශයක් පහත දැක්වේ:'
+ see_whats_happening: මොකද වෙන්නේ කියලා බලන්න
+ server_stats: 'සේවාදායක සංඛ්යාලේඛන:'
source_code: මූල කේතය
status_count_after:
- one: තත්වය
- other: තත්වයන්
+ one: තත්ත්වය
+ other: තත්ත්වයන්
+ status_count_before: කවුද පළ කළේ
+ tagline: විමධ්යගත සමාජ ජාලය
terms: සේවාවේ කොන්දේසි
+ unavailable_content: මධ්යස්ථ සේවාදායකයන්
unavailable_content_description:
domain: සේවාදායකය
reason: හේතුව
+ rejecting_media: 'මෙම සේවාදායකයන්ගෙන් මාධ්ය ගොනු සැකසීම හෝ ගබඩා කිරීම සිදු නොවනු ඇති අතර, මුල් ගොනුව වෙත අතින් ක්ලික් කිරීම අවශ්ය වන, සිඟිති රූ නොපෙන්වනු ඇත:'
+ rejecting_media_title: පෙරූ මාධ්ය
+ silenced: 'මෙම සේවාදායකයන්ගෙන් පළ කිරීම් පොදු කාලරේඛා සහ සංවාදවල සඟවනු ඇති අතර, ඔබ ඒවා අනුගමනය කරන්නේ නම් මිස, ඔවුන්ගේ පරිශීලක අන්තර්ක්රියාවලින් කිසිදු දැනුම්දීමක් ජනනය නොවේ:'
silenced_title: සීමාසහිත සේවාදායක
+ suspended: 'මෙම සේවාදායකයන්ගෙන් කිසිදු දත්තයක් සැකසීම, ගබඩා කිරීම හෝ හුවමාරු කිරීම සිදු නොවනු ඇත, මෙම සේවාදායකයන්ගෙන් පරිශීලකයින් සමඟ කිසියම් අන්තර්ක්රියා හෝ සන්නිවේදනයක් කළ නොහැක:'
suspended_title: අත්හිටවූ සේවාදායකයන්
+ unavailable_content_html: Mastodon සාමාන්යයෙන් ඔබට ෆෙඩිවර්ස් හි වෙනත් ඕනෑම සේවාදායකයකින් අන්තර්ගතය බැලීමට සහ පරිශීලකයින් සමඟ අන්තර් ක්රියා කිරීමට ඉඩ සලසයි. මෙම විශේෂිත සේවාදායකයේ සිදු කර ඇති ව්යතිරේක මේවාය.
user_count_after:
one: පරිශීලක
other: පරිශීලකයින්
+ user_count_before: ගෙදරට
what_is_mastodon: මාස්ටඩන් යනු කුමක්ද?
accounts:
+ choices_html: "%{name}හි තේරීම්:"
+ endorsements_hint: ඔබට වෙබ් අතුරු මුහුණතෙන් ඔබ අනුගමනය කරන පුද්ගලයින් අනුමත කළ හැකි අතර, ඔවුන් මෙහි පෙන්වනු ඇත.
+ featured_tags_hint: ඔබට මෙහි සංදර්ශන කෙරෙන විශේෂිත හැෂ් ටැග් විශේෂාංගගත කළ හැක.
+ follow: අනුගමනය කරන්න
+ followers:
+ one: අනුගාමිකයා
+ other: අනුගාමිකයින්
+ following: අනුගමනය
+ instance_actor_flash: මෙම ගිණුම සේවාදායකයම නියෝජනය කිරීමට භාවිතා කරන අතථ්ය නළුවෙකු වන අතර කිසිදු තනි පරිශීලකයෙකු නොවේ. එය ෆෙඩරේෂන් අරමුණු සඳහා භාවිතා කරන අතර අත්හිටුවිය යුතු නොවේ.
joined: "%{date} එක් වී ඇත"
+ last_active: අවසාන ක්රියාකාරී
+ link_verified_on: මෙම සබැඳියේ හිමිකාරිත්වය %{date}හි පරීක්ෂා කරන ලදී
media: මාධ්යය
+ moved_html: "%{name} %{new_profile_link}මාරු වී ඇත:"
+ network_hidden: මෙම තොරතුරු ලබා ගත නොහැක
nothing_here: මෙහි කිසිත් නැත!
+ people_followed_by: "%{name} අනුගමනය කරන පුද්ගලයින්"
+ people_who_follow: "%{name}අනුගමනය කරන පුද්ගලයින්"
+ pin_errors:
+ following: ඔබට අනුමත කිරීමට අවශ්ය පුද්ගලයා ඔබ දැනටමත් අනුගමනය කරමින් සිටිය යුතුය
+ posts:
+ one: තැපැල්
+ other: තනතුරු
+ posts_tab_heading: තනතුරු
+ posts_with_replies: පළ කිරීම් සහ පිළිතුරු
roles:
- admin: පරිපාලක
bot: ස්වයං ක්රමලේඛය
group: සමූහය
+ unavailable: පැතිකඩ නොමැත
+ unfollow: අනුගමනය නොකරන්න
admin:
+ account_actions:
+ action: ක්රියාව සිදු කරන්න
+ title: "%{acct}මත මධ්යස්ථ ක්රියාව සිදු කරන්න"
account_moderation_notes:
create: සටහන හැරයන්න
+ created_msg: මධ්යස්ථ සටහන සාර්ථකව සාදන ලදී!
+ destroyed_msg: මධ්යස්ථ සටහන සාර්ථකව විනාශ විය!
accounts:
add_email_domain_block: වි-තැපැල් වසම අවහිර කරන්න
approve: අනුමත කරන්න
+ approved_msg: "%{username}හි ලියාපදිංචි වීමේ යෙදුම සාර්ථකව අනුමත කරන ලදී"
are_you_sure: ඔබට විශ්වාසද?
+ avatar: අවතාරය
by_domain: වසම
change_email:
- changed_msg: ගිණුමේ වි-තැපෑල සාර්ථකව වෙනස් කෙරිණි!
current_email: වත්මන් වි-තැපෑල
label: වි-තැපෑල වෙනස් කරන්න
new_email: නව විද්යුත් තැපෑල
submit: වි-තැපෑල වෙනස් කරන්න
title: "%{username} සඳහා වි-තැපෑල වෙනස් කරන්න"
confirm: සනාථ කරන්න
- confirmed: සනාථ කර ඇත
+ confirmed: තහවුරු කර ඇත
confirming: සනාථ කරමින්
+ custom: අභිරුචි
+ delete: දත්ත මකන්න
+ deleted: මකා දමන ලදී
+ demote: පහත් කරන්න
+ destroyed_msg: "%{username}හි දත්ත ඉක්මනින් මකා දැමීමට පෝලිම් කර ඇත"
+ disable: කැටි කරන්න
+ disable_sign_in_token_auth: ඊමේල් ටෝකන් සත්යාපනය අක්රීය කරන්න
+ disable_two_factor_authentication: 2FA අබල කරන්න
+ disabled: ශීත කළ
+ display_name: ප්රදර්ශන නාමය
domain: වසම
edit: සංස්කරණය
email: විද්යුත් තැපෑල
email_status: වි-තැපෑලෙහි තත්වය
+ enable: කැටි කිරීම ඉවත් කරන්න
+ enable_sign_in_token_auth: විද්යුත් තැපෑල ටෝකන් සත්යාපනය සබල කරන්න
enabled: සබල කර ඇත
+ enabled_msg: "%{username}ගේ ගිණුම සාර්ථකව අත්හිටුවා ඇත"
+ followers: අනුගාමිකයින්
+ follows: පහත සඳහන්
header: ශීර්ෂය
- invite_request_text: එක්වීම සඳහා හේතුව
+ inbox_url: එන ලිපි URL
+ invite_request_text: එක්වීම සඳහා
+ invited_by: විසින් ආරාධනා කරන ලදී
ip: අ.ජා. කෙ. (IP)
joined: එක් වී ඇත
location:
@@ -70,110 +144,410 @@ si:
title: ස්ථානය
login_status: පිවිසීමේ තත්වය
media_attachments: මාධ්ය ඇමුණුම්
+ memorialize: මතක සටහන් බවට පත් කරන්න
+ memorialized: අනුස්මරණය කරන ලදී
+ memorialized_msg: සාර්ථක ලෙස %{username} අනුස්මරණ ගිණුමක් බවට පත් කරන ලදී
moderation:
active: සක්රීයයි
all: සියල්ල
+ pending: පොරොත්තුවෙන්
suspended: අත්හිටුවන ලදි
- most_recent_ip: වඩා මෑත අ.ජා.කෙ.(IP)
+ title: මධ්යස්ථභාවය
+ moderation_notes: මධ්යස්ථ සටහන්
+ most_recent_activity: වඩාත්ම මෑත ක්රියාකාරිත්වය
+ most_recent_ip: ඊට වඩා අ.ජා.කේ.(IP)
+ no_account_selected: කිසිවක් තෝරා නොගත් බැවින් ගිණුම් කිසිවක් වෙනස් කර නැත
+ no_limits_imposed: සීමාවන් පනවා නැත
+ not_subscribed: දායක වී නැත
+ pending: පොරොත්තු සමාලෝචනය
perform_full_suspension: අත්හිටුවන්න
+ previous_strikes: පෙර වැඩ වර්ජන
+ previous_strikes_description_html:
+ one: මෙම ගිණුමට එක වර්ජනයක් ඇත.
+ other: මෙම ගිණුමේ වර්ජන %{count} ඇත.
+ promote: ප්රවර්ධනය කරන්න
protocol: කෙටුම්පත
- public: ප්රසිද්ධ
+ public: ප්රසිද්ධ
+ push_subscription_expires: පුෂ් දායකත්වය කල් ඉකුත් වේ
redownload: පැතිකඩ නැවුම්කරන්න
+ redownloaded_msg: මූලාරම්භයේ සිට %{username}හි පැතිකඩ සාර්ථකව නැවුම් කරන ලදී
reject: ප්රතික්ෂේප
+ rejected_msg: "%{username}හි ලියාපදිංචි වීමේ අයදුම්පත සාර්ථකව ප්රතික්ෂේප විය"
+ remove_avatar: අවතාරය ඉවත් කරන්න
remove_header: ශීර්ෂය ඉවත්කරන්න
+ removed_avatar_msg: "%{username}ගේ අවතාර රූපය සාර්ථකව ඉවත් කරන ලදී"
+ removed_header_msg: "%{username}හි ශීර්ෂ රූපය සාර්ථකව ඉවත් කරන ලදී"
+ resend_confirmation:
+ already_confirmed: මෙම පරිශීලකයා දැනටමත් තහවුරු කර ඇත
+ send: තහවුරුකිරීමේ විද්යුත් තැපැල් පණිවිඩය නැවත එවන්න
+ success: තහවුරු කිරීමේ විද්යුත් තැපෑල සාර්ථකව යවා ඇත!
reset: නැවත සකසන්න
reset_password: මුරපදය නැවතසකසන්න
- role: අවසරයන්
- roles:
- admin: පරිපාලක
- staff: කාර්ය මණ්ඩලය
- user: පරිශීලක
+ resubscribe: නැවත දායක වන්න
search: සොයන්න
+ search_same_email_domain: එකම විද්යුත් තැපැල් වසම සහිත වෙනත් පරිශීලකයන්
+ search_same_ip: එකම IP සහිත වෙනත් පරිශීලකයන්
security_measures:
only_password: මුරපදය පමණි
+ password_and_2fa: මුරපදය සහ 2FA
sensitive: සංවේදී
+ sensitized: සංවේදී ලෙස සලකුණු කර ඇත
+ shared_inbox_url: බෙදාගත් එන ලිපි URL
+ show:
+ created_reports: වාර්තා හැදුවා
+ targeted_reports: වෙනත් අය විසින් වාර්තා කරන ලදී
silence: සීමාව
silenced: සීමාසහිත
- statuses: තත්වයන්
+ statuses: තත්ත්වයන්
+ strikes: පෙර වැඩ වර්ජන
+ subscribe: දායක වන්න
+ suspend: අත්හිටුවන්න
suspended: අත්හිටුවන ලදි
+ suspension_irreversible: මෙම ගිණුමේ දත්ත ආපසු හැරවිය නොහැකි ලෙස මකා ඇත. ඔබට එය භාවිතා කළ හැකි බවට පත් කිරීම සඳහා ගිණුම අත්හිටුවිය හැක නමුත් එය පෙර තිබූ දත්ත කිසිවක් ප්රතිසාධනය නොකරයි.
+ suspension_reversible_hint_html: ගිණුම අත්හිටුවා ඇති අතර, දත්ත සම්පූර්ණයෙන්ම %{date}දින ඉවත් කරනු ලැබේ. එතෙක් කිසිදු අයහපත් ප්රතිඵලයකින් තොරව ගිණුම යථා තත්ත්වයට පත් කළ හැක. ඔබට ගිණුමේ සියලුම දත්ත වහාම ඉවත් කිරීමට අවශ්ය නම්, ඔබට එය පහතින් කළ හැක.
title: ගිණුම්
+ unblock_email: ඊමේල් ලිපිනය අවහිර කිරීම ඉවත් කරන්න
+ unblocked_email_msg: "%{username}ගේ විද්යුත් තැපැල් ලිපිනය අවහිර කිරීම සාර්ථකව ඉවත් කරන ලදී"
+ unconfirmed_email: තහවුරු නොකළ ඊමේල්
+ undo_sensitized: බල සංවේදී අහෝසි කරන්න
+ undo_silenced: සීමාව අහෝසි කරන්න
+ undo_suspension: අත්හිටුවීම අහෝසි කරන්න
+ unsilenced_msg: "%{username}ගිණුමේ සීමාව සාර්ථකව ඉවත් කරන ලදී"
+ unsubscribe: දායක නොවන්න
+ unsuspended_msg: "%{username}ගිණුම සාර්ථකව අත්හිටුවන ලදී"
username: පරිශීලක නාමය
+ view_domain: වසම සඳහා සාරාංශය බලන්න
warn: අවවාද
web: වියමන
+ whitelisted: ෆෙඩරේෂන් සඳහා අවසර ඇත
action_logs:
action_types:
- change_email_user: පරිශීලකට වි-තැපෑල වෙනස් කරන්න
+ approve_appeal: අභියාචනය අනුමත කරන්න
+ approve_user: පරිශීලක අනුමත කරන්න
+ assigned_to_self_report: වාර්තාව පැවරීම
+ change_email_user: පරිශීලකයින්ට වි-තැපෑල වෙනස් කරන්න
+ confirm_user: පරිශීලක තහවුරු කරන්න
create_account_warning: අවවාදයක් සාදන්න
create_announcement: නිවේදනය සාදන්න
+ create_custom_emoji: අභිරුචි ඉමොජි සාදන්න
create_domain_allow: වසම් ඉඩදීමක් සාදන්න
create_domain_block: වසම් අවහිරයක් සාදන්න
+ create_email_domain_block: ඊමේල් ඩොමේන් බ්ලොක් එකක් සාදන්න
create_ip_block: අ.ජා. කෙ. (IP) නීතියක් සාදන්න
- disable_user: පරිශීලක අබල කරන්න
+ create_unavailable_domain: ලබා ගත නොහැකි වසම සාදන්න
+ demote_user: පරිශීලකයා පහත් කරන්න
+ destroy_announcement: නිවේදනය මකන්න
+ destroy_custom_emoji: අභිරුචි ඉමොජි මකන්න
+ destroy_domain_allow: වසම මකන්න ඉඩ දෙන්න
+ destroy_domain_block: වසම් වාරණය මකන්න
+ destroy_email_domain_block: ඊමේල් ඩොමේන් බ්ලොක් එක මකන්න
+ destroy_instance: වසම පිරිසිදු කරන්න
+ destroy_ip_block: IP රීතිය මකන්න
+ destroy_status: පළ කිරීම මකන්න
+ destroy_unavailable_domain: ලබා ගත නොහැකි වසම මකන්න
+ disable_2fa_user: 2FA අබල කරන්න
+ disable_custom_emoji: අභිරුචි ඉමොජි අබල කරන්න
+ disable_sign_in_token_auth_user: පරිශීලකයා සඳහා ඊමේල් ටෝකන් සත්යාපනය අක්රීය කරන්න
+ disable_user: පරිශීලනය කරන්න
+ enable_custom_emoji: අභිරුචි ඉමොජි සබල කරන්න
+ enable_sign_in_token_auth_user: පරිශීලකයා සඳහා විද්යුත් තැපෑල ටෝකන් සත්යාපනය සක්රීය කරන්න
enable_user: පරිශීලක සබල කරන්න
+ memorialize_account: ගිණුම අනුස්මරණ කරන්න
+ promote_user: පරිශීලක ප්රවර්ධනය කරන්න
+ reject_appeal: අභියාචනය ප්රතික්ෂේප කරන්න
+ reject_user: පරිශීලක ප්රතික්ෂේප කරන්න
+ remove_avatar_user: Avatar ඉවත් කරන්න
reopen_report: වාර්තාව නැවත විවෘත කරන්න
reset_password_user: මුරපදය නැවතසකසන්න
- suspend_account: ගිණුම අත්හිටුවන්න
+ resolve_report: වාර්තාව විසඳන්න
+ sensitive_account: බල සංවේදී ගිණුම
+ silence_account: ගිණුම සීමා කරන්න
+ suspend_account: සැලකිය යුතු
+ unassigned_report: වාර්තාව පැවරීම ඉවත් කරන්න
+ unblock_email_account: ඊමේල් ලිපිනය අවහිර කිරීම ඉවත් කරන්න
+ unsensitive_account: බල සංවේදී ගිණුම අහෝසි කරන්න
+ unsilence_account: සීමාව ගිණුම අහෝසි කරන්න
+ unsuspend_account: ගිණුම අත්හිටුවීම
update_announcement: නිවේදනය යාවත්කාල කරන්න
- filter_by_action: ක්රියාමාර්ගය අනුව පෙරන්න
+ update_custom_emoji: අභිරුචි ඉමොජි යාවත්කාලීන කරන්න
+ update_domain_block: ඩොමේන් බ්ලොක් යාවත්කාලීන කරන්න
+ update_status: පළ කිරීම යාවත්කාලීන කරන්න
+ actions:
+ approve_appeal_html: "%{name} අනුමත මධ්යස්ථ තීරණ අභියාචනය %{target}සිට"
+ approve_user_html: "%{name} අනුමත ලියාපදිංචිය %{target}සිට"
+ assigned_to_self_report_html: "%{name} වාර්තාව %{target} තමන්ටම පවරා ඇත"
+ change_email_user_html: "%{name} පරිශීලක %{target}ගේ ඊමේල් ලිපිනය වෙනස් කළේය"
+ confirm_user_html: "%{name} පරිශීලකයාගේ තහවුරු කරන ලද විද්යුත් තැපැල් ලිපිනය %{target}"
+ create_account_warning_html: "%{name} %{target}අනතුරු ඇඟවීමක් යවා ඇත"
+ create_announcement_html: "%{name} නව නිවේදනයක් තනන %{target}"
+ create_custom_emoji_html: "%{name} නව ඉමොජි %{target}උඩුගත කරන ලදී"
+ create_domain_allow_html: "%{name} වසම %{target}සමඟ ෆෙඩරේෂණයට අවසර දී ඇත"
+ create_domain_block_html: "%{name} අවහිර කළ වසම %{target}"
+ create_email_domain_block_html: "%{name} අවහිර කරන ලද විද්යුත් තැපැල් වසම %{target}"
+ create_ip_block_html: "%{name} IP %{target}සඳහා රීතිය සාදන ලදී"
+ create_unavailable_domain_html: "%{name} වසම %{target}වෙත බෙදා හැරීම නැවැත්වීය"
+ demote_user_html: "%{name} පහත හෙලන ලද පරිශීලක %{target}"
+ destroy_announcement_html: "%{name} මකා දැමූ නිවේදනය %{target}"
+ destroy_custom_emoji_html: "%{name} විනාශ වූ ඉමොජි %{target}"
+ destroy_domain_allow_html: වසම %{target}සමඟ %{name} අවසර නොදුන් සම්මේලනය
+ destroy_domain_block_html: "%{name} අවහිර නොකළ වසම %{target}"
+ destroy_email_domain_block_html: "%{name} අවහිර නොකළ විද්යුත් තැපැල් වසම %{target}"
+ destroy_instance_html: "%{name} පිරිසිදු කරන ලද වසම %{target}"
+ destroy_ip_block_html: IP %{target}සඳහා %{name} මකා දැමූ රීතිය
+ destroy_status_html: "%{name} පෝස්ට් %{target}විසින් ඉවත් කරන ලදී"
+ destroy_unavailable_domain_html: "%{name} වසම %{target}වෙත බෙදා හැරීම නැවත ආරම්භ විය"
+ disable_2fa_user_html: "%{name} පරිශීලක %{target}සඳහා සාධක දෙකක අවශ්යතාවය අක්රීය කර ඇත"
+ disable_custom_emoji_html: "%{name} ආබාධිත ඉමොජි %{target}"
+ disable_sign_in_token_auth_user_html: "%{name} අක්රීය කරන ලද විද්යුත් තැපෑල ටෝකන් සත්යාපනය සඳහා %{target}"
+ disable_user_html: "%{name} පරිශීලක %{target}සඳහා අබල කළ පිවිසුම"
+ enable_custom_emoji_html: "%{name} සක්රීය ඉමොජි %{target}"
+ enable_sign_in_token_auth_user_html: "%{name} %{target}විද්යුත් තැපෑල ටෝකන් සත්යාපනය සක්රීය කර ඇත"
+ enable_user_html: පරිශීලක %{target}සඳහා %{name} සක්රීය පුරනය වීම
+ memorialize_account_html: "%{name} %{target}ගේ ගිණුම සිහිවටන පිටුවක් බවට පත් කළේය"
+ promote_user_html: "%{name} උසස් පරිශීලක %{target}"
+ reject_appeal_html: "%{name} %{target}සිට මධ්යස්ථ තීරණ අභියාචනය ප්රතික්ෂේප කරන ලදී"
+ reject_user_html: "%{name} %{target}සිට ලියාපදිංචි වීම ප්රතික්ෂේප විය"
+ remove_avatar_user_html: "%{name} %{target}ගේ අවතාරය ඉවත් කරන ලදී"
+ reopen_report_html: "%{name} නැවත විවෘත කළ වාර්තාව %{target}"
+ reset_password_user_html: "%{name} පරිශීලක %{target}හි මුරපදය යළි පිහිටුවන්න"
+ resolve_report_html: "%{name} විසඳන ලද වාර්තාව %{target}"
+ sensitive_account_html: "%{name} %{target}හි මාධ්ය සංවේදී ලෙස සලකුණු කර ඇත"
+ silence_account_html: "%{name} සීමිත %{target}ගිණුමක්"
+ suspend_account_html: "%{name} %{target}ගේ ගිණුම අත්හිටුවා ඇත"
+ unassigned_report_html: "%{name} පවරා නොදුන් වාර්තාව %{target}"
+ unblock_email_account_html: "%{name} %{target}ගේ ඊමේල් ලිපිනය අවහිර කිරීම ඉවත් කරන ලදී"
+ unsensitive_account_html: "%{name} සලකුණු නොකළ %{target}ගේ මාධ්ය සංවේදී ලෙස"
+ unsilence_account_html: "%{target}ගිණුමේ %{name} undid සීමාව"
+ unsuspend_account_html: "%{name} අත්හිටුවන ලද %{target}ගිණුම"
+ update_announcement_html: "%{name} යාවත්කාලීන නිවේදනය %{target}"
+ update_custom_emoji_html: "%{name} යාවත්කාලීන කළ ඉමොජි %{target}"
+ update_domain_block_html: "%{target}සඳහා %{name} යාවත්කාලීන කරන ලද වසම් වාරණ"
+ update_status_html: "%{name} %{target}යාවත්කාලීන කරන ලද පළ කිරීම"
+ deleted_status: "(මකා දැමූ පළ කිරීම)"
+ empty: ලඝු-සටහන් හමු නොවිණි.
+ filter_by_action: ක්රියාව අනුව පෙරන්න
filter_by_user: පරිශීලක අනුව පෙරන්න
+ title: විගණන සටහන
announcements:
+ destroyed_msg: නිවේදනය සාර්ථකව මකා ඇත!
edit:
title: නිවේදනය සංස්කරණය
+ empty: නිවේදන කිසිවක් හමු නොවීය.
live: සජීවී
new:
create: නිවේදනය සාදන්න
title: නව නිවේදනය
+ publish: ප්රකාශ කරන්න
published_msg: නිවේදනය සාර්ථකව ප්රකාශයට පත් කරන ලදි!
+ scheduled_for: "%{time}සඳහා සැලසුම් කර ඇත"
+ scheduled_msg: නිවේදනය නිකුත් කිරීමට නියමිතයි!
title: නිවේදන
+ unpublish: ප්රකාශනය ඉවත් කරන්න
+ unpublished_msg: නිවේදනය සාර්ථකව ප්රකාශයට පත් නොකළේය!
+ updated_msg: නිවේදනය සාර්ථකව යාවත්කාලීන කරන ලදී!
custom_emojis:
+ assign_category: කාණ්ඩය පැවරීම
by_domain: වසම
+ copied_msg: ඉමොජි වල දේශීය පිටපත සාර්ථකව සාදන ලදී
copy: පිටපත්
+ copy_failed_msg: එම ඉමොජියේ දේශීය පිටපතක් සෑදීමට නොහැකි විය
create_new_category: නව ප්රවර්ගයක් සාදන්න
+ created_msg: ඉමොජි සාර්ථකව නිර්මාණය කළා!
+ delete: මකන්න
+ destroyed_msg: Emojo සාර්ථකව විනාශ විය!
disable: අබල කරන්න
disabled: අබල කර ඇත
+ disabled_msg: එම ඉමොජිය සාර්ථකව අබල කරන ලදී
+ emoji: ඉමොජි
enable: සබල කරන්න
enabled: සබල කර ඇත
+ enabled_msg: එම ඉමොජි සාර්ථකව සබල කරන ලදී
+ image_hint: PNG හෝ GIF %{size}දක්වා
list: ලැයිස්තුව
+ listed: ලැයිස්තුගත කර ඇත
+ new:
+ title: නව අභිරුචි ඉමොජි එක් කරන්න
+ not_permitted: මෙම ක්රියාව සිදු කිරීමට ඔබට අවසර නැත
+ overwrite: උඩින් ලියන්න
shortcode: කෙටිකේතය
+ shortcode_hint: අවම වශයෙන් අක්ෂර 2 ක්, අක්ෂරාංක අක්ෂර සහ යටි ඉරි පමණි
+ title: අභිරුචි ඉමෝජි
+ uncategorized: වර්ගීකරණය නොකළ
+ unlist: ලැයිස්තුගත නොකරන්න
+ unlisted: ලැයිස්තුගත නොකළ
+ update_failed_msg: එම ඉමොජි යාවත්කාලීන කළ නොහැකි විය
+ updated_msg: ඉමොජි සාර්ථකව යාවත්කාලීන කරන ලදී!
upload: උඩුගත කරන්න
dashboard:
+ active_users: ක්රියාකාරී පරිශීලකයන්
+ interactions: අන්තර්ක්රියා
+ media_storage: මාධ්ය ගබඩාව
+ new_users: නව පරිශීලකයන්
+ opened_reports: වාර්තා විවෘත විය
+ pending_appeals_html:
+ one: "%{count} අභියාචනයක් බලාපොරොත්තු වේ"
+ other: "%{count} අභියාචනා පොරොත්තු"
+ pending_reports_html:
+ one: "%{count} පොරොත්තු වාර්තාව"
+ other: "%{count} පොරොත්තු වාර්තා"
+ pending_tags_html:
+ one: "%{count} පොරොත්තු හැෂ් ටැගය"
+ other: "%{count} පොරොත්තු හැෂ් ටැග්"
+ pending_users_html:
+ one: "%{count} අපේක්ෂිත පරිශීලකයා"
+ other: "%{count} අපේක්ෂිත පරිශීලකයින්"
+ resolved_reports: වාර්තා විසඳා ඇත
software: මෘදුකාංගය
+ sources: ලියාපදිංචි මූලාශ්ර
+ space: අවකාශය භාවිතය
title: උපකරණ පුවරුව
+ top_languages: ඉහළම ක්රියාකාරී භාෂා
+ top_servers: ඉහළම ක්රියාකාරී සේවාදායකයන්
+ website: වෙබ් අඩවිය
+ disputes:
+ appeals:
+ empty: අභියාචනා හමු නොවීය.
+ title: අභියාචනා
+ domain_allows:
+ add_new: වසම සමඟ සම්මේලනයට ඉඩ දෙන්න
+ created_msg: ෆෙඩරේෂන් සඳහා වසම සාර්ථකව අවසර දී ඇත
+ destroyed_msg: ෆෙඩරේෂන් වෙතින් වසම අනුමත කර නැත
+ undo: වසම සමඟ සම්මේලනයට ඉඩ නොදෙන්න
domain_blocks:
+ add_new: නව වසම් වාරණ එක් කරන්න
+ created_msg: වසම් අවහිර කිරීම දැන් සකසමින් පවතී
+ destroyed_msg: වසම් අවහිර කිරීම ඉවත් කර ඇත
domain: වසම
+ edit: වසම් වාරණය සංස්කරණය කරන්න
+ existing_domain_block: ඔබ දැනටමත් %{name}මත දැඩි සීමාවන් පනවා ඇත.
+ existing_domain_block_html: ඔබ දැනටමත් %{name}මත දැඩි සීමාවන් පනවා ඇත, ඔබට එය අවහිර කිරීම ඉවත් කිරීමට අවශ්යයි.
new:
+ create: බ්ලොක් එකක් සාදන්න
+ hint: ඩොමේන් බ්ලොක් එක දත්ත සමුදාය තුල ගිණුම් ඇතුලත් කිරීම් නිර්මාණය වීම වලක්වන්නේ නැත, නමුත් එම ගිණුම් වලට ප්රතික්රියාශීලීව සහ ස්වයංක්රීයව විශේෂිත මධ්යස්ථ ක්රම යොදනු ඇත.
severity:
+ desc_html: "Silence ගිණුමේ පළ කිරීම් ඒවා අනුගමනය නොකරන ඕනෑම කෙනෙකුට නොපෙනී යයි. අත්හිටුවීම ගිණුමේ අන්තර්ගතය, මාධ්ය සහ පැතිකඩ දත්ත සියල්ල ඉවත් කරයි. ඔබට මාධ්ය ගොනු ප්රතික්ෂේප කිරීමට අවශ්ය නම් None භාවිතා කරන්න."
noop: කිසිවක් නැත
+ silence: නිශ්ශබ්දතාව
suspend: අත්හිටුවන්න
+ title: නව වසම් වාරණ
+ obfuscate: අපැහැදිලි වසම් නාමය
+ obfuscate_hint: වසම් සීමාවන් ලැයිස්තුව ප්රචාරණය කිරීම සබල කර ඇත්නම් ලැයිස්තුවේ වසම් නාමය අර්ධ වශයෙන් අපැහැදිලි කරන්න
private_comment: පුද්ගලික අදහස
+ private_comment_hint: පරිපාලකයින් විසින් අභ්යන්තර භාවිතය සඳහා මෙම වසම් සීමාව ගැන අදහස් දක්වන්න.
public_comment: ප්රසිද්ධ අදහස
+ public_comment_hint: වසම් සීමාවන් ලැයිස්තුව ප්රචාරණය කිරීම සබල කර ඇත්නම්, සාමාන්ය ජනතාව සඳහා මෙම වසම් සීමාව ගැන අදහස් දක්වන්න.
+ reject_media: මාධ්ය ගොනු ප්රතික්ෂේප කරන්න
+ reject_media_hint: දේශීයව ගබඩා කර ඇති මාධ්ය ගොනු ඉවත් කරන අතර අනාගතයේදී ඒවා බාගත කිරීම ප්රතික්ෂේප කරයි. අත්හිටුවීම් සඳහා අදාළ නොවේ
reject_reports: වාර්තා ප්රතික්ෂේප කරන්න
+ reject_reports_hint: මෙම වසමෙන් එන සියලුම වාර්තා නොසලකා හරින්න. අත්හිටුවීම් සඳහා අදාළ නොවේ
+ undo: වසම් අවහිර කිරීම අහෝසි කරන්න
+ view: වසම් වාරණය බලන්න
email_domain_blocks:
+ add_new: අලුතින් එකතු කරන්න
+ attempts_over_week:
+ one: පසුගිය සතිය පුරා %{count} උත්සාහයක්
+ other: පසුගිය සතියේ ලියාපදිංචි වීමේ උත්සාහයන් %{count} ක්
+ created_msg: විද්යුත් තැපැල් වසම සාර්ථකව අවහිර කරන ලදී
+ delete: මකන්න
+ dns:
+ types:
+ mx: MX වාර්තාව
domain: වසම
new:
create: වසම එකතු කරන්න
+ resolve: වසම විසඳන්න
+ title: නව විද්යුත් තැපැල් වසම අවහිර කරන්න
+ no_email_domain_block_selected: කිසිවක් තෝරා නොගත් බැවින් විද්යුත් තැපැල් වසම් වාරණ කිසිවක් වෙනස් කර නැත
+ resolved_dns_records_hint_html: ඩොමේන් නාමය පහත දැක්වෙන MX වසම් වලට විසඳයි, ඒවා අවසානයේ ඊමේල් පිළිගැනීම සඳහා වගකිව යුතුය. MX වසමක් අවහිර කිරීම දෘශ්ය වසම් නාමය වෙනස් වුවද, එකම MX වසම භාවිතා කරන ඕනෑම විද්යුත් තැපැල් ලිපිනයකින් ලියාපදිංචි වීම අවහිර කරයි. ප්රධාන විද්යුත් තැපැල් සපයන්නන් අවහිර නොකිරීමට ප්රවේශම් වන්න.
+ resolved_through_html: "%{domain}හරහා විසඳා ඇත"
title: අවහිර කළ වි-තැපැල් වසම්
follow_recommendations:
+ description_html: "නව පරිශීලකයින්ට රසවත් අන්තර්ගතයන් ඉක්මනින් සොයා ගැනීමට උපකාර වන නිර්දේශ අනුගමනය කරන්න. පෞද්ගලීකරණය කළ පසු විපරම් නිර්දේශ සැකසීමට තරම් පරිශීලකයෙකු අන් අය සමඟ අන්තර් ක්රියා කර නොමැති විට, ඒ වෙනුවට මෙම ගිණුම් නිර්දේශ කෙරේ. දී ඇති භාෂාවක් සඳහා ඉහළම මෑත කාලීන නියැලීම් සහ ඉහළම දේශීය අනුගාමික සංඛ්යාව සහිත ගිණුම් මිශ්රණයකින් ඒවා දෛනික පදනමින් නැවත ගණනය කෙරේ."
language: භාෂාව සඳහා
- status: තත්වය
+ status: තත්ත්වය
+ suppress: අනුගමනය නිර්දේශය යටපත් කරන්න
+ suppressed: යටපත් කළා
+ title: නිර්දේශ අනුගමනය කරන්න
+ unsuppress: නිර්දේශ පිළිපැදීම ප්රතිසාධනය කරන්න
instances:
+ availability:
+ description_html:
+ one: වසම වෙත බෙදා හැරීම සාර්ථක නොවී දින %{count} අසාර්ථක වුවහොත්, වසම න් බෙදා හැරීමක් ලැබෙන්නේ නම් මිස වැඩිදුර බෙදා හැරීමේ උත්සාහයන් සිදු නොකෙරේ.
+ other: වසම වෙත බෙදා හැරීම සාර්ථක නොවී %{count} වෙනස් දින අසාර්ථක වුවහොත්, වසම සිට බෙදා හැරීමක් නොලැබුනේ නම්, තවදුරටත් බෙදා හැරීමේ උත්සාහයන් සිදු නොකෙරේ.
+ failure_threshold_reached: අසාර්ථක වීමේ සීමාව %{date}ට ළඟා විය.
+ failures_recorded:
+ one: දින %{count} කින් අසාර්ථක උත්සාහයක්.
+ other: විවිධ දින %{count} ක අසාර්ථක උත්සාහයන්.
+ no_failures_recorded: වාර්තාගත අසාර්ථක වීම් නොමැත.
+ title: පවතින බව
+ warning: මෙම සේවාදායකයට සම්බන්ධ වීමට ගත් අවසන් උත්සාහය අසාර්ථක විය
back_to_all: සියල්ල
+ back_to_limited: සීමා සහිතයි
back_to_warning: අවවාදයයි
by_domain: වසම
+ confirm_purge: ඔබට මෙම වසමෙන් දත්ත ස්ථිරවම මැකීමට අවශ්ය බව විශ්වාසද?
+ content_policies:
+ comment: අභ්යන්තර සටහන
+ description_html: ඔබට මෙම වසම සහ එහි ඕනෑම උප වසමකින් සියලුම ගිණුම් වලට අදාළ වන අන්තර්ගත ප්රතිපත්ති නිර්වචනය කළ හැක.
+ policies:
+ reject_media: මාධ්ය ප්රතික්ෂේප කරන්න
+ reject_reports: වාර්තා ප්රතික්ෂේප කරන්න
+ silence: සීමාව
+ suspend: අත්හිටුවන්න
+ policy: ප්රතිපත්ති
+ reason: පොදු හේතුව
+ title: අන්තර්ගත ප්රතිපත්ති
+ dashboard:
+ instance_accounts_dimension: වැඩිපුරම අනුගමනය කරන ගිණුම්
+ instance_accounts_measure: ගබඩා කර ඇති ගිණුම්
+ instance_followers_measure: එතන අපේ අනුගාමිකයෝ
+ instance_follows_measure: ඔවුන්ගේ අනුගාමිකයන් මෙහි
+ instance_languages_dimension: ඉහළම භාෂා
+ instance_media_attachments_measure: ගබඩා කළ මාධ්ය ඇමුණුම්
+ instance_reports_measure: ඔවුන් ගැන වාර්තා
+ instance_statuses_measure: ගබඩා කළ තනතුරු
delivery:
all: සියල්ල
+ clear: බෙදා හැරීමේ දෝෂ ඉවත් කරන්න
+ failing: අසාර්ථක වෙනවා
+ restart: බෙදා හැරීම නැවත ආරම්භ කරන්න
+ stop: බෙදා හැරීම නවත්වන්න
+ unavailable: ලබා ගත නොහැක
+ delivery_available: බෙදා හැරීම ලබා ගත හැකිය
+ delivery_error_days: බෙදා හැරීමේ දෝෂ සහිත දින
+ delivery_error_hint: දින %{count} ක් සඳහා බෙදා හැරීම කළ නොහැකි නම්, එය ස්වයංක්රීයව බෙදා හැරිය නොහැකි ලෙස ලකුණු කරනු ලැබේ.
+ destroyed_msg: "%{domain} සිට දත්ත දැන් ආසන්න මකාදැමීම සඳහා පෝලිම් කර ඇත."
+ empty: වසම් කිසිවක් හමු නොවීය.
+ known_accounts:
+ one: "%{count} දන්නා ගිණුම්"
+ other: දන්නා ගිණුම් %{count} ක්
moderation:
all: සියල්ල
+ limited: සීමා සහිතයි
+ title: මධ්යස්ථභාවය
private_comment: පුද්ගලික අදහස
public_comment: ප්රසිද්ධ අදහස
+ purge: පිරිසිදු කරන්න
+ purge_description_html: මෙම වසම යහපත සඳහා නොබැඳි බව ඔබ විශ්වාස කරන්නේ නම්, ඔබට ඔබගේ ගබඩාවෙන් මෙම වසමෙන් සියලුම ගිණුම් වාර්තා සහ ආශ්රිත දත්ත මකා දැමිය හැක. මෙයට යම් කාලයක් ගත විය හැක.
+ title: සම්මේලනය
+ total_blocked_by_us: අප විසින් අවහිර කරන ලදී
+ total_followed_by_them: ඔවුන් විසින් අනුගමනය කරන ලදී
+ total_followed_by_us: අප විසින් අනුගමනය කරන ලදී
+ total_reported: ඔවුන් ගැන වාර්තා
+ total_storage: මාධ්ය ඇමුණුම්
+ totals_time_period_hint_html: පහත දැක්වෙන එකතුවෙහි සියලු කාලය සඳහා දත්ත ඇතුළත් වේ.
invites:
+ deactivate_all: සියල්ල අක්රිය කරන්න
filter:
all: සියල්ල
+ available: පවතින
expired: කල් ඉකුත් වී ඇත
title: පෙරහන
title: ඇරයුම්
ip_blocks:
add_new: නීතිය සාදන්න
+ created_msg: නව IP රීතිය සාර්ථකව එක් කරන ලදී
+ delete: මකන්න
expires_in:
'1209600': සති 2
'15778476': මාස 6
@@ -183,116 +557,608 @@ si:
'94670856': අවුරුදු 3
new:
title: නව අ.ජා. කෙ.(IP) නීතියක් සාදන්න
+ no_ip_block_selected: IP රීති කිසිවක් තෝරා නොගත් බැවින් වෙනස් කර නැත
title: අ.ජා. කෙ. (IP) නීති
+ relationships:
+ title: "%{acct}හි සබඳතා"
relays:
+ add_new: නව රිලේ එක් කරන්න
+ delete: මකන්න
+ description_html: "ෆෙඩරේෂන් රිලේ යනු එයට දායක වී ප්රකාශයට පත් කරන සේවාදායකයන් අතර විශාල ප්රසිද්ධ පළ කිරීම් හුවමාරු කරන අතරමැදි සේවාදායකයකි. එය කුඩා සහ මධ්යම සේවාදායකයන්ට fediverseවෙතින් අන්තර්ගතය සොයා ගැනීමට උදවු කළ හැකි අතර, එසේ නොමැති නම් දේශීය පරිශීලකයින්ට දුරස්ථ සේවාදායකයන් මත වෙනත් පුද්ගලයින් හස්තීයව අනුගමනය කිරීම අවශ්ය වේ."
disable: අබල කරන්න
disabled: අබල කර ඇත
enable: සබල කරන්න
+ enable_hint: සක්රිය කළ පසු, ඔබේ සේවාදායකය මෙම රිලේ වෙතින් සියලුම පොදු පළ කිරීම් සඳහා දායක වන අතර, මෙම සේවාදායකයේ පොදු පළ කිරීම් එයට යැවීම ආරම්භ කරනු ඇත.
enabled: සබල කර ඇත
+ inbox_url: රිලේ URL
+ pending: රිලේ අනුමැතිය සඳහා රැඳී සිටිමින්
+ save_and_enable: සුරකින්න සහ සක්රිය කරන්න
+ setup: රිලේ සම්බන්ධතාවයක් සකසන්න
+ signatures_not_enabled: ආරක්ෂිත මාදිලිය හෝ සීමිත ෆෙඩරේෂන් මාදිලිය සබල කර ඇති අතර රිලේ නිවැරදිව ක්රියා නොකරනු ඇත
status: තත්වය
+ title: රිලේස්
+ report_notes:
+ created_msg: වාර්තා සටහන සාර්ථකව සාදන ලදී!
+ destroyed_msg: වාර්තා සටහන සාර්ථකව මකා ඇත!
+ today_at: අද %{time}ට
reports:
+ account:
+ notes:
+ one: "%{count} සටහන"
+ other: "%{count} සටහන්"
+ action_log: විගණන සටහන
+ action_taken_by: විසින් ගන්නා ලද පියවර
+ actions:
+ delete_description_html: වාර්තා කරන ලද පළ කිරීම් මකා දැමෙනු ඇති අතර එම ගිණුමේම අනාගත උල්ලංඝනයන් තීව්ර කිරීමට ඔබට උදවු කිරීමට වර්ජනයක් වාර්තා කරනු ඇත.
+ mark_as_sensitive_description_html: වාර්තා කරන ලද පළ කිරීම් වල මාධ්ය සංවේදී ලෙස සලකුණු කරනු ලබන අතර එම ගිණුම මගින් අනාගත උල්ලංඝනයන් උත්සන්න කිරීමට ඔබට උපකාර කිරීමට වර්ජනයක් වාර්තා කරනු ඇත.
+ other_description_html: ගිණුමේ හැසිරීම පාලනය කිරීම සහ වාර්තා කළ ගිණුමට සන්නිවේදනය අභිරුචිකරණය කිරීම සඳහා තවත් විකල්ප බලන්න.
+ resolve_description_html: වාර්තා කරන ලද ගිණුමට එරෙහිව කිසිදු ක්රියාමාර්ගයක් නොගනු ඇත, වැඩ වර්ජනයක් වාර්තා නොකෙරේ, වාර්තාව වසා දමනු ඇත.
+ silence_description_html: පැතිකඩ දෘශ්යමාන වනු ඇත්තේ දැනටමත් එය අනුගමනය කරන හෝ අතින් බලන අයට පමණක් වන අතර, එහි ළඟාවීම දැඩි ලෙස සීමා කරයි. සෑම විටම ආපසු හැරවිය හැක.
+ suspend_description_html: එය අවසානයේ මකා දමන තුරු පැතිකඩ සහ එහි සියලුම අන්තර්ගතයන් ප්රවේශ විය නොහැකි වනු ඇත. ගිණුම සමඟ අන්තර් ක්රියා කිරීම කළ නොහැකි වනු ඇත. දින 30 ක් ඇතුළත ආපසු හැරවිය හැකිය.
+ actions_description_html: මෙම වාර්තාව විසඳීමට ගත යුතු ක්රියාමාර්ගය තීරණය කරන්න. ඔබ වාර්තා කරන ලද ගිණුමට එරෙහිව දණ්ඩනීය ක්රියාමාර්ගයක් ගන්නේ නම්, Spam කාණ්ඩය තෝරාගත් විට හැර, ඔවුන්ට විද්යුත් තැපෑලෙන් දැනුම්දීමක් යවනු ලැබේ.
+ add_to_report: වාර්තා කිරීමට තවත් එක් කරන්න
are_you_sure: ඔබට විශ්වාසද?
+ assign_to_self: මට පවරන්න
+ assigned: පවරා ඇති උපපරිපාලක
by_target_domain: වාර්තා කළ ගිණුමෙහි වසම
+ category: වර්ගය
+ category_description_html: මෙම ගිණුම සහ/හෝ අන්තර්ගතය වාර්තා කළ හේතුව වාර්තා කළ ගිණුම සමඟ සන්නිවේදනයේ සඳහන් කරනු ඇත
comment:
none: කිසිවක් නැත
+ comment_description_html: 'වැඩි විස්තර සැපයීම සඳහා, %{name} ලිවීය:'
+ created_at: වාර්තා කර ඇත
+ delete_and_resolve: පළ කිරීම් මකන්න
+ forwarded: යොමු කළා
+ forwarded_to: "%{domain}වෙත යොමු කරන ලදී"
+ mark_as_resolved: විසඳා ඇති ලෙස ලකුණු කරන්න
+ mark_as_sensitive: සංවේදී ලෙස ලකුණු කරන්න
+ mark_as_unresolved: නොවිසඳුනු ලෙස ලකුණු කරන්න
+ no_one_assigned: කිසි කෙනෙක නැහැ
notes:
create: සටහන එකතු කරන්න
+ create_and_resolve: සටහන සමඟ විසඳන්න
+ create_and_unresolve: සටහනක් සමඟ නැවත විවෘත කරන්න
+ delete: මකන්න
+ placeholder: ගෙන ඇති ක්රියාමාර්ග, හෝ වෙනත් අදාළ යාවත්කාලීන විස්තර කරන්න...
+ title: සටහන්
+ notes_description_html: අනෙකුත් උපපරිපාලකයින්ට සහ ඔබේ අනාගතයට සටහන් බලන්න සහ තබන්න
+ quick_actions_description_html: 'වාර්තා කළ අන්තර්ගතය බැලීමට ඉක්මන් ක්රියාමාර්ගයක් ගන්න හෝ පහළට අනුචලනය කරන්න:'
+ remote_user_placeholder: "%{instance}සිට දුරස්ථ පරිශීලකයා"
reopen: වාර්තාව නැවත විවෘත කරන්න
report: "@%{id} වාර්තා කරන්න"
reported_account: වාර්තා කළ ගිණුම
+ reported_by: විසින් වාර්තා
+ resolved: විසඳා ඇත
+ resolved_msg: වාර්තාව සාර්ථකව විසඳා ඇත!
+ skip_to_actions: ක්රියාවන් වෙත යන්න
status: තත්වය
+ statuses: වාර්තා කළ අන්තර්ගතය
+ statuses_description_html: වාර්තා කරන ලද ගිණුම සමඟ සන්නිවේදනය කිරීමේදී වැරදි අන්තර්ගතයන් උපුටා දක්වනු ඇත
+ target_origin: වාර්තා කළ ගිණුමේ ආරම්භය
title: වාර්තා
+ unassign: පැවරීම ඉවත් කරන්න
+ unresolved: නොවිසඳී ඇත
+ updated_at: යාවත්කාලීන කරන ලදී
+ view_profile: පැතිකඩ බලන්න
rules:
add_new: නීතිය එකතු කරන්න
+ delete: මකන්න
+ description_html: බොහෝ දෙනා සේවා කොන්දේසි කියවා එකඟ වූ බව ප්රකාශ කරන අතර, සාමාන්යයෙන් මිනිසුන් ගැටලුවක් පැනනඟින තුරු කියවා නොගනිති. පැතලි බුලට් පොයින්ට් ලිස්ට් එකකින් ඒවා ලබා දීමෙන් බැලූ බැල්මට ඔබේ සේවාදායකයේ නීති බැලීම පහසු කරන්න. තනි නීති කෙටි හා සරලව තබා ගැනීමට උත්සාහ කරන්න, නමුත් ඒවා විවිධ අයිතම වලට බෙදීමට උත්සාහ නොකරන්න.
edit: නීතිය සංස්කරණය කරන්න
+ empty: තවමත් සේවාදායක රීති නිර්වචනය කර නොමැත.
title: සේවාදායකයේ නීති
settings:
+ activity_api_enabled:
+ desc_html: සතිපතා බාල්දිවල දේශීයව ප්රකාශිත පළ කිරීම්, ක්රියාකාරී පරිශීලකයින් සහ නව ලියාපදිංචි කිරීම් ගණන
+ title: API හි පරිශීලක ක්රියාකාරකම් පිළිබඳ සමස්ත සංඛ්යාලේඛන ප්රකාශයට පත් කරන්න
+ bootstrap_timeline_accounts:
+ desc_html: බහු පරිශීලක නාම කොමාවෙන් වෙන් කරන්න. මෙම ගිණුම් පහත සඳහන් නිර්දේශවල පෙන්වීමට සහතික වනු ඇත
+ title: නව පරිශීලකයින්ට මෙම ගිණුම් නිර්දේශ කරන්න
contact_information:
email: ව්යාපාරික වි-තැපෑල
+ username: පරිශීලක නාමය අමතන්න
+ custom_css:
+ desc_html: සෑම පිටුවකම පටවා ඇති CSS සමඟ පෙනුම වෙනස් කරන්න
+ title: අභිරුචි CSS
+ default_noindex:
+ desc_html: මෙම සැකසුම තමන් විසින්ම වෙනස් කර නොමැති සියලුම පරිශීලකයින්ට බලපායි
+ title: පෙරනිමියෙන් සෙවුම් යන්ත්ර සුචිගත කිරීමෙන් පරිශීලකයින් ඉවත් කරන්න
+ domain_blocks:
+ all: හැමෝටම
+ disabled: කාටවත් නෑ
+ title: වසම් වාරණ පෙන්වන්න
+ users: පුරනය වී ඇති දේශීය පරිශීලකයින් වෙත
+ domain_blocks_rationale:
+ title: තාර්කිකත්වය පෙන්වන්න
+ hero:
+ desc_html: මුල් පිටුවේ ප්රදර්ශනය කෙරේ. අවම වශයෙන් 600x100px නිර්දේශිතයි. සකසා නොමැති විට, සේවාදායක සිඟිති රුව වෙත ආපසු වැටේ
+ title: වීර රූපය
+ mascot:
+ desc_html: පිටු කිහිපයක ප්රදර්ශනය කෙරේ. අවම වශයෙන් 293×205px නිර්දේශිතයි. සකසා නොමැති විට, පෙරනිමි මැස්කොට් වෙත ආපසු වැටේ
+ title: මැස්කොට් රූපය
+ peers_api_enabled:
+ desc_html: මෙම සේවාදායකය fediverse තුළ හමු වූ වසම් නම්
+ title: API හි සොයාගත් සේවාදායක ලැයිස්තුවක් ප්රකාශයට පත් කරන්න
+ preview_sensitive_media:
+ desc_html: මාධ්ය සංවේදී ලෙස සලකුණු කළත් වෙනත් වෙබ් අඩවිවල සබැඳි පෙරදසුන් සිඟිති රූපයක් පෙන්වයි
+ title: OpenGraph පෙරදසුන් තුළ සංවේදී මාධ්ය පෙන්වන්න
+ profile_directory:
+ desc_html: පරිශීලකයින්ට සොයාගත හැකි වීමට ඉඩ දෙන්න
+ title: පැතිකඩ නාමාවලිය සබල කරන්න
+ registrations:
+ closed_message:
+ desc_html: ලියාපදිංචිය වසා ඇති විට මුල් පිටුවේ ප්රදර්ශනය කෙරේ. ඔබට HTML ටැග් භාවිතා කළ හැකිය
+ title: සංවෘත ලියාපදිංචි පණිවිඩය
+ deletion:
+ desc_html: ඕනෑම කෙනෙකුට තම ගිණුම මකා දැමීමට ඉඩ දෙන්න
+ title: ගිණුම් මකාදැමීම විවෘත කරන්න
+ require_invite_text:
+ desc_html: ලියාපදිංචිය සඳහා අතින් අනුමැතිය අවශ්ය වූ විට, "ඔබට සම්බන්ධ වීමට අවශ්ය වන්නේ ඇයි?" විකල්ප වෙනුවට පෙළ ආදානය අනිවාර්ය වේ
+ title: සම්බන්ධ වීමට හේතුවක් ඇතුළත් කිරීමට නව පරිශීලකයින්ට අවශ්ය වේ
+ registrations_mode:
+ modes:
+ approved: ලියාපදිංචි වීමට අනුමැතිය අවශ්යයි
+ none: කිසිවෙකුට ලියාපදිංචි විය නොහැක
+ open: ඕනෑම කෙනෙකුට ලියාපදිංචි විය හැක
+ title: ලියාපදිංචි කිරීමේ මාදිලිය
+ show_known_fediverse_at_about_page:
+ desc_html: අබල කළ විට, ගොඩබෑමේ පිටුවෙන් සම්බන්ධ කර ඇති පොදු කාලරාමුව දේශීය අන්තර්ගතය පමණක් පෙන්වීමට සීමා කරයි
+ title: සත්යාපනය නොකළ පොදු කාලරේඛා පිටුවේ ෆෙඩරේටඩ් අන්තර්ගතය ඇතුළත් කරන්න
site_description:
+ desc_html: API හි හඳුන්වාදීමේ ඡේදය. මෙම Mastodon සේවාදායකය විශේෂ වන්නේ කුමක්ද සහ වෙනත් වැදගත් දෙයක් විස්තර කරන්න. ඔබට HTML ටැග් භාවිතා කළ හැකිය, විශේෂයෙන් <a>
සහ <em>
.
title: සේවාදායකයේ සවිස්තරය
+ site_description_extended:
+ desc_html: ඔබේ චර්යාධර්ම සංග්රහය, රීති, මාර්ගෝපදේශ සහ ඔබේ සේවාදායකය වෙන් කරන වෙනත් දේවල් සඳහා හොඳ තැනක්. ඔබට HTML ටැග් භාවිතා කළ හැකිය
+ title: අභිරුචි දීර්ඝ තොරතුරු
site_short_description:
+ desc_html: පැති තීරුවේ සහ මෙටා ටැග්වල පෙන්වයි. Mastodon යනු කුමක්ද සහ මෙම සේවාදායකය විශේෂ වන්නේ කුමක්ද යන්න තනි ඡේදයකින් විස්තර කරන්න.
title: සේවාදායකයේ කෙටි සවිස්තරය
+ site_terms:
+ desc_html: ඔබට ඔබේම රහස්යතා ප්රතිපත්තියක්, සේවා කොන්දේසි හෝ වෙනත් නීත්යානුකූල භාවයක් ලිවිය හැක. ඔබට HTML ටැග් භාවිතා කළ හැකිය
+ title: අභිරුචි සේවා කොන්දේසි
site_title: සේවාදායකයේ නම
+ thumbnail:
+ desc_html: OpenGraph සහ API හරහා පෙරදසුන් සඳහා භාවිතා වේ. 1200x630px නිර්දේශිතයි
+ title: සේවාදායක සිඟිති රුව
+ timeline_preview:
+ desc_html: ගොඩබෑමේ පිටුවේ පොදු කාලරාමුව වෙත සබැඳිය සංදර්ශනය කරන්න සහ සත්යාපනයකින් තොරව පොදු කාලරේඛාවට API ප්රවේශයට ඉඩ දෙන්න
+ title: පොදු කාලරේඛාවට අනවසර පිවිසීමට ඉඩ දෙන්න
title: අඩවියේ සැකසුම්
+ trendable_by_default:
+ desc_html: කලින් අවසර නොදුන් හැෂ් ටැග් වලට බලපායි
+ title: පෙර සමාලෝචනයකින් තොරව හැෂ් ටැග් වලට නැඹුරු වීමට ඉඩ දෙන්න
+ trends:
+ desc_html: දැනට ප්රවණතා ඇති කලින් සමාලෝචනය කළ අන්තර්ගතය ප්රසිද්ධියේ සංදර්ශන කරන්න
+ title: ප්රවණතා
+ site_uploads:
+ delete: උඩුගත කළ ගොනුව මකන්න
+ destroyed_msg: අඩවිය උඩුගත කිරීම සාර්ථකව මකා ඇත!
statuses:
back_to_account: ගිණුම් පිටුවට ආපසු යන්න
+ back_to_report: වාර්තා පිටුවට ආපසු යන්න
+ batch:
+ remove_from_report: වාර්තාවෙන් ඉවත් කරන්න
+ report: වාර්තාව
+ deleted: මකා දමන ලදී
media:
title: මාධ්යය
- with_media: මාධ්ය සමඟ
+ no_status_selected: කිසිවක් තෝරා නොගත් බැවින් තනතුරු කිසිවක් වෙනස් කර නැත
+ title: ගිණුම් තනතුරු
+ with_media: මාධ්ය දායකත්වය
+ strikes:
+ actions:
+ delete_statuses: "%{target}ගේ පළ කිරීම් %{name} මකා දමන ලදී"
+ disable: "%{name} %{target}ගේ ගිණුම නිශ්චල කළේය"
+ mark_statuses_as_sensitive: "%{name} %{target}ගේ පළ කිරීම් සංවේදී ලෙස ලකුණු කර ඇත"
+ none: "%{name} %{target}අනතුරු ඇඟවීමක් යවා ඇත"
+ sensitive: "%{name} %{target}ගේ ගිණුම සංවේදී ලෙස ලකුණු කර ඇත"
+ silence: "%{name} සීමිත %{target}ගිණුමක්"
+ suspend: "%{name} %{target}ගේ ගිණුම අත්හිටුවා ඇත"
+ appeal_approved: අභියාචනා කළා
+ appeal_pending: අභියාචනය පොරොත්තුවෙන්
+ system_checks:
+ database_schema_check:
+ message_html: පොරොත්තු දත්ත සමුදා සංක්රමණයන් ඇත. යෙදුම අපේක්ෂිත පරිදි ක්රියා කරන බව සහතික කිරීමට කරුණාකර ඒවා ධාවනය කරන්න
+ elasticsearch_running_check:
+ message_html: Elasticsearch වෙත සම්බන්ධ වීමට නොහැකි විය. කරුණාකර එය ක්රියාත්මක වන බව පරීක්ෂා කරන්න, නැතහොත් සම්පූර්ණ පෙළ සෙවීම අක්රීය කරන්න
+ elasticsearch_version_check:
+ message_html: 'නොගැලපෙන ඉලාස්ටික් සෙවුම් අනුවාදය: %{value}'
+ version_comparison: Elasticsearch %{running_version} ක්රියාත්මක වන අතර %{required_version} අවශ්ය වේ
+ rules_check:
+ action: සේවාදායක නීති කළමනාකරණය කරන්න
+ message_html: ඔබ සේවාදායක රීති කිසිවක් නිර්වචනය කර නැත.
+ sidekiq_process_check:
+ message_html: "%{value} පෝලිම්(ය) සඳහා Sidekiq ක්රියාවලියක් ක්රියාත්මක නොවේ. කරුණාකර ඔබේ Sidekiq වින්යාසය සමාලෝචනය කරන්න"
+ tags:
+ review: තත්ත්වය සමාලෝචනය කරන්න
+ updated_msg: Hashtag සැකසුම් සාර්ථකව යාවත්කාලීන කරන ලදී
title: පරිපාලනය
+ trends:
+ allow: ඉඩ දෙන්න
+ approved: අනුමත කළා
+ disallow: අවසර නොදෙන්න
+ links:
+ allow: සබැඳියට ඉඩ දෙන්න
+ allow_provider: ප්රකාශකයාට ඉඩ දෙන්න
+ description_html: මේවා ඔබගේ සේවාදායකය විසින් පළ කිරීම් දකින ගිණුම් මගින් දැනට බොහෝ සෙයින් බෙදා ගන්නා සබැඳි වේ. එය ඔබගේ පරිශීලකයින්ට ලෝකයේ සිදුවෙමින් පවතින දේ සොයා ගැනීමට උදවු කළ හැක. ඔබ ප්රකාශකයා අනුමත කරන තුරු සබැඳි කිසිවක් ප්රසිද්ධියේ ප්රදර්ශනය නොවේ. ඔබට තනි සබැඳිවලට ඉඩ දීමට හෝ ප්රතික්ෂේප කිරීමටද හැකිය.
+ disallow: සබැඳියට ඉඩ නොදෙන්න
+ disallow_provider: ප්රකාශකයාට ඉඩ නොදෙන්න
+ shared_by_over_week:
+ one: පසුගිය සතිය පුරා එක් පුද්ගලයෙකු විසින් බෙදා ගන්නා ලදී
+ other: පසුගිය සතිය පුරා පුද්ගලයින් %{count} දෙනෙකු විසින් බෙදා ගන්නා ලදී
+ title: නැඟී එන සබැඳි
+ usage_comparison: ඊයේ %{yesterday} හා සසඳන විට අද %{today} වරක් බෙදා ගන්නා ලදී
+ only_allowed: අවසර දී ඇත
+ pending_review: පොරොත්තු සමාලෝචනය
+ preview_card_providers:
+ allowed: මෙම ප්රකාශකයාගේ සබැඳි නැඹුරු විය හැක
+ description_html: මේවා බොහෝ විට ඔබගේ සේවාදායකයේ සබැඳි බෙදා ගන්නා වසම් වේ. සබැඳියේ වසම අනුමත කරන්නේ නම් මිස සබැඳි ප්රසිද්ධියේ නැඹුරු නොවේ. ඔබගේ අනුමැතිය (හෝ ප්රතික්ෂේප කිරීම) උපවසම් දක්වා විහිදේ.
+ rejected: මෙම ප්රකාශකයාගේ සබැඳි නැඹුරු නොවනු ඇත
+ title: ප්රකාශකයන්
+ rejected: ප්රතික්ෂේප කළා
+ statuses:
+ allow: පළ කිරීමට ඉඩ දෙන්න
+ allow_account: කතුවරයාට ඉඩ දෙන්න
+ description_html: මේ වන විට ඔබේ සේවාදායකය දන්නා පෝස්ට් මේ වන විට බොහෝ බෙදාහරින සහ මේ මොහොතේ වැඩි කැමැත්තක් දක්වයි. එය ඔබගේ නව සහ නැවත පැමිණෙන පරිශීලකයින්ට අනුගමනය කිරීමට තවත් පුද්ගලයින් සොයා ගැනීමට උදවු කළ හැක. ඔබ කර්තෘ අනුමත කරන තෙක් පළ කිරීම් කිසිවක් ප්රසිද්ධියේ නොපෙන්වන අතර, කර්තෘ තම ගිණුම අන් අයට යෝජනා කිරීමට ඉඩ දෙයි. ඔබට තනි පළ කිරීම්වලට ඉඩ දීමට හෝ ප්රතික්ෂේප කිරීමටද හැකිය.
+ disallow: පළ කිරීමට ඉඩ නොදෙන්න
+ disallow_account: කතුවරයාට ඉඩ නොදෙන්න
+ not_discoverable: කර්තෘ සොයා ගත හැකි බව තෝරාගෙන නැත
+ shared_by:
+ one: එක් වරක් බෙදාගත් හෝ ප්රිය කරන ලදී
+ other: "%{friendly_count} වරක් බෙදාගෙන ප්රිය කරන ලදී"
+ title: ප්රවණතා පළ කිරීම්
+ tags:
+ current_score: වත්මන් ලකුණු %{score}
+ dashboard:
+ tag_accounts_measure: අද්විතීය භාවිතයන්
+ tag_languages_dimension: ඉහළම භාෂා
+ tag_servers_dimension: ඉහළම සේවාදායකයන්
+ tag_servers_measure: විවිධ සේවාදායකයන්
+ tag_uses_measure: සම්පූර්ණ භාවිතය
+ description_html: මේවා දැනට ඔබගේ සේවාදායකය දකින බොහෝ පළ කිරීම් වල දිස්වන හැෂ් ටැග් වේ. මේ මොහොතේ මිනිසුන් වැඩිපුරම කතා කරන්නේ කුමක් දැයි සොයා ගැනීමට එය ඔබගේ පරිශීලකයින්ට උදවු කළ හැක. ඔබ ඒවා අනුමත කරන තුරු හෑෂ් ටැග් ප්රසිද්ධියේ නොපෙන්වයි.
+ listable: යෝජනා කළ හැක
+ not_listable: යෝජනා නොකරනු ඇත
+ not_trendable: ප්රවණතා යටතේ දිස් නොවනු ඇත
+ not_usable: භාවිතා කළ නොහැක
+ peaked_on_and_decaying: "%{date}හි උච්චතම, දැන් දිරාපත් වෙමින් පවතී"
+ title: ප්රවණතා හැෂ් ටැග්
+ trendable: ප්රවණතා යටතේ පෙනී සිටිය හැක
+ trending_rank: 'නැඹුරු #%{rank}'
+ usable: භාවිතා කළ හැක
+ usage_comparison: ඊයේ %{yesterday} හා සසඳන විට අද %{today} වරක් භාවිතා වේ
+ used_by_over_week:
+ one: පසුගිය සතිය පුරා එක් පුද්ගලයෙකු විසින් භාවිතා කරන ලදී
+ other: පසුගිය සතිය පුරා පුද්ගලයින් %{count} දෙනෙකු විසින් භාවිතා කරන ලදී
+ title: ප්රවණතා
+ trending: ප්රවණතා
+ warning_presets:
+ add_new: අලුතින් එකතු කරන්න
+ delete: මකන්න
+ edit_preset: අනතුරු ඇඟවීමේ පෙර සැකසුම සංස්කරණය කරන්න
+ empty: ඔබ තවම කිසිදු අනතුරු ඇඟවීමේ පෙරසිටුවක් නිර්වචනය කර නැත.
+ title: අනතුරු ඇඟවීමේ පෙරසිටුවීම් කළමනාකරණය කරන්න
+ webhooks:
+ add_new: අන්ත ලක්ෂ්යය එක් කරන්න
+ delete: මකන්න
+ description_html: A webhook Mastodon හට තෝරාගත් සිදුවීම් පිළිබඳ තත්ය කාලීන දැනුම්දීම් ක් ඔබේම යෙදුමට තල්ලු කිරීමට හැකියාව ලබා දෙයි, එම නිසා ඔබේ යෙදුමට ස්වයංක්රීයව ප්රතික්රියා අවුලුවාලීමට හැකිය.
+ disable: අක්රිය කරන්න
+ disabled: ආබාධිතයි
+ edit: අන්ත ලක්ෂ්යය සංස්කරණය කරන්න
+ empty: ඔබට තවම වින්යාස කර ඇති කිසිදු webhook අන්ත ලක්ෂ්යයක් නොමැත.
+ enable: සබල කරන්න
+ enabled: ක්රියාකාරී
+ enabled_events:
+ one: 1 සබල කළ සිදුවීමක්
+ other: "%{count} සබල කළ සිදුවීම්"
+ events: සිදුවීම්
+ new: නව webhook
+ rotate_secret: රහස කරකවන්න
+ secret: අත්සන් කිරීමේ රහස
+ status: තත්ත්වය
+ webhook: වෙබ්හුක්
+ admin_mailer:
+ new_appeal:
+ actions:
+ delete_statuses: ඔවුන්ගේ පළ කිරීම් මකා දැමීමට
+ disable: ඔවුන්ගේ ගිණුම කැටි කිරීමට
+ mark_statuses_as_sensitive: ඔවුන්ගේ තනතුරු සංවේදී ලෙස සලකුණු කිරීමට
+ none: අනතුරු ඇඟවීමක්
+ sensitive: ඔවුන්ගේ ගිණුම සංවේදී ලෙස සලකුණු කිරීමට
+ silence: ඔවුන්ගේ ගිණුම සීමා කිරීමට
+ suspend: ඔවුන්ගේ ගිණුම අත්හිටුවීමට
+ body: "%{target} යනු %{type}ක් වූ %{date}සිට %{action_taken_by} කින් මධ්යස්ථ තීරණයක් අභියාචනා කරයි. ඔවුන් මෙසේ ලිවීය."
+ next_steps: ඔබට මධ්යස්ථ තීරණය අවලංගු කිරීමට අභියාචනය අනුමත කළ හැකිය, නැතහොත් එය නොසලකා හරින්න.
+ subject: "%{username} යනු %{instance}හි මධ්යස්ථ තීරණයකට අභියාචනා කරයි"
+ new_pending_account:
+ body: නව ගිණුමේ විස්තර පහතින්. ඔබට මෙම යෙදුම අනුමත කිරීමට හෝ ප්රතික්ෂේප කිරීමට හැකිය.
+ subject: නව ගිණුම සමාලෝචනය සඳහා %{instance} (%{username})
+ new_report:
+ body: "%{reporter} %{target}වාර්තා කර ඇත"
+ body_remote: "%{domain} සිට යමෙක් %{target}වාර්තා කර ඇත"
+ subject: "%{instance} සඳහා නව වාර්තාව (#%{id})"
+ new_trends:
+ body: 'පහත අයිතම ප්රසිද්ධියේ ප්රදර්ශනය කිරීමට පෙර සමාලෝචනයක් අවශ්ය වේ:'
+ new_trending_links:
+ no_approved_links: දැනට අනුමත නැඹුරු සබැඳි නොමැත.
+ requirements: 'මෙම ඕනෑම අපේක්ෂකයෙකුට #%{rank} අනුමත ප්රවණතා සබැඳිය ඉක්මවා යා හැකි අතර, එය දැනට ලකුණු %{lowest_link_score}ක් සමඟින් "%{lowest_link_title}" වේ.'
+ title: නැඟී එන සබැඳි
+ new_trending_statuses:
+ no_approved_statuses: දැනට අනුමත ප්රවණතා පළ කිරීම් නොමැත.
+ requirements: 'මෙම ඕනෑම අපේක්ෂකයෙකුට #%{rank} අනුමත ප්රවණතා පළ කිරීම අභිබවා යා හැකි අතර, එය දැනට ලකුණු %{lowest_status_score}ක් සමඟින් %{lowest_status_url} වේ.'
+ title: ප්රවණතා පළ කිරීම්
+ new_trending_tags:
+ no_approved_tags: දැනට අනුමත ප්රවණතා හැෂ් ටැග් නොමැත.
+ requirements: 'මෙම ඕනෑම අපේක්ෂකයෙකුට #%{rank} අනුමත ප්රවණතා හැෂ් ටැගය අභිබවා යා හැකිය, එය දැනට ලකුණු %{lowest_tag_score}ක් සමඟ #%{lowest_tag_name} වේ.'
+ title: ප්රවණතා හැෂ් ටැග්
+ subject: "%{instance}හි සමාලෝචනය සඳහා නව ප්රවණතා"
+ aliases:
+ add_new: අන්වර්ථ නාමයක් සාදන්න
+ created_msg: නව අන්වර්ථ නාමයක් සාර්ථකව නිර්මාණය කරන ලදී. ඔබට දැන් පැරණි ගිණුමෙන් මාරුවීම ආරම්භ කළ හැක.
+ deleted_msg: අන්වර්ථය සාර්ථකව ඉවත් කරන ලදී. එම ගිණුමෙන් මෙම ගිණුමට මාරුවීම තවදුරටත් කළ නොහැකි වනු ඇත.
+ empty: ඔබට අන්වර්ථ නාම නොමැත.
+ hint_html: ඔබට වෙනත් ගිණුමකින් මෙය වෙත මාරු වීමට අවශ්ය නම්, මෙහිදී ඔබට අන්වර්ථ නාමයක් සෑදිය හැක, එය පැරණි ගිණුමෙන් අනුගාමිකයින් මෙම ගිණුමට ගෙන යාමට පෙර අවශ්ය වේ. මෙම ක්රියාවම හානිකර නොවන සහ ආපසු හැරවිය හැකිවේ. ගිණුම් සංක්රමණය පැරණි ගිණුමෙන් ආරම්භ වේ.
+ remove: අන්වර්ථය විසන්ධි කරන්න
appearance:
advanced_web_interface: උසස් වියමන අතුරුමුහුණත
+ advanced_web_interface_hint: 'ඔබට ඔබේ සම්පූර්ණ තිරයේ පළල භාවිතා කිරීමට අවශ්ය නම්, උසස් වෙබ් අතුරු මුහුණත ඔබට අවශ්ය පරිදි එකම වේලාවක බොහෝ තොරතුරු බැලීමට විවිධ තීරු වින්යාස කිරීමට ඉඩ දෙයි: නිවස, දැනුම්දීම්, ෆෙඩරේටඩ් කාලරාමුව, ඕනෑම ලැයිස්තු සහ හැෂ් ටැග්.'
+ animations_and_accessibility: සජීවිකරණ සහ ප්රවේශ්යතාව
+ confirmation_dialogs: තහවුරු කිරීමේ සංවාද
+ discovery: සොයාගැනීම
localization:
+ body: Mastodon ස්වේච්ඡා සේවකයන් විසින් පරිවර්තනය කර ඇත.
guide_link: https://crowdin.com/project/mastodon
- sensitive_content: සංවේදී අන්තර්ගතයකි
+ guide_link_text: සෑම කෙනෙකුටම දායක විය හැකිය.
+ sensitive_content: සංවේදී අන්තර්ගතය
+ toot_layout: පෝස්ට් පිරිසැලසුම
application_mailer:
+ notification_preferences: ඊමේල් මනාප වෙනස් කරන්න
salutation: "%{name},"
+ settings: 'ඊමේල් මනාප වෙනස් කරන්න: %{link}'
+ view: 'දැක්ම:'
+ view_profile: පැතිකඩ බලන්න
+ view_status: පළ කිරීම බලන්න
+ applications:
+ created: යෙදුම සාර්ථකව නිර්මාණය කරන ලදී
+ destroyed: යෙදුම සාර්ථකව මකා ඇත
+ regenerate_token: ප්රවේශ ටෝකනය නැවත උත්පාදනය කරන්න
+ token_regenerated: ප්රවේශ ටෝකනය සාර්ථකව ප්රතිජනනය කරන ලදී
+ warning: මෙම දත්ත සමඟ ඉතා ප්රවේශම් වන්න. එය කිසි විටෙක කිසිවෙකු සමඟ බෙදා නොගන්න!
+ your_token: ඔබේ ප්රවේශ ටෝකනය
auth:
+ apply_for_account: ආරාධනාවක් ඉල්ලන්න
change_password: මුර පදය
+ checkbox_agreement_html: මම සේවාදායක රීති සහ සේවා නියමට එකඟ වෙමි
+ checkbox_agreement_without_rules_html: මම සේවා කොන්දේසි එකඟ වෙමි
+ delete_account: ගිණුම මකන්න
+ delete_account_html: ඔබට ඔබගේ ගිණුම මකා දැමීමට අවශ්ය නම්, ඔබට මෙතැනින් ඉදිරියට යා හැක. තහවුරු කිරීම සඳහා ඔබෙන් අසනු ඇත.
+ description:
+ prefix_invited_by_user: "@%{name} ඔබට Mastodon හි මෙම සේවාදායකයට සම්බන්ධ වීමට ආරාධනා කරයි!"
+ prefix_sign_up: අදම Mastodon හි ලියාපදිංචි වන්න!
+ suffix: ගිණුමක් සමඟ, ඔබට ඕනෑම Mastodon සේවාදායකයකින් සහ තවත් බොහෝ දේ භාවිතා කරන්නන් සමඟ පුද්ගලයින් අනුගමනය කිරීමට, යාවත්කාලීන කිරීම් පළ කිරීමට සහ පණිවිඩ හුවමාරු කර ගැනීමට හැකි වනු ඇත!
+ didnt_get_confirmation: තහවුරු කිරීමේ උපදෙස් ලැබුණේ නැද්ද?
+ dont_have_your_security_key: ඔබගේ ආරක්ෂක යතුර නොමැතිද?
+ forgot_password: මුරපදය අමතක වුනාද?
+ invalid_reset_password_token: මුරපද යළි පිහිටුවීමේ ටෝකනය අවලංගු හෝ කල් ඉකුත් වී ඇත. කරුණාකර අලුත් එකක් ඉල්ලන්න.
+ link_to_otp: ඔබගේ දුරකථනයෙන් ද්වි සාධක කේතයක් හෝ ප්රතිසාධන කේතයක් ඇතුළු කරන්න
+ link_to_webauth: ඔබගේ ආරක්ෂක යතුරු උපාංගය භාවිතා කරන්න
+ log_in_with: සමඟ ලොග් වන්න
login: පිවිසෙන්න
logout: නික්මෙන්න
- or_log_in_with: හෝ සමඟ පිවිසෙන්න
+ migrate_account: වෙනත් ගිණුමකට යන්න
+ migrate_account_html: ඔබට මෙම ගිණුම වෙනත් එකකට හරවා යැවීමට අවශ්ය නම්, ඔබට එය මෙහි වින්යාසගත කළ හැක.
+ or_log_in_with: හෝ සමඟින් පිවිසෙන්න
+ register: ලියාපදිංචි වන්න
+ registration_closed: "%{instance} නව සාමාජිකයින් පිළිගන්නේ නැත"
+ resend_confirmation: තහවුරු කිරීමේ උපදෙස් නැවත යවන්න
+ reset_password: මුරපදය නැවත සකසන්න
security: ආරක්ෂාව
+ set_new_password: නව මුරපදය සකසන්න
+ setup:
+ email_below_hint_html: පහත විද්යුත් තැපැල් ලිපිනය වැරදි නම්, ඔබට එය මෙතැනින් වෙනස් කර නව තහවුරු කිරීමේ විද්යුත් තැපෑලක් ලබා ගත හැක.
+ email_settings_hint_html: තහවුරු කිරීමේ විද්යුත් තැපෑල %{email}වෙත යවන ලදී. එම විද්යුත් තැපැල් ලිපිනය නිවැරදි නොවේ නම්, ඔබට එය ගිණුම් සැකසුම් තුළ වෙනස් කළ හැක.
+ title: සැලසුම
status:
account_status: ගිණුමේ තත්වය
+ confirming: විද්යුත් තැපෑල තහවුරු කිරීම සම්පූර්ණ කිරීම සඳහා රැඳී සිටිමින්.
+ functional: ඔබගේ ගිණුම සම්පුර්ණයෙන්ම ක්රියාත්මකයි.
+ pending: ඔබගේ අයදුම්පත අපගේ කාර්ය මණ්ඩලය විසින් සමාලෝචනය කිරීමට බලාපොරොත්තු වේ. මෙය යම් කාලයක් ගත විය හැක. ඔබගේ අයදුම්පත අනුමත වුවහොත් ඔබට විද්යුත් තැපෑලක් ලැබෙනු ඇත.
+ redirecting_to: එය දැනට %{acct}වෙත හරවා යවන බැවින් ඔබගේ ගිණුම අක්රියයි.
+ view_strikes: ඔබගේ ගිණුමට එරෙහිව පසුගිය වර්ජන බලන්න
+ too_fast: පෝරමය ඉතා වේගයෙන් ඉදිරිපත් කර ඇත, නැවත උත්සාහ කරන්න.
+ trouble_logging_in: පුරනය වීමේ ගැටලුවක්ද?
+ use_security_key: ආරක්ෂක යතුර භාවිතා කරන්න
authorize_follow:
+ already_following: ඔබ දැනටමත් මෙම ගිණුම අනුගමනය කරයි
+ already_requested: ඔබ දැනටමත් එම ගිණුමට අනුගමනය ඉල්ලීමක් යවා ඇත
+ error: අවාසනාවකට, දුරස්ථ ගිණුම සෙවීමේදී දෝෂයක් ඇති විය
+ follow: අනුගමනය කරන්න
+ follow_request: 'ඔබ පහත ඉල්ලීමක් යවා ඇත:'
+ following: 'සාර්ථකත්වය! ඔබ දැන් පහත දැක්වේ:'
post_follow:
close: හෝ ඔබට මෙම කවුළුව වසාදැමිය හැකිය.
return: පරිශීලකගේ පැතිකඩ පෙන්වන්න
web: වියමන ට යන්න
+ title: "%{acct}අනුගමනය කරන්න"
challenge:
confirm: ඉදිරියට
- invalid_password: අවලංගු නොවන මුරපදයකි
+ hint_html: "ඉඟිය: අපි ඉදිරි පැය සඳහා නැවත ඔබගේ මුරපදය ඔබෙන් නොඉල්ලමු."
+ invalid_password: නොවන මුරපදයකි
+ prompt: ඉදිරියට යාමට මුරපදය තහවුරු කරන්න
+ crypto:
+ errors:
+ invalid_key: වලංගු Ed25519 හෝ Curve25519 යතුරක් නොවේ
+ invalid_signature: වලංගු Ed25519 අත්සනක් නොවේ
date:
formats:
default: "%b %d, %Y"
with_month_name: "%B %d, %Y"
datetime:
distance_in_words:
+ about_x_hours: පැය %{count}
+ about_x_months: මාස %{count}
+ half_a_minute: මේ දැන්
+ less_than_x_minutes: මීටර් %{count}
less_than_x_seconds: මේ දැන්
+ x_minutes: මීටර් %{count}
+ x_months: මාස %{count}
+ x_seconds: "%{count}තත්"
+ deletes:
+ challenge_not_passed: ඔබ ඇතුළත් කළ තොරතුරු නිවැරදි නැත
+ confirm_password: ඔබගේ අනන්යතාවය තහවුරු කිරීමට ඔබගේ වත්මන් මුරපදය ඇතුලත් කරන්න
+ confirm_username: ක්රියා පටිපාටිය තහවුරු කිරීමට ඔබගේ පරිශීලක නාමය ඇතුලත් කරන්න
+ proceed: ගිණුම මකන්න
+ success_msg: ඔබගේ ගිණුම සාර්ථකව මකා ඇත
+ warning:
+ before: 'ඉදිරියට යාමට පෙර, කරුණාකර මෙම සටහන් හොඳින් කියවන්න:'
+ caches: වෙනත් සේවාදායකයන් විසින් හැඹිලිගත කර ඇති අන්තර්ගතය දිගටම පැවතිය හැක
+ data_removal: ඔබගේ පළ කිරීම් සහ අනෙකුත් දත්ත ස්ථිරවම ඉවත් කරනු ලැබේ
+ email_change_html: ඔබට ඔබගේ ගිණුම මකා කළ හැක
+ email_contact_html: එය තවමත් නොපැමිණියේ නම්, ඔබට උදව් සඳහා %{email} විද්යුත් තැපෑලෙන් යැවිය හැක
+ email_reconfirmation_html: ඔබට තහවුරු කිරීමේ විද්යුත් තැපෑල නොලැබුනේ නම්, ඔබට එය නැවත ඉල්ලා සිටිය හැක
+ irreversible: ඔබට ඔබගේ ගිණුම ප්රතිසාධනය කිරීමට හෝ නැවත සක්රිය කිරීමට නොහැකි වනු ඇත
+ more_details_html: වැඩි විස්තර සඳහා, පෞද්ගලිකත්ව ප්රතිපත්තියබලන්න.
+ username_available: ඔබගේ පරිශීලක නාමය නැවත ලබා ගත හැකි වනු ඇත
+ username_unavailable: ඔබගේ පරිශීලක නාමය නොතිබෙනු ඇත
+ directories:
+ directory: පැතිකඩ නාමාවලිය
+ explanation: ඔවුන්ගේ රුචිකත්වයන් මත පදනම්ව පරිශීලකයින් සොයා ගන්න
+ explore_mastodon: "%{title}ගවේෂණය කරන්න"
+ disputes:
+ strikes:
+ action_taken: පියවර ගත්තා
+ appeal: අභියාචනය
+ appeal_approved: මෙම වර්ජනය සාර්ථකව අභියාචනා කර ඇති අතර එය තවදුරටත් වලංගු නොවේ
+ appeal_rejected: අභියාචනය ප්රතික්ෂේප කර ඇත
+ appeal_submitted_at: අභියාචනය ඉදිරිපත් කරන ලදී
+ appealed_msg: ඔබගේ අභියාචනය ඉදිරිපත් කර ඇත. එය අනුමත වුවහොත්, ඔබට දැනුම් දෙනු ලැබේ.
+ appeals:
+ submit: අභියාචනය ඉදිරිපත් කරන්න
+ approve_appeal: අභියාචනය අනුමත කරන්න
+ associated_report: ආශ්රිත වාර්තාව
+ created_at: දිනැති
+ description_html: මේවා ඔබගේ ගිණුමට එරෙහිව ගන්නා ලද ක්රියා සහ %{instance}හි කාර්ය මණ්ඩලය විසින් ඔබට එවා ඇති අනතුරු ඇඟවීම් වේ.
+ recipient: වෙත යොමු කරන ලදී
+ reject_appeal: අභියාචනය ප්රතික්ෂේප කරන්න
+ status: 'පළ කිරීම #%{id}'
+ status_removed: පළ කිරීම දැනටමත් පද්ධතියෙන් ඉවත් කර ඇත
+ title: "%{action} සිට %{date}"
+ title_actions:
+ delete_statuses: පසු ඉවත් කිරීම
+ disable: ගිණුම කැටි කිරීම
+ mark_statuses_as_sensitive: තනතුරු සංවේදී ලෙස සලකුණු කිරීම
+ none: අවවාදයයි
+ sensitive: ගිණුම සංවේදී ලෙස සලකුණු කිරීම
+ silence: ගිණුම සීමා කිරීම
+ suspend: ගිණුම අත්හිටුවීම
+ your_appeal_approved: ඔබගේ අභියාචනය අනුමත කර ඇත
+ your_appeal_pending: ඔබ අභියාචනයක් ඉදිරිපත් කර ඇත
+ your_appeal_rejected: ඔබගේ අභියාචනය ප්රතික්ෂේප කර ඇත
+ domain_validator:
+ invalid_domain: වලංගු ඩොමේන් නාමයක් නොවේ
errors:
- '400': The request you submitted was invalid or malformed.
- '403': You don't have permission to view this page.
- '404': The page you are looking for isn't here.
- '406': This page is not available in the requested format.
- '410': The page you were looking for doesn't exist here anymore.
- '422':
- '429': Too many requests
- '500':
- '503': The page could not be served due to a temporary server failure.
+ '400': ඔබ ඉදිරිපත් කළ ඉල්ලීම අවලංගු හෝ විකෘති විය.
+ '403': ඔබට මෙම පිටුව බැලීමට අවසර නැත.
+ '404': ඔබ සොයන පිටුව මෙහි නොමැත.
+ '406': මෙම පිටුව ඉල්ලන ලද ආකෘතියෙන් නොමැත.
+ '410': ඔබ සොයන පිටුව තවදුරටත් මෙහි නොමැත.
+ '422':
+ content: ආරක්ෂක සත්යාපනය අසාර්ථක විය. ඔබ කුකීස් අවහිර කරනවාද?
+ title: ආරක්ෂක සත්යාපනය අසාර්ථක විය
+ '429': ඉල්ලීම් වැඩියි
+ '500':
+ content: අපට කණගාටුයි, නමුත් අපගේ පැත්තෙන් යමක් වැරදී ඇත.
+ title: මෙම පිටුව නිවැරදි නොවේ
+ '503': තාවකාලික සේවාදායකයේ අසාර්ථක වීමක් හේතුවෙන් පිටුව සේවය කිරීමට නොහැකි විය.
+ noscript_html: Mastodon වෙබ් යෙදුම භාවිතා කිරීමට, කරුණාකර JavaScript සක්රීය කරන්න. විකල්පයක් ලෙස, ඔබේ වේදිකාව සඳහා එකක් උත්සාහ කරන්න.
+ existing_username_validator:
+ not_found: එම පරිශීලක නාමය සහිත දේශීය පරිශීලකයෙකු සොයා ගැනීමට නොහැකි විය
+ not_found_multiple: "%{usernames}සොයා ගැනීමට නොහැකි විය"
exports:
archive_takeout:
date: දිනය
- download: ඔබගේ සංරක්ෂිතය බාගන්න
+ download: ඔබගේ සුරක්ෂිතභාවය බාගන්න
+ hint_html: ඔබට ඔබගේ පළ කිරීම් සහ උඩුගත කළ මාධ්යහි සංරක්ෂිතයක් ඉල්ලා සිටිය හැක. නිර්යාත කළ දත්ත ActivityPub ආකෘතියෙන්, ඕනෑම අනුකූල මෘදුකාංගයකට කියවිය හැකිය. ඔබට දින 7කට වරක් ලේඛනාගාරයක් ඉල්ලා සිටිය හැක.
+ in_progress: ඔබගේ සංරක්ෂිතය සම්පාදනය කරමින්...
+ request: ඔබගේ සංරක්ෂිතය ඉල්ලන්න
size: ප්රමාණය
- bookmarks: පොත් යොමු
- lists: ලැයිස්තු
+ blocks: ඔබ අවහිර කරන්න
+ bookmarks: පොත් යොමු කරන්න
+ domain_blocks: වසම් අවහිර කිරීම්
+ lists: ලැයිස්තුව
+ mutes: ඔබ නිහඬ කරන්න
storage: මාධ්ය ගබඩාව
+ featured_tags:
+ add_new: අලුතින් එකතු කරන්න
+ errors:
+ limit: ඔබ දැනටමත් උපරිම හෑෂ් ටැග් ප්රමාණය විශේෂාංග කර ඇත
+ hint_html: "විශේෂාංගගත හැෂ් ටැග් මොනවාද? ඒවා ඔබේ පොදු පැතිකඩෙහි ප්රමුඛව ප්රදර්ශනය වන අතර එම හැෂ් ටැග් යටතේ ඔබේ පොදු පළ කිරීම් බ්රවුස් කිරීමට මිනිසුන්ට ඉඩ සලසයි. නිර්මාණාත්මක කෘති හෝ දිගු කාලීන ව්යාපෘති පිළිබඳ වාර්තාවක් තබා ගැනීම සඳහා ඔවුන් විශිෂ්ට මෙවලමක් වේ."
filters:
contexts:
account: පැතිකඩයන්
+ home: නිවස සහ ලැයිස්තු
notifications: දැනුම්දීම්
+ public: පොදු කාලරේඛා
thread: සංවාද
edit:
+ add_keyword: මූල පදය එක් කරන්න
+ keywords: මූල පද
title: පෙරහන සංස්කරණය
+ errors:
+ deprecated_api_multiple_keywords: මෙම පරාමිති පෙරහන් මූල පද එකකට වඩා අදාළ වන බැවින් මෙම යෙදුමෙන් වෙනස් කළ නොහැක. වඩාත් මෑත යෙදුමක් හෝ වෙබ් අතුරු මුහුණතක් භාවිතා කරන්න.
+ invalid_context: කිසිවක් හෝ වලංගු නොවන සන්දර්භයක් සපයා නැත
index:
+ contexts: "%{contexts}හි පෙරහන්"
+ delete: මකන්න
+ empty: ඔබට පෙරහන් නොමැත.
+ expires_in: "%{distance}කින් කල් ඉකුත් වේ"
+ expires_on: "%{date}දින කල් ඉකුත් වේ"
+ keywords:
+ one: "%{count} මූල පදය"
+ other: "%{count} මූල පද"
title: පෙරහන්
new:
+ save: නව පෙරහන සුරකින්න
title: නව පෙරහනක් එකතු කරන්න
footer:
developers: සංවර්ධකයින්
more: තව…
resources: සම්පත්
+ trending_now: දැන් ප්රවණතාවය
generic:
all: සියල්ල
+ changes_saved_msg: වෙනස්කම් සාර්ථකව සුරකින ලදී!
copy: පිටපත්
+ delete: මකන්න
+ none: කිසිවක් නැත
+ order_by: විසින් ඇණවුම් කරන්න
save_changes: වෙනස්කම් සුරකින්න
+ today: අද
+ validation_errors:
+ one: යමක් තවමත් හරි නැත! කරුණාකර පහත දෝෂය සමාලෝචනය කරන්න
+ other: යමක් තවමත් හරි නැත! කරුණාකර පහත දෝෂ %{count} ක් සමාලෝචනය කරන්න
+ html_validator:
+ invalid_markup: 'වලංගු නොවන HTML සලකුණු අඩංගු වේ: %{error}'
imports:
+ errors:
+ over_rows_processing_limit: පේළි %{count} කට වඩා අඩංගු වේ
+ modes:
+ merge: ඒකාබද්ධ කරන්න
+ merge_long: පවතින වාර්තා තබා නව ඒවා එකතු කරන්න
+ overwrite: උඩින් ලියන්න
+ overwrite_long: වත්මන් වාර්තා නව ඒවා සමඟ ප්රතිස්ථාපනය කරන්න
+ preface: ඔබ අනුගමන කරන හෝ අවහිර කරන පුද්ගලයින්ගේ ලැයිස්තුවක් වැනි වෙනත් සේවාදායකයකින් ඔබ නිර්යාත කර ඇති දත්ත ඔබට ආයාත කළ හැක.
+ success: ඔබගේ දත්ත සාර්ථකව උඩුගත කර ඇති අතර නියමිත වේලාවට සැකසෙනු ඇත
types:
- bookmarks: පොත් යොමු
+ blocking: අවහිර කිරීමේ ලැයිස්තුව
+ bookmarks: පොත් යොමු කරන්න
+ domain_blocking: වසම් අවහිර කිරීමේ ලැයිස්තුව
+ following: පහත ලැයිස්තුව
+ muting: නිහඬ කිරීමේ ලැයිස්තුව
upload: උඩුගත කරන්න
+ in_memoriam_html: මතකය තුළ.
invites:
+ delete: අක්රිය කරන්න
+ expired: කල් ඉකුත් වී ඇත
expires_in:
'1800': විනාඩි 30
'21600': හෝරා 6
@@ -300,29 +1166,214 @@ si:
'43200': හෝරා 12
'604800': සති 1
'86400': දවස් 1
+ expires_in_prompt: කවදාවත් නැහැ
+ generate: ආරාධනා සබැඳිය උත්පාදනය කරන්න
+ invited_by: 'ඔබට ආරාධනා කළේ:'
+ max_uses:
+ one: 1 භාවිතය
+ other: "%{count} භාවිතා කරයි"
+ max_uses_prompt: සීමාවක් නැත
+ prompt: මෙම සේවාදායකයට ප්රවේශය ලබා දීමට අන් අය සමඟ සබැඳි ජනනය කර බෙදා ගන්න
+ table:
+ expires_at: කල් ඉකුත් වේ
+ uses: භාවිතා කරයි
title: මිනිසුන්ට ආරාධනා කරන්න
+ lists:
+ errors:
+ limit: ඔබ උපරිම ලැයිස්තු ප්රමාණයට ළඟා වී ඇත
login_activities:
authentication_methods:
+ otp: ද්වි-සාධක සත්යාපන යෙදුම
password: මුර පදය
+ sign_in_token: ඊමේල් ආරක්ෂක කේතය
+ webauthn: ආරක්ෂක යතුරු
+ description_html: ඔබ හඳුනා නොගත් ක්රියාකාරකම් ඔබ දුටුවහොත්, ඔබේ මුරපදය වෙනස් කිරීම සහ ද්වි-සාධක සත්යාපනය සක්රීය කිරීම සලකා බලන්න.
+ empty: සත්යාපන ඉතිහාසයක් නොමැත
+ failed_sign_in_html: "%{ip} (%{browser}) සිට %{method} සමඟ අසාර්ථක පුරනය වීමේ උත්සාහය"
+ successful_sign_in_html: "%{ip} (%{browser}) සිට %{method} සමඟ සාර්ථක පුරනය වීම"
+ title: සත්යාපන ඉතිහාසය
+ media_attachments:
+ validations:
+ images_and_video: දැනටමත් පින්තූර අඩංගු පළ කිරීමකට වීඩියෝවක් ඇමිණිය නොහැක
+ not_ready: සැකසීම අවසන් නොකළ ගොනු ඇමිණිය නොහැක. මොහොතකින් නැවත උත්සාහ කරන්න!
+ too_many: ගොනු 4කට වඩා ඇමිණිය නොහැක
+ migrations:
+ acct: වෙත ගෙන යන ලදී
+ cancel: යළි-යොමුවීම් අවලංගු කරන්න
+ cancel_explanation: යළි-යොමුවීම් අවලංගු කිරීම ඔබගේ ජංගම ගිණුම නැවත සක්රිය කරනු ඇත, නමුත් එම ගිණුමට ගෙන ගිය අනුගාමිකයින් ආපසු ගෙන එන්නේ නැත.
+ cancelled_msg: යළි-යොමුවීම සාර්ථකව අවලංගු කරන ලදී.
+ errors:
+ already_moved: ඔබ දැනටමත් මාරු කර ඇති ගිණුමයි
+ missing_also_known_as: මෙම ගිණුමේ අන්වර්ථ නාමයක් නොවේ
+ move_to_self: ජංගම ගිණුම විය නොහැක
+ not_found: සොයා ගැනීමට නොහැකි විය
+ on_cooldown: ඔබ සිසිලනය මත සිටී
+ followers_count: චලනය වන අවස්ථාවේ අනුගාමිකයන්
+ incoming_migrations: වෙනත් ගිණුමකින් මාරු වීම
+ incoming_migrations_html: වෙනත් ගිණුමකින් මෙම ගිණුමට මාරු වීමට, පළමුව ඔබ අන්වර්ථගිණුමක් සෑදිය යුතුය.
+ moved_msg: ඔබගේ ගිණුම දැන් %{acct} වෙත හරවා යවනු ලබන අතර ඔබගේ අනුගාමිකයින් එහා මෙහා ගෙන යමින් පවතී.
+ not_redirecting: ඔබගේ ගිණුම දැනට වෙනත් කිසිදු ගිණුමකට හරවා යවන්නේ නැත.
+ on_cooldown: ඔබ මෑතකදී ඔබගේ ගිණුම සංක්රමණය කර ඇත. මෙම කාර්යය දින %{count} කින් නැවත ලබා ගත හැකි වනු ඇත.
+ past_migrations: අතීත සංක්රමණ
+ proceed_with_move: අනුගාමිකයන් මාරු කරන්න
+ redirected_msg: ඔබගේ ගිණුම දැන් %{acct}වෙත හරවා යවනු ලැබේ.
+ redirecting_to: ඔබගේ ගිණුම %{acct}වෙත හරවා යවනු ලැබේ.
+ set_redirect: යළි-යොමුවීම් සකසන්න
+ warning:
+ backreference_required: නව ගිණුම ප්රථමයෙන් මෙය ආපසු යොමු කිරීමට වින්යාස කළ යුතුය
+ before: 'ඉදිරියට යාමට පෙර, කරුණාකර මෙම සටහන් හොඳින් කියවන්න:'
+ cooldown: මාරු වීමෙන් පසු ඔබට නැවත ගමන් කිරීමට නොහැකි වනු ඇති පොරොත්තු කාල සීමාවක් ඇත
+ disabled_account: ඔබගේ ජංගම ගිණුම පසුව සම්පූර්ණයෙන්ම භාවිතා කළ නොහැක. කෙසේ වෙතත්, ඔබට දත්ත අපනයනයට මෙන්ම නැවත සක්රිය කිරීමට ප්රවේශය ඇත.
+ followers: මෙම ක්රියාව සියළුම අනුගාමිකයින් ජංගම ගිණුමේ සිට නව ගිණුමට ගෙන යනු ඇත
+ only_redirect_html: විකල්පයක් ලෙස, ඔබට ඔබගේ පැතිකඩහි යළි-යොමුවීමක් පමණක් තැබිය හැකිය.
+ other_data: වෙනත් දත්ත කිසිවක් ස්වයංක්රීයව ගෙන නොයනු ඇත
+ redirect: ඔබගේ ජංගම ගිණුමේ පැතිකඩ යළි-යොමු කිරීමේ දැන්වීමක් සමඟ යාවත්කාලීන කෙරෙන අතර සෙවුම් වලින් බැහැර කරනු ලැබේ
+ moderation:
+ title: මධ්යස්ථභාවය
+ move_handler:
+ carry_blocks_over_text: මෙම පරිශීලකයා ඔබ අවහිර කර තිබූ %{acct}සිට මාරු විය.
+ carry_mutes_over_text: මෙම පරිශීලකයා ඔබ නිශ්ශබ්ද කර තිබූ %{acct}වෙතින් මාරු විය.
+ copy_account_note_text: 'මෙම පරිශීලකයා %{acct}සිට මාරු විය, මෙන්න ඔවුන් ගැන ඔබේ පෙර සටහන්:'
notification_mailer:
+ admin:
+ report:
+ subject: "%{name} වාර්තාවක් ඉදිරිපත් කළේය"
+ sign_up:
+ subject: "%{name} අත්සන් කර ඇත"
+ digest:
+ action: සියලුම දැනුම්දීම් බලන්න
+ body: "%{since}වෙනිදා ඔබගේ අවසන් සංචාරයේ සිට ඔබට මග හැරුණු පණිවිඩවල කෙටි සාරාංශයක් මෙන්න"
+ mention: "%{name} ඔබව සඳහන් කළේ:"
+ new_followers_summary:
+ one: එසේම, ඔබ බැහැරව සිටියදී එක් නව අනුගාමිකයෙකු ලබා ගෙන ඇත! Yay!
+ other: එසේම, ඔබ බැහැරව සිටියදී නව අනුගාමිකයින් %{count} ක් ලබාගෙන ඇත! අරුම පුදුම!
+ subject:
+ one: "ඔබගේ අවසන් සංචාරයේ සිට 1 නව දැනුම්දීමක් 🐘"
+ other: "ඔබගේ අවසන් සංචාරයේ සිට නව දැනුම්දීම් %{count} ක් 🐘"
+ title: ඔබ නොමැති විට...
+ favourite:
+ body: 'ඔබේ පළ කිරීම %{name}විසින් ප්රිය කරන ලදී:'
+ subject: "%{name} ඔබගේ පළ කිරීම ප්රිය කරන ලදී"
+ title: නව ප්රියතම
+ follow:
+ body: "%{name} දැන් ඔබව අනුගමනය කරයි!"
+ subject: "%{name} දැන් ඔබව අනුගමනය කරයි"
+ title: නව අනුගාමිකයෙක්
+ follow_request:
+ action: අනුගමනය කරන ඉල්ලීම් කළමනාකරණය කරන්න
+ body: "%{name} ඔබව අනුගමනය කිරීමට ඉල්ලා ඇත"
+ subject: 'පොරොත්තු අනුගාමිකයා: %{name}'
+ title: නව අනුගමනය ඉල්ලීම
mention:
action: පිළිතුර
+ body: 'ඔබව මෙහි %{name} කින් සඳහන් කර ඇත:'
+ subject: ඔබව %{name}මගින් සඳහන් කර ඇත
title: නව සඳැහුම
+ poll:
+ subject: "%{name} න් මත විමසුමක් අවසන් විය"
+ reblog:
+ body: 'ඔබේ පළ කිරීම %{name}කින් වැඩි කරන ලදී:'
+ subject: "%{name} ඔබේ පළ කිරීම ඉහළ නැංවීය"
+ title: නව තල්ලුවක්
+ status:
+ subject: "%{name} දැන් පළ කළා"
+ update:
+ subject: "%{name} පළ කිරීමක් සංස්කරණය කළා"
notifications:
+ email_events: ඊමේල් දැනුම්දීම් සඳහා සිදුවීම්
+ email_events_hint: 'ඔබට දැනුම්දීම් ලැබීමට අවශ්ය සිදුවීම් තෝරන්න:'
other_settings: වෙනත් දැනුම්දීම් සැකසුම්
number:
human:
decimal_units:
format: "%n%u"
+ units:
+ billion: බී
+ million: එම්
+ quadrillion: ප්රශ්නය
+ thousand: කේ
+ trillion: ටී
otp_authentication:
+ code_hint: තහවුරු කිරීමට ඔබගේ සත්යාපන යෙදුම මගින් ජනනය කරන ලද කේතය ඇතුළු කරන්න
+ description_html: ඔබ සත්යාපන යෙදුමක් භාවිතයෙන් ද්වි-සාධක සත්යාපනය සක්රීය කරන්නේ නම්, ලොගින් වීමේදී ඔබට ඔබගේ දුරකථනය සන්තකයේ තබා ගැනීමට අවශ්ය වනු ඇත, එය ඔබට ඇතුළු වීමට ටෝකන ජනනය කරයි.
enable: සබල කරන්න
+ instructions_html: "මෙම QR කේතය ඔබගේ දුරකථනයේ Google Authenticator හෝ එවැනිම TOTP යෙදුමකට පරිලෝකනය කරන්න. මෙතැන් සිට, එම යෙදුම ඔබට ලොග් වීමේදී ඇතුළත් කළ යුතු ටෝකන ජනනය කරයි."
+ manual_instructions: 'ඔබට QR කේතය පරිලෝකනය කළ නොහැකි නම් සහ එය අතින් ඇතුල් කිරීමට අවශ්ය නම්, මෙන්න සරල පෙළ රහස:'
+ setup: සැලසුම
+ wrong_code: ඇතුළත් කළ කේතය අවලංගුයි! සේවාදායක වේලාව සහ උපාංග වේලාව නිවැරදිද?
pagination:
- next: ඊළඟ
+ newer: අලුත්
+ next: සඳහා
+ older: වැඩිහිටි
+ prev: පෙර
truncate: "…"
+ polls:
+ errors:
+ already_voted: ඔබ දැනටමත් මෙම මත විමසුමට ඡන්දය දී ඇත
+ duplicate_options: අනුපිටපත් අයිතම අඩංගු වේ
+ duration_too_long: අනාගතයට බොහෝ දුරයි
+ duration_too_short: ඉතා ඉක්මනින් වේ
+ expired: මත විමසුම දැනටමත් අවසන් වී ඇත
+ invalid_choice: තෝරාගත් ඡන්ද විකල්පය නොපවතී
+ over_character_limit: එක් එක් අක්ෂර %{max} ට වඩා දිගු විය නොහැක
+ too_few_options: එක් අයිතමයකට වඩා තිබිය යුතුය
+ too_many_options: අයිතම %{max} කට වඩා අඩංගු විය නොහැක
+ preferences:
+ other: වෙනත්
+ posting_defaults: පෙරනිමි පළ කිරීම
+ public_timelines: පොදු කාලරේඛා
+ reactions:
+ errors:
+ limit_reached: විවිධ ප්රතික්රියා වල සීමාව ළඟා විය
+ unrecognized_emoji: පිළිගත් ඉමොජියක් නොවේ
relationships:
activity: ගිණුමේ ක්රියාකාරකම්
- status: ගිණුමේ තත්වය
+ dormant: නිදිමතයි
+ follow_selected_followers: තෝරාගත් අනුගාමිකයින් අනුගමනය කරන්න
+ followers: අනුගාමිකයින්
+ following: අනුගමනය
+ invited: ආරාධනා කළා
+ last_active: අවසන් වරට ක්රියාකාරී
+ most_recent: මෑතකාලීන
+ moved: මාරු කළා
+ mutual: අන්යෝන්ය
+ primary: ප්රාථමික
+ relationship: සම්බන්ධතාවය
+ remove_selected_domains: තෝරාගත් වසම් වලින් සියලුම අනුගාමිකයින් ඉවත් කරන්න
+ remove_selected_followers: තෝරාගත් අනුගාමිකයින් ඉවත් කරන්න
+ remove_selected_follows: තෝරාගත් පරිශීලකයින් අනුගමනය නොකරන්න
+ status: ගිණුමේ තත්ත්වය
+ remote_follow:
+ acct: ඔබට ක්රියා කිරීමට අවශ්ය ඔබගේ username@domain ඇතුලත් කරන්න
+ missing_resource: ඔබගේ ගිණුම සඳහා අවශ්ය යළි-යොමුවීම් URL එක සොයා ගැනීමට නොහැකි විය
+ no_account_html: ගිණුමක් නැද්ද? ඔබට මෙහි ලියාපදිංචි විය හැක
+ proceed: අනුගමනය කිරීමට ඉදිරියට යන්න
+ prompt: 'ඔබ අනුගමනය කිරීමට යන්නේ:'
+ reason_html: "මෙම පියවර අවශ්ය වන්නේ ඇයි? %{instance}
ඔබ ලියාපදිංචි වී ඇති සේවාදායකය නොවිය හැක, එබැවින් අපට පළමුව ඔබව ඔබගේ නිවසේ සේවාදායකය වෙත හරවා යැවිය යුතුය."
+ remote_interaction:
+ favourite:
+ proceed: ප්රියතම වෙත ඉදිරියට යන්න
+ prompt: 'ඔබට මෙම පෝස්ටය ප්රියතම කිරීමට අවශ්යයි:'
+ reblog:
+ proceed: වැඩි කිරීමට ඉදිරියට යන්න
+ prompt: 'ඔබට මෙම පළ කිරීම වැඩි කිරීමට අවශ්යයි:'
+ reply:
+ proceed: පිළිතුරු දීමට ඉදිරියට යන්න
+ prompt: 'ඔබට මෙම පළ කිරීමට පිළිතුරු දීමට අවශ්යයි:'
+ reports:
+ errors:
+ invalid_rules: වලංගු නීති සඳහන් නොකරයි
+ rss:
+ content_warning: 'අන්තර්ගත අනතුරු ඇඟවීම:'
+ descriptions:
+ account: "@%{acct}සිට පොදු පළ කිරීම්"
+ tag: "#%{hashtag}ටැග් කර ඇති පොදු පළ කිරීම්"
+ scheduled_statuses:
+ over_daily_limit: ඔබ අද දිනට නියමිත පළ කිරීම් %{limit} සීමාව ඉක්මවා ඇත
+ over_total_limit: ඔබ නියමිත පළ කිරීම් %{limit} සීමාව ඉක්මවා ඇත
+ too_soon: නියමිත දිනය අනාගතයේ විය යුතුය
sessions:
+ activity: අවසාන ක්රියාකාරකම
browser: අතිරික්සුව
browsers:
alipay: අලිපේ
@@ -334,41 +1385,264 @@ si:
generic: නොදන්නා අතිරික්සුවකි
ie: ඉන්ටර්නෙට් එක්ස්ප්ලෝරර්
micro_messenger: මයික්රොමැසෙන්ජර්
+ nokia: Nokia S40 Ovi බ්රව්සරය
opera: ඔපෙරා
otter: ඔටර්
qq: කියුකියු අතිරික්සුව
safari: සෆාරි
uc_browser: යූසී අතිරික්සුව
weibo: වෙයිබො
+ current_session: වත්මන් සැසිය
+ description: "%{browser} මත %{platform}"
+ explanation: මේවා දැනට ඔබගේ Mastodon ගිණුමට ලොග් වී ඇති වෙබ් බ්රව්සර් වේ.
ip: අ.ජා. කෙ. (IP)
platforms:
adobe_air: ඇඩෝබි එයාර්
android: ඇන්ඩ්රොයිඩ්
blackberry: බ්ලැක්බෙරි
- chrome_os: ක්රෝම් ඕඑස්
+ chrome_os: ක්රෝම්ස්
firefox_os: ෆයර්ෆොක්ස් ඕඑස්
ios: අයිඕඑස්
linux: ලිනක්ස්
mac: මැක්ඕඑස්
+ other: නොදන්නා වේදිකාව
windows: වින්ඩෝස්
windows_mobile: වින්ඩෝස් මොබයිල්
windows_phone: වින්ඩෝස් පෝන්
+ revoke: අවලංගු කරන්න
+ revoke_success: සැසිය සාර්ථකව අවලංගු කරන ලදී
+ title: සැසිවාර
+ view_authentication_history: ඔබගේ ගිණුමේ සත්යාපන ඉතිහාසය බලන්න
settings:
account: ගිණුම
account_settings: ගිණුමේ සැකසුම්
+ aliases: ගිණුම් අන්වර්ථ නාමයන්
+ appearance: පෙනුම
+ authorized_apps: අවසර ලත් යෙදුම්
+ back: Mastodon වෙත නැවත යන්න
+ delete: ගිණුම මකා දැමීම
+ development: සංවර්ධනය
edit_profile: පැතිකඩ සංස්කරණය
export: දත්ත නිර්යාත
- import: ආයාත කරන්න
+ featured_tags: විශේෂාංගගත හැෂ් ටැග්
+ import: ආයත කරන්න
import_and_export: ආයාත සහ නිර්යාත
+ migrate: ගිණුම් සංක්රමණය
notifications: දැනුම්දීම්
+ preferences: මනාප
profile: පැතිකඩ
+ relationships: අනුගාමිකයින් සහ අනුගාමිකයින්
+ statuses_cleanup: ස්වයංක්රීය පළ කිරීම් මකාදැමීම
+ strikes: මධ්යස්ථ වැඩ වර්ජන
+ two_factor_authentication: ද්වි සාධක Aut
+ webauthn_authentication: ආරක්ෂක යතුරු
statuses:
+ attached:
+ audio:
+ one: "%{count} ශ්රව්ය"
+ other: "%{count} ශ්රව්ය"
+ description: 'අමුණා ඇත: %{attached}'
+ image:
+ one: "%{count} රූපය"
+ other: පින්තූර %{count}
+ video:
+ one: "%{count} වීඩියෝ"
+ other: වීඩියෝ %{count}
+ boosted_from_html: "%{acct_link}සිට වැඩි කරන ලදී"
+ content_warning: 'අන්තර්ගත අනතුරු ඇඟවීම: %{warning}'
+ default_language: අතුරු මුහුණත් භාෂාවට සමානයි
+ disallowed_hashtags:
+ one: 'අනුමත නොකළ හැෂ් ටැගයක් අඩංගු විය: %{tags}'
+ other: 'අනුමත නොකළ හැෂ් ටැග් අඩංගු විය: %{tags}'
+ edited_at_html: සංස්කරණය %{date}
+ errors:
+ in_reply_not_found: ඔබ පිළිතුරු දීමට උත්සාහ කරන පළ කිරීම පවතින බවක් නොපෙනේ.
+ open_in_web: වෙබයේ විවෘත කරන්න
+ over_character_limit: අක්ෂර සීමාව %{max} ඉක්මවා ඇත
+ pin_errors:
+ direct: සඳහන් කළ පරිශීලකයින්ට පමණක් පෙනෙන පළ කිරීම් ඇමිණිය නොහැක
+ limit: ඔබ දැනටමත් උපරිම පළ කිරීම් සංඛ්යාව අමුණා ඇත
+ ownership: වෙනත් කෙනෙකුගේ පළ කිරීමක් ඇමිණිය නොහැක
+ reblog: බූස්ට් එකක් ඇලවිය නොහැක
+ poll:
+ total_people:
+ one: "%{count} පුද්ගලයෙක්"
+ other: පුද්ගලයන් %{count}
+ total_votes:
+ one: "%{count} ඡන්ද"
+ other: ඡන්ද %{count} යි
+ vote: ඡන්දය දෙන්න
show_more: තව පෙන්වන්න
+ show_newer: අලුත්ම පෙන්වන්න
+ show_older: පැරණි පෙන්වන්න
+ show_thread: නූල් පෙන්වන්න
+ sign_in_to_participate: සංවාදයට සහභාගී වීමට පුරන්න
title: '%{name}: "%{quote}"'
visibilities:
- public: ප්රසිද්ධ
+ direct: සෘජු
+ private: අනුගාමිකයින්-පමණි
+ private_long: අනුගාමිකයින්ට පමණක් පෙන්වන්න
+ public: ප්රසිද්ධ
+ public_long: හැමෝටම පේනවා
+ unlisted: ලැයිස්තුගත නොකළ
+ unlisted_long: සෑම කෙනෙකුටම දැකිය හැක, නමුත් පොදු කාලරාමුවෙහි ලැයිස්තුගත කර නොමැත
+ statuses_cleanup:
+ enabled: පැරණි පළ කිරීම් ස්වයංක්රීයව මකන්න
+ enabled_hint: ඔබේ පළ කිරීම් පහත ව්යතිරේකවලින් එකකට ගැලපෙන්නේ නම් මිස, ඒවා නිශ්චිත වයස් සීමාවකට ළඟා වූ පසු ස්වයංක්රීයව මකයි
+ exceptions: ව්යතිරේක
+ explanation: පළ කිරීම් මකා දැමීම මිල අධික මෙහෙයුමක් වන බැවින්, සේවාදායකය වෙනත් ආකාරයකින් කාර්යබහුල නොවන විට කාලයත් සමඟ මෙය සෙමින් සිදු කෙරේ. මෙම හේතුව නිසා, ඔබේ පළ කිරීම් වයස් සීමාවට ළඟා වූ පසු ටික වේලාවකට පසුව මකා දැමිය හැක.
+ ignore_favs: ප්රියතමයන් නොසලකා හරින්න
+ ignore_reblogs: වැඩි කිරීම් නොසලකා හරින්න
+ interaction_exceptions: අන්තර්ක්රියා මත පදනම් වූ ව්යතිරේක
+ interaction_exceptions_explanation: පළ කිරීම් වරක් ඒවා ඉක්මවා ගිය පසු ප්රියතම හෝ බූස්ට් සීමාවට පහළින් ගියහොත් ඒවා මැකීමට සහතිකයක් නොමැති බව සලකන්න.
+ keep_direct: සෘජු පණිවිඩ තබා ගන්න
+ keep_direct_hint: ඔබගේ සෘජු පණිවිඩ කිසිවක් මකන්නේ නැත
+ keep_media: මාධ්ය ඇමුණුම් සමඟ පළ කිරීම් තබා ගන්න
+ keep_media_hint: මාධ්ය ඇමුණුම් ඇති ඔබේ පළ කිරීම් කිසිවක් මකන්නේ නැත
+ keep_pinned: පින් කළ පළ කිරීම් තබා ගන්න
+ keep_pinned_hint: ඔබගේ පින් කළ පළ කිරීම් කිසිවක් මකන්නේ නැත
+ keep_polls: ඡන්ද තබා ගන්න
+ keep_polls_hint: ඔබගේ ඡන්ද විමසීම් කිසිවක් මකන්නේ නැත
+ keep_self_bookmark: ඔබ පිටු සලකුණු කළ පළ කිරීම් තබා ගන්න
+ keep_self_bookmark_hint: ඔබ ඔබේම පළ කිරීම් පිටු සලකුණු කර ඇත්නම් ඒවා මකා නොදමන්න
+ keep_self_fav: ඔබ කැමති පළ කිරීම් තබා ගන්න
+ keep_self_fav_hint: ඔබ ඒවාට කැමති නම් ඔබේම පළ කිරීම් මකා නොදමන්න
+ min_age:
+ '1209600': සති 2 යි
+ '15778476': මාස 6 යි
+ '2629746': මාස 1 යි
+ '31556952': වසර 1 යි
+ '5259492': මාස 2 ක්
+ '604800': 1 සතිය
+ '63113904': අවුරුදු 2 ක්
+ '7889238': මාස 3 යි
+ min_age_label: වයස් සීමාව
+ min_favs: අඩුම තරමින් පෝස්ට් ප්රිය කරන ලෙස තබා ගන්න
+ min_favs_hint: අවම වශයෙන් මෙම ප්රියතම ප්රමාණය ලබා ඇති ඔබේ පළ කිරීම් කිසිවක් මකන්නේ නැත. ඔවුන්ගේ ප්රියතමයන් ගණන නොතකා පළ කිරීම් මැකීමට හිස්ව තබන්න
+ min_reblogs: අඩුම තරමේ පෝස්ට් බූස්ට් කරගෙන තියාගන්න
+ min_reblogs_hint: අඩුම තරමින් මෙම වාර ගණන වැඩි කර ඇති ඔබගේ පළ කිරීම් කිසිවක් මකා නොදමන්න. බූස්ට් ගණන නොතකා පළ කිරීම් මැකීමට හිස්ව තබන්න
stream_entries:
- sensitive_content: සංවේදී අන්තර්ගතයකි
+ pinned: පින් කළ පළ කිරීම
+ reblogged: ඉහල නැංවීය
+ sensitive_content: සංවේදී අන්තර්ගතය
+ strikes:
+ errors:
+ too_late: මෙම වර්ජනයට අභියාචනයක් ඉදිරිපත් කිරීමට ප්රමාද වැඩියි
+ tags:
+ does_not_match_previous_name: පෙර නමට නොගැලපේ
+ terms:
+ title: "%{instance} සේවා නියම සහ රහස්යතා ප්රතිපත්තිය"
+ themes:
+ contrast: Mastodon (ඉහළ වෙනස)
+ default: මැස්ටෝඩන් (අඳුරු)
+ mastodon-light: මැස්ටෝඩන් (ආලෝකය)
two_factor_authentication:
+ add: එකතු කරන්න
+ disable: 2FA අබල කරන්න
+ disabled_success: ද්වි-සාධක සත්යාපනය සාර්ථකව අබල කර ඇත
edit: සංස්කරණය
+ enabled: ද්වි-සාධක සත්යාපනය සක්රීය කර ඇත
+ enabled_success: ද්වි-සාධක සත්යාපනය සාර්ථකව සබල කර ඇත
+ generate_recovery_codes: ප්රතිසාධන කේත ජනනය කරන්න
+ lost_recovery_codes: ඔබගේ දුරකථනය නැති වුවහොත් ඔබගේ ගිණුමට ප්රවේශය නැවත ලබා ගැනීමට ප්රතිසාධන කේත ඔබට ඉඩ සලසයි. ඔබට ඔබේ ප්රතිසාධන කේත නැති වී ඇත්නම්, ඔබට ඒවා මෙහි නැවත උත්පාදනය කළ හැක. ඔබගේ පැරණි ප්රතිසාධන කේත අවලංගු වනු ඇත.
+ methods: ද්වි සාධක ක්රම
+ otp: Authenticator යෙදුම
+ recovery_codes: උපස්ථ ප්රතිසාධන කේත
+ recovery_codes_regenerated: ප්රතිසාධන කේත සාර්ථකව ප්රතිජනනය කරන ලදී
+ recovery_instructions_html: ඔබට කවදා හෝ ඔබගේ දුරකථනයට ප්රවේශය අහිමි වුවහොත්, ඔබගේ ගිණුමට ප්රවේශය නැවත ලබා ගැනීමට පහත ප්රතිසාධන කේත වලින් එකක් භාවිතා කළ හැක. ප්රතිසාධන කේත ආරක්ෂිතව තබා ගන්න. උදාහරණයක් ලෙස, ඔබට ඒවා මුද්රණය කර වෙනත් වැදගත් ලේඛන සමඟ ගබඩා කළ හැකිය.
webauthn: ආරක්ෂණ යතුරු
+ user_mailer:
+ appeal_approved:
+ action: ඔබගේ ගිණුමට යන්න
+ explanation: ඔබ %{appeal_date} දින ඉදිරිපත් කළ %{strike_date} හි ඔබේ ගිණුමට එරෙහි වර්ජනයේ අභියාචනය අනුමත කර ඇත. ඔබගේ ගිණුම නැවත වරක් හොඳ තත්වයක පවතී.
+ subject: "%{date} සිට ඔබගේ අභියාචනය අනුමත කර ඇත"
+ title: අභියාචනය අනුමත කර ඇත
+ appeal_rejected:
+ explanation: "%{strike_date} දින ඔබේ ගිණුමට එරෙහිව ඔබ %{appeal_date} දින ඉදිරිපත් කළ වර්ජනයේ අභියාචනය ප්රතික්ෂේප කර ඇත."
+ subject: "%{date} සිට ඔබගේ අභියාචනය ප්රතික්ෂේප කර ඇත"
+ title: අභියාචනය ප්රතික්ෂේප විය
+ backup_ready:
+ explanation: ඔබ ඔබේ Mastodon ගිණුමේ සම්පූර්ණ උපස්ථයක් ඉල්ලා ඇත. එය දැන් බාගත කිරීම සඳහා සූදානම්!
+ subject: ඔබගේ සංරක්ෂිතය බාගැනීමට සූදානම්ය
+ title: සංරක්ෂිත රැගෙන යාම
+ suspicious_sign_in:
+ change_password: ඔබගේ මුරපදය වෙනස් කරන්න
+ details: 'පුරනය වීමේ විස්තර මෙන්න:'
+ explanation: අපි නව IP ලිපිනයකින් ඔබගේ ගිණුමට පුරනය වීමක් අනාවරණය කරගෙන ඇත.
+ further_actions_html: මෙය ඔබ නොවේ නම්, අපි ඔබට වහාම %{action} ලෙස නිර්දේශ කර ඔබගේ ගිණුම සුරක්ෂිතව තබා ගැනීමට සාධක දෙකක සත්යාපනය සබල කරන්න.
+ subject: ඔබගේ ගිණුම නව IP ලිපිනයකින් ප්රවේශ වී ඇත
+ title: නව පුරනය වීමක්
+ warning:
+ appeal: අභියාචනයක් ඉදිරිපත් කරන්න
+ appeal_description: මෙය දෝෂයක් බව ඔබ විශ්වාස කරන්නේ නම්, ඔබට %{instance}හි කාර්ය මණ්ඩලයට අභියාචනයක් ඉදිරිපත් කළ හැක.
+ categories:
+ spam: ආයාචිත තැපැල්
+ violation: අන්තර්ගතය පහත ප්රජා මාර්ගෝපදේශ උල්ලංඝනය කරයි
+ explanation:
+ delete_statuses: ඔබගේ සමහර පළ කිරීම් ප්රජා මාර්ගෝපදේශ එකක් හෝ කිහිපයක් උල්ලංඝනය කරන බව සොයා ගෙන ඇති අතර පසුව %{instance}හි උපපරිපාලකයින් විසින් ඉවත් කර ඇත.
+ disable: ඔබට තවදුරටත් ඔබගේ ගිණුම භාවිතා කළ නොහැක, නමුත් ඔබගේ පැතිකඩ සහ අනෙකුත් දත්ත නොවෙනස්ව පවතී. ඔබට ඔබගේ දත්තවල උපස්ථයක් ඉල්ලා සිටීමට, ගිණුම් සැකසීම් වෙනස් කිරීමට හෝ ඔබගේ ගිණුම මකා දැමීමට හැකිය.
+ mark_statuses_as_sensitive: ඔබගේ සමහර පළ කිරීම් %{instance}හි පරිපාලකයින් විසින් සංවේදී ලෙස සලකුණු කර ඇත. මෙයින් අදහස් කරන්නේ පෙරදසුනක් දර්ශනය වීමට පෙර පුද්ගලයින්ට පළ කිරීම් වල මාධ්ය තට්ටු කිරීමට අවශ්ය වනු ඇති බවයි. අනාගතයේදී පළ කිරීමේදී ඔබට මාධ්ය සංවේදී ලෙස සලකුණු කළ හැක.
+ sensitive: මෙතැන් සිට, ඔබගේ උඩුගත කරන ලද සියලුම මාධ්ය ගොනු සංවේදී ලෙස සලකුණු කර ක්ලික්-හරහා අනතුරු ඇඟවීමක් පිටුපස සඟවනු ඇත.
+ silence: ඔබට තවමත් ඔබගේ ගිණුම භාවිතා කළ හැකි නමුත් දැනටමත් ඔබව අනුගමනය කරන පුද්ගලයින් පමණක් මෙම සේවාදායකයේ ඔබගේ පළ කිරීම් දකිනු ඇති අතර, විවිධ සොයාගැනීම් විශේෂාංග වලින් ඔබව බැහැර කරනු ලැබිය හැක. කෙසේ වෙතත්, අනෙක් අය තවමත් ඔබව අතින් අනුගමනය කළ හැක.
+ suspend: ඔබට තවදුරටත් ඔබගේ ගිණුම භාවිතා කළ නොහැකි අතර, ඔබගේ පැතිකඩ සහ අනෙකුත් දත්ත තවදුරටත් ප්රවේශ විය නොහැක. දින 30කින් පමණ දත්ත සම්පූර්ණයෙන් ඉවත් කරන තෙක් ඔබට තවමත් ඔබේ දත්තවල උපස්ථයක් ඉල්ලා සිටීමට පුරනය විය හැක, නමුත් ඔබව අත්හිටුවීම මගහැර යාම වැළැක්වීමට අපි මූලික දත්ත කිහිපයක් රඳවා ගන්නෙමු.
+ reason: 'හේතුව:'
+ statuses: 'උපුටා දක්වන ලද පළ කිරීම්:'
+ subject:
+ delete_statuses: "%{acct} හි ඔබගේ පළ කිරීම් ඉවත් කර ඇත"
+ disable: ඔබගේ ගිණුම %{acct} කර ඇත
+ mark_statuses_as_sensitive: "%{acct} හි ඔබගේ පළ කිරීම් සංවේදී ලෙස සලකුණු කර ඇත"
+ none: "%{acct}සඳහා අනතුරු ඇඟවීම"
+ sensitive: "%{acct} හි ඔබගේ පළ කිරීම් මෙතැන් සිට සංවේදී ලෙස සලකුණු කෙරේ"
+ silence: ඔබගේ ගිණුම %{acct} සීමා කර ඇත
+ suspend: ඔබගේ ගිණුම %{acct} අත්හිටුවා ඇත
+ title:
+ delete_statuses: පළ කිරීම් ඉවත් කරන ලදී
+ disable: ගිණුම නිශ්චල කර ඇත
+ mark_statuses_as_sensitive: පළ කිරීම් සංවේදී ලෙස ලකුණු කර ඇත
+ none: අවවාදයයි
+ sensitive: ගිණුම සංවේදී ලෙස ලකුණු කර ඇත
+ silence: ගිණුම සීමා සහිතයි
+ suspend: ගිණුම අත්හිටුවා ඇත
+ welcome:
+ edit_profile_action: සැකසුම් පැතිකඩ
+ edit_profile_step: ඔබට අවතාරයක්, ශීර්ෂයක් උඩුගත කිරීමෙන්, ඔබේ සංදර්ශක නම වෙනස් කිරීමෙන් සහ තවත් දේ මඟින් ඔබේ පැතිකඩ අභිරුචිකරණය කළ හැකිය. නව අනුගාමිකයින්ට ඔබව අනුගමනය කිරීමට ඉඩ දීමට පෙර ඔවුන් සමාලෝචනය කිරීමට ඔබ කැමති නම්, ඔබට ඔබගේ ගිණුම අගුළු දැමිය හැක.
+ explanation: ඔබ ආරම්භ කිරීමට උපදෙස් කිහිපයක් මෙන්න
+ final_action: පළ කිරීම ආරම්භ කරන්න
+ final_step: 'පළ කිරීම ආරම්භ කරන්න! අනුගාමිකයින් නොමැතිව වුවද, ඔබගේ පොදු පළ කිරීම් වෙනත් අය විසින් දැකිය හැකිය, උදාහරණයක් ලෙස දේශීය කාලරේඛාවේ සහ හැෂ් ටැග් වල. ඔබට #introductions හැෂ් ටැගය මත ඔබව හඳුන්වා දීමට අවශ්ය විය හැක.'
+ full_handle: ඔබේ සම්පූර්ණ හසුරුව
+ full_handle_hint: මෙය ඔබ ඔබේ මිතුරන්ට පවසනු ඇත, එවිට ඔවුන්ට වෙනත් සේවාදායකයකින් ඔබට පණිවිඩ යැවීමට හෝ අනුගමනය කිරීමට හැකිය.
+ review_preferences_action: මනාප වෙනස් කරන්න
+ review_preferences_step: ඔබට ලැබීමට කැමති ඊමේල්, හෝ ඔබේ පළ කිරීම් පෙරනිමි කිරීමට ඔබ කැමති පුද්ගලිකත්ව මට්ටම වැනි ඔබේ මනාප සැකසීමට වග බලා ගන්න. ඔබට චලන අසනීපයක් නොමැති නම්, ඔබට GIF ස්වයංක්රීය ධාවනය සබල කිරීමට තෝරා ගත හැකිය.
+ subject: Mastodon වෙත සාදරයෙන් පිළිගනිමු
+ tip_federated_timeline: ෆෙඩරේටඩ් කාලරාමුව යනු මැස්ටෝඩන් ජාලයේ ගිනි හෝස් දසුනකි. නමුත් එයට ඇතුළත් වන්නේ ඔබේ අසල්වැසියන් දායක වී ඇති පුද්ගලයින් පමණි, එබැවින් එය සම්පූර්ණ නොවේ.
+ tip_following: ඔබ පෙරනිමියෙන් ඔබගේ සේවාදායකයේ පරිපාලක(න්) අනුගමනය කරයි. වඩාත් සිත්ගන්නා පුද්ගලයින් සොයා ගැනීමට, දේශීය සහ ෆෙඩරල් කාලරේඛා පරීක්ෂා කරන්න.
+ tip_local_timeline: ප්රාදේශීය කාලරේඛාව යනු %{instance}හි පුද්ගලයින්ගේ ගිනි හෝස් දසුනකි. මේ ඔබේ ආසන්න අසල්වැසියන්!
+ tip_mobile_webapp: ඔබගේ ජංගම බ්රවුසරය ඔබගේ මුල් තිරයට Mastodon එක් කිරීමට ඉදිරිපත් කරන්නේ නම්, ඔබට තල්ලු දැනුම්දීම් ලැබිය හැක. එය බොහෝ ආකාරවලින් ස්වදේශීය යෙදුමක් ලෙස ක්රියා කරයි!
+ tips: ඉඟි
+ title: නැවට සාදරයෙන් පිළිගනිමු, %{name}!
+ users:
+ follow_limit_reached: ඔබට පුද්ගලයින් %{limit} කට වඩා අනුගමනය කළ නොහැක
+ invalid_otp_token: වලංගු නොවන ද්වි-සාධක කේතය
+ otp_lost_help_html: ඔබට දෙකටම ප්රවේශය අහිමි වුවහොත්, ඔබට %{email}සමඟ සම්බන්ධ විය හැක
+ seamless_external_login: ඔබ බාහිර සේවාවක් හරහා ලොග් වී ඇත, එබැවින් මුරපදය සහ ඊමේල් සැකසුම් නොමැත.
+ signed_in_as: 'මෙසේ පුරනය වී ඇත:'
+ verification:
+ explanation_html: 'ඔබගේ පැතිකඩ පාරදත්තහි ඇති සබැඳි වල හිමිකරු ලෙස ඔබට සත්යාපනය කළ හැක. ඒ සඳහා, සම්බන්ධිත වෙබ් අඩවියේ ඔබේ Mastodon පැතිකඩ වෙත ආපසු සබැඳියක් තිබිය යුතුය. සබැඳිය ආපසු යුතුය. සබැඳියේ පෙළ අන්තර්ගතය වැදගත් නොවේ. මෙන්න උදාහරණයක්:'
+ verification: සත්යාපනය
+ webauthn_credentials:
+ add: නව ආරක්ෂක යතුර එක් කරන්න
+ create:
+ error: ඔබගේ ආරක්ෂක යතුර එක් කිරීමේ ගැටලුවක් ඇති විය. කරුණාකර නැවත උත්සාහ කරන්න.
+ success: ඔබගේ ආරක්ෂක යතුර සාර්ථකව එක් කරන ලදී.
+ delete: මකන්න
+ delete_confirmation: ඔබට මෙම ආරක්ෂක යතුර මැකීමට අවශ්ය බව විශ්වාසද?
+ description_html: ඔබ ආරක්ෂක යතුරු සත්යාපනයසක්රීය කරන්නේ නම්, පුරනය වීමේදී ඔබගේ ආරක්ෂක යතුරු වලින් එකක් භාවිතා කිරීම අවශ්ය වේ.
+ destroy:
+ error: ඔබගේ ආරක්ෂක යතුර මැකීමේ ගැටලුවක් ඇති විය. කරුණාකර නැවත උත්සාහ කරන්න.
+ success: ඔබගේ ආරක්ෂක යතුර සාර්ථකව මකා ඇත.
+ invalid_credential: වලංගු නොවන ආරක්ෂක යතුර
+ nickname_hint: ඔබගේ නව ආරක්ෂක යතුරේ අන්වර්ථ නාමය ඇතුළත් කරන්න
+ not_enabled: ඔබ තවමත් WebAuthn සබල කර නැත
+ not_supported: මෙම බ්රවුසරය ආරක්ෂක යතුරු සඳහා සහය නොදක්වයි
+ otp_required: ආරක්ෂක යතුරු භාවිතා කිරීමට කරුණාකර පළමුව ද්වි-සාධක සත්යාපනය සක්රීය කරන්න.
+ registered_on: "%{date}හි ලියාපදිංචි වී ඇත"
diff --git a/config/locales/simple_form.ast.yml b/config/locales/simple_form.ast.yml
index c9891398510..b41e6404b3a 100644
--- a/config/locales/simple_form.ast.yml
+++ b/config/locales/simple_form.ast.yml
@@ -96,6 +96,10 @@ ast:
reblog: Daquién compartió dalgún estáu de to
tag:
name: Etiqueta
+ user_role:
+ name: Nome
+ permissions_as_keys: Permisos
+ position: Prioridá
'no': Non
recommended: Aconséyase
required:
diff --git a/config/locales/simple_form.ca.yml b/config/locales/simple_form.ca.yml
index ccbb902823d..f136244030a 100644
--- a/config/locales/simple_form.ca.yml
+++ b/config/locales/simple_form.ca.yml
@@ -68,6 +68,11 @@ ca:
with_dns_records: Es procurarà resoldre els registres DNS del domini determinat i els resultats també es llistaran a la llista negra
featured_tag:
name: 'És possible que vulguis utilitzar una d''aquestes:'
+ filters:
+ action: Tria quina acció cal executar quan una publicació coincideixi amb el filtre
+ actions:
+ hide: Ocultar completament el contingut filtrat, comportant-se com si no existís
+ warn: Oculta el contingut filtrat rera un avís mencionant el títol del filtre
form_challenge:
current_password: Estàs entrant en una àrea segura
imports:
@@ -91,6 +96,13 @@ ca:
name: Només pots canviar la caixa de les lletres, per exemple, per fer-la més llegible
user:
chosen_languages: Quan estigui marcat, només es mostraran les publicacions en les llengües seleccionades en les línies de temps públiques
+ role: El rol controla quines permissions té l'usuari
+ user_role:
+ color: Color que s'utilitzarà per al rol a tota la interfície d'usuari, com a RGB en format hexadecimal
+ highlighted: Això torno el rol visibile publicament
+ name: Nom públic del rol, si el rol està configurat per a ser mostrat com a insígnia
+ permissions_as_keys: Els usuaris amb aquest rol tingran accés a...
+ position: El rol superior decideix la resolució de conflictes en certes situacions. Certes accions només es poden realitzar amb rols amb menor prioritat
webhook:
events: Selecciona esdeveniments a enviar
url: On els esdeveniments seran enviats
@@ -181,6 +193,7 @@ ca:
setting_use_pending_items: Mode lent
severity: Severitat
sign_in_token_attempt: Codi de seguretat
+ title: Títol
type: Importa el tipus
username: Nom d'usuari
username_or_email: Nom d'usuari o adreça electrònica
@@ -189,6 +202,10 @@ ca:
with_dns_records: Incloure registres MX i IP del domini
featured_tag:
name: Etiqueta
+ filters:
+ actions:
+ hide: Oculta completament
+ warn: Oculta amb un avís
interactions:
must_be_follower: Bloqueja les notificacions de persones que no em segueixen
must_be_following: Bloqueja les notificacions de persones no seguides
@@ -222,6 +239,14 @@ ca:
name: Etiqueta
trendable: Permet que aquesta etiqueta aparegui en les tendències
usable: Permetre a les publicacions emprar aquesta etiqueta
+ user:
+ role: Rol
+ user_role:
+ color: Color de la insígnia
+ highlighted: Motra el rol com a insígnia en el perfil dels usuaris
+ name: Nom
+ permissions_as_keys: Permisos
+ position: Prioritat
webhook:
events: Esdeveniments activats
url: URL del extrem
diff --git a/config/locales/simple_form.cs.yml b/config/locales/simple_form.cs.yml
index 789b328b598..bc84e0f39b1 100644
--- a/config/locales/simple_form.cs.yml
+++ b/config/locales/simple_form.cs.yml
@@ -91,6 +91,9 @@ cs:
name: Můžete měnit pouze velikost písmen, například kvůli lepší čitelnosti
user:
chosen_languages: Po zaškrtnutí budou ve veřejných časových osách zobrazeny pouze příspěvky ve zvolených jazycích
+ user_role:
+ highlighted: Toto roli učiní veřejně viditelnou
+ permissions_as_keys: Uživatelé s touto rolí budou moci...
webhook:
events: Zvolte odesílané události
url: Kam budou události odesílány
@@ -222,6 +225,14 @@ cs:
name: Hashtag
trendable: Povolit zobrazení tohoto hashtagu mezi populárními
usable: Povolit používat tento hashtag v příspěvcích
+ user:
+ role: Role
+ user_role:
+ color: Barva odznaku
+ highlighted: Zobrazit roli jako odznak na profilech uživatelů
+ name: Název
+ permissions_as_keys: Oprávnění
+ position: Priorita
webhook:
events: Zapnuté události
url: URL koncového bodu
diff --git a/config/locales/simple_form.cy.yml b/config/locales/simple_form.cy.yml
index 77b46ad2b3d..b0217cfe301 100644
--- a/config/locales/simple_form.cy.yml
+++ b/config/locales/simple_form.cy.yml
@@ -73,6 +73,7 @@ cy:
labels:
account:
fields:
+ name: Label
value: Cynnwys
account_alias:
acct: Enw'r hen gyfrif
@@ -89,6 +90,7 @@ cy:
types:
disable: Analluogi
none: Gwneud dim
+ sensitive: Sensitif
silence: Tawelwch
suspend: Dileu data cyfrif
warning_preset_id: Defnyddiwch ragnod rhag rhybudd
@@ -107,6 +109,7 @@ cy:
confirm_password: Cadarnhau cyfrinair
context: Hidlo cyd-destunau
current_password: Cyfrinair presennol
+ data: Data
discoverable: Rhestrwch y cyfrif hwn ar y cyfeiriadur
display_name: Enw arddangos
email: Cyfeiriad e-bost
@@ -149,6 +152,7 @@ cy:
setting_use_pending_items: Modd araf
severity: Difrifoldeb
sign_in_token_attempt: Cod dioelwch
+ title: Teitl
type: Modd mewnforio
username: Enw defnyddiwr
username_or_email: Enw defnyddiwr neu e-bost
@@ -166,6 +170,8 @@ cy:
invite_request:
text: Pam hoffech ymuno?
ip_block:
+ comment: Sylw
+ ip: IP
severity: Rheol
notification_emails:
digest: Anfonwch e-byst crynhoi
@@ -183,6 +189,11 @@ cy:
name: Hashnod
trendable: Gadewch i'r hashnod hwn ymddangos o dan dueddiadau
usable: Caniatáu i tŵtiau ddefnyddio'r hashnod hwn
+ user:
+ role: Rôl
+ user_role:
+ name: Enw
+ permissions_as_keys: Caniatâd
'no': Na
recommended: Argymhellwyd
required:
diff --git a/config/locales/simple_form.da.yml b/config/locales/simple_form.da.yml
index 84450c768d1..0c190f1b3a0 100644
--- a/config/locales/simple_form.da.yml
+++ b/config/locales/simple_form.da.yml
@@ -68,6 +68,11 @@ da:
with_dns_records: Et forsøg på at opløse det givne domænes DNS-poster foretages, og resultaterne blokeres ligeledes
featured_tag:
name: 'Et af flg. ønskes måske anvendt:'
+ filters:
+ action: Vælg handlingen til eksekvering, når et indlæg matcher filteret
+ actions:
+ hide: Skjul filtreret indhold helt (adfærd som om, det ikke fandtes)
+ warn: Skjul filtreret indhold bag en advarsel, der nævner filterets titel
form_challenge:
current_password: Du bevæger dig ind på et sikkert område
imports:
@@ -91,6 +96,13 @@ da:
name: Kun bogstavtyper (store/små) kan ændres, eksempelvis for at gøre det mere læsbart
user:
chosen_languages: Når markeret, vil kun indlæg på de valgte sprog fremgå på offentlige tidslinjer
+ role: Rollen styrer, hvilke tilladelser brugeren har
+ user_role:
+ color: Farven, i RGB hex-format, der skal bruges til rollen i hele UI'en
+ highlighted: Dette gør rollen offentligt synlig
+ name: Offentligt rollennavn, hvis rollen er opsat til fremstå som et badge
+ permissions_as_keys: Brugere med denne rolle vil kunne tilgå...
+ position: Højere rolle bestemmer konfliktløsning i visse situationer. Visse handlinger kan kun udføres på roller med lavere prioritet
webhook:
events: Vælg begivenheder at sende
url: Hvor begivenheder sendes til
@@ -181,6 +193,7 @@ da:
setting_use_pending_items: Langsom tilstand
severity: Alvorlighed
sign_in_token_attempt: Sikkerhedskode
+ title: Titel
type: Importtype
username: Brugernavn
username_or_email: Brugernavn eller e-mail
@@ -189,6 +202,10 @@ da:
with_dns_records: Inkludér domænets MX-poster og IP'er
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Skjul helt
+ warn: Skjul bag en advarsel
interactions:
must_be_follower: Blokér notifikationer fra ikke-følgere
must_be_following: Blokér notifikationer fra folk, som ikke følges
@@ -222,6 +239,14 @@ da:
name: Hashtag
trendable: Tillad visning af dette hashtag under trends
usable: Tillad indlæg at benytte dette hashtag
+ user:
+ role: Rolle
+ user_role:
+ color: Badge-farve
+ highlighted: Vis rolle som badge på brugerprofiler
+ name: Navn
+ permissions_as_keys: Tilladelser
+ position: Prioritet
webhook:
events: Aktive begivenheder
url: Endepunkts-URL
diff --git a/config/locales/simple_form.el.yml b/config/locales/simple_form.el.yml
index 89ddae0cbe9..63a68c1c025 100644
--- a/config/locales/simple_form.el.yml
+++ b/config/locales/simple_form.el.yml
@@ -172,6 +172,7 @@ el:
setting_use_pending_items: Αργή λειτουργία
severity: Αυστηρότητα
sign_in_token_attempt: Κωδικός ασφαλείας
+ title: Τίτλος
type: Τύπος εισαγωγής
username: Όνομα χρηστη
username_or_email: Όνομα ή διεύθυνση email χρήστη
@@ -180,6 +181,10 @@ el:
with_dns_records: Συμπερίληψη εγγραφών MX και διευθύνσεων IP του τομέα
featured_tag:
name: Ετικέτα
+ filters:
+ actions:
+ hide: Πλήρης απόκρυψη
+ warn: Απόκρυψη με προειδοποίηση
interactions:
must_be_follower: Μπλόκαρε τις ειδοποιήσεις από όσους δεν σε ακολουθούν
must_be_following: Μπλόκαρε τις ειδοποιήσεις από όσους δεν ακολουθείς
diff --git a/config/locales/simple_form.en.yml b/config/locales/simple_form.en.yml
index ea4f68562a0..c17a62cbea3 100644
--- a/config/locales/simple_form.en.yml
+++ b/config/locales/simple_form.en.yml
@@ -96,6 +96,13 @@ en:
name: You can only change the casing of the letters, for example, to make it more readable
user:
chosen_languages: When checked, only posts in selected languages will be displayed in public timelines
+ role: The role controls which permissions the user has
+ user_role:
+ color: Color to be used for the role throughout the UI, as RGB in hex format
+ highlighted: This makes the role publicly visible
+ name: Public name of the role, if role is set to be displayed as a badge
+ permissions_as_keys: Users with this role will have access to...
+ position: Higher role decides conflict resolution in certain situations. Certain actions can only be performed on roles with a lower priority
webhook:
events: Select events to send
url: Where events will be sent to
@@ -232,6 +239,14 @@ en:
name: Hashtag
trendable: Allow this hashtag to appear under trends
usable: Allow posts to use this hashtag
+ user:
+ role: Role
+ user_role:
+ color: Badge color
+ highlighted: Display role as badge on user profiles
+ name: Name
+ permissions_as_keys: Permissions
+ position: Priority
webhook:
events: Enabled events
url: Endpoint URL
diff --git a/config/locales/simple_form.eo.yml b/config/locales/simple_form.eo.yml
index 47ec6559dbe..30ea0f4be30 100644
--- a/config/locales/simple_form.eo.yml
+++ b/config/locales/simple_form.eo.yml
@@ -10,7 +10,7 @@ eo:
text: Vi povas uzi skribmanierojn de mesaĝoj, kiel URL-ojn, kradvortojn kaj menciojn
title: Laŭvola. Ne videbla por la ricevanto
admin_account_action:
- include_statuses: La uzanto vidos, kiujn afiŝojn estas kaŭzintaj la moderigan agon aŭ averton
+ include_statuses: La uzanto vidos, kiujn afiŝojn kaŭzis la agon de moderigo aŭ de averto
send_email_notification: La uzanto ricevos klarigon pri tio, kio okazis al ties konto
text_html: Malnepra. Vi povas uzi skribmanierojn de mesaĝoj. Vi povas aldoni avertajn antaŭagordojn por ŝpari tempon
type_html: Elektu kion fari kun %{acct}
@@ -35,32 +35,36 @@ eo:
current_password: Pro sekuraj kialoj, bonvolu enigi la pasvorton de la nuna konto
current_username: Por konfirmi, bonvolu enigi la uzantnomon de la nuna konto
digest: Sendita nur post longa tempo de neaktiveco, kaj nur se vi ricevis personan mesaĝon en via foresto
- email: Vi ricevos konfirman retmesaĝon
+ email: Vi ricevos retpoŝtaĵon de konfirmo
fields: Vi povas havi ĝis 4 tabelajn elementojn en via profilo
header: Formato PNG, GIF aŭ JPG. Ĝis %{size}. Estos malgrandigita al %{dimensions}px
inbox_url: Kopiu la URL de la ĉefpaĝo de la ripetilo, kiun vi volas uzi
- irreversible: Elfiltritaj mesaĝoj malaperos por ĉiam, eĉ se la filtrilo estas poste forigita
- locale: La lingvo de la uzant-interfaco, retmesaĝoj kaj puŝ-sciigoj
+ irreversible: La filtritaj mesaĝoj malaperos por eterne, eĉ se la filtrilo estas forigita poste
+ locale: La lingvo de la fasado, de retpoŝtaĵoj, kaj de sciigoj
locked: Vi devos aprobi ĉiun peton de sekvado mane
password: Uzu almenaŭ 8 signojn
phrase: Estos provita senzorge pri la uskleco de teksto aŭ averto pri enhavo de mesaĝo
scopes: Kiujn API-ojn la aplikaĵo permesiĝos atingi. Se vi elektas supran amplekson, vi ne bezonas elekti la individuajn.
- setting_aggregate_reblogs: Ne montri novajn diskonigojn de mesaĝoj laste diskonigitaj (nur efikas al novaj diskonigoj)
- setting_default_sensitive: Tiklaj aŭdovidaĵoj estas defaŭlte kaŝita kaj povas esti malkiŝita per klako
- setting_display_media_default: Kaŝi aŭdovidaĵojn markitajn kiel tiklaj
- setting_display_media_hide_all: Ĉiam kaŝi ĉiujn aŭdovidaĵojn
- setting_display_media_show_all: Ĉiam montri aŭdovidaĵojn markitajn kiel tiklaj
- setting_hide_network: Tiuj, kiujn vi sekvas, kaj tiuj, kiuj sekvas vin ne estos videblaj en via profilo
+ setting_aggregate_reblogs: Ne montri novajn plusendojn de mesaĝoj lastatempe plusenditaj (nur efikas al nove ricevitaj plusendoj)
+ setting_always_send_emails: Normale, la sciigoj per retpoŝto ne estos senditaj kiam vi uzas Mastodon aktive
+ setting_default_sensitive: La tiklaj aŭdovidaĵoj estas kaŝitaj implicite, kaj povas esti montritaj per klako
+ setting_display_media_default: Kaŝi aŭdovidaĵojn markitajn kiel tikla
+ setting_display_media_hide_all: Ĉiam kaŝi la aŭdovidaĵojn
+ setting_display_media_show_all: Ĉiam montri la aŭdovidaĵojn
+ setting_hide_network: Tiuj kiujn vi sekvas, kaj tiuj kiuj sekvas vin estos kaŝitaj en via profilo
setting_noindex: Influas vian publikan profilon kaj mesaĝajn paĝojn
setting_show_application: La aplikaĵo, kiun vi uzas por afiŝi, estos montrita en la detala vido de viaj mesaĝoj
setting_use_blurhash: Transirojn estas bazita sur la koloroj de la kaŝitaj aŭdovidaĵoj sed ne montri iun ajn detalon
setting_use_pending_items: Kaŝi tempoliniajn ĝisdatigojn malantaŭ klako anstataŭ aŭtomate rulumi la fluon
- username: Via uzantnomo estos unika ĉe %{domain}
+ username: Via uzantnomo estos unika en %{domain}
whole_word: Kiam la vorto aŭ frazo estas nur litera aŭ cifera, ĝi estos uzata nur se ĝi kongruas kun la tuta vorto
domain_allow:
domain: Ĉi tiu domajno povos akiri datumon de ĉi tiu servilo kaj envenanta datumo estos prilaborita kaj konservita
featured_tag:
name: 'Vi povus uzi iun el la jenaj:'
+ filters:
+ actions:
+ warn: Kaŝi la enhavon filtritan malantaŭ averto mencianta la nomon de la filtro
form_challenge:
current_password: Vi eniras sekuran areon
imports:
@@ -114,7 +118,7 @@ eo:
text: Anonco
defaults:
autofollow: Inviti al sekvi vian konton
- avatar: Profilbildo
+ avatar: Rolfiguro
bot: Tio estas robota konto
chosen_languages: Filtri lingvojn
confirm_new_password: Konfirmi novan pasvorton
@@ -138,9 +142,10 @@ eo:
note: Sinprezento
otp_attempt: Kodo de dufaktora aŭtentigo
password: Pasvorto
- phrase: Vorto aŭ frazo
+ phrase: Ĉefvorto aŭ frazo
setting_advanced_layout: Ebligi altnivelan retpaĝan interfacon
setting_aggregate_reblogs: Grupigi diskonigojn en templinioj
+ setting_always_send_emails: Ĉiam sendi la sciigojn per retpoŝto
setting_auto_play_gif: Aŭtomate ekigi GIF-ojn
setting_boost_modal: Montri konfirman fenestron antaŭ ol diskonigi mesaĝon
setting_crop_images: Stuci bildojn en negrandigitaj mesaĝoj al 16x9
@@ -150,7 +155,7 @@ eo:
setting_delete_modal: Montri konfirman fenestron antaŭ ol forigi mesaĝon
setting_disable_swiping: Malebligi svingajn movojn
setting_display_media: Aŭdovidaĵa montrado
- setting_display_media_default: Dekomenca
+ setting_display_media_default: Implicita
setting_display_media_hide_all: Kaŝi ĉiujn
setting_display_media_show_all: Montri ĉiujn
setting_expand_spoilers: Ĉiam malfoldas mesaĝojn markitajn per averto pri enhavo
@@ -159,19 +164,24 @@ eo:
setting_reduce_motion: Redukti la movecojn de la animacioj
setting_show_application: Publikigi la aplikaĵon uzatan por sendi mesaĝojn
setting_system_font_ui: Uzi la dekomencan tiparon de la sistemo
- setting_theme: Reteja etoso
+ setting_theme: Etoso de la retejo
setting_trends: Montri hodiaŭajn furoraĵojn
setting_unfollow_modal: Montri konfirman fenestron antaŭ ol ĉesi sekvi iun
setting_use_blurhash: Montri buntajn transirojn por kaŝitaj aŭdovidaĵoj
setting_use_pending_items: Malrapida modo
severity: Graveco
sign_in_token_attempt: Sekureca kodo
+ title: Titolo
type: Importa tipo
username: Uzantnomo
username_or_email: Uzantnomo aŭ Retadreso
whole_word: Tuta vorto
featured_tag:
name: Kradvorto
+ filters:
+ actions:
+ hide: Kaŝi komplete
+ warn: Kaŝi malantaŭ averto
interactions:
must_be_follower: Bloki sciigojn de nesekvantoj
must_be_following: Bloki sciigojn de homoj, kiujn vi ne sekvas
diff --git a/config/locales/simple_form.es-AR.yml b/config/locales/simple_form.es-AR.yml
index 8f30266e362..d61666834a1 100644
--- a/config/locales/simple_form.es-AR.yml
+++ b/config/locales/simple_form.es-AR.yml
@@ -68,6 +68,11 @@ es-AR:
with_dns_records: Se hará un intento de resolver los registros DNS del dominio dado y los resultados serán también bloqueados
featured_tag:
name: 'Puede que quieras usar una de estas:'
+ filters:
+ action: Elegir qué acción realizar cuando un mensaje coincide con el filtro
+ actions:
+ hide: Ocultar completamente el contenido filtrado, comportándose como si no existiera
+ warn: Ocultar el contenido filtrado detrás de una advertencia mencionando el título del filtro
form_challenge:
current_password: Estás ingresando en un área segura
imports:
@@ -91,6 +96,13 @@ es-AR:
name: Sólo podés cambiar la capitalización de las letras, por ejemplo, para que sea más legible
user:
chosen_languages: Cuando estén marcados, sólo se mostrarán los mensajes en los idiomas seleccionados en las líneas temporales públicas
+ role: El rol controla qué permisos tiene el usuario
+ user_role:
+ color: Color que se utilizará para el rol a lo largo de la interface de usuario, como RGB en formato hexadecimal
+ highlighted: Esto hace que el rol sea públicamente visible
+ name: Nombre público del rol, si el rol se establece para que se muestre como una insignia
+ permissions_as_keys: Los usuarios con este rol tendrán acceso a…
+ position: Un rol más alto decide la resolución de conflictos en ciertas situaciones. Ciertas acciones sólo pueden llevarse a cabo en roles con prioridad inferior
webhook:
events: Seleccionar eventos para enviar
url: Adónde serán enviados los eventos
@@ -181,6 +193,7 @@ es-AR:
setting_use_pending_items: Modo lento
severity: Severidad
sign_in_token_attempt: Código de seguridad
+ title: Título
type: Tipo de importación
username: Nombre de usuario
username_or_email: Nombre de usuario o correo electrónico
@@ -189,6 +202,10 @@ es-AR:
with_dns_records: Incluir los registros MX y las direcciones IP del dominio
featured_tag:
name: Etiqueta
+ filters:
+ actions:
+ hide: Ocultar completamente
+ warn: Ocultar con una advertencia
interactions:
must_be_follower: Bloquear notificaciones de cuentas que no te siguen
must_be_following: Bloquear notificaciones de cuentas que no seguís
@@ -222,6 +239,14 @@ es-AR:
name: Etiqueta
trendable: Permitir que esta etiqueta aparezca bajo tendencias
usable: Permitir a los mensajes usar esta etiqueta
+ user:
+ role: Rol
+ user_role:
+ color: Color de Insignia
+ highlighted: Mostrar rol como insignia en perfiles de usuario
+ name: Nombre
+ permissions_as_keys: Permisos
+ position: Prioridad
webhook:
events: Eventos habilitados
url: Dirección web del punto final
diff --git a/config/locales/simple_form.es-MX.yml b/config/locales/simple_form.es-MX.yml
index 66efd68abc4..582295abb50 100644
--- a/config/locales/simple_form.es-MX.yml
+++ b/config/locales/simple_form.es-MX.yml
@@ -68,6 +68,11 @@ es-MX:
with_dns_records: Se hará un intento de resolver los registros DNS del dominio dado y los resultados serán también puestos en lista negra
featured_tag:
name: 'Puede que quieras usar uno de estos:'
+ filters:
+ action: Elegir qué acción realizar cuando una publicación coincide con el filtro
+ actions:
+ hide: Ocultar completamente el contenido filtrado, comportándose como si no existiera
+ warn: Ocultar el contenido filtrado detrás de una advertencia mencionando el título del filtro
form_challenge:
current_password: Estás entrando en un área segura
imports:
@@ -91,6 +96,15 @@ es-MX:
name: Sólo se puede cambiar el cajón de las letras, por ejemplo, para que sea más legible
user:
chosen_languages: Cuando se marca, solo se mostrarán los toots en los idiomas seleccionados en los timelines públicos
+ role: El rol controla qué permisos tiene el usuario
+ user_role:
+ color: Color que se utilizará para el rol a lo largo de la interfaz de usuario, como RGB en formato hexadecimal
+ highlighted: Esto hace que el rol sea públicamente visible
+ name: Nombre público del rol, si el rol se establece para que se muestre como una insignia
+ permissions_as_keys: Los usuarios con este rol tendrán acceso a...
+ webhook:
+ events: Seleccionar eventos para enviar
+ url: Donde los eventos serán enviados
labels:
account:
fields:
@@ -178,6 +192,7 @@ es-MX:
setting_use_pending_items: Modo lento
severity: Severidad
sign_in_token_attempt: Código de seguridad
+ title: Título
type: Importar tipo
username: Nombre de usuario
username_or_email: Usuario o Email
@@ -186,6 +201,10 @@ es-MX:
with_dns_records: Incluye los registros MX y las IP del dominio
featured_tag:
name: Etiqueta
+ filters:
+ actions:
+ hide: Ocultar completamente
+ warn: Ocultar con una advertencia
interactions:
must_be_follower: Bloquear notificaciones de personas que no te siguen
must_be_following: Bloquear notificaciones de personas que no sigues
@@ -219,6 +238,17 @@ es-MX:
name: Etiqueta
trendable: Permitir que esta etiqueta aparezca bajo tendencias
usable: Permitir a los toots usar esta etiqueta
+ user:
+ role: Rol
+ user_role:
+ color: Color de insignia
+ highlighted: Mostrar rol como insignia en perfiles de usuario
+ name: Nombre
+ permissions_as_keys: Permisos
+ position: Prioridad
+ webhook:
+ events: Eventos habilitados
+ url: URL de Endpoint
'no': 'No'
recommended: Recomendado
required:
diff --git a/config/locales/simple_form.es.yml b/config/locales/simple_form.es.yml
index 53863ba311b..cd390493c98 100644
--- a/config/locales/simple_form.es.yml
+++ b/config/locales/simple_form.es.yml
@@ -68,6 +68,11 @@ es:
with_dns_records: Se hará un intento de resolver los registros DNS del dominio dado y los resultados serán también puestos en lista negra
featured_tag:
name: 'Puede que quieras usar uno de estos:'
+ filters:
+ action: Elegir qué acción realizar cuando una publicación coincide con el filtro
+ actions:
+ hide: Ocultar completamente el contenido filtrado, comportándose como si no existiera
+ warn: Ocultar el contenido filtrado detrás de una advertencia mencionando el título del filtro
form_challenge:
current_password: Estás entrando en un área segura
imports:
@@ -91,6 +96,13 @@ es:
name: Sólo se puede cambiar el cajón de las letras, por ejemplo, para que sea más legible
user:
chosen_languages: Cuando se marca, solo se mostrarán las publicaciones en los idiomas seleccionados en las líneas de tiempo públicas
+ role: El rol controla qué permisos tiene el usuario
+ user_role:
+ color: Color que se utilizará para el rol a lo largo de la interfaz de usuario, como RGB en formato hexadecimal
+ highlighted: Esto hace que el rol sea públicamente visible
+ name: Nombre público del rol, si el rol se establece para que se muestre como una insignia
+ permissions_as_keys: Los usuarios con este rol tendrán acceso a...
+ position: Un rol superior decide la resolución de conflictos en ciertas situaciones. Ciertas acciones sólo pueden llevarse a cabo en roles con menor prioridad
webhook:
events: Seleccionar eventos para enviar
url: Donde los eventos serán enviados
@@ -181,6 +193,7 @@ es:
setting_use_pending_items: Modo lento
severity: Severidad
sign_in_token_attempt: Código de seguridad
+ title: Título
type: Importar tipo
username: Nombre de usuario
username_or_email: Usuario o Email
@@ -189,6 +202,10 @@ es:
with_dns_records: Incluye los registros MX y las IP del dominio
featured_tag:
name: Etiqueta
+ filters:
+ actions:
+ hide: Ocultar completamente
+ warn: Ocultar con una advertencia
interactions:
must_be_follower: Bloquear notificaciones de personas que no te siguen
must_be_following: Bloquear notificaciones de personas que no sigues
@@ -222,6 +239,14 @@ es:
name: Etiqueta
trendable: Permitir que esta etiqueta aparezca bajo tendencias
usable: Permitir a las publicaciones usar esta etiqueta
+ user:
+ role: Rol
+ user_role:
+ color: Color de insignia
+ highlighted: Mostrar rol como insignia en perfiles de usuario
+ name: Nombre
+ permissions_as_keys: Permisos
+ position: Prioridad
webhook:
events: Eventos habilitados
url: URL de Endpoint
diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml
index c4fd49040df..d942382428e 100644
--- a/config/locales/simple_form.fr.yml
+++ b/config/locales/simple_form.fr.yml
@@ -68,6 +68,11 @@ fr:
with_dns_records: Une tentative de résolution des enregistrements DNS du domaine donné sera effectuée et les résultats seront également mis sur liste noire
featured_tag:
name: 'Vous pourriez vouloir utiliser l’un d’entre eux :'
+ filters:
+ action: Choisir l'action à effectuer quand un message correspond au filtre
+ actions:
+ hide: Cacher complètement le contenu filtré, faire comme s'il n'existait pas
+ warn: Cacher le contenu filtré derrière un avertissement mentionnant le nom du filtre
form_challenge:
current_password: Vous entrez une zone sécurisée
imports:
@@ -91,6 +96,13 @@ fr:
name: Vous ne pouvez modifier que la casse des lettres, par exemple, pour le rendre plus lisible
user:
chosen_languages: Lorsque coché, seuls les messages dans les langues sélectionnées seront affichés sur les fils publics
+ role: Le rôle définit quelles autorisations a l'utilisateur⋅rice
+ user_role:
+ color: Couleur à attribuer au rôle dans l'interface, au format hexadécimal RVB
+ highlighted: Cela rend le rôle visible publiquement
+ name: Nom public du rôle, si le rôle est configuré pour être affiché avec un badge
+ permissions_as_keys: Les utilisateur·rice·s ayant ce rôle auront accès à …
+ position: Dans certaines situations, un rôle supérieur peut trancher la résolution d'un conflit. Mais certaines opérations ne peuvent être effectuées que sur des rôles ayant une priorité inférieure
webhook:
events: Sélectionnez les événements à envoyer
url: Là où les événements seront envoyés
@@ -181,6 +193,7 @@ fr:
setting_use_pending_items: Mode lent
severity: Sévérité
sign_in_token_attempt: Code de sécurité
+ title: Nom
type: Type d’import
username: Identifiant
username_or_email: Nom d’utilisateur·rice ou courriel
@@ -189,6 +202,10 @@ fr:
with_dns_records: Inclure les enregistrements MX et IP du domaine
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Cacher complètement
+ warn: Cacher derrière un avertissement
interactions:
must_be_follower: Bloquer les notifications des personnes qui ne vous suivent pas
must_be_following: Bloquer les notifications des personnes que vous ne suivez pas
@@ -222,6 +239,14 @@ fr:
name: Hashtag
trendable: Autoriser ce hashtag à apparaitre dans les tendances
usable: Autoriser les messages à utiliser ce hashtag
+ user:
+ role: Rôle
+ user_role:
+ color: Couleur du badge
+ highlighted: Afficher le rôle avec un badge sur les profils des utilisateur·rice·s
+ name: Nom
+ permissions_as_keys: Autorisations
+ position: Priorité
webhook:
events: Événements activés
url: URL du point de terminaison
diff --git a/config/locales/simple_form.gl.yml b/config/locales/simple_form.gl.yml
index e7fc36c6477..0727fb97f46 100644
--- a/config/locales/simple_form.gl.yml
+++ b/config/locales/simple_form.gl.yml
@@ -49,7 +49,7 @@ gl:
phrase: Concordará independentemente das maiúsculas ou avisos de contido na publicación
scopes: A que APIs terá acceso a aplicación. Se escolles un ámbito de alto nivel, non precisas seleccionar elementos individuais.
setting_aggregate_reblogs: Non mostrar novas promocións de publicacións que foron promovidas recentemente (só afecta a promocións recén recibidas)
- setting_always_send_emails: Como norma xeral non che enviamos emails se usas activamente Mastodon
+ setting_always_send_emails: Como norma xeral non che enviamos correos electrónicos se usas activamente Mastodon
setting_default_sensitive: Medios sensibles marcados como ocultos por defecto e móstranse cun click
setting_display_media_default: Ocultar medios marcados como sensibles
setting_display_media_hide_all: Ocultar sempre os medios
@@ -68,6 +68,11 @@ gl:
with_dns_records: Vaise facer un intento de resolver os rexistros DNS proporcionados e os resultados tamén irán a lista de bloqueo
featured_tag:
name: 'Poderías usar algún destos:'
+ filters:
+ action: Elixe a acción a realizar cando algunha publicación coincida co filtro
+ actions:
+ hide: Agochar todo o contido filtrado, facer coma se non existise
+ warn: Agochar o contido filtrado tras un aviso que conteña o nome do filtro
form_challenge:
current_password: Estás entrando nun área segura
imports:
@@ -91,9 +96,16 @@ gl:
name: Só podes cambiar maiús/minúsculas, por exemplo, mellorar a lexibilidade
user:
chosen_languages: Se ten marca, só as publicacións nos idiomas seleccionados serán mostrados en cronoloxías públicas
+ role: O control dos roles adxudicados ás usuarias
+ user_role:
+ color: Cor que se usará para o rol a través da IU, como RGB en formato hex
+ highlighted: Esto fai o rol públicamente visible
+ name: Nome público do rol, se o rol se mostra como unha insignia
+ permissions_as_keys: As usuarias con este rol terá acceso a...
+ position: O rol superior decide nos conflitos en certas situacións. Algunhas accións só poden aplicarse sobre roles cunha prioridade menor
webhook:
- events: Elexir eventos a enviar
- url: Cando serán enviados os eventos
+ events: Elixir eventos a enviar
+ url: A onde se enviarán os eventos
labels:
account:
fields:
@@ -108,7 +120,7 @@ gl:
title: Título
admin_account_action:
include_statuses: Incluír no correo as publicacións denunciadas
- send_email_notification: Notificar a usuaria por correo-e
+ send_email_notification: Notificar á usuaria por email
text: Aviso personalizado
type: Acción
types:
@@ -155,7 +167,7 @@ gl:
phrase: Palabra chave ou frase
setting_advanced_layout: Activar interface web avanzada
setting_aggregate_reblogs: Agrupar promocións nas cronoloxías
- setting_always_send_emails: Enviar sempre notificacións por email
+ setting_always_send_emails: Enviar sempre notificacións por correo electrónico
setting_auto_play_gif: Reprodución automática de GIFs animados
setting_boost_modal: Pedir confirmación antes de promocionar
setting_crop_images: Recortar imaxes a 16x9 en publicacións non despregadas
@@ -181,14 +193,19 @@ gl:
setting_use_pending_items: Modo lento
severity: Severidade
sign_in_token_attempt: Código de seguridade
+ title: Título
type: Tipo de importación
username: Nome de usuaria
- username_or_email: Nome de usuaria ou Correo-e
+ username_or_email: Identificador ou Email
whole_word: Palabra completa
email_domain_block:
with_dns_records: Incluír rexistros MX e IPs do dominio
featured_tag:
name: Cancelo
+ filters:
+ actions:
+ hide: Agochar completamente
+ warn: Agochar tras un aviso
interactions:
must_be_follower: Bloquear as notificacións de non-seguidoras
must_be_following: Bloquea as notificacións de persoas que non segues
@@ -222,6 +239,14 @@ gl:
name: Cancelo
trendable: Permitir que este cancelo apareza en tendencias
usable: Permitir que as publicacións utilicen este cancelo
+ user:
+ role: Rol
+ user_role:
+ color: Cor da insignia
+ highlighted: Mostrar rol como insignia en perfís de usuarias
+ name: Nome
+ permissions_as_keys: Permisos
+ position: Prioridade
webhook:
events: Eventos activados
url: URL do extremo
diff --git a/config/locales/simple_form.hu.yml b/config/locales/simple_form.hu.yml
index 3aba3399542..d0ae814e6d6 100644
--- a/config/locales/simple_form.hu.yml
+++ b/config/locales/simple_form.hu.yml
@@ -68,6 +68,11 @@ hu:
with_dns_records: Megpróbáljuk a megadott domain DNS rekordjait lekérni, és az eredményeket hozzáadjuk a tiltólistához
featured_tag:
name: 'Ezeket esetleg használhatod:'
+ filters:
+ action: A végrehajtandó műveletet, ha a bejegyzés megfelel a szűrőnek
+ actions:
+ hide: A szűrt tartalom teljes elrejtése, mintha nem is létezne
+ warn: A szűrt tartalom a szűrő címét említő figyelmeztetés mögé rejtése
form_challenge:
current_password: Beléptél egy biztonsági térben
imports:
@@ -91,6 +96,13 @@ hu:
name: Csak a kis/nagybetűséget változtathatod meg, pl. hogy olvashatóbb legyen
user:
chosen_languages: Ha aktív, csak a kiválasztott nyelvű bejegyzések jelennek majd meg a nyilvános idővonalon
+ role: A szerep szabályozza, hogy a felhasználó milyen jogosultságokkal rendelkezik
+ user_role:
+ color: A szerephez használandó szín mindenhol a felhasználói felületen, hexa RGB formátumban
+ highlighted: Ez nyilvánosan láthatóvá teszi a szerepet
+ name: A szerep nyilvános neve, ha a szerepet úgy állították be, hogy jelvényként látható legyen
+ permissions_as_keys: A felhasználók ezzel a szereppel elérhetik a...
+ position: A magasabb szerepkör oldja fel az ütközéseket bizonyos helyzetekben. Bizonyos műveleteket csak alacsonyabb prioritású szerepkörrel lehet elvégezni.
webhook:
events: Válaszd ki a küldendő eseményeket
url: Ahová az eseményket küldjük
@@ -181,6 +193,7 @@ hu:
setting_use_pending_items: Lassú mód
severity: Súlyosság
sign_in_token_attempt: Biztonsági kód
+ title: Cím
type: Importálás típusa
username: Felhasználónév
username_or_email: Felhasználónév vagy e-mail cím
@@ -189,6 +202,10 @@ hu:
with_dns_records: Domain MX rekordjainak és IP-címeinek hozzávétele
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Teljes elrejtés
+ warn: Elrejtés figyelmeztetéssel
interactions:
must_be_follower: Nem követőidtől érkező értesítések tiltása
must_be_following: Nem követettjeidtől érkező értesítések tiltása
@@ -222,6 +239,14 @@ hu:
name: Hashtag
trendable: A hashtag megjelenhet a felkapottak között
usable: Bejegyzések használhatják ezt a hashtaget
+ user:
+ role: Szerep
+ user_role:
+ color: Jelvény színe
+ highlighted: Szerep megjelenítése jelvényként a felhasználói profilokon
+ name: Név
+ permissions_as_keys: Engedélyek
+ position: Prioritás
webhook:
events: Engedélyezett események
url: Végponti URL
diff --git a/config/locales/simple_form.id.yml b/config/locales/simple_form.id.yml
index dfc4902aba5..41114ef0dc0 100644
--- a/config/locales/simple_form.id.yml
+++ b/config/locales/simple_form.id.yml
@@ -178,6 +178,7 @@ id:
setting_use_pending_items: Mode pelan
severity: Keparahan
sign_in_token_attempt: Kode keamanan
+ title: Judul
type: Tipe impor
username: Nama pengguna
username_or_email: Nama pengguna atau Email
@@ -186,6 +187,10 @@ id:
with_dns_records: Termasuk data MX dan IP domain
featured_tag:
name: Tagar
+ filters:
+ actions:
+ hide: Sembunyikan seluruhnya
+ warn: Sembunyikan dengan peringatan
interactions:
must_be_follower: Blokir notifikasi dari non-pengikut
must_be_following: Blokir notifikasi dari orang yang tidak anda ikuti
@@ -219,6 +224,8 @@ id:
name: Tagar
trendable: Izinkan tagar ini muncul di bawah tren
usable: Izinkan toot memakai tagar ini
+ webhook:
+ events: Acara yang diaktifkan
'no': Tidak
recommended: Direkomendasikan
required:
diff --git a/config/locales/simple_form.io.yml b/config/locales/simple_form.io.yml
index 5f72276b7c2..743c8964a1e 100644
--- a/config/locales/simple_form.io.yml
+++ b/config/locales/simple_form.io.yml
@@ -68,6 +68,11 @@ io:
with_dns_records: Probo di rezolvar registri DNS di la domeno agesos e rezulti anke preventesos
featured_tag:
name: 'Vu forsan volas uzar 1 de co:'
+ filters:
+ action: Selektez ago kande posto parigas filtrilo
+ actions:
+ hide: Komplete celez filtrita kontenajo quale ol ne existas
+ warn: Celez filtrita kontenajo dop avert quo montras titulo di filtrilo
form_challenge:
current_password: Vu eniras sekura areo
imports:
@@ -91,6 +96,13 @@ io:
name: Vu povas nur chanjar literkaso, por exemplo, por kauzigar lu divenar plu lektebla
user:
chosen_languages: Kande marketigesis, nur posti en selektesis lingui montresos en publika tempolinei
+ role: Rolo dominacas permisi quon uzanto havas
+ user_role:
+ color: Koloro quo uzesas por rolo en tota UI, quale RGB kun hexformato
+ highlighted: Co kauzigas rolo divenar publike videbla
+ name: Publika nomo di ca rolo, se rolo ajustesas quale montresas quale insigno
+ permissions_as_keys: Uzanti kun ca rolo povas...
+ position: Plu alta rolo decidas problemsolvo en kelka situeso. Kelka agi povas nur eventar a roli kun plu basa prioreso
webhook:
events: Selektigez eventi por sendar
url: Ibe eventi sendesos
@@ -181,6 +193,7 @@ io:
setting_use_pending_items: Modo lenta
severity: Severeso
sign_in_token_attempt: Sekureskodexo
+ title: Titulo
type: Tipo di importaco
username: Uzernomo
username_or_email: Uzantonomo o retposto
@@ -189,6 +202,10 @@ io:
with_dns_records: Inkluzez registraji MX e IPi di domeno
featured_tag:
name: Hashtago
+ filters:
+ actions:
+ hide: Tote celez
+ warn: Celez kun averto
interactions:
must_be_follower: Celar la savigi da homi, qui ne sequas tu
must_be_following: Celar la savigi da homi, quin tu ne sequas
@@ -222,6 +239,14 @@ io:
name: Hashtago
trendable: Permisez ca hashtago aparar che tendenci
usable: Permisez posti uzar ca hashtago
+ user:
+ role: Rolo
+ user_role:
+ color: Insignokoloro
+ highlighted: Montrez rolo quale insigno en uzantoprofili
+ name: Nomo
+ permissions_as_keys: Permisi
+ position: Prioreso
webhook:
events: Aktivigita eventi
url: URL di finpunto
diff --git a/config/locales/simple_form.is.yml b/config/locales/simple_form.is.yml
index 638458dae8b..f0fd23d5e6b 100644
--- a/config/locales/simple_form.is.yml
+++ b/config/locales/simple_form.is.yml
@@ -68,6 +68,11 @@ is:
with_dns_records: Tilraun verður gerð til að leysa DNS-færslur uppgefins léns og munu niðurstöðurnar einnig verða útilokaðar
featured_tag:
name: 'Þú gætir viljað nota eitt af þessum:'
+ filters:
+ action: Veldu hvaða aðgerð á að framkvæma þegar færsla samsvarar síunni
+ actions:
+ hide: Fela síað efni algerlega, rétt eins og það sé ekki til staðar
+ warn: Fela síað efni á bakvið aðvörun sem tekur fram titil síunnar
form_challenge:
current_password: Þú ert að fara inn á öryggissvæði
imports:
@@ -91,6 +96,11 @@ is:
name: Þú getur aðeins breytt stafstöði mill há-/lágstafa, til gæmis til að gera þetta læsilegra
user:
chosen_languages: Þegar merkt er við þetta, birtast einungis færslur á völdum tungumálum á opinberum tímalínum
+ role: Hlutverk stýrir hvaða heimildir notandinn hefur
+ user_role:
+ highlighted: Þetta gerir hlutverk sýnilegt opinberlega
+ name: Opinbert heiti hlutverks, ef birta á hlutverk sem merki
+ permissions_as_keys: Notendur með þetta hlutverk munu hafa aðgang að...
webhook:
events: Veldu atburði sem á að senda
url: Hvert atburðir verða sendir
@@ -181,6 +191,7 @@ is:
setting_use_pending_items: Rólegur hamur
severity: Mikilvægi
sign_in_token_attempt: Öryggiskóði
+ title: Titill
type: Tegund innflutnings
username: Notandanafn
username_or_email: Notandanafn eða tölvupóstfang
@@ -189,6 +200,10 @@ is:
with_dns_records: Hafa með MX-færslur og IP-vistföng lénsins
featured_tag:
name: Myllumerki
+ filters:
+ actions:
+ hide: Fela alveg
+ warn: Fela með aðvörun
interactions:
must_be_follower: Loka á tilkynningar frá þeim sem ekki eru fylgjendur
must_be_following: Loka á tilkynningar frá þeim sem þú fylgist ekki með
@@ -222,6 +237,14 @@ is:
name: Myllumerki
trendable: Leyfa þessu myllumerki að birtast undir tilhneigingum
usable: Leyfa færslum að nota þetta myllumerki
+ user:
+ role: Hlutverk
+ user_role:
+ color: Litur merkis
+ highlighted: Birta hlutverk sem merki á notandaauðkenni
+ name: Nafn
+ permissions_as_keys: Heimildir
+ position: Forgangur
webhook:
events: Virkjaðir atburðir
url: Slóð á endapunkt
diff --git a/config/locales/simple_form.it.yml b/config/locales/simple_form.it.yml
index 4d86f24dfe6..d2ffda88863 100644
--- a/config/locales/simple_form.it.yml
+++ b/config/locales/simple_form.it.yml
@@ -68,6 +68,11 @@ it:
with_dns_records: Sarà effettuato un tentativo di risolvere i record DNS del dominio in questione e i risultati saranno inseriti anche nella blacklist
featured_tag:
name: 'Eccone alcuni che potresti usare:'
+ filters:
+ action: Scegli quale azione eseguire quando un post corrisponde al filtro
+ actions:
+ hide: Nascondi completamente il contenuto filtrato, come se non esistesse
+ warn: Nascondi il contenuto filtrato e mostra invece un avviso, citando il titolo del filtro
form_challenge:
current_password: Stai entrando in un'area sicura
imports:
@@ -91,6 +96,13 @@ it:
name: Puoi cambiare solo il minuscolo/maiuscolo delle lettere, ad esempio, per renderlo più leggibile
user:
chosen_languages: Quando una o più lingue sono contrassegnate, nelle timeline pubbliche vengono mostrati solo i toot nelle lingue selezionate
+ role: Il ruolo controlla quali permessi ha l'utente
+ user_role:
+ color: Colore da usare per il ruolo in tutta l'UI, come RGB in formato esadecimale
+ highlighted: Rende il ruolo visibile
+ name: Nome pubblico del ruolo, se il ruolo è impostato per essere visualizzato come distintivo
+ permissions_as_keys: Gli utenti con questo ruolo avranno accesso a...
+ position: Un ruolo più alto decide la risoluzione dei conflitti in determinate situazioni. Alcune azioni possono essere eseguite solo su ruoli con priorità più bassa
webhook:
events: Seleziona eventi da inviare
url: Dove gli eventi saranno inviati
@@ -181,6 +193,7 @@ it:
setting_use_pending_items: Modalità lenta
severity: Severità
sign_in_token_attempt: Codice di sicurezza
+ title: Titolo
type: Tipo importazione
username: Nome utente
username_or_email: Nome utente o email
@@ -189,6 +202,10 @@ it:
with_dns_records: Includi record MX e indirizzi IP del dominio
featured_tag:
name: Etichetta
+ filters:
+ actions:
+ hide: Nascondi completamente
+ warn: Nascondi con avviso
interactions:
must_be_follower: Blocca notifiche da chi non ti segue
must_be_following: Blocca notifiche dalle persone che non segui
@@ -222,6 +239,14 @@ it:
name: Hashtag
trendable: Permetti a questo hashtag di apparire nelle tendenze
usable: Permetti ai post di usare questo hashtag
+ user:
+ role: Ruolo
+ user_role:
+ color: Colore distintivo
+ highlighted: Mostra il ruolo come distintivo sui profili utente
+ name: Nome
+ permissions_as_keys: Permessi
+ position: Priorità
webhook:
events: Eventi abilitati
url: URL endpoint
diff --git a/config/locales/simple_form.ko.yml b/config/locales/simple_form.ko.yml
index d79b7951300..19f164e0037 100644
--- a/config/locales/simple_form.ko.yml
+++ b/config/locales/simple_form.ko.yml
@@ -68,6 +68,11 @@ ko:
with_dns_records: 입력한 도메인의 DNS를 조회를 시도하여 나온 값도 차단됩니다
featured_tag:
name: '이것들을 사용하면 좋을 것 같습니다:'
+ filters:
+ action: 게시물이 필터에 걸러질 때 어떤 동작을 수행할 지 고르세요
+ actions:
+ hide: 필터에 걸러진 글을 처음부터 없었던 것처럼 완전히 가리기
+ warn: 필터에 걸러진 글을 필터 제목과 함께 경고 뒤에 가리기
form_challenge:
current_password: 당신은 보안 구역에 진입하고 있습니다
imports:
@@ -91,6 +96,12 @@ ko:
name: 읽기 쉽게하기 위한 글자의 대소문자만 변경할 수 있습니다.
user:
chosen_languages: 체크하면, 선택 된 언어로 작성된 게시물들만 공개 타임라인에 보여집니다
+ role: 역할은 사용자가 어떤 권한을 가지게 될 지 결정합니다
+ user_role:
+ color: 색상은 사용자 인터페이스에서 역할을 나타내기 위해 사용되며, RGB 16진수 형식입니다
+ highlighted: 이 역할이 공개적으로 보이도록 설정합니다
+ name: 역할이 배지로 표시될 경우, 그 역할에 대한 공개적인 이름입니다
+ permissions_as_keys: 이 역할을 가진 사용자는 다음에 접근할 수 있게 됩니다...
webhook:
events: 전송할 이벤트를 선택하세요
url: 이벤트가 어디로 전송될 지
@@ -181,6 +192,7 @@ ko:
setting_use_pending_items: 느린 모드
severity: 심각도
sign_in_token_attempt: 보안 코드
+ title: 제목
type: 불러오기 종류
username: 사용자명
username_or_email: 사용자명 또는 이메일
@@ -189,6 +201,10 @@ ko:
with_dns_records: 도메인의 IP와 MX 레코드 값을 포함
featured_tag:
name: 해시태그
+ filters:
+ actions:
+ hide: 완전히 숨기기
+ warn: 경고와 함께 숨기기
interactions:
must_be_follower: 나를 팔로우 하지 않는 사람에게서 온 알림을 차단
must_be_following: 내가 팔로우 하지 않는 사람에게서 온 알림을 차단
@@ -222,6 +238,14 @@ ko:
name: 해시태그
trendable: 이 해시태그가 유행에 보여지도록 허용
usable: 이 해시태그를 게시물에 사용 가능하도록 허용
+ user:
+ role: 역할
+ user_role:
+ color: 배지 색상
+ highlighted: 역할 배지를 사용자 프로필에 표시
+ name: 이름
+ permissions_as_keys: 권한
+ position: 우선순위
webhook:
events: 활성화된 이벤트
url: 엔드포인트 URL
diff --git a/config/locales/simple_form.ku.yml b/config/locales/simple_form.ku.yml
index 9cfe371b555..ea6db0972c6 100644
--- a/config/locales/simple_form.ku.yml
+++ b/config/locales/simple_form.ku.yml
@@ -93,6 +93,8 @@ ku:
name: Tîpan, mînak ji bo ku bêhtir paknivîs bibe, tenê rewşa tîpên girdek/hûrdek dikarî biguherînî
user:
chosen_languages: Dema were nîşankirin, tenê parvekirinên bi zimanên hilbijartî dê di rêzikên giştî de werin nîşandan
+ user_role:
+ position: Rola bilind di hinek rewşan de biryara çareserkirina nakokiyan dide. Hinej çalakî tenê dikarin li ser rolên bi pêşanînek kêmtir bêne kirin
webhook:
events: Bûyeran hilbijêre bo şandinê
url: Cihê ku bûyer wê werin şandin
@@ -224,6 +226,12 @@ ku:
name: Hashtag
trendable: Bihêle ku ev hashtag werê xuyakirin di bin rojevê de
usable: Bihêle ku şandî ev hashtag bi kar bînin
+ user:
+ role: Rol
+ user_role:
+ name: Nav
+ permissions_as_keys: Maf
+ position: Pêşikî
webhook:
events: Bûyerên çalakkirî
url: Girêdana xala dawîbûnê
diff --git a/config/locales/simple_form.lv.yml b/config/locales/simple_form.lv.yml
index 97fa2bff4d7..ad8f3bd4d0a 100644
--- a/config/locales/simple_form.lv.yml
+++ b/config/locales/simple_form.lv.yml
@@ -68,6 +68,11 @@ lv:
with_dns_records: Tiks mēģināts atrisināt dotā domēna DNS ierakstus, un rezultāti arī tiks bloķēti
featured_tag:
name: 'Iespējams, vēlēsies izmantot kādu no šīm:'
+ filters:
+ action: Izvēlies, kuru darbību veikt, ja ziņa atbilst filtram
+ actions:
+ hide: Paslēp filtrēto saturu pilnībā, izturoties tā, it kā tas neeksistētu
+ warn: Paslēp filtrēto saturu aiz brīdinājuma, kurā minēts filtra nosaukums
form_challenge:
current_password: Tu ieej drošā zonā
imports:
@@ -91,6 +96,13 @@ lv:
name: Tu vari mainīt tikai burtu lielumu, piemēram, lai tie būtu vieglāk lasāmi
user:
chosen_languages: Ja ieķeksēts, publiskos laika grafikos tiks parādītas tikai ziņas noteiktajās valodās
+ role: Loma kontrolē, kādas atļaujas ir lietotājam
+ user_role:
+ color: Krāsa, kas jāizmanto lomai visā lietotāja interfeisā, kā RGB hex formātā
+ highlighted: Tas padara lomu publiski redzamu
+ name: Lomas publiskais nosaukums, ja loma ir iestatīta rādīšanai kā emblēma
+ permissions_as_keys: Lietotājiem ar šo lomu būs piekļuve...
+ position: What is "alower"?
webhook:
events: Atlasi nosūtāmos notikums
url: Kur notikumi tiks nosūtīti
@@ -181,6 +193,7 @@ lv:
setting_use_pending_items: Lēnais režīms
severity: Smagums
sign_in_token_attempt: Drošības kods
+ title: Virsraksts
type: Importa veids
username: Lietotājvārds
username_or_email: Lietotājvārds vai e-pasts
@@ -189,6 +202,10 @@ lv:
with_dns_records: Ietvert domēna MX ierakstus un IP adreses
featured_tag:
name: Tēmturis
+ filters:
+ actions:
+ hide: Paslēpt pilnībā
+ warn: Paslēpt ar brīdinājumu
interactions:
must_be_follower: Bloķēt paziņojumus no ne-sekotājiem
must_be_following: Bloķēt paziņojumus no cilvēkiem, kuriem tu neseko
@@ -222,6 +239,14 @@ lv:
name: Tēmturis
trendable: Atļaut šim tēmturim parādīties zem tendencēm
usable: Atļaut lietot ziņās šo tēmturi
+ user:
+ role: Loma
+ user_role:
+ color: Emblēmas krāsa
+ highlighted: Atainot lomu kā emblēmu lietotāju profilos
+ name: Nosaukums
+ permissions_as_keys: Atļaujas
+ position: Prioritāte
webhook:
events: Iespējotie notikumi
url: Galapunkta URL
diff --git a/config/locales/simple_form.nl.yml b/config/locales/simple_form.nl.yml
index 09dd2bd1bb1..00f8e762c77 100644
--- a/config/locales/simple_form.nl.yml
+++ b/config/locales/simple_form.nl.yml
@@ -27,6 +27,8 @@ nl:
scheduled_at: Laat leeg om de mededeling meteen te publiceren
starts_at: Optioneel. In het geval dat jouw mededeling aan een bepaald tijdvak is gebonden
text: Je kunt specifieke tekst voor berichten gebruiken. Let op de ruimte die de mededeling op het scherm van de gebruiker inneemt
+ appeal:
+ text: Je kunt maar eenmalig bezwaar indienen tegen een vastgestelde overtreding
defaults:
autofollow: Mensen die zich via de uitnodiging hebben geregistreerd, volgen jou automatisch
avatar: PNG, GIF of JPG. Maximaal %{size}. Wordt teruggeschaald naar %{dimensions}px
@@ -63,6 +65,11 @@ nl:
with_dns_records: Er wordt een poging gewaagd om de desbetreffende DNS-records op te zoeken, waarna de resultaten ook worden geblokkeerd
featured_tag:
name: 'Je wilt misschien een van deze gebruiken:'
+ filters:
+ action: Kies welke acties uitgevoerd moeten wanneer een bericht overeenkomt met het filter
+ actions:
+ hide: Verberg de gefilterde inhoud volledig, alsof het niet bestaat
+ warn: Verberg de gefilterde inhoud achter een waarschuwing, met de titel van het filter als waarschuwingstekst
form_challenge:
current_password: Je betreedt een veilige omgeving
imports:
@@ -116,6 +123,8 @@ nl:
scheduled_at: Mededeling inplannen
starts_at: Begint
text: Mededeling
+ appeal:
+ text: Leg uit waarom deze beslissing volgens jou teruggedraaid moet worden
defaults:
autofollow: Uitnodigen om jouw account te volgen
avatar: Avatar
@@ -145,6 +154,7 @@ nl:
phrase: Trefwoord of zinsdeel
setting_advanced_layout: Geavanceerde webomgeving inschakelen
setting_aggregate_reblogs: Boosts in tijdlijnen groeperen
+ setting_always_send_emails: Altijd e-mailmeldingen verzenden
setting_auto_play_gif: Speel geanimeerde GIF's automatisch af
setting_boost_modal: Vraag voor het boosten van een bericht een bevestiging
setting_crop_images: Afbeeldingen bijsnijden tot 16x9 in berichten op tijdlijnen
@@ -170,6 +180,7 @@ nl:
setting_use_pending_items: Langzame modus
severity: Zwaarte
sign_in_token_attempt: Beveiligingscode
+ title: Titel
type: Importtype
username: Gebruikersnaam
username_or_email: Gebruikersnaam of e-mailadres
@@ -178,6 +189,10 @@ nl:
with_dns_records: MX-records en IP-adressen van het domein toevoegen
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Volledig verbergen
+ warn: Met een waarschuwing verbergen
interactions:
must_be_follower: Meldingen van mensen die jou niet volgen blokkeren
must_be_following: Meldingen van mensen die jij niet volgt blokkeren
@@ -194,6 +209,7 @@ nl:
sign_up_requires_approval: Registraties beperken
severity: Regel
notification_emails:
+ appeal: Iemand heeft bezwaar ingediend tegen een beslissing van een moderator
digest: Periodiek e-mails met een samenvatting versturen
favourite: Wanneer iemand jouw bericht aan diens favorieten heeft toegevoegd
follow: Wanneer iemand jou is gaan volgen
@@ -210,6 +226,13 @@ nl:
name: Hashtag
trendable: Toestaan dat deze hashtag onder trends te zien valt
usable: Toestaan dat deze hashtag in berichten gebruikt mag worden
+ user:
+ role: Rol
+ user_role:
+ color: Kleur van badge
+ name: Naam
+ permissions_as_keys: Rechten
+ position: Prioriteit
webhook:
url: Eindpunt URL
'no': Nee
diff --git a/config/locales/simple_form.pl.yml b/config/locales/simple_form.pl.yml
index b0373fbc629..1db60d3fab6 100644
--- a/config/locales/simple_form.pl.yml
+++ b/config/locales/simple_form.pl.yml
@@ -68,6 +68,11 @@ pl:
with_dns_records: Zostanie wykonana próba rozwiązania rekordów DNS podanej domeny, a wyniki również zostaną dodane na czarną listę
featured_tag:
name: 'Sugerujemy użycie jednego z następujących:'
+ filters:
+ action: Wybierz akcję do wykonania, gdy post pasuje do filtra
+ actions:
+ hide: Całkowicie ukryj przefiltrowaną zawartość, jakby nie istniała
+ warn: Ukryj filtrowaną zawartość za ostrzeżeniem wskazującym tytuł filtra
form_challenge:
current_password: Wchodzisz w strefę bezpieczną
imports:
@@ -91,6 +96,8 @@ pl:
name: Możesz zmieniać tylko wielkość liter, np. aby były bardziej widoczne
user:
chosen_languages: Jeżeli zaznaczone, tylko wpisy w wybranych językach będą wyświetlane na publicznych osiach czasu
+ user_role:
+ position: Wyższa rola decyduje o rozwiązywaniu konfliktów w pewnych sytuacjach. Niektóre działania mogą być wykonywane tylko na rolach z niższym priorytetem
webhook:
events: Wybierz zdarzenia do wysłania
url: Dokąd będą wysłane zdarzenia
@@ -181,6 +188,7 @@ pl:
setting_use_pending_items: Tryb spowolniony
severity: Priorytet
sign_in_token_attempt: Kod zabezpieczający
+ title: Tytuł
type: Importowane dane
username: Nazwa użytkownika
username_or_email: Nazwa użytkownika lub adres e-mail
@@ -189,6 +197,10 @@ pl:
with_dns_records: Uwzględnij rekordy MX i adresy IP domeny
featured_tag:
name: Hasztag
+ filters:
+ actions:
+ hide: Ukryj całkowicie
+ warn: Ukryj z ostrzeżeniem
interactions:
must_be_follower: Nie wyświetlaj powiadomień od osób, które Cię nie śledzą
must_be_following: Nie wyświetlaj powiadomień od osób, których nie śledzisz
diff --git a/config/locales/simple_form.pt-BR.yml b/config/locales/simple_form.pt-BR.yml
index b96952e9654..9bbc6b4d759 100644
--- a/config/locales/simple_form.pt-BR.yml
+++ b/config/locales/simple_form.pt-BR.yml
@@ -27,6 +27,8 @@ pt-BR:
scheduled_at: Deixe em branco para publicar o comunicado agora
starts_at: Opcional. Caso o comunicado esteja vinculado a um período específico
text: Você pode usar a sintaxe do toot. Considere o espaço que o comunicado ocupará na tela do usuário
+ appeal:
+ text: Você só pode recorrer uma vez
defaults:
autofollow: Pessoas que criarem conta através de seu convite te seguirão automaticamente
avatar: PNG, GIF or JPG. Arquivos de até %{size}. Serão redimensionados para %{dimensions}px
@@ -35,6 +37,7 @@ pt-BR:
current_password: Para fins de segurança, por favor, digite a senha da conta atual
current_username: Para confirmar, por favor, digite o nome de usuário da conta atual
digest: Enviado apenas após um longo período de inatividade com um resumo das menções recebidas durante ausência
+ discoverable: Permita que a sua conta seja descoberta por estranhos através de recomendações, tendências e outros recursos
email: Você receberá um e-mail de confirmação
fields: Você pode ter até 4 itens mostrados em forma de tabela no seu perfil
header: PNG, GIF or JPG. Arquivos de até %{size}. Serão redimensionados para %{dimensions}px
@@ -46,6 +49,7 @@ pt-BR:
phrase: Corresponderá independente de maiúsculas ou minúsculas, no texto ou no Aviso de Conteúdo de um toot
scopes: Quais APIs o aplicativo vai ter permissão de acessar. Se você selecionar uma autorização de alto nível, você não precisa selecionar individualmente os outros.
setting_aggregate_reblogs: Não mostra novos boosts para toots que receberam boost recentemente (afeta somente os boosts mais recentes)
+ setting_always_send_emails: Normalmente, as notificações por e-mail não serão enviadas enquanto você estiver usando ativamente o Mastodon
setting_default_sensitive: Mídia sensível está oculta por padrão e pode ser revelada com um clique
setting_display_media_default: Sempre ocultar mídia sensível
setting_display_media_hide_all: Sempre ocultar todas as mídias
@@ -64,6 +68,11 @@ pt-BR:
with_dns_records: Será feita uma tentativa de resolver os registros DNS do domínio em questão e os resultados também serão colocados na lista negra
featured_tag:
name: 'Você pode querer usar um destes:'
+ filters:
+ action: Escolher qual ação executar quando um post corresponder ao filtro
+ actions:
+ hide: Esconder completamente o conteúdo filtrado, comportando-se como se ele não existisse
+ warn: Ocultar o conteúdo filtrado por trás de um aviso mencionando o título do filtro
form_challenge:
current_password: Você está entrando em uma área segura
imports:
@@ -87,6 +96,9 @@ pt-BR:
name: Você pode mudar a capitalização das letras, por exemplo, para torná-la mais legível
user:
chosen_languages: Apenas toots dos idiomas selecionados serão mostrados nas linhas públicas
+ webhook:
+ events: Selecione eventos para enviar
+ url: Aonde os eventos serão enviados
labels:
account:
fields:
@@ -148,6 +160,7 @@ pt-BR:
phrase: Palavra-chave ou frase
setting_advanced_layout: Ativar interface web avançada
setting_aggregate_reblogs: Agrupar boosts nas linhas
+ setting_always_send_emails: Sempre enviar notificações por e-mail
setting_auto_play_gif: Reproduzir GIFs automaticamente
setting_boost_modal: Solicitar confirmação antes de dar boost
setting_crop_images: Cortar imagens no formato 16x9 em toots não expandidos
@@ -173,6 +186,7 @@ pt-BR:
setting_use_pending_items: Modo lento
severity: Gravidade
sign_in_token_attempt: Código de segurança
+ title: Título
type: Tipo de importação
username: Nome de usuário
username_or_email: Nome de usuário ou e-mail
@@ -181,6 +195,10 @@ pt-BR:
with_dns_records: Incluir registros MX e IPs do domínio
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Ocultar completamente
+ warn: Ocultar com um aviso
interactions:
must_be_follower: Bloquear notificações de não-seguidores
must_be_following: Bloquear notificações de não-seguidos
@@ -197,6 +215,7 @@ pt-BR:
sign_up_requires_approval: Limitar novas contas
severity: Regra
notification_emails:
+ appeal: Alguém recorre de uma decisão moderadora
digest: Enviar e-mails de resumo
favourite: Enviar e-mail quando alguém favoritar teus toots
follow: Enviar e-mail quando alguém te seguir
@@ -213,6 +232,9 @@ pt-BR:
name: Hashtag
trendable: Permitir que esta hashtag fique em alta
usable: Permitir que toots usem esta hashtag
+ webhook:
+ events: Eventos habilitados
+ url: URL do Endpoint
'no': Não
recommended: Recomendado
required:
diff --git a/config/locales/simple_form.pt-PT.yml b/config/locales/simple_form.pt-PT.yml
index 16972ca6ab2..e77457f94e6 100644
--- a/config/locales/simple_form.pt-PT.yml
+++ b/config/locales/simple_form.pt-PT.yml
@@ -68,6 +68,11 @@ pt-PT:
with_dns_records: Será feita uma tentativa de resolver os registos DNS do domínio em questão e os resultados também serão colocados na lista negra
featured_tag:
name: 'Poderás querer usar um destes:'
+ filters:
+ action: Escolha qual a ação a executar quando uma publicação corresponde ao filtro
+ actions:
+ hide: Ocultar completamente o conteúdo filtrado, comportando-se como se não existisse
+ warn: Ocultar o conteúdo filtrado por trás de um aviso mencionando o título do filtro
form_challenge:
current_password: Está a entrar numa área restrita
imports:
@@ -91,6 +96,13 @@ pt-PT:
name: Só pode alterar a capitalização das letras, por exemplo, para torná-las mais legíveis
user:
chosen_languages: Quando seleccionado, só publicações nas línguas escolhidas serão mostradas nas cronologias públicas
+ role: A função controla que permissões o utilizador tem
+ user_role:
+ color: Cor a ser utilizada para a função em toda a interface de utilizador, como RGB no formato hexadecimal
+ highlighted: Isto torna a função visível publicamente
+ name: Nome público da função, se a função for definida para ser exibida como um distintivo
+ permissions_as_keys: Utilizadores com esta função terão acesso a...
+ position: Função mais alta decidem a resolução de conflitos em certas situações. Certas ações só podem ser executadas em funções com uma menor prioridade
webhook:
events: Selecione os eventos a enviar
url: Para onde os eventos serão enviados
@@ -181,6 +193,7 @@ pt-PT:
setting_use_pending_items: Modo lento
severity: Gravidade
sign_in_token_attempt: Código de segurança
+ title: Título
type: Tipo de importação
username: Nome de utilizador
username_or_email: Nome de utilizador ou e-mail
@@ -189,6 +202,10 @@ pt-PT:
with_dns_records: Incluir registos MX e IPs do domínio
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Ocultar por completo
+ warn: Ocultar com um aviso
interactions:
must_be_follower: Bloquear notificações de não-seguidores
must_be_following: Bloquear notificações de pessoas que não segues
@@ -222,6 +239,14 @@ pt-PT:
name: Hashtag
trendable: Permitir que esta hashtag apareça em destaque
usable: Permitir que toots utilizem esta hashtag
+ user:
+ role: Função
+ user_role:
+ color: Cor do distintivo
+ highlighted: Exibir a função como distintivo nos perfis de utilizador
+ name: Nome
+ permissions_as_keys: Permissões
+ position: Prioridade
webhook:
events: Eventos ativados
url: URL do Endpoint
diff --git a/config/locales/simple_form.ru.yml b/config/locales/simple_form.ru.yml
index 571411c096e..ffe41dd1437 100644
--- a/config/locales/simple_form.ru.yml
+++ b/config/locales/simple_form.ru.yml
@@ -68,6 +68,11 @@ ru:
with_dns_records: Будет сделана попытка разрешить DNS-записи данного домена и результаты также будут внесены в чёрный список
featured_tag:
name: 'Возможно, вы захотите добавить что-то из этого:'
+ filters:
+ action: Выберите действие, которое нужно выполнить, когда сообщение соответствует фильтру
+ actions:
+ hide: Полностью скрыть отфильтрованный контент так, как будто его не существует
+ warn: Скрыть отфильтрованный контент за предупреждением с указанием названия фильтра
form_challenge:
current_password: Вы переходите к настройкам безопасности
imports:
@@ -91,6 +96,11 @@ ru:
name: Вы можете изменить только регистр букв чтобы, например, сделать тег более читаемым
user:
chosen_languages: Если выбрано, то в публичных лентах будут показаны только посты на выбранных языках.
+ role: Роль определяет, какие разрешения есть у пользователя
+ user_role:
+ color: Цвет, который будет использоваться для роли в интерфейсе (UI), как RGB в формате HEX
+ permissions_as_keys: Пользователи с этой ролью будут иметь доступ...
+ position: Повышение роли разрешают конфликты интересов в некоторых ситуациях. Некоторые действия могут выполняться только на ролях с более низким приоритетом
webhook:
events: Выберите события для отправки
url: Куда события будут отправляться
@@ -181,6 +191,7 @@ ru:
setting_use_pending_items: Медленный режим
severity: Накладываемые ограничения
sign_in_token_attempt: Код безопасности
+ title: Название
type: Тип импорта
username: Имя пользователя
username_or_email: Имя пользователя или e-mail
@@ -189,6 +200,10 @@ ru:
with_dns_records: Включить MX-записи и IP-адреса домена
featured_tag:
name: Добавить хэштег
+ filters:
+ actions:
+ hide: Скрыть полностью
+ warn: Скрыть с предупреждением
interactions:
must_be_follower: Присылать уведомления только от подписчиков
must_be_following: Присылать уведомления только от людей на которых вы подписаны
@@ -222,6 +237,12 @@ ru:
name: Хэштег
trendable: Разрешить показ хэштега в трендах
usable: Разрешить использовать этот хэштег в постах
+ user:
+ role: Роль
+ user_role:
+ name: Название
+ permissions_as_keys: Разрешения
+ position: Приоритет
webhook:
events: Включенные события
url: Endpoint URL
diff --git a/config/locales/simple_form.si.yml b/config/locales/simple_form.si.yml
index 9f2e0ee3123..aa51438a9e7 100644
--- a/config/locales/simple_form.si.yml
+++ b/config/locales/simple_form.si.yml
@@ -1,38 +1,246 @@
---
si:
simple_form:
- labels:
+ hints:
+ account_alias:
+ acct: ඔබට ගෙන යාමට අවශ්ය ගිණුමේ username@domain සඳහන් කරන්න
+ account_migration:
+ acct: ඔබට යාමට අවශ්ය ගිණුමේ username@domain සඳහන් කරන්න
+ account_warning_preset:
+ text: ඔබට URL, හෑෂ් ටැග් සහ සඳහන් කිරීම් වැනි පෝස්ට් සින්ටැක්ස් භාවිතා කළ හැක
+ title: විකල්ප. ලබන්නාට නොපෙනේ
admin_account_action:
- type: ක්රියාමාර්ගය
+ include_statuses: මධ්යස්ථ ක්රියාව හෝ අනතුරු ඇඟවීමට හේතු වී ඇත්තේ කුමන පළ කිරීම්දැයි පරිශීලකයා දකිනු ඇත
+ send_email_notification: පරිශීලකයාට ඔවුන්ගේ ගිණුම සමඟ සිදු වූ දේ පිළිබඳ පැහැදිලි කිරීමක් ලැබෙනු ඇත
+ text_html: විකල්ප. ඔබට post syntax භාවිතා කළ හැක. කාලය ඉතිරි කර ගැනීම සඳහා ඔබට අනතුරු ඇඟවීමේ කළ හැක
+ type_html: "%{acct}සමඟ කළ යුතු දේ තෝරන්න"
types:
- sensitive: සංවේදීතාව
- suspend: අත්හිටුවන්න
+ disable: පරිශීලකයාගේ ගිණුම භාවිතා කිරීමෙන් වළක්වන්න, නමුත් ඔවුන්ගේ අන්තර්ගතය මකා දැමීම හෝ සඟවන්න එපා.
+ none: වෙනත් ක්රියාවක් අවුලුවාලීමකින් තොරව, පරිශීලකයාට අනතුරු ඇඟවීමක් යැවීමට මෙය භාවිතා කරන්න.
+ sensitive: මෙම පරිශීලකයාගේ සියලුම මාධ්ය ඇමුණුම් සංවේදී ලෙස සලකුණු කිරීමට බල කරන්න.
+ silence: පරිශීලකයාට පොදු දෘශ්යතාව සමඟ පළ කිරීමට හැකි වීම වළක්වන්න, ඔවුන් අනුගමනය නොකරන පුද්ගලයින්ගෙන් ඔවුන්ගේ පළ කිරීම් සහ දැනුම්දීම් සඟවන්න.
+ suspend: මෙම ගිණුමෙන් හෝ මෙම ගිණුමට යම් අන්තර්ක්රියා වළක්වා එහි අන්තර්ගතය මකා දමන්න. දින 30 ක් ඇතුළත ආපසු හැරවිය හැකිය.
+ warning_preset_id: විකල්ප. ඔබට තවමත් පෙරසිටුවීමේ අවසානයට අභිරුචි පෙළ එක් කළ හැක
+ announcement:
+ all_day: පරීක්ෂා කළ විට, කාල පරාසයේ දින පමණක් දර්ශනය වනු ඇත
+ ends_at: විකල්ප. මෙම අවස්ථාවේදී නිවේදනය ස්වයංක්රීයව ප්රකාශනය කිරීමෙන් ඉවත් වනු ඇත
+ scheduled_at: නිවේදනය වහාම ප්රකාශයට පත් කිරීමට හිස්ව තබන්න
+ starts_at: විකල්ප. ඔබගේ නිවේදනය නිශ්චිත කාල පරාසයකට බැඳී ඇත්නම්
+ text: ඔබට post syntax භාවිතා කළ හැක. කරුණාකර පරිශීලකයාගේ තිරය මත නිවේදනය ලබා ගන්නා ඉඩ ගැන සැලකිලිමත් වන්න
+ appeal:
+ text: ඔබට වර්ජනයකට අභියාචනා කළ හැක්කේ එක් වරක් පමණි
defaults:
+ autofollow: ආරාධනාව හරහා ලියාපදිංචි වන පුද්ගලයින් ස්වයංක්රීයව ඔබව අනුගමනය කරනු ඇත
+ avatar: PNG, GIF හෝ JPG. වැඩිම %{size}. %{dimensions}px දක්වා අඩු කරනු ඇත
+ bot: ගිණුම ප්රධාන වශයෙන් ස්වයංක්රීය ක්රියා සිදු කරන බවත් නිරීක්ෂණය නොකළ හැකි බවත් අන් අයට සංඥා කරන්න
+ context: පෙරහන යෙදිය යුතු සන්දර්භ එකක් හෝ කිහිපයක්
+ current_password: ආරක්ෂක අරමුණු සඳහා කරුණාකර ජංගම ගිණුමේ මුරපදය ඇතුළත් කරන්න
+ current_username: තහවුරු කිරීමට, කරුණාකර වත්මන් ගිණුමේ පරිශීලක නාමය ඇතුළත් කරන්න
+ digest: දිගු කාලයක් අක්රියව සිටීමෙන් පසුව පමණක් යවන ලද අතර ඔබ නොමැති විට ඔබට කිසියම් පුද්ගලික පණිවිඩයක් ලැබී ඇත්නම් පමණි
+ discoverable: නිර්දේශ, ප්රවණතා සහ වෙනත් විශේෂාංග හරහා ඔබේ ගිණුම ආගන්තුකයන්ට සොයා ගැනීමට ඉඩ දෙන්න
+ email: ඔබට තහවුරු කිරීමේ විද්යුත් තැපෑලක් එවනු ලැබේ
+ fields: ඔබට ඔබගේ පැතිකඩෙහි වගුවක් ලෙස අයිතම 4ක් දක්වා පෙන්විය හැක
+ header: PNG, GIF හෝ JPG. වැඩිම %{size}. %{dimensions}px දක්වා අඩු කරනු ඇත
+ inbox_url: ඔබට භාවිතා කිරීමට අවශ්ය රිලේ හි මුල් පිටුවෙන් URL එක පිටපත් කරන්න
+ irreversible: පෙරහන පසුව ඉවත් කළද, පෙරූ පළ කිරීම් ආපසු හැරවිය නොහැකි ලෙස අතුරුදහන් වනු ඇත
+ locale: පරිශීලක අතුරුමුහුණතේ භාෂාව, ඊමේල් සහ තල්ලු දැනුම්දීම්
+ locked: අනුගමන ඉල්ලීම් අනුමත කිරීමෙන් ඔබව අනුගමනය කළ හැක්කේ කාටදැයි හස්තීයව පාලනය කරන්න
+ password: අවම වශයෙන් අක්ෂර 8 ක් භාවිතා කරන්න
+ phrase: පළ කිරීමක පෙළ හෝ අන්තර්ගත අනතුරු ඇඟවීම නොසලකා ගැලපේ
+ scopes: යෙදුමට ප්රවේශ වීමට ඉඩ දෙන්නේ කුමන API වලටද. ඔබ ඉහළ මට්ටමේ විෂය පථයක් තෝරා ගන්නේ නම්, ඔබට තනි ඒවා තෝරා ගැනීමට අවශ්ය නොවේ.
+ setting_aggregate_reblogs: මෑතකදී බූස්ට් කරන ලද පළ කිරීම් සඳහා නව බූස්ට් පෙන්වන්න එපා (අලුතින් ලැබුණු බූස්ට් වලට පමණක් බලපායි)
+ setting_always_send_emails: සාමාන්යයෙන් ඔබ Mastodon සක්රියව භාවිතා කරන විට විද්යුත් තැපැල් දැනුම්දීම් නොයවනු ඇත
+ setting_default_sensitive: සංවේදී මාධ්ය පෙරනිමියෙන් සඟවා ඇති අතර ක්ලික් කිරීමකින් හෙළිදරව් කළ හැක
+ setting_display_media_default: සංවේදී ලෙස සලකුණු කළ මාධ්ය සඟවන්න
+ setting_display_media_hide_all: සෑම විටම මාධ්ය සඟවන්න
+ setting_display_media_show_all: සෑම විටම මාධ්ය පෙන්වන්න
+ setting_hide_network: ඔබ අනුගමනය කරන්නේ කවුරුන්ද සහ ඔබව අනුගමනය කරන්නේ කවුරුන්ද යන්න ඔබගේ පැතිකඩෙහි සඟවනු ඇත
+ setting_noindex: ඔබගේ පොදු පැතිකඩ සහ පළ කිරීම් පිටු වලට බලපායි
+ setting_show_application: ඔබ පළ කිරීමට භාවිතා කරන යෙදුම ඔබගේ පළ කිරීම් වල සවිස්තරාත්මක දර්ශනයේ පෙන්වනු ඇත
+ setting_use_blurhash: අනුක්රමණ සැඟවුණු දෘශ්යවල වර්ණ මත පදනම් වන නමුත් ඕනෑම විස්තරයක් අපැහැදිලි කරයි
+ setting_use_pending_items: සංග්රහය ස්වයංක්රීයව අනුචලනය කරනවා වෙනුවට ක්ලික් කිරීමක් පිටුපස කාලරේඛා යාවත්කාලීන සඟවන්න
+ username: ඔබගේ පරිශීලක නාමය %{domain}හි අද්විතීය වනු ඇත
+ whole_word: මූල පදය හෝ වාක්ය ඛණ්ඩය අක්ෂරාංක පමණක් වන විට, එය යෙදෙන්නේ එය සම්පූර්ණ වචනයට ගැලපේ නම් පමණි
+ domain_allow:
+ domain: මෙම වසමට මෙම සේවාදායකයෙන් දත්ත ලබා ගැනීමට හැකි වන අතර එයින් ලැබෙන දත්ත සකස් කර ගබඩා කරනු ලැබේ
+ email_domain_block:
+ domain: මෙය විද්යුත් තැපැල් ලිපිනයේ හෝ එය භාවිතා කරන MX වාර්තාවේ පෙන්වන ඩොමේන් නාමය විය හැක. ලියාපදිංචි වූ පසු ඒවා පරීක්ෂා කරනු ලැබේ.
+ with_dns_records: ලබා දී ඇති වසමේ DNS වාර්තා විසඳීමට උත්සාහ කරන අතර ප්රතිඵල ද අවහිර කරනු ලැබේ
+ featured_tag:
+ name: 'ඔබට මේවායින් එකක් භාවිතා කිරීමට අවශ්ය විය හැකිය:'
+ filters:
+ action: පළ කිරීමක් පෙරහනට ගැළපෙන විට සිදු කළ යුතු ක්රියාව තෝරන්න
+ actions:
+ hide: පෙරහන් කළ අන්තර්ගතය සම්පූර්ණයෙන්ම සඟවන්න, එය නොපවතින ලෙස හැසිරෙන්න
+ warn: පෙරහන මාතෘකාව සඳහන් කරන අනතුරු ඇඟවීමක් පිටුපස පෙරූ අන්තර්ගතය සඟවන්න
+ form_challenge:
+ current_password: ඔබ ආරක්ෂිත ප්රදේශයකට ඇතුල් වේ
+ imports:
+ data: CSV ගොනුව වෙනත් Mastodon සේවාදායකයකින් අපනයනය කරන ලදී
+ invite_request:
+ text: මෙය ඔබගේ අයදුම්පත සමාලෝචනය කිරීමට අපට උපකාරී වනු ඇත
+ ip_block:
+ comment: විකල්ප. ඔබ මෙම රීතිය එක් කළේ මන්දැයි මතක තබා ගන්න.
+ expires_in: IP ලිපින යනු සීමිත සම්පතකි, ඒවා සමහර විට බෙදාගෙන ඇති අතර බොහෝ විට අත් වෙනස් වේ. මෙම හේතුව නිසා අවිනිශ්චිත IP වාරණ නිර්දේශ නොකරයි.
+ ip: IPv4 හෝ IPv6 ලිපිනයක් ඇතුළත් කරන්න. ඔබට CIDR සින්ටැක්ස් භාවිතයෙන් සම්පූර්ණ පරාසයන් අවහිර කළ හැක. ඔබව අගුලු නොදැමීමට ප්රවේශම් වන්න!
+ severities:
+ no_access: සියලු සම්පත් වෙත ප්රවේශය අවහිර කරන්න
+ sign_up_requires_approval: නව ලියාපදිංචි කිරීම් සඳහා ඔබේ අනුමැතිය අවශ්ය වනු ඇත
+ severity: මෙම IP වෙතින් ඉල්ලීම් සමඟ කුමක් සිදුවේද යන්න තෝරන්න
+ rule:
+ text: මෙම සේවාදායකයේ භාවිතා කරන්නන් සඳහා රීතියක් හෝ අවශ්යතාවයක් විස්තර කරන්න. එය කෙටි හා සරල කිරීමට උත්සාහ කරන්න
+ sessions:
+ otp: 'ඔබගේ දුරකථන යෙදුම මගින් උත්පාදනය කරන ලද ද්වි-සාධක කේතය ඇතුළු කරන්න හෝ ඔබගේ ප්රතිසාධන කේත වලින් එකක් භාවිතා කරන්න:'
+ webauthn: එය USB යතුරක් නම්, එය ඇතුළු කිරීමට වග බලා ගන්න, අවශ්ය නම්, එය තට්ටු කරන්න.
+ tag:
+ name: ඔබට අකුරු වල ආවරණය පමණක් වෙනස් කළ හැකිය, උදාහරණයක් ලෙස, එය වඩාත් කියවිය හැකි කිරීමට
+ user:
+ chosen_languages: පරීක්ෂා කළ විට, තෝරාගත් භාෂාවලින් පළ කිරීම් පමණක් පොදු කාලරේඛා තුළ සංදර්ශන කෙරේ
+ webhook:
+ events: යැවීමට සිදුවීම් තෝරන්න
+ url: සිදුවීම් යවනු ලබන ස්ථානය
+ labels:
+ account:
+ fields:
+ name: ලේබලය
+ value: අන්තර්ගතය
+ account_alias:
+ acct: පැරණි ගිණුමේ හැසිරවීම
+ account_migration:
+ acct: නව ගිණුමේ හැසිරවීම
+ account_warning_preset:
+ text: පෙර සැකසූ පෙළ
+ title: ශීර්ෂය
+ admin_account_action:
+ include_statuses: විද්යුත් තැපෑලෙහි වාර්තා කරන ලද පළ කිරීම් ඇතුළත් කරන්න
+ send_email_notification: විද්යුත් තැපෑලෙන් පරිශීලකයාට දැනුම් දෙන්න
+ text: අභිරුචි අනතුරු ඇඟවීම
+ type: ක්රියාව
+ types:
+ disable: කැටි කරන්න
+ none: අනතුරු ඇඟවීමක් යවන්න
+ sensitive: පවතී
+ silence: සීමාව
+ suspend: අවශ්ය
+ warning_preset_id: අනතුරු ඇඟවීමේ පෙරසිටුවක් භාවිතා කරන්න
+ announcement:
+ all_day: දවස පුරා සිදුවීම
+ ends_at: සිදුවීමේ අවසානය
+ scheduled_at: උපලේඛන ප්රකාශනය
+ starts_at: සිදුවීමේ ආරම්භය
+ text: නිවේදනය
+ appeal:
+ text: මෙම තීරණය ආපසු හැරවිය යුත්තේ මන්දැයි පැහැදිලි කරන්න
+ defaults:
+ autofollow: ඔබගේ ගිණුම අනුගමනය කිරීමට ආරාධනා කරන්න
+ avatar: අවතාරය
bot: මෙය ස්වයං ක්රමලේඛගත ගිණුමකි
+ chosen_languages: භාෂා පෙරහන් කරන්න
confirm_new_password: නව මුර පදය තහවුරු කරන්න
- confirm_password: මුරපදය තහවුරු කරන්න
+ confirm_password: මුරපදය තහවුරු කර ඇත
+ context: සන්දර්භ පෙරහන් කරන්න
+ current_password: වත්මන් මුර පදය
data: දත්ත
+ discoverable: අන් අයට ගිණුමක් යෝජනා කරන්න
+ display_name: ප්රදර්ශන නාමය
email: වි-තැපැල් ලිපිනය
+ expires_in: පසු කල් ඉකුත් වේ
+ fields: පැතිකඩ පාරදත්ත
+ header: ශීර්ෂකය
+ honeypot: "%{label} (පුරවන්න එපා)"
+ inbox_url: රිලේ එන ලිපි URL
+ irreversible: සැඟවීම වෙනුවට අතහරින්න
+ locale: අතුරු මුහුණත භාෂාව
+ locked: ඉල්ලීම් අනුගමනය කිරීම අවශ්ය වේ
+ max_uses: උපරිම භාවිත ගණන
new_password: නව මුරපදය
+ note: ජෛව
+ otp_attempt: ද්වි සාධක කේතය
password: මුර පදය
+ phrase: මූල පදය හෝ වාක්ය ඛණ්ඩය
+ setting_advanced_layout: උසස් වෙබ් අතුරු මුහුණත සබල කරන්න
+ setting_aggregate_reblogs: කණ්ඩායම් කාලරේඛාව වැඩි කරයි
+ setting_always_send_emails: සෑම විටම විද්යුත් තැපැල් දැනුම්දීම් යවන්න
+ setting_auto_play_gif: සජීවිකරණ GIF ස්වයංක්රීයව ධාවනය කරන්න
+ setting_boost_modal: වැඩි කිරීමට පෙර තහවුරු කිරීමේ සංවාදය පෙන්වන්න
+ setting_crop_images: ප්රසාරණය නොකළ පළ කිරීම් වල පින්තූර 16x9 දක්වා කප්පාදු කරන්න
+ setting_default_language: පළ කිරීමේ භාෂාව
+ setting_default_privacy: පුද්ගලිකත්වය පළ කිරීම
+ setting_default_sensitive: සෑම විටම මාධ්ය සංවේදී ලෙස සලකුණු කරන්න
+ setting_delete_modal: පළ කිරීමක් මැකීමට පෙර තහවුරු කිරීමේ සංවාදය පෙන්වන්න
+ setting_disable_swiping: ස්වයිප් චලන අක්රීය කරන්න
+ setting_display_media: මාධ්ය සංදර්ශකය
+ setting_display_media_default: පෙරනිමිය
setting_display_media_hide_all: සියල්ල සඟවන්න
setting_display_media_show_all: සියල්ල පෙන්වන්න
+ setting_expand_spoilers: අන්තර්ගත අනතුරු ඇඟවීම් සමඟ සලකුණු කර ඇති පළ කිරීම් සැමවිටම පුළුල් කරන්න
setting_hide_network: ඔබගේ ජාලය සඟවන්න
- setting_theme: අඩවියේ තේමාව
- sign_in_token_attempt: ආරක්ෂණ කේතය
+ setting_noindex: සෙවුම් යන්ත්ර සුචිගත කිරීමෙන් ඉවත් වීම
+ setting_reduce_motion: සජීවිකරණවල චලනය අඩු කරන්න
+ setting_show_application: පළ කිරීම් යැවීමට භාවිතා කරන යෙදුම හෙළි කරන්න
+ setting_system_font_ui: පද්ධතියේ පෙරනිමි අකුරු භාවිතා කරන්න
+ setting_theme: අඩවියේ මාතෘකාව
+ setting_trends: අද ප්රවණතා පෙන්වන්න
+ setting_unfollow_modal: යමෙකු අනුගමනය නොකිරීමට පෙර තහවුරු කිරීමේ සංවාදය පෙන්වන්න
+ setting_use_blurhash: සැඟවුණු මාධ්ය සඳහා වර්ණවත් අනුක්රමික පෙන්වන්න
+ setting_use_pending_items: මන්දගාමී මාදිලිය
+ severity: බරපතලකම
+ sign_in_token_attempt: ආරක්ෂණ කේතය
+ title: ශීර්ෂය
+ type: ආයාත වර්ගය
username: පරිශීලක නාමය
username_or_email: පරිශීලක නාමය හෝ වි-තැපෑල
whole_word: සමස්ත වචනය
+ email_domain_block:
+ with_dns_records: වසමෙහි MX වාර්තා සහ IP ඇතුළත් කරන්න
+ featured_tag:
+ name: හෑෂ් ටැගය
+ filters:
+ actions:
+ hide: සම්පූර්ණයෙන්ම සඟවන්න
+ warn: අනතුරු ඇඟවීමක් සමඟ සඟවන්න
+ interactions:
+ must_be_follower: අනුගාමිකයින් නොවන අයගේ දැනුම්දීම් අවහිර කරන්න
+ must_be_following: ඔබ අනුගමනය නොකරන පුද්ගලයින්ගේ දැනුම්දීම් අවහිර කරන්න
+ must_be_following_dm: ඔබ අනුගමනය නොකරන පුද්ගලයින්ගෙන් සෘජු පණිවිඩ අවහිර කරන්න
invite:
comment: අදහස
+ invite_request:
+ text: ඔබට එක් වීමට අවශ්ය ඇයි?
ip_block:
comment: අදහස
ip: අ.ජා. කෙ. (IP)
severities:
- no_access: ප්රවේශය අවහිර කරන්න
+ no_access: ප්රවේශය අවහිර කරන්න
+ sign_up_requires_approval: ලියාපදිංචි වීම සීමා කරන්න
severity: නීතිය
+ notification_emails:
+ appeal: යමෙක් උපපරිපාලක තීරණයකට අභියාචනා කරයි
+ digest: digest ඊමේල් යවන්න
+ favourite: කවුරුහරි ඔබේ පළ කිරීම ප්රිය කළා
+ follow: කවුරුහරි ඔබව අනුගමනය කළා
+ follow_request: කවුරුහරි ඔබව අනුගමනය කරන ලෙස ඉල්ලා සිටියේය
+ mention: කවුරුහරි ඔබව සඳහන් කළා
+ pending_account: නව ගිණුම සමාලෝචනය අවශ්යයි
+ reblog: කවුරුහරි ඔබේ පළ කිරීම වැඩි කළා
+ report: නව වාර්තාවක් ඉදිරිපත් කෙරේ
+ trending_tag: නව ප්රවණතාවයට සමාලෝචනයක් අවශ්ය වේ
+ rule:
+ text: නීතිය
+ tag:
+ listable: මෙම හැෂ් ටැගය සෙවීම් සහ යෝජනා වල දිස් වීමට ඉඩ දෙන්න
+ name: හෑෂ් ටැගය
+ trendable: මෙම හැෂ් ටැගය ප්රවණතා යටතේ දිස් වීමට ඉඩ දෙන්න
+ usable: මෙම හැෂ් ටැගය භාවිතා කිරීමට පළ කිරීම් වලට ඉඩ දෙන්න
+ webhook:
+ events: සබල කළ සිදුවීම්
+ url: අන්ත ලක්ෂ්ය URL
+ 'no': නැත
recommended: නිර්දේශිත
required:
mark: "*"
- text: අවශ්යයි
+ text: අවශ්යයි
+ title:
+ sessions:
+ webauthn: පුරනය වීමට ඔබගේ ආරක්ෂක යතුරු වලින් එකක් භාවිතා කරන්න
'yes': ඔව්
diff --git a/config/locales/simple_form.sl.yml b/config/locales/simple_form.sl.yml
index 04df4eb4964..640d2c27ecc 100644
--- a/config/locales/simple_form.sl.yml
+++ b/config/locales/simple_form.sl.yml
@@ -68,6 +68,11 @@ sl:
with_dns_records: Poskus razrešitve zapisov DNS danih domen bo izveden in rezultati bodo prav tako blokirani
featured_tag:
name: 'Morda boste želeli uporabiti eno od teh:'
+ filters:
+ action: Izberite, kako naj se program vede, ko se objava sklada s filtrom
+ actions:
+ hide: Povsem skrij filtrirano vsebino, kot da ne bi obstajala
+ warn: Skrij filtrirano vsebino za opozorilom, ki pomenja naslov filtra
form_challenge:
current_password: Vstopate v varovano območje
imports:
@@ -91,6 +96,13 @@ sl:
name: Spremenite lahko le npr. velikost črk (velike/male), da je bolj berljivo
user:
chosen_languages: Ko je označeno, bodo v javnih časovnicah prikazane samo objave v izbranih jezikih
+ role: Vloga nadzira, katere pravice ima uporabnik
+ user_role:
+ color: Barva, uporabljena za vlogo po celem up. vmesniku, podana v šestnajstiškem zapisu RGB
+ highlighted: S tem je vloga javno vidna
+ name: Javno ime vloge, če naj bo vloga prikazana kot priponka
+ permissions_as_keys: Uporabniki s to vlogo bodo imeli dostop do ...
+ position: Višja vloga se odloča o razrešitvi sporov v določenih situacijah. Določena dejanja lahko izvede le na vlogah z nižjo prioriteto
webhook:
events: Izberite dogodke za pošiljanje
url: Kam bodo poslani dogodki
@@ -181,6 +193,7 @@ sl:
setting_use_pending_items: Počasen način
severity: Strogost
sign_in_token_attempt: Varnostna koda
+ title: Naslov
type: Vrsta uvoza
username: Uporabniško ime
username_or_email: Uporabniško ime ali E-pošta
@@ -189,6 +202,10 @@ sl:
with_dns_records: Vključi zapise MX in IP-številke domene
featured_tag:
name: Ključnik
+ filters:
+ actions:
+ hide: Povsem skrij
+ warn: Skrij z opozorilom
interactions:
must_be_follower: Blokiraj obvestila nesledilcev
must_be_following: Blokiraj obvestila oseb, ki jim ne sledite
@@ -222,6 +239,14 @@ sl:
name: Ključnik
trendable: Dovoli, da se ta ključnik pojavi med trendi
usable: Dovoli, da objave uporabljajo ta ključnik
+ user:
+ role: Vloga
+ user_role:
+ color: Barva značke
+ highlighted: Prikaži vlogo kot značko na uporabniškem profilu
+ name: Ime
+ permissions_as_keys: Pravice
+ position: Prioriteta
webhook:
events: Omogočeni dogodki
url: URL končne točke
diff --git a/config/locales/simple_form.sq.yml b/config/locales/simple_form.sq.yml
index 0e2fb4ab88b..fd17afb0e37 100644
--- a/config/locales/simple_form.sq.yml
+++ b/config/locales/simple_form.sq.yml
@@ -68,6 +68,11 @@ sq:
with_dns_records: Do të bëhet një përpjekje për ftillimin e zërave DNS të përkatësisë së dhënë dhe do të futen në listë bllokimesh edhe përfundimet
featured_tag:
name: 'Mund të doni të përdorni një nga këto:'
+ filters:
+ action: Zgjidhni cili veprim të kryhet, kur një postim ka përputhje me një filtër
+ actions:
+ hide: Fshihe plotësisht lëndën e filtruar, duke u sjellë sikur të mos ekzistonte
+ warn: Fshihe lëndën e filtruar pas një sinjalizimi që përmend titullin e filtrit
form_challenge:
current_password: Po hyni në një zonë të sigurt
imports:
@@ -91,6 +96,13 @@ sq:
name: Mund të ndryshoni shkronjat vetëm nga të mëdha në të vogla ose anasjelltas, për shembull, për t’i bërë më të lexueshme
user:
chosen_languages: Në iu vëntë shenjë, te rrjedha kohore publike do të shfaqen vetëm mesazhe në gjuhët e përzgjedhura
+ role: Roli kontrollon cilat leje ka përdoruesi
+ user_role:
+ color: Ngjyrë për t’u përdorur për rolin nëpër UI, si RGB në format gjashtëmbëdhjetësh
+ highlighted: Kjo e bën rolin të dukshëm publikisht
+ name: Emër publik për rolin, nëse roli është ujdisur të shfaqet si një stemë
+ permissions_as_keys: Përdoruest me këtë rol do të mund të…
+ position: Role më të lartë vendosin zgjidhje përplasje në disa raste. Disa veprime mund të kryhen vetëm mbi role të një shkalle më të ulët
webhook:
events: Përzgjidhni akte për dërgim
url: Ku do të dërgohen aktet
@@ -181,6 +193,7 @@ sq:
setting_use_pending_items: Mënyra ngadalë
severity: Rëndësi
sign_in_token_attempt: Kod sigurie
+ title: Titull
type: Lloj importimi
username: Emër përdoruesi
username_or_email: Emër përdoruesi ose Email
@@ -189,6 +202,10 @@ sq:
with_dns_records: Përfshi zëra MX dhe IP-ra të përkatësisë
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Fshihe plotësisht
+ warn: Fshihe me një sinjalizim
interactions:
must_be_follower: Blloko njoftime nga jo-ndjekës
must_be_following: Blloko njoftime nga persona që s’i ndiqni
@@ -222,6 +239,14 @@ sq:
name: Hashtag
trendable: Lejoje këtë hashtag të shfaqet në prirje
usable: Lejoji mesazhet të përdorin këtë hashtag
+ user:
+ role: Rol
+ user_role:
+ color: Ngjyrë steme
+ highlighted: Shfaqe rolin si një stemë në profile përdoruesish
+ name: Emër
+ permissions_as_keys: Leje
+ position: Përparësi
webhook:
events: Akte të aktivizuar
url: URL pikëmbarimi
diff --git a/config/locales/simple_form.th.yml b/config/locales/simple_form.th.yml
index a33e87593d7..3de5753e1dd 100644
--- a/config/locales/simple_form.th.yml
+++ b/config/locales/simple_form.th.yml
@@ -175,6 +175,7 @@ th:
setting_use_pending_items: โหมดช้า
severity: ความรุนแรง
sign_in_token_attempt: รหัสความปลอดภัย
+ title: ชื่อเรื่อง
type: ชนิดการนำเข้า
username: ชื่อผู้ใช้
username_or_email: ชื่อผู้ใช้หรืออีเมล
@@ -216,6 +217,11 @@ th:
name: แฮชแท็ก
trendable: อนุญาตให้แฮชแท็กนี้ปรากฏภายใต้แนวโน้ม
usable: อนุญาตให้โพสต์ใช้แฮชแท็กนี้
+ user:
+ role: บทบาท
+ user_role:
+ name: ชื่อ
+ permissions_as_keys: สิทธิอนุญาต
webhook:
url: URL ปลายทาง
'no': ไม่
diff --git a/config/locales/simple_form.tr.yml b/config/locales/simple_form.tr.yml
index 99421306594..d1124e3b6c1 100644
--- a/config/locales/simple_form.tr.yml
+++ b/config/locales/simple_form.tr.yml
@@ -68,6 +68,11 @@ tr:
with_dns_records: Belirli bir alanın DNS kayıtlarını çözmeyi deneyecek ve sonuçlar kara listeye eklenecek
featured_tag:
name: 'Bunlardan birini kullanmak isteyebilirsiniz:'
+ filters:
+ action: Bir gönderi filtreyle eşleştiğinde hangi eylemin yapılacağını seçin
+ actions:
+ hide: Filtrelenmiş içeriği tamamen gizle, sanki varolmamış gibi
+ warn: Filtrelenmiş içeriği, filtrenin başlığından söz eden bir uyarının arkasında gizle
form_challenge:
current_password: Güvenli bir bölgeye giriyorsunuz
imports:
@@ -91,6 +96,12 @@ tr:
name: Harflerin, örneğin daha okunabilir yapmak için, sadece büyük/küçük harf durumlarını değiştirebilirsiniz
user:
chosen_languages: İşaretlendiğinde, yalnızca seçilen dillerdeki tootlar genel zaman çizelgelerinde görüntülenir
+ role: Rol, kullanıcıların sahip olduğu izinleri denetler
+ user_role:
+ color: Arayüz boyunca rol için kullanılacak olan renk, hex biçiminde RGB
+ highlighted: Bu rolü herkese açık hale getirir
+ name: Rolün, eğer rozet olarak görüntülenmesi ayarlandıysa kullanılacak herkese açık ismi
+ permissions_as_keys: Bu role sahip kullanıcıların şunlara erişimi var...
webhook:
events: Gönderilecek etkinlikleri seçin
url: Olayların gönderileceği yer
@@ -181,6 +192,7 @@ tr:
setting_use_pending_items: Yavaş mod
severity: Önem derecesi
sign_in_token_attempt: Güvenlik kodu
+ title: Başlık
type: İçeri aktarma türü
username: Kullanıcı adı
username_or_email: Kullanıcı adı ya da e-posta
@@ -189,6 +201,10 @@ tr:
with_dns_records: Alan adının MX kayıtlarını ve IP'lerini ekleyin
featured_tag:
name: Etiket
+ filters:
+ actions:
+ hide: Tamamen gizle
+ warn: Uyarıyla gizle
interactions:
must_be_follower: Takipçim olmayan kişilerden gelen bildirimleri engelle
must_be_following: Takip etmediğim kişilerden gelen bildirimleri engelle
@@ -222,6 +238,14 @@ tr:
name: Etiket
trendable: Bu etiketin gündem altında görünmesine izin ver
usable: Tootların bu etiketi kullanmasına izin ver
+ user:
+ role: Rol
+ user_role:
+ color: Rozet rengi
+ highlighted: Rolü kullanıcıların profilinde rozet olarak görüntüle
+ name: Ad
+ permissions_as_keys: İzinler
+ position: Öncelik
webhook:
events: Etkin olaylar
url: Uç nokta URL’si
diff --git a/config/locales/simple_form.uk.yml b/config/locales/simple_form.uk.yml
index 9b8ecb5734e..ec43655e448 100644
--- a/config/locales/simple_form.uk.yml
+++ b/config/locales/simple_form.uk.yml
@@ -68,6 +68,11 @@ uk:
with_dns_records: Спроба визначення DNS-записів заданого домену буде здійснена, а результати також будуть занесені до чорного списку
featured_tag:
name: 'Можливо, ви захочете використовувати один з цих:'
+ filters:
+ action: Виберіть дію для виконання коли допис збігається з фільтром
+ actions:
+ hide: Повністю сховати фільтрований вміст, ніби його не існує
+ warn: Сховати відфільтрований вміст за попередженням, у якому вказано заголовок фільтра
form_challenge:
current_password: Ви входите до безпечної зони
imports:
@@ -91,6 +96,13 @@ uk:
name: Тут ви можете лише змінювати регістр літер, щоб підвищити читабельність
user:
chosen_languages: У глобальних стрічках будуть відображатися дмухи тільки обраними мовами
+ role: Роль визначає права користувача
+ user_role:
+ color: Колір, який буде використовуватися для ролі у всьому інтерфейсі, як RGB у форматі hex
+ highlighted: Це робить роль видимою всім
+ name: Загальнодоступна назва ролі, якщо роль налаштована бути показаною у вигляді відзнаки
+ permissions_as_keys: Користувачі з цією роллю матимуть доступ до...
+ position: Вища роль розв'язує конфлікти у певних ситуаціях. Певні дії можуть бути виконані лише щодо ролей з нижчим пріоритетом
webhook:
events: Оберіть події для надсилання
url: Куди надсилатимуться події
@@ -181,6 +193,7 @@ uk:
setting_use_pending_items: Повільний режим
severity: Серйозність
sign_in_token_attempt: Код безпеки
+ title: Заголовок
type: Тип імпорту
username: Ім'я користувача
username_or_email: Ім'я користувача або електронна пошта
@@ -189,6 +202,10 @@ uk:
with_dns_records: Включити MX записи та IP-адреси домену
featured_tag:
name: Хештеґ
+ filters:
+ actions:
+ hide: Сховати повністю
+ warn: Сховати за попередженням
interactions:
must_be_follower: Блокувати сповіщення від непідписаних людей
must_be_following: Блокувати сповіщення від людей, на яких ви не підписані
@@ -222,6 +239,14 @@ uk:
name: Хештеґ
trendable: Дозволити появу цього хештеґа у списку популярних хештеґів
usable: Дозволити дмухам використовувати цей хештеґ
+ user:
+ role: Роль
+ user_role:
+ color: Колір відзнаки
+ highlighted: Показувати роль у вигляді відзнаки у профілях користувачів
+ name: Назва
+ permissions_as_keys: Дозволи
+ position: Пріоритет
webhook:
events: Увімкнені події
url: URL кінцевої точки
diff --git a/config/locales/simple_form.vi.yml b/config/locales/simple_form.vi.yml
index 729be663484..7bc43a0b068 100644
--- a/config/locales/simple_form.vi.yml
+++ b/config/locales/simple_form.vi.yml
@@ -68,6 +68,11 @@ vi:
with_dns_records: Nếu DNS có vấn đề, nó sẽ bị đưa vào danh sách cấm
featured_tag:
name: 'Những hashtag gợi ý cho bạn:'
+ filters:
+ action: Chọn hành động sẽ thực hiện khi một tút khớp với bộ lọc
+ actions:
+ hide: Ẩn hoàn toàn nội dung đã lọc, hoạt động như thể nó không tồn tại
+ warn: Ẩn nội dung đã lọc đằng sau một cảnh báo đề cập đến tiêu đề của bộ lọc
form_challenge:
current_password: Biểu mẫu này an toàn
imports:
@@ -91,6 +96,13 @@ vi:
name: Bạn có thể thay đổi cách viết hoa các chữ cái để giúp nó dễ đọc hơn
user:
chosen_languages: Chỉ hiển thị những tút viết bằng các ngôn ngữ được chọn sau
+ role: Vai trò kiểm soát những quyền mà người dùng có
+ user_role:
+ color: Màu được sử dụng cho vai trò trong toàn bộ giao diện người dùng, dưới dạng RGB ở định dạng hex
+ highlighted: Vai trò sẽ hiển thị công khai
+ name: Tên công khai của vai trò, nếu vai trò được đặt để hiển thị dưới dạng huy hiệu
+ permissions_as_keys: Người dùng có vai trò này sẽ có quyền truy cập vào...
+ position: Vai trò cao hơn sẽ có quyền quyết định xung đột trong các tình huống. Các vai trò có mức độ ưu tiên thấp hơn chỉ có thể thực hiện một số hành động nhất định
webhook:
events: Chọn sự kiện để gửi
url: Nơi những sự kiện được gửi đến
@@ -181,6 +193,7 @@ vi:
setting_use_pending_items: Không tự động cập nhật bảng tin
severity: Mức độ nghiêm trọng
sign_in_token_attempt: Mã an toàn
+ title: Tựa đề
type: Kiểu nhập
username: Tên người dùng
username_or_email: Tên người dùng hoặc email
@@ -189,6 +202,10 @@ vi:
with_dns_records: Bao gồm bản ghi MX và địa chỉ IP của máy chủ
featured_tag:
name: Hashtag
+ filters:
+ actions:
+ hide: Ẩn toàn bộ
+ warn: Ẩn kèm theo cảnh báo
interactions:
must_be_follower: Chặn thông báo từ những người không theo dõi bạn
must_be_following: Chặn thông báo từ những người bạn không theo dõi
@@ -222,6 +239,14 @@ vi:
name: Hashtag
trendable: Cho phép xuất hiện trong xu hướng
usable: Cho phép dùng trong tút
+ user:
+ role: Vai trò
+ user_role:
+ color: Màu huy hiệu
+ highlighted: Hiển thị huy hiệu vai trò trên hồ sơ người dùng
+ name: Tên
+ permissions_as_keys: Quyền
+ position: Mức độ ưu tiên
webhook:
events: Những sự kiện đã bật
url: URL endpoint
diff --git a/config/locales/simple_form.zh-TW.yml b/config/locales/simple_form.zh-TW.yml
index 4cc6af416c0..a3e29b3748f 100644
--- a/config/locales/simple_form.zh-TW.yml
+++ b/config/locales/simple_form.zh-TW.yml
@@ -68,6 +68,11 @@ zh-TW:
with_dns_records: Mastodon 會嘗試解析所給域名的 DNS 記錄,解析結果一致者將一併封鎖
featured_tag:
name: 您可能想使用其中一個:
+ filters:
+ action: 請選擇當嘟文符合該過濾器時將被執行之動作
+ actions:
+ hide: 完全隱藏過濾內容,當作它似乎不曾存在過
+ warn: 隱藏過濾內容於過濾器標題之警告後
form_challenge:
current_password: 您正要進入安全區域
imports:
@@ -91,6 +96,13 @@ zh-TW:
name: 您只能變更大小寫,例如,以使其更易讀。
user:
chosen_languages: 當核取時,只有選取語言的嘟文會在公開時間軸中顯示
+ role: 角色控制使用者有哪些權限
+ user_role:
+ color: 在整個使用者介面中用於角色的顏色,十六進位格式的 RGB
+ highlighted: 這會讓角色公開可見
+ name: 角色的公開名稱,如果角色設定為顯示為徽章
+ permissions_as_keys: 有此角色的使用者將有權存取……
+ position: 在某些情況下,衝突的解決方式由更高階的角色決定。某些動作只能由優先程度較低的角色執行
webhook:
events: 請選擇要傳送的事件
url: 事件會被傳送至何處
@@ -181,6 +193,7 @@ zh-TW:
setting_use_pending_items: 限速模式
severity: 優先級
sign_in_token_attempt: 安全代碼
+ title: 標題
type: 匯入類型
username: 使用者名稱
username_or_email: 使用者名稱或電子信箱地址
@@ -189,6 +202,10 @@ zh-TW:
with_dns_records: 包括網域的 MX 記錄和 IP 位址
featured_tag:
name: "「#」標籤"
+ filters:
+ actions:
+ hide: 完全隱藏
+ warn: 隱藏於警告之後
interactions:
must_be_follower: 封鎖非跟隨者的通知
must_be_following: 封鎖您未跟隨之使用者的通知
@@ -222,6 +239,14 @@ zh-TW:
name: 主題標籤
trendable: 允許此主題標籤在趨勢下顯示
usable: 允許嘟文使用此主題標籤
+ user:
+ role: 角色
+ user_role:
+ color: 識別顏色
+ highlighted: 在使用者個人資料上將角色顯示為徽章
+ name: 名稱
+ permissions_as_keys: 權限
+ position: 優先權
webhook:
events: 已啟用的事件
url: 端點 URL
diff --git a/config/locales/sk.yml b/config/locales/sk.yml
index 1f64c78c723..5fefb4e09e5 100644
--- a/config/locales/sk.yml
+++ b/config/locales/sk.yml
@@ -87,9 +87,7 @@ sk:
posts_tab_heading: Príspevky
posts_with_replies: Príspevky s odpoveďami
roles:
- admin: Správca
group: Skupina
- moderator: Moderátor
unavailable: Profil nieje dostupný
unfollow: Prestaň sledovať
admin:
@@ -107,7 +105,6 @@ sk:
avatar: Maskot
by_domain: Doména
change_email:
- changed_msg: Email pre tento účet bol úspešne zmenený!
current_email: Súčasný email
label: Zmeň email
new_email: Nový email
@@ -174,12 +171,6 @@ sk:
reset: Resetuj
reset_password: Obnov heslo
resubscribe: Znovu odoberaj
- role: Oprávnenia
- roles:
- admin: Správca
- moderator: Moderátor
- staff: Člen
- user: Užívateľ
search: Hľadaj
search_same_email_domain: Iní užívatelia s tou istou emailovou doménou
search_same_ip: Ostatní užívatelia s rovnakou IP adresou
@@ -374,8 +365,11 @@ sk:
back_to_warning: Upozornenie
by_domain: Doména
content_policies:
+ comment: Interná poznámka
policies:
+ reject_media: Zamietni médiá
suspend: Vylúč
+ reason: Verejné odôvodnenie
delivery:
all: Všetko
unavailable: Nedostupné
@@ -473,6 +467,9 @@ sk:
unassign: Odober
unresolved: Nevyriešené
updated_at: Aktualizované
+ rules:
+ empty: Žiadne pravidlá servera ešte neboli určené.
+ title: Serverové pravidlá
settings:
activity_api_enabled:
desc_html: Sčítanie miestne uverejnených príspevkov, aktívnych užívateľov, a nových registrácii, v týždenných intervaloch
@@ -518,9 +515,6 @@ sk:
deletion:
desc_html: Dovoľ každému, aby si mohli vymazať svok účet
title: Sprístupni možnosť vymazať si účet
- min_invite_role:
- disabled: Nikto
- title: Povoľ pozvánky od
registrations_mode:
modes:
approved: Pre registráciu je nutné povolenie
@@ -530,9 +524,6 @@ sk:
show_known_fediverse_at_about_page:
desc_html: Ak je zapnuté, bude v ukážke osi možné nahliadnúť príspevky z celého známeho fediversa. Inak budú ukázané iba príspevky z miestnej osi.
title: Ukáž celé známe fediverse na náhľade osi
- show_staff_badge:
- desc_html: Ukáž moderátorsky odznak na užívateľovom profile
- title: Ukáž značku moderátora
site_description:
desc_html: Oboznamujúci paragraf na hlavnej stránke a pri meta tagoch. Opíš, čo robí tento Mastodon server špecifickým, a ďalej hocičo iné, čo považuješ za dôležité. Môžeš použiť HTML kód, hlavne <a>
a <em>
.
title: Popis servera
@@ -774,7 +765,6 @@ sk:
title: Uprav triedenie
errors:
invalid_context: Nebola poskytnutá žiadna, alebo ide o neplatnú súvislosť
- invalid_irreversible: Nezvratné filtrovanie funguje iba so súvislostiami domovskej osi a oboznámení
index:
delete: Vymaž
empty: Nemáš žiadné filtrovanie.
diff --git a/config/locales/sl.yml b/config/locales/sl.yml
index ff3492d6056..e4c510308fd 100644
--- a/config/locales/sl.yml
+++ b/config/locales/sl.yml
@@ -91,10 +91,8 @@ sl:
posts_tab_heading: Objave
posts_with_replies: Objave in odgovori
roles:
- admin: Skrbnik
bot: Robot
group: Skupina
- moderator: Mod
unavailable: Profil ni na voljo
unfollow: Prenehaj slediti
admin:
@@ -113,12 +111,17 @@ sl:
avatar: Podoba
by_domain: Domena
change_email:
- changed_msg: E-pošta računa je uspešno spremenjena!
+ changed_msg: E-pošni naslov uspešno spremenjen!
current_email: Trenutna e-pošta
label: Spremeni e-pošto
new_email: Nova e-pošta
submit: Spremeni e-pošto
title: Spremeni e-pošto za %{username}
+ change_role:
+ changed_msg: Vloga uspešno spremenjena!
+ label: Spremeni vlogo
+ no_role: Ni vloge
+ title: Spremeni vlogo za %{username}
confirm: Potrdi
confirmed: Potrjeno
confirming: Potrjujem
@@ -162,6 +165,7 @@ sl:
active: Dejaven
all: Vse
pending: Na čakanju
+ silenced: Omejeno
suspended: Suspendiran
title: Moderiranje
moderation_notes: Opombe moderiranja
@@ -169,6 +173,7 @@ sl:
most_recent_ip: Zadnji IP
no_account_selected: Noben račun ni bil spremenjen, ker ni bil izbran noben
no_limits_imposed: Brez omejitev
+ no_role_assigned: Dodeljena ni nobena vloga
not_subscribed: Ni naročen
pending: Čakanje na pregled
perform_full_suspension: Suspendiraj
@@ -197,12 +202,7 @@ sl:
reset: Ponastavi
reset_password: Ponastavi geslo
resubscribe: Ponovno se naroči
- role: Dovoljenja
- roles:
- admin: Skrbnik
- moderator: Moderator
- staff: Osebje
- user: Uporabnik
+ role: Vloga
search: Iskanje
search_same_email_domain: Drugi uporabniki z isto domeno e-pošte
search_same_ip: Drugi uporabniki z istim IP
@@ -677,6 +677,71 @@ sl:
unresolved: Nerešeni
updated_at: Posodobljeni
view_profile: Pokaži profil
+ roles:
+ add_new: Dodaj vlogo
+ assigned_users:
+ few: "%{count} uporabniki"
+ one: "%{count} uporabnik"
+ other: "%{count} uporabnikov"
+ two: "%{count} uporabnika"
+ categories:
+ administration: Upravljanje
+ devops: Razvojniki
+ invites: Povabila
+ moderation: Moderiranje
+ special: Posebno
+ delete: Izbriši
+ description_html: Z uporabniškimi vlogami lahko prilagodite, do katerih funkcij in področij Mastodona lahko dostopajo vaši uporabniki.
+ edit: Uredi vlogo %{name}
+ everyone: Privzete pravice
+ everyone_full_description_html: To je osnovna vloga, ki vpliva na vse uporabnike, celo na tiste brez dodeljene vloge. Vse druge vloge dedujejo njene pravice.
+ permissions_count:
+ few: "%{count} pravice"
+ one: "%{count} pravica"
+ other: "%{count} pravic"
+ two: "%{count} pravici"
+ privileges:
+ administrator: Skrbnik
+ administrator_description: Uporabniki s temi pravicami bodo zaobšli vse pravice
+ delete_user_data: Izbriši uporabniške podatke
+ delete_user_data_description: Omogoča uporabnikom, da izbrišejo podatke drugih uporabnikov brez časvnega zamika
+ invite_users: Povabi uporabnike
+ invite_users_description: Omogoča uporabnikom, da povabi nove osebe na strežnik
+ manage_announcements: Upravljaj obvestila
+ manage_announcements_description: Omogoča uporabnikom, da upravljajo obvestila na strežniku
+ manage_appeals: Upravljaj pritožbe
+ manage_appeals_description: Omogoča uporabnikom, da pregledajo pritožbe glede dejanj moderiranja
+ manage_blocks: Upravljaj blokirano
+ manage_blocks_description: Omogoča uporabnikom, da blokirajo ponudnike e-pošte in naslove IP
+ manage_custom_emojis: Upravljaj emodžije po meri
+ manage_custom_emojis_description: Omogoča uporabnikom, da upravljajo emodžije po meri na strežniku
+ manage_federation: Upravljaj beli seznam
+ manage_federation_description: Omogoča uporabnikom blokirati ali dovoljevati vstop na beli seznam z druimi domenami ter nadzirati dostavljivost
+ manage_invites: Upravljaj vabila
+ manage_invites_description: Omogoča uporabnikom, da brskajo in deaktivirajo povezave povabil
+ manage_reports: Upravljaj poročila
+ manage_reports_description: Omogoča uporabnikom, da pregledajo poročila in glede le-teh opravijo dejanja moderiranja
+ manage_roles: Upravljaj vloge
+ manage_roles_description: Omogoča uporabnikom upravljati in dodeljevati vloge pod svojo
+ manage_rules: Upravljaj pravila
+ manage_rules_description: Omogoča uporabnikom, da spremenijo pravila strežnika
+ manage_settings: Upravljaj nastavitve
+ manage_settings_description: Omogoča uporabnikom, da spremenijo nastavitve spletišča
+ manage_taxonomies: Upravljaj taksonomije
+ manage_taxonomies_description: Omogoča uporabnikom, da preverijo vsebino v trendu in posodobijo nastavitve ključnikov
+ manage_user_access: Upravljaj dostop uporabnikov
+ manage_user_access_description: Omogoča uporabnikom, da onemogočijo drugim uporabnikom dvofazno overjanje, spremenijo njihov e-naslov ter ponastavijo njihovo geslo
+ manage_users: Upravljaj uporabnike
+ manage_users_description: Omogoča uporabnikom, da vidijo podrobnosti drugih uporabnikov in nad njimi izvedejo dejanja moderiranja
+ manage_webhooks: Upravljaj spletne zanke
+ manage_webhooks_description: Omogoča uporabnikom, da vzpostavijo nove spletne zanke za skrbniške dogodke
+ view_audit_log: Pokaži revizijski zapisnik
+ view_audit_log_description: Omogoča, da uporabnik vidi zgodovino skrbniških opravil na strežniku
+ view_dashboard: Pokaži nadzorno ploščo
+ view_dashboard_description: Omogoča uporabnikom, da dostopajo do nadzorne plošče in različnih meritev
+ view_devops: Razvojniki
+ view_devops_description: Omogoča uporabnikom, da dostopajo do nadzornih plošč Sidekiq in phHero
+ title: Vloge
rules:
add_new: Dodaj pravilo
delete: Izbriši
@@ -729,9 +794,6 @@ sl:
deletion:
desc_html: Dovoli vsakomur, da izbriše svoj račun
title: Odpri brisanje računa
- min_invite_role:
- disabled: Nihče
- title: Dovoli vabila od
require_invite_text:
desc_html: Če registracije zahtevajo ročno potrditev, nastavite vnos besedila pod »Zakaj se želite pridružiti?« za obveznega
title: Zahteva, da novi uprorabniki navedejo razlog, zakaj se želijo registrirati
@@ -744,9 +806,6 @@ sl:
show_known_fediverse_at_about_page:
desc_html: Ko preklopite, bo prikazal objave vseh znanih fediverzumov v predogledu. V nasprotnem primeru bodo prikazane samo krajevne objave.
title: Pokaži znane fediverse-e v predogledu časovnice
- show_staff_badge:
- desc_html: Prikaži značko osebja na uporabniški strani
- title: Prikaži značko osebja
site_description:
desc_html: Uvodni odstavek na API-ju. Opišite, zakaj je ta Mastodon strežnik poseben in karkoli pomembnega. Lahko uporabite HTML oznake, zlasti <a>
in <em>
.
title: Opis strežnika
@@ -896,6 +955,11 @@ sl:
empty: Zaenkrat še nimate prilagojenih končnih točk spletnih zank.
enable: Omogoči
enabled: Dejaven
+ enabled_events:
+ few: "%{count} omogočeni dogodki"
+ one: "%{count} omogočen dogodek"
+ other: "%{count} omogočenih dogodkov"
+ two: "%{count} omogočena dogodka"
events: Dogodki
new: Nova spletna zanka
rotate_secret: Zasukaj skrivnost
@@ -1155,15 +1219,26 @@ sl:
public: Javne časovnice
thread: Pogovori
edit:
+ add_keyword: Dodaj ključno besedo
+ keywords: Ključne besede
title: Uredite filter
errors:
+ deprecated_api_multiple_keywords: Teh parametrov ni mogoče spremeniti iz tega programa, ker veljajo za več kot eno ključno besedo filtra. Uporabite novejšo izdaj programa ali spletni vmesnik.
invalid_context: Ne vsebuje nobenega ali vsebuje neveljaven kontekst
- invalid_irreversible: Nepovratno filtriranje deluje le v kontekstu doma ali obvestil
index:
+ contexts: Filtri v %{contexts}
delete: Izbriši
empty: Nimate filtrov.
+ expires_in: Poteče čez %{distance}
+ expires_on: Poteče %{date}
+ keywords:
+ few: "%{count} ključne besede"
+ one: "%{count} ključna beseda"
+ other: "%{count} ključnih besed"
+ two: "%{count} ključni besedi"
title: Filtri
new:
+ save: Shrani nov filter
title: Dodaj nov filter
footer:
developers: Razvijalci
@@ -1286,6 +1361,8 @@ sl:
copy_account_note_text: 'Ta uporabnik se je preselil iz %{acct}, tukaj so vaše poprejšnje opombe o njem:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} je oddal/a prijavo"
sign_up:
subject: "%{name} se je vpisal/a"
digest:
diff --git a/config/locales/sq.yml b/config/locales/sq.yml
index 0e4d9871eea..8a91cc6f445 100644
--- a/config/locales/sq.yml
+++ b/config/locales/sq.yml
@@ -83,10 +83,8 @@ sq:
posts_tab_heading: Mesazhe
posts_with_replies: Mesazhe dhe përgjigje
roles:
- admin: Përgjegjës
bot: Robot
group: Grup
- moderator: Moderator
unavailable: Profil jashtë funksionimi
unfollow: Resht së ndjekuri
admin:
@@ -105,12 +103,17 @@ sq:
avatar: Avatar
by_domain: Përkatësi
change_email:
- changed_msg: Email-i i llogarisë u ndryshua me sukses!
+ changed_msg: Email-i u ndryshua me sukses!
current_email: Email-i i tanishëm
label: Ndrysho email-in
new_email: Email i ri
submit: Ndrysho email-in
title: Ndrysho email-in për %{username}
+ change_role:
+ changed_msg: Roli u ndryshua me sukses!
+ label: Ndryshoni rol
+ no_role: Pa rol
+ title: Ndryshoni rolin për %{username}
confirm: Ripohojeni
confirmed: U ripohua
confirming: Po ripohohet
@@ -154,6 +157,7 @@ sq:
active: Aktiv
all: Krejt
pending: Pezull
+ silenced: I kufizuar
suspended: Të pezulluara
title: Moderim
moderation_notes: Shënime moderimesh
@@ -161,6 +165,7 @@ sq:
most_recent_ip: IP-ja më e freskët
no_account_selected: S’u ndryshua ndonjë llogari, ngaqë s’u përzgjodh ndonjë
no_limits_imposed: Pa imponim kufijsh
+ no_role_assigned: Pa rol të caktuar
not_subscribed: Jo i pajtuar
pending: Në pritje të shqyrtimit
perform_full_suspension: Pezulloje
@@ -187,12 +192,7 @@ sq:
reset: Riktheje te parazgjedhjet
reset_password: Ricaktoni fjalëkalimin
resubscribe: Ripajtohuni
- role: Leje
- roles:
- admin: Përgjegjës
- moderator: Moderator
- staff: Staf
- user: Përdorues
+ role: Rol
search: Kërkoni
search_same_email_domain: Të tjerë përdorues me të njëjtën përkatësi email-i
search_same_ip: Të tjerë përdorues me të njëjtën IP
@@ -648,6 +648,65 @@ sq:
unresolved: Të pazgjidhur
updated_at: U përditësua më
view_profile: Shihni profilin
+ roles:
+ add_new: Shtoni rol
+ assigned_users:
+ one: "%{count} përdorues"
+ other: "%{count} përdorues"
+ categories:
+ administration: Administrim
+ invites: Ftesa
+ moderation: Moderim
+ special: Special
+ delete: Fshije
+ description_html: Me role përdoruesi, mund të përshtatni cilat funksione dhe fusha të Mastodon-it mund të përdorin përdoruesit tuaj.
+ edit: Përpunoni rolin e '%{name}'
+ everyone: Leje parazgjedhje
+ everyone_full_description_html: Ky është roli bazë që prek krejt përdoruesit, madje edhe ata pa një rol të caktuar. Krejt rolet e tjerë trashëgojnë lejet prej tij.
+ permissions_count:
+ one: "%{count} leje"
+ other: "%{count} leje"
+ privileges:
+ administrator: Përgjegjës
+ administrator_description: Përdoruesit me këtë leje do të anashkalojnë çdo leje
+ delete_user_data: Të Fshijë të Dhëna Përdoruesi
+ delete_user_data_description: U lejon përdoruesve të fshijnë pa humbur kohë të dhëna përdoruesish të tjerë
+ invite_users: Të Ftojë Përdorues
+ invite_users_description: U lejon përdruesve të ftojë te shërbyesi persona të rinj
+ manage_announcements: Të Administrojë Njoftime
+ manage_announcements_description: U lejon përdoruesve të administrojë njoftime te shërbyesi
+ manage_appeals: Të Administrojë Apelime
+ manage_appeals_description: U lejon përdoruesve të shqyrtojnë apelime kundër veprimesh moderimi
+ manage_blocks: Të Administrojë Bllokim
+ manage_blocks_description: U lejon përdoruesve të bllokojnë shërbime email dhe adresa IP
+ manage_custom_emojis: Të Administrojë Emoxhi Vetjake
+ manage_custom_emojis_description: U lejon përdoruesve të administrojnë te shërbyesi emoxhi vetjake
+ manage_federation: Të Administrjë Federim
+ manage_federation_description: U lejon përdoruesve të bllokojnë ose lejojnë federim me përkatësi të tjera dhe të kontrollojnë shpërndarjen
+ manage_invites: Të Administrojë Ftesa
+ manage_invites_description: U lejon përdoruesve të shfletojnë dhe çaktivizojnë lidhje ftesash
+ manage_reports: Të Administrojë Raportime
+ manage_reports_description: U lejon përdruesve të shqyrtojnë raportime dhe kryejnë veprime moderimi ndaj tyre
+ manage_roles: Të Administrojë Role
+ manage_roles_description: U lejon përdoruesve të administrojnë dhe caktojnë role nën të tyret
+ manage_rules: Të Administrojë Rregulla
+ manage_rules_description: U lejon përdoruesve të ndryshojnë rregulla shërbyesi
+ manage_settings: Të Administrojë Rregullime
+ manage_settings_description: U lejon përdoruesve të ndryshojnë rregullime sajti
+ manage_taxonomies: Të Administrojë Klasifikime
+ manage_taxonomies_description: U lejon përdoruesve të shqyrtojnë lëndë në modë dhe të përditësojnë rregullime hashtag-ësh
+ manage_user_access: Të Administrojë Hyrje Përdoruesi
+ manage_user_access_description: U lejon përdoruesve të çaktivizojnë mirëfilltësim dyfaktorësh për përdorues të tjerë, të ndryshojnë adresa të tyret email dhe të ricaktojnë fjalëkalimet e tyre
+ manage_users: Të Administrojë Përdorues
+ manage_users_description: U lejon përdoruesve të shohin hollësi përdoruesish të tjerë dhe të kryejnë veprime moderimi mbi ta
+ manage_webhooks: Të Administrojë Webhook-e
+ manage_webhooks_description: U lejon përdoruesve të ujdisin webhook-e për veprime administrative
+ view_audit_log: Shihni Regjistër Auditimesh
+ view_audit_log_description: U lejon përdoruesve të shohin një historik veprimesh administrative te shërbyesi
+ view_dashboard: Shihni Pultin
+ view_dashboard_description: U lejon përdoruesve të hyjnë te pulti dhe shohin shifra të ndryshme matjesh
+ view_devops_description: U lejon përdoruesve të hyjnë në pultet Sidekiq dhe pgHero
+ title: Role
rules:
add_new: Shtoni rregull
delete: Fshije
@@ -700,9 +759,6 @@ sq:
deletion:
desc_html: Lejo këdo të fshijë llogarinë e vet
title: Hapni fshirje llogarie
- min_invite_role:
- disabled: Asnjë
- title: Lejo ftesa nga
require_invite_text:
desc_html: Kur regjistrimet lypin miratim dorazi, tekstin e kërkesës për ftesë “Pse doni të merrni pjesë?” bëje të detyrueshëm, në vend se opsional
title: Kërkoju përdoruesve të rinj të plotësojnë doemos një tekst kërkese për ftesë
@@ -715,9 +771,6 @@ sq:
show_known_fediverse_at_about_page:
desc_html: Kur përdoret, do të shfaqë mesazhe prej krejt fediversit të njohur, si paraparje. Përndryshe do të shfaqë vetëm mesazhe vendore
title: Përfshi lëndë të federuar në faqe rrjedhe publike kohore të pamirëfilltësuar
- show_staff_badge:
- desc_html: Shfaq një stemë stafi në faqen e një përdoruesi
- title: Shfaq stemë stafi
site_description:
desc_html: Paragraf hyrës te faqja ballore. Përshkruani ç’e bën special këtë shërbyes Mastodon dhe çfarëdo gjëje tjetër të rëndësishme. Mund të përdorni etiketa HTML, veçanërisht <a>
dhe <em>
.
title: Përshkrim shërbyesi
@@ -867,6 +920,7 @@ sq:
secret: E fshehtë nënshkrimesh
status: Gjendje
title: Webhook-ë
+ webhook: Webhook
admin_mailer:
new_appeal:
actions:
@@ -1116,15 +1170,24 @@ sq:
public: Rrjedha kohore publike
thread: Biseda
edit:
+ add_keyword: Shtoni fjalëkyç
+ keywords: Fjalëkyçe
title: Përpunoni filtër
errors:
+ deprecated_api_multiple_keywords: Këta parametra s’mund të ndryshohen nga ky aplikacion, ngaqë aplikohen mbi më shumë se një fjalëkyç filtri. Përdorni një aplikacion më të ri, ose ndërfaqen web.
invalid_context: Ose s’u dha fare, ose u dha kontekst i pavlefshëm
- invalid_irreversible: Filtrim i pakthyeshëm funksionon vetëm me kontekste home ose njoftimesh
index:
+ contexts: Filtra në %{contexts}
delete: Fshije
empty: S’keni filtra.
+ expires_in: Skadon për %{distance}
+ expires_on: Skadon më %{date}
+ keywords:
+ one: "%{count} fjalëkyç"
+ other: "%{count} fjalëkyçe"
title: Filtra
new:
+ save: Ruani filtër të ri
title: Shtoni filtër të ri
footer:
developers: Zhvillues
@@ -1243,6 +1306,8 @@ sq:
copy_account_note_text: 'Ky përdorues ka ikur prej %{acct}, ja ku janë shënimet tuaja të mëparshme mbi të:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} parashtroi një raportim"
sign_up:
subject: "%{name} u regjistrua"
digest:
diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml
index cfea20c5557..a94893b9e5e 100644
--- a/config/locales/sr-Latn.yml
+++ b/config/locales/sr-Latn.yml
@@ -19,9 +19,6 @@ sr-Latn:
people_followed_by: Ljudi koje %{name} prati
people_who_follow: Ljudi koji prate %{name}
posts_with_replies: Tutovi i odgovori
- roles:
- admin: Administrator
- moderator: Moderator
unfollow: Otprati
admin:
account_moderation_notes:
@@ -76,10 +73,6 @@ sr-Latn:
reset: Resetuj
reset_password: Resetuj lozinku
resubscribe: Ponovo se pretplati
- role: Ovlašćenja
- roles:
- staff: Osoblje
- user: Korisnik
search: Pretraga
shared_inbox_url: Adresa deljenog sandučeta
show:
@@ -180,12 +173,6 @@ sr-Latn:
deletion:
desc_html: Dozvoli svima da mogu da obrišu svoj nalog
title: Otvori brisanje naloga
- min_invite_role:
- disabled: Niko
- title: Samo preko pozivnice
- show_staff_badge:
- desc_html: Prikaži bedž osoblja na korisničkoj strani
- title: Prikaži bedž osoblja
site_description:
desc_html: Uvodni pasus na naslovnoj strani i u meta HTML tagovima. Možete koristiti HTML tagove, konkretno <a>
i <em>
.
title: Opis instance
diff --git a/config/locales/sr.yml b/config/locales/sr.yml
index 445f8f32656..2042fc4409a 100644
--- a/config/locales/sr.yml
+++ b/config/locales/sr.yml
@@ -52,9 +52,7 @@ sr:
posts_tab_heading: Трубе
posts_with_replies: Трубе и одговори
roles:
- admin: Администратор
bot: Бот
- moderator: Модератор
unavailable: Налог је недоступан
unfollow: Отпрати
admin:
@@ -70,7 +68,6 @@ sr:
avatar: Аватар
by_domain: Домен
change_email:
- changed_msg: Е-пошта налога успешно промењена!
current_email: Тренутна е-пошта
label: Промените е-пошту
new_email: Нова e-пошта
@@ -130,12 +127,6 @@ sr:
reset: Ресетуј
reset_password: Ресетуј лозинку
resubscribe: Поново се претплати
- role: Овлашћења
- roles:
- admin: Администратор
- moderator: Модератор
- staff: Особље
- user: Корисник
search: Претрага
shared_inbox_url: Адреса дељеног сандучета
show:
@@ -312,15 +303,9 @@ sr:
deletion:
desc_html: Дозволи свима да могу да обришу свој налог
title: Отвори брисање налога
- min_invite_role:
- disabled: Нико
- title: Само преко позивнице
show_known_fediverse_at_about_page:
desc_html: Када се упали, показаће трубе из свих знаних федиверса на преглед. У супротном ће само показати локалне трубе.
title: Покажи познате здружене инстанце у прегледнику временске линије
- show_staff_badge:
- desc_html: Прикажи беџ особља на корисничкој страни
- title: Прикажи беџ особља
site_description:
desc_html: Уводни пасус на насловној страни и у meta HTML таговима. Можете користити HTML тагове, конкретно <a>
и <em>
.
title: Опис инстанце
@@ -459,7 +444,6 @@ sr:
title: Измени филтер
errors:
invalid_context: Ниједан или неважећи контекст испоручен
- invalid_irreversible: Неповратно филтрирање функционише само са почетном или контекстом обавештења
index:
delete: Избриши
title: Филтери
diff --git a/config/locales/sv.yml b/config/locales/sv.yml
index a84ae6cfec0..1e238b196df 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -80,10 +80,8 @@ sv:
posts_tab_heading: Tutor
posts_with_replies: Toots med svar
roles:
- admin: Administratör
bot: Robot
group: Grupp
- moderator: Moderator
unavailable: Profilen är inte tillgänglig
unfollow: Sluta följa
admin:
@@ -101,7 +99,6 @@ sv:
avatar: Profilbild
by_domain: Domän
change_email:
- changed_msg: E-postadressen har ändrats!
current_email: Nuvarande E-postadress
label: Byt E-postadress
new_email: Ny E-postadress
@@ -177,12 +174,6 @@ sv:
reset: Återställ
reset_password: Återställ lösenord
resubscribe: Starta en ny prenumeration
- role: Behörigheter
- roles:
- admin: Administratör
- moderator: Moderator
- staff: Personal
- user: Användare
search: Sök
search_same_email_domain: Andra användare med samma e-postdomän
search_same_ip: Annan användare med samma IP-adress
@@ -565,9 +556,6 @@ sv:
deletion:
desc_html: Tillåt vem som helst att radera sitt konto
title: Öppen kontoradering
- min_invite_role:
- disabled: Ingen
- title: Tillåt inbjudningar av
require_invite_text:
desc_html: När nyregistrering kräver manuellt godkännande, gör det obligatoriskt att fylla i text i fältet "Varför vill du gå med?"
title: Kräv att nya användare fyller i en inbjudningsförfrågan
@@ -580,9 +568,6 @@ sv:
show_known_fediverse_at_about_page:
desc_html: När den växlas, kommer toots från hela fediverse visas på förhandsvisning. Annars visas bara lokala toots.
title: Visa det kända fediverse på tidslinjens förhandsgranskning
- show_staff_badge:
- desc_html: Visa en personalbricka på en användarsida
- title: Visa personalbricka
site_description:
desc_html: Inledande stycke på framsidan och i metataggar. Du kan använda HTML-taggar, i synnerhet <a>
och <em>
.
title: Instansbeskrivning
diff --git a/config/locales/ta.yml b/config/locales/ta.yml
index 3016250ccdd..d2b753cf3b8 100644
--- a/config/locales/ta.yml
+++ b/config/locales/ta.yml
@@ -62,10 +62,8 @@ ta:
posts_tab_heading: பிளிறல்கள்
posts_with_replies: பிளிறல்கள் மற்றும் மறுமொழிகள்
roles:
- admin: நிர்வாகி
bot: பொறி
group: குழு
- moderator: மட்டுறுத்துநர்
unavailable: சுயவிவரம் கிடைக்கவில்லை
unfollow: பின்தொடராதே
admin:
@@ -83,7 +81,6 @@ ta:
avatar: அவதாரம்
by_domain: தளம்
change_email:
- changed_msg: உறிமை மின் அஞ்சல் வெற்றிகரமாக மாற்ற்ப்பட்டது!
current_email: தற்கால மின் அஞ்சல்
label: மின் அஞ்சலை மற்றுக
new_email: புதிய மின் அஞ்சல்
@@ -139,12 +136,6 @@ ta:
already_confirmed: இப்பயனர் ஏற்கனவே உறுதி படுத்திவிட்டார்
reset: மீட்டமைக்கவும்
reset_password: கடவுச்சொல்லை மீளமைத்திடுக
- role: அனுமதி
- roles:
- admin: நிர்வாகி
- moderator: நடுவர்
- staff: பணியாளர்
- user: பயனர்
search: தேடு
search_same_email_domain: இம்மின்னஞ்சல் களத்தில் உள்ள மற்ற பயனர்கள்
shared_inbox_url: குழு மின்னஞ்சல் முகவரி
diff --git a/config/locales/te.yml b/config/locales/te.yml
index 7f6aa0f0917..fe39bb75250 100644
--- a/config/locales/te.yml
+++ b/config/locales/te.yml
@@ -48,9 +48,7 @@ te:
posts_tab_heading: టూట్లు
posts_with_replies: టూట్లు మరియు ప్రత్యుత్తరాలు
roles:
- admin: నిర్వాహకులు
bot: బోట్
- moderator: నియంత్రికుడు
unfollow: అనుసరించవద్దు
admin:
account_actions:
@@ -65,7 +63,6 @@ te:
avatar: అవతారం
by_domain: డొమైను
change_email:
- changed_msg: ఖాతా యొక్క ఈమెయిల్ విజయవంతంగా మార్చబడింది!
current_email: ప్రస్తుత ఈమెయిల్
label: ఈమెయిల్ ను మార్చు
new_email: కొత్త ఈమెయిల్
diff --git a/config/locales/th.yml b/config/locales/th.yml
index 57fbc1fddb0..d48d4ddb34a 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -74,10 +74,8 @@ th:
posts_tab_heading: โพสต์
posts_with_replies: โพสต์และการตอบกลับ
roles:
- admin: ผู้ดูแล
bot: บอต
group: กลุ่ม
- moderator: ผู้ควบคุม
unavailable: โปรไฟล์ไม่พร้อมใช้งาน
unfollow: เลิกติดตาม
admin:
@@ -96,12 +94,17 @@ th:
avatar: ภาพประจำตัว
by_domain: โดเมน
change_email:
- changed_msg: เปลี่ยนอีเมลบัญชีสำเร็จ!
+ changed_msg: เปลี่ยนอีเมลสำเร็จ!
current_email: อีเมลปัจจุบัน
label: เปลี่ยนอีเมล
new_email: อีเมลใหม่
submit: เปลี่ยนอีเมล
title: เปลี่ยนอีเมลสำหรับ %{username}
+ change_role:
+ changed_msg: เปลี่ยนบทบาทสำเร็จ!
+ label: เปลี่ยนบทบาท
+ no_role: ไม่มีบทบาท
+ title: เปลี่ยนบทบาทสำหรับ %{username}
confirm: ยืนยัน
confirmed: ยืนยันแล้ว
confirming: กำลังยืนยัน
@@ -145,6 +148,7 @@ th:
active: ใช้งานอยู่
all: ทั้งหมด
pending: รอดำเนินการ
+ silenced: จำกัดอยู่
suspended: ระงับอยู่
title: การควบคุม
moderation_notes: หมายเหตุการควบคุม
@@ -177,12 +181,7 @@ th:
reset: รีเซ็ต
reset_password: ตั้งรหัสผ่านใหม่
resubscribe: บอกรับใหม่
- role: สิทธิอนุญาต
- roles:
- admin: ผู้ดูแล
- moderator: ผู้ควบคุม
- staff: พนักงาน
- user: ผู้ใช้
+ role: บทบาท
search: ค้นหา
search_same_email_domain: ผู้ใช้อื่น ๆ ที่มีโดเมนอีเมลเดียวกัน
search_same_ip: ผู้ใช้อื่น ๆ ที่มี IP เดียวกัน
@@ -596,6 +595,23 @@ th:
unresolved: ยังไม่ได้แก้ปัญหา
updated_at: อัปเดตเมื่อ
view_profile: ดูโปรไฟล์
+ roles:
+ add_new: เพิ่มบทบาท
+ assigned_users:
+ other: "%{count} ผู้ใช้"
+ categories:
+ administration: การดูแล
+ invites: คำเชิญ
+ moderation: การควบคุม
+ special: พิเศษ
+ delete: ลบ
+ edit: แก้ไขบทบาท '%{name}'
+ everyone: สิทธิอนุญาตเริ่มต้น
+ permissions_count:
+ other: "%{count} สิทธิอนุญาต"
+ privileges:
+ manage_roles: จัดการบทบาท
+ title: บทบาท
rules:
add_new: เพิ่มกฎ
delete: ลบ
@@ -647,9 +663,6 @@ th:
deletion:
desc_html: อนุญาตให้ใครก็ตามลบบัญชีของเขา
title: เปิดการลบบัญชี
- min_invite_role:
- disabled: ไม่มีใคร
- title: อนุญาตคำเชิญโดย
require_invite_text:
title: ต้องให้ผู้ใช้ใหม่ป้อนเหตุผลที่จะเข้าร่วม
registrations_mode:
@@ -661,9 +674,6 @@ th:
show_known_fediverse_at_about_page:
desc_html: เมื่อปิดใช้งาน จำกัดเส้นเวลาสาธารณะที่เชื่อมโยงจากหน้าเริ่มต้นให้แสดงเฉพาะเนื้อหาในเซิร์ฟเวอร์เท่านั้น
title: รวมเนื้อหาที่ติดต่อกับภายนอกไว้ในหน้าเส้นเวลาสาธารณะที่ไม่ได้รับรองความถูกต้อง
- show_staff_badge:
- desc_html: แสดงป้ายพนักงานในหน้าผู้ใช้
- title: แสดงป้ายพนักงาน
site_description:
desc_html: ย่อหน้าเกริ่นนำใน API อธิบายถึงสิ่งที่ทำให้เซิร์ฟเวอร์ Mastodon นี้พิเศษและสิ่งอื่นใดที่สำคัญ คุณสามารถใช้แท็ก HTML โดยเฉพาะอย่างยิ่ง <a>
และ <em>
title: คำอธิบายเซิร์ฟเวอร์
@@ -1032,12 +1042,20 @@ th:
public: เส้นเวลาสาธารณะ
thread: การสนทนา
edit:
+ add_keyword: เพิ่มคำสำคัญ
+ keywords: คำสำคัญ
title: แก้ไขตัวกรอง
index:
+ contexts: กรองใน %{contexts}
delete: ลบ
empty: คุณไม่มีตัวกรอง
+ expires_in: หมดอายุใน %{distance}
+ expires_on: หมดอายุเมื่อ %{date}
+ keywords:
+ other: "%{count} คำสำคัญ"
title: ตัวกรอง
new:
+ save: บันทึกตัวกรองใหม่
title: เพิ่มตัวกรองใหม่
footer:
developers: นักพัฒนา
@@ -1142,6 +1160,8 @@ th:
copy_account_note_text: 'ผู้ใช้นี้ได้ย้ายจาก %{acct} นี่คือหมายเหตุก่อนหน้านี้ของคุณเกี่ยวกับผู้ใช้:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} ได้ส่งรายงาน"
sign_up:
subject: "%{name} ได้ลงทะเบียน"
digest:
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index 7bd5723c43c..bc2b730f846 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -83,10 +83,8 @@ tr:
posts_tab_heading: Tootlar
posts_with_replies: Tootlar ve yanıtlar
roles:
- admin: Yönetici
bot: Bot
group: Grup
- moderator: Denetleyici
unavailable: Profil kullanılamıyor
unfollow: Takibi bırak
admin:
@@ -105,12 +103,17 @@ tr:
avatar: Profil resmi
by_domain: Alan adı
change_email:
- changed_msg: Hesap e-postası başarıyla değiştirildi!
+ changed_msg: E-posta başarıyla değiştirildi!
current_email: Mevcut e-posta
label: E-postayı değiştir
new_email: Yeni e-posta
submit: E-postayı değiştir
title: "%{username} için e-postayı değiştir"
+ change_role:
+ changed_msg: Rol başarıyla değiştirildi!
+ label: Rolü değiştir
+ no_role: Rol yok
+ title: "%{username} için rolü değiştir"
confirm: Onayla
confirmed: Onaylandı
confirming: Onaylanıyor
@@ -154,6 +157,7 @@ tr:
active: Etkin
all: Hepsi
pending: Bekliyor
+ silenced: Sınırlı
suspended: Uzaklaştırılanlar
title: Denetim
moderation_notes: Denetleme notları
@@ -161,6 +165,7 @@ tr:
most_recent_ip: Son IP
no_account_selected: Hiçbiri seçilmediğinden hiçbir hesap değiştirilmedi
no_limits_imposed: Sınır koymaz
+ no_role_assigned: Rol atanmamış
not_subscribed: Abone edilmedi
pending: Bekleyen yorum
perform_full_suspension: Askıya al
@@ -187,12 +192,7 @@ tr:
reset: Sıfırla
reset_password: Parolayı sıfırla
resubscribe: Yeniden abone ol
- role: İzinler
- roles:
- admin: Yönetici
- moderator: Denetleyici
- staff: Personel
- user: Kullanıcı
+ role: Rol
search: Ara
search_same_email_domain: Aynı e-posta alan adına sahip diğer kullanıcılar
search_same_ip: Aynı IP adresine sahip diğer kullanıcılar
@@ -649,6 +649,67 @@ tr:
unresolved: Giderilmedi
updated_at: Güncellendi
view_profile: Profili görüntüle
+ roles:
+ add_new: Rol ekle
+ assigned_users:
+ one: "%{count} kullanıcı"
+ other: "%{count} kullanıcı"
+ categories:
+ administration: Yönetim
+ devops: Devops
+ invites: Davetler
+ moderation: Denetim
+ special: Özel
+ delete: Sil
+ description_html: "Kullanıcı rolleri ile, kullanıcılarınızın Mastodon'un hangi işlevlerine ve alanlarına erişebileceğini düzenleyebilirsiniz."
+ edit: "'%{name}' rolünü düzenle"
+ everyone: Varsayılan izinler
+ everyone_full_description_html: Bu, herhangi bir rol atanmamış olanlar da olmak üzere tüm kullanıcıları etkileyen temel roldür. Diğer tüm roller izinleri bu rolden alıyorlar.
+ permissions_count:
+ one: "%{count} izin"
+ other: "%{count} izin"
+ privileges:
+ administrator: Yönetici
+ administrator_description: Bu izne sahip kullanıcılar tüm diğer izinleri atlıyorlar
+ delete_user_data: Kullanıcı Verilerini Silme
+ delete_user_data_description: Kullanıcıların, diğer kullanıcıların verisini gecikme olmaksızın silmesine izin verir
+ invite_users: Kullanıcıları Davet Etme
+ invite_users_description: Kullanıcıların yeni kişileri sunucuya davet etmesine izin verir
+ manage_announcements: Duyuruları Yönetme
+ manage_announcements_description: Kullanıcıların sunucudaki duyuruları yönetmesine izin verir
+ manage_appeals: İtirazları Yönetme
+ manage_appeals_description: Kullanıcıların denetleme eylemlerine itirazları gözden geçirmesine izin verir
+ manage_blocks: Engelleri Yönetme
+ manage_blocks_description: Kullanıcıların e-posta sağlayıcıları ve IP adreslerini engellemesine izin verir
+ manage_custom_emojis: Özel İfadeleri Yönetme
+ manage_custom_emojis_description: Kullanıcıların sunucudaki özel ifadeleri yönetmesine izin verir
+ manage_federation: Birleştirme Yönetme
+ manage_federation_description: Kullanıcıların diğer alan adlarıyla birleştirmeye izin vermesi veya engellemesine ve teslim edilebilirliği denetlemesine izin verir
+ manage_invites: Davetleri Yönetme
+ manage_invites_description: Kullanıcıların davet bağlantılarını görüntüleme ve etkisizleştirmesine izin verir
+ manage_reports: Raporları Yönetme
+ manage_reports_description: Kullanıcıların bildirimleri incelemesine ve onlara yönelik denetim eylemleri gerçekleştirmesine izin verir
+ manage_roles: Rolleri Yönetme
+ manage_roles_description: Kullanıcıların kendi rollerinden düşük rolleri atamasına izin verir
+ manage_rules: Kuralları Yönetme
+ manage_rules_description: Kullanıcıların sunucu kurallarını değiştirmesine izin ver
+ manage_settings: Ayarları Yönetme
+ manage_settings_description: Kullanıcıların site ayarlarını değiştirmesine izin verir
+ manage_taxonomies: Kategorileri Yönetme
+ manage_taxonomies_description: Kullanıcıların öne çıkan içeriği incelemesine ve etiket ayarlarını güncellemesine izin verir
+ manage_user_access: Kullanıcı Erişimini Yönetme
+ manage_user_access_description: Kullanıcıların, diğer kullanıcıların işi aşamalı yetkilendirme, e-posta adreslerini değiştirme ve parolalarını sıfırlama eylemlerini etkisizleştirmesine izin verir
+ manage_users: Kullanıcıları Yönetme
+ manage_users_description: Kullanıcıların, diğer kullanıcıların ayrıntılarını görüntülemesine ve onlara karşı denetim eylemleri gerçekleştirmesine izin verir
+ manage_webhooks: Webhookları Yönetme
+ manage_webhooks_description: Kullanıcıların yönetsel olaylar için webhook kurmasına izin verir
+ view_audit_log: Denetim Kaydını Görüntüleme
+ view_audit_log_description: Kullanıcıların sunucudaki yönetsel eylemlerin bir tarihçesini görüntülemesine izin verir
+ view_dashboard: Ana Paneli Görüntüleme
+ view_dashboard_description: Kullanıcıların ana panele ve çeşitli ölçütlere erişmesine izin verir
+ view_devops: Devops
+ view_devops_description: Kullanıcıların Sidekiq ve pgHero panellerine erişmesine izin verir
+ title: Roller
rules:
add_new: Kural ekle
delete: Sil
@@ -701,9 +762,6 @@ tr:
deletion:
desc_html: Herkese hesabını silme izni ver
title: Hesap silmeyi aç
- min_invite_role:
- disabled: Hiç kimse
- title: tarafından yapılan davetlere izin ver
require_invite_text:
desc_html: Kayıtlar elle doğrulama gerektiriyorsa, "Neden katılmak istiyorsunuz?" metin girdisini isteğe bağlı yerine zorunlu yapın
title: Yeni kullanıcıların katılmak için bir gerekçe sunmasını gerektir
@@ -716,9 +774,6 @@ tr:
show_known_fediverse_at_about_page:
desc_html: Değiştirildiğinde, bilinen bütün fediverse'lerden gönderileri ön izlemede gösterir. Diğer türlü sadece yerel gönderileri gösterecektir.
title: Zaman çizelgesi ön izlemesinde bilinen fediverse'i göster
- show_staff_badge:
- desc_html: Kullanıcının sayfasında bir personel rozeti göster
- title: Personel rozeti göster
site_description:
desc_html: Ana sayfada paragraf olarak görüntülenecek bilgidir.
Özellikle <a>
ve <em>
olmak suretiyle HTML etiketlerini kullanabilirsiniz.
title: Site açıklaması
@@ -1124,15 +1179,24 @@ tr:
public: Genel zaman çizelgesi
thread: Sohbetler
edit:
+ add_keyword: Anahtar sözcük ekle
+ keywords: Anahtar Sözcükler
title: Filtreyi düzenle
errors:
+ deprecated_api_multiple_keywords: Bu parametreler, birden fazla filtre anahtar sözcüğü için geçerli olduğundan dolayı bu uygulama içerisinden değiştirilemezler. Daha yeni bir uygulama veya web arayüzünü kullanın.
invalid_context: Sıfır ya da geçersiz içerik sağlandı
- invalid_irreversible: Geri dönüşümsüz filtreleme sadece anasayfa ya da bildirim bağlamında çalışır
index:
+ contexts: "%{contexts} içindeki filtreler"
delete: Sil
empty: Hiç filtreniz yok.
+ expires_in: "%{distance} sürede sona eriyor"
+ expires_on: "%{date} tarihinde sona eriyor"
+ keywords:
+ one: "%{count} anahtar sözcük"
+ other: "%{count} anahtar sözcük"
title: Filtreler
new:
+ save: Yeni filtre kaydet
title: Yeni filtre ekle
footer:
developers: Geliştiriciler
@@ -1251,6 +1315,8 @@ tr:
copy_account_note_text: 'Bu kullanıcı %{acct} adresinden taşındı, işte onlarla ilgili önceki notlarınız:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} bir bildirim gönderdi"
sign_up:
subject: "%{name} kaydoldu"
digest:
diff --git a/config/locales/tt.yml b/config/locales/tt.yml
index e23533828fc..a520e4d2b5d 100644
--- a/config/locales/tt.yml
+++ b/config/locales/tt.yml
@@ -14,7 +14,6 @@ tt:
following: Язылгансыз
media: Медиа
roles:
- admin: Админ
bot: Бот
group: Törkem
unfollow: Язылынмау
@@ -41,10 +40,6 @@ tt:
all: Бөтенесе
perform_full_suspension: Искә алмау
reset: Ташлату
- role: Рөхсәтләр
- roles:
- moderator: Модератор
- user: Кулланучы
search: Эзләү
sensitive: Sizmäle
username: Кулланучы исеме
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index 2612237b885..708ce998e4e 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -89,10 +89,8 @@ uk:
posts_tab_heading: Дмухи
posts_with_replies: Дмухи та відповіді
roles:
- admin: Адміністратор
bot: Бот
group: Група
- moderator: Мод
unavailable: Профіль недоступний
unfollow: Відписатися
admin:
@@ -111,12 +109,17 @@ uk:
avatar: Аватар
by_domain: Домен
change_email:
- changed_msg: Адресу електронної пошти облікового запису успішно змінено!
+ changed_msg: Адресу електронної пошти успішно змінено!
current_email: Поточна адреса електронної пошти
label: Змінити адресу електронної пошти
new_email: Нова адреса електронної пошти
submit: Змінити адресу електронної пошти
title: Змінити адресу електронної пошти для %{username}
+ change_role:
+ changed_msg: Роль успішно змінено!
+ label: Змінити роль
+ no_role: Немає ролі
+ title: Змінити роль для %{username}
confirm: Зберегти
confirmed: Збережено
confirming: Зберігається
@@ -160,6 +163,7 @@ uk:
active: Активний
all: Усі
pending: Очікують
+ silenced: Обмежені
suspended: Призупинені
title: Модерація
moderation_notes: Нотатки модераторів
@@ -167,6 +171,7 @@ uk:
most_recent_ip: Останній IP
no_account_selected: Жоден обліковий запис не було змінено, оскільки жоден не було вибрано
no_limits_imposed: Жодних обмежень не накладено
+ no_role_assigned: Роль не призначено
not_subscribed: Не підписані
pending: Відгук в очікуванні
perform_full_suspension: Призупинити
@@ -195,12 +200,7 @@ uk:
reset: Скинути
reset_password: Скинути пароль
resubscribe: Перепідписатися
- role: Дозволи
- roles:
- admin: Адміністратор
- moderator: Модератор
- staff: Персонал
- user: Користувач
+ role: Роль
search: Пошук
search_same_email_domain: Інші користувачі з тим самим поштовим доменом
search_same_ip: Інші користувачі з тим самим IP
@@ -664,6 +664,71 @@ uk:
unresolved: Невирішені
updated_at: Оновлені
view_profile: Переглянути профіль
+ roles:
+ add_new: Додати роль
+ assigned_users:
+ few: "%{count} користувачі"
+ many: "%{count} користувачів"
+ one: "%{count} користувач"
+ other: "%{count} користувача"
+ categories:
+ administration: Адміністрування
+ devops: DevOps
+ invites: Запрошення
+ moderation: Модерація
+ special: Спеціальні
+ delete: Видалити
+ description_html: За допомогою ролі користувача, ви можете налаштувати, до яких функцій і місць можуть доступатися ваші користувачі Mastodon.
+ edit: Змінити роль «%{name}»
+ everyone: Типові дозволи
+ everyone_full_description_html: Це базова роль, яка впливає на всіх користувачів, навіть ті, яким не призначені ролі. Усі інші ролі успадковують її дозволи.
+ permissions_count:
+ few: "%{count} дозволи"
+ many: "%{count} дозволів"
+ one: "%{count} дозвіл"
+ other: "%{count} дозволи"
+ privileges:
+ administrator: Адміністратор
+ administrator_description: Користувачі з цим дозволом обходять усі дозволи
+ delete_user_data: Видаляти дані користувача
+ delete_user_data_description: Дозволяє користувачам видаляти дані інших користувачів без затримок
+ invite_users: Запрошувати користувачів
+ invite_users_description: Дозволяє користувачам запрошувати нових людей на сервер
+ manage_announcements: Керувати оголошеннями
+ manage_announcements_description: Дозволяє користувачам керувати оголошеннями на сервері
+ manage_appeals: Керувати оскарженнями
+ manage_appeals_description: Дозволяє користувачам розглядати оскарження дій модерації
+ manage_blocks: Керувати блокуваннями
+ manage_blocks_description: Дозволяє користувачам блокувати постачальників е-пошти та IP-адреси
+ manage_custom_emojis: Керувати користувацькими емоджі
+ manage_custom_emojis_description: Дозволяє користувачам керувати користувацькими емоджі на сервері
+ manage_federation: Керувати федерацією
+ manage_federation_description: Дозволяє користувачам блокувати або дозволяти федерацію з іншими доменами й керувати можливостями доставлення
+ manage_invites: Керувати запрошеннями
+ manage_invites_description: Дозволяє користувачам переглядати й деактивувати запрошувальні посилання
+ manage_reports: Керувати скаргами
+ manage_reports_description: Дозволяє користувачам переглядати скарги та виконувати відповідні дії модерації
+ manage_roles: Керувати ролями
+ manage_roles_description: Дозволяє користувачам керувати та призначати ролі, нижчі за свій рівень
+ manage_rules: Керувати правилами
+ manage_rules_description: Дозволяє користувачам змінювати правила сервера
+ manage_settings: Керування налаштуваннями
+ manage_settings_description: Дозволяє користувачам змінювати налаштування сайту
+ manage_taxonomies: Керувати таксономіями
+ manage_taxonomies_description: Дозволяє користувачам переглядати актуальні налаштування вмісту й оновити хештеґ
+ manage_user_access: Керувати доступом користувачів
+ manage_user_access_description: Дозволяє користувачам вимкнути двоетапну перевірку інших користувачів, змінити їхню адресу електронної пошти та відновити пароль
+ manage_users: Керувати користувачами
+ manage_users_description: Дозволяє користувачам переглядати подробиці інших користувачів і виконувати їхню модерацію
+ manage_webhooks: Керувати Webhooks
+ manage_webhooks_description: Дозволяє користувачам налаштовувати вебхуки для адміністративних подій
+ view_audit_log: Переглядати журнал перевірки
+ view_audit_log_description: Дозволяє користувачам бачити історію адміністративних дій на сервері
+ view_dashboard: Переглядати панель керування
+ view_dashboard_description: Дозволяє користувачам доступ до панелі керування та різних метрик
+ view_devops: DevOps
+ view_devops_description: Дозволяє користувачам доступ до Sidekiq і панелі pgHero
+ title: Ролі
rules:
add_new: Додати правило
delete: Видалити
@@ -716,9 +781,6 @@ uk:
deletion:
desc_html: Дозволити будь-кому видаляти свій обліковий запис
title: Видалення відкритого облікового запису
- min_invite_role:
- disabled: Ніхто
- title: Дозволити запрошення від
require_invite_text:
desc_html: Якщо реєстрація вимагає власноручного затвердження, зробіть текстове поле «Чому ви хочете приєднатися?» обов'язковим, а не додатковим
title: Вимагати повідомлення причини приєднання від нових користувачів
@@ -731,9 +793,6 @@ uk:
show_known_fediverse_at_about_page:
desc_html: Коли увімкнено, будуть показані пости з усього відомого федисвіту у передпоказі. Інакше будуть показані лише локальні дмухи.
title: Показувати доступний федисвіт у передпоказі стрічки
- show_staff_badge:
- desc_html: Відмічати персонал на сторінці користувачів
- title: Показувати персонал
site_description:
desc_html: Відображається у якості параграфа на титульній сторінці та використовується у якості мета-тега.
Можна використовувати HTML-теги, особливо <a>
і <em>
.
title: Опис сервера
@@ -864,7 +923,7 @@ uk:
delete: Видалити
edit_preset: Редагувати шаблон попередження
empty: Ви ще не визначили жодних попереджень.
- title: Управління шаблонами попереджень
+ title: Керування шаблонами попереджень
webhooks:
add_new: Додати кінцеву точку
delete: Видалити
@@ -1134,15 +1193,26 @@ uk:
public: Глобальні стрічки
thread: Повідомлення
edit:
+ add_keyword: Додати ключове слово
+ keywords: Ключові слова
title: Редагувати фільтр
errors:
+ deprecated_api_multiple_keywords: Ці параметри не можна змінити з цього застосунку, тому що вони застосовуються до більш ніж одного ключового слова. Використовуйте новішу версію застосунку або вебінтерфейс.
invalid_context: Контекст неправильний або не був наданий
- invalid_irreversible: Незворотне фільтрування працює тільки в контексті свого фіду або сповіщень
index:
+ contexts: Фільтри в %{contexts}
delete: Видалити
empty: У вас немає фільтрів.
+ expires_in: Закінчується %{distance}
+ expires_on: Закінчується %{date}
+ keywords:
+ few: "%{count} ключові слова"
+ many: "%{count} ключових слів"
+ one: "%{count} ключове слово"
+ other: "%{count} ключових слів"
title: Фільтри
new:
+ save: Зберегти новий фільтр
title: Додати фільтр
footer:
developers: Розробникам
@@ -1265,6 +1335,8 @@ uk:
copy_account_note_text: 'Цей користувач був переміщений з %{acct}, ось ваші попередні нотатки:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} подає скаргу"
sign_up:
subject: "%{name} приєднується"
digest:
diff --git a/config/locales/vi.yml b/config/locales/vi.yml
index 72d06ab5569..b471cc153a1 100644
--- a/config/locales/vi.yml
+++ b/config/locales/vi.yml
@@ -77,10 +77,8 @@ vi:
posts_tab_heading: Tút
posts_with_replies: Trả lời
roles:
- admin: Quản trị viên
bot: Tài khoản Bot
group: Nhóm
- moderator: Kiểm duyệt viên
unavailable: Tài khoản bị đình chỉ
unfollow: Ngưng theo dõi
admin:
@@ -99,12 +97,17 @@ vi:
avatar: Ảnh đại diện
by_domain: Máy chủ
change_email:
- changed_msg: Email tài khoản đã thay đổi thành công!
+ changed_msg: Email đã thay đổi thành công!
current_email: Email hiện tại
label: Thay đổi email
new_email: Email mới
submit: Thay đổi email
title: Thay đổi email cho %{username}
+ change_role:
+ changed_msg: Vai trò đã thay đổi thành công!
+ label: Đổi vai trò
+ no_role: Chưa có vai trò
+ title: Thay đổi vai trò %{username}
confirm: Phê duyệt
confirmed: Đã xác minh
confirming: Chờ xác nhận
@@ -116,7 +119,7 @@ vi:
disable: Khóa
disable_sign_in_token_auth: Vô hiệu hóa xác minh bằng email
disable_two_factor_authentication: Vô hiệu hóa xác minh 2 bước
- disabled: Đã vô hiệu hóa
+ disabled: Tạm khóa
display_name: Tên hiển thị
domain: Máy chủ
edit: Chỉnh sửa
@@ -148,6 +151,7 @@ vi:
active: Hoạt động
all: Toàn bộ
pending: Chờ xử lý
+ silenced: Hạn chế
suspended: Vô hiệu hóa
title: Trạng thái
moderation_notes: Nhật ký kiểm duyệt
@@ -155,6 +159,7 @@ vi:
most_recent_ip: IP gần nhất
no_account_selected: Không có tài khoản nào thay đổi vì không có tài khoản nào được chọn
no_limits_imposed: Bình thường
+ no_role_assigned: Chưa có vai trò
not_subscribed: Chưa đăng ký
pending: Chờ duyệt
perform_full_suspension: Vô hiệu hóa
@@ -181,11 +186,6 @@ vi:
reset_password: Đặt lại mật khẩu
resubscribe: Đăng ký lại
role: Vai trò
- roles:
- admin: Quản trị viên
- moderator: Kiểm duyệt viên
- staff: Đội ngũ
- user: Người dùng
search: Tìm kiếm
search_same_email_domain: Tra cứu email
search_same_ip: Tra cứu IP
@@ -198,7 +198,7 @@ vi:
show:
created_reports: Gửi báo cáo
targeted_reports: Bị báo cáo
- silence: Ẩn
+ silence: Hạn chế
silenced: Hạn chế
statuses: Tút
strikes: Lịch sử kiểm duyệt
@@ -633,6 +633,65 @@ vi:
unresolved: Chờ xử lý
updated_at: Cập nhật lúc
view_profile: Xem trang hồ sơ
+ roles:
+ add_new: Thêm vai trò
+ assigned_users:
+ other: "%{count} người"
+ categories:
+ administration: Quản trị viên
+ devops: Nhà phát triển
+ invites: Lời mời
+ moderation: Kiểm duyệt
+ special: Đặc biệt
+ delete: Xóa
+ description_html: Thông qua vai trò người dùng, bạn có thể tùy chỉnh những tính năng và vị trí của Mastodon mà người dùng có thể truy cập.
+ edit: Sửa vai trò '%{name}'
+ everyone: Quyền hạn mặc định
+ everyone_full_description_html: Đây vai trò cơ bản ảnh hưởng tới mọi người dùng khác, kể cả những người không có vai trò được chỉ định. Tất cả các vai trò khác đều kế thừa quyền từ vai trò đó.
+ permissions_count:
+ other: "%{count} quyền hạn"
+ privileges:
+ administrator: Quản trị viên
+ administrator_description: Người dùng này có thể truy cập mọi quyền hạn
+ delete_user_data: Xóa dữ liệu người dùng
+ delete_user_data_description: Cho phép xóa dữ liệu của người dùng khác lập tức
+ invite_users: Mời người dùng
+ invite_users_description: Cho phép mời những người mới vào máy chủ
+ manage_announcements: Quản lý thông báo
+ manage_announcements_description: Cho phép quản lý thông báo trên máy chủ
+ manage_appeals: Quản lý kháng cáo
+ manage_appeals_description: Cho phép xem xét kháng cáo đối với các hành động kiểm duyệt
+ manage_blocks: Quản lý chặn
+ manage_blocks_description: Cho phép chặn các nhà cung cấp e-mail và địa chỉ IP
+ manage_custom_emojis: Quản lý emoji
+ manage_custom_emojis_description: Cho phép quản lý các emoji tùy chỉnh trên máy chủ
+ manage_federation: Quản lý liên hợp
+ manage_federation_description: Cho phép chặn hoặc liên hợp với các máy chủ khác và kiểm soát khả năng phân phối
+ manage_invites: Quản lý lời mời
+ manage_invites_description: Cho phép mở và đóng các lời mời đăng ký
+ manage_reports: Quản lý báo cáo
+ manage_reports_description: Cho phép xem xét các báo cáo và thực hiện hành động kiểm duyệt đối với chúng
+ manage_roles: Quản lý vai trò
+ manage_roles_description: Cho phép quản lý và chỉ định các vai trò nhỏ hơn họ
+ manage_rules: Quản lý quy tắc máy chủ
+ manage_rules_description: Cho phép thay đổi quy tắc máy chủ
+ manage_settings: Quản lý thiết lập
+ manage_settings_description: Cho phép thay đổi thiết lập máy chủ
+ manage_taxonomies: Quản lý phân loại
+ manage_taxonomies_description: Cho phép đánh giá nội dung xu hướng và cập nhật cài đặt hashtag
+ manage_user_access: Quản lý người dùng truy cập
+ manage_user_access_description: Cho phép vô hiệu hóa xác thực hai bước của người dùng khác, thay đổi địa chỉ email và đặt lại mật khẩu của họ
+ manage_users: Quản lý người dùng
+ manage_users_description: Cho phép xem thông tin chi tiết của người dùng khác và thực hiện các hành động kiểm duyệt đối với họ
+ manage_webhooks: Quản lý Webhook
+ manage_webhooks_description: Cho phép thiết lập webhook cho các sự kiện quản trị
+ view_audit_log: Xem nhật ký
+ view_audit_log_description: Cho phép xem lịch sử của các hành động quản trị trên máy chủ
+ view_dashboard: Xem quản trị
+ view_dashboard_description: Cho phép truy cập trang tổng quan và các chỉ số khác
+ view_devops: Nhà phát triển
+ view_devops_description: Cho phép truy cập trang tổng quan Sidekiq và pgHero
+ title: Danh sách vai trò
rules:
add_new: Thêm quy tắc
delete: Xóa bỏ
@@ -685,9 +744,6 @@ vi:
deletion:
desc_html: Cho phép mọi người xóa tài khoản của họ
title: Xóa tài khoản
- min_invite_role:
- disabled: Không một ai
- title: Cho phép lời mời bằng cách
require_invite_text:
desc_html: Khi chọn phê duyệt người dùng thủ công, hiện “Tại sao bạn muốn đăng ký?” thay cho tùy chọn nhập
title: Người đăng ký mới phải nhập mã mời tham gia
@@ -700,9 +756,6 @@ vi:
show_known_fediverse_at_about_page:
desc_html: Nếu tắt, bảng tin sẽ chỉ hiển thị nội dung do người dùng của máy chủ này tạo ra
title: Bao gồm nội dung từ mạng liên hợp trên bảng tin không được cho phép
- show_staff_badge:
- desc_html: Hiện huy hiệu đội ngũ trên trang người dùng
- title: Hiện huy hiệu đội ngũ
site_description:
desc_html: Nội dung giới thiệu về máy chủ. Mô tả những gì làm cho máy chủ Mastodon này đặc biệt và bất cứ điều gì quan trọng khác. Bạn có thể dùng các thẻ HTML, đặc biệt là <a>
và <em>
.
title: Mô tả máy chủ
@@ -1104,15 +1157,23 @@ vi:
public: Tin công khai
thread: Thảo luận
edit:
+ add_keyword: Thêm từ khoá
+ keywords: Từ khóa
title: Chỉnh sửa bộ lọc
errors:
+ deprecated_api_multiple_keywords: Không thể thay đổi các tham số này từ ứng dụng này vì chúng áp dụng cho nhiều hơn một từ khóa bộ lọc. Sử dụng ứng dụng mới hơn hoặc giao diện web.
invalid_context: Bối cảnh không hợp lệ hoặc không có
- invalid_irreversible: Bộ lọc chỉ hoạt động với bảng tin hoặc nội dung thông báo
index:
+ contexts: Bộ lọc %{contexts}
delete: Xóa bỏ
empty: Chưa có bộ lọc nào.
+ expires_in: Hết hạn trong %{distance}
+ expires_on: Hết hạn vào %{date}
+ keywords:
+ other: "%{count} từ khóa"
title: Bộ lọc
new:
+ save: Lưu thành bộ lọc mới
title: Thêm bộ lọc mới
footer:
developers: Phát triển
@@ -1229,6 +1290,8 @@ vi:
copy_account_note_text: 'Tài khoản này chuyển từ %{acct}, đây là lịch sử kiểm duyệt của họ:'
notification_mailer:
admin:
+ report:
+ subject: "%{name} đã gửi báo cáo"
sign_up:
subject: "%{name} đã được đăng ký"
digest:
diff --git a/config/locales/zgh.yml b/config/locales/zgh.yml
index 83b5866dfe1..36240355b0c 100644
--- a/config/locales/zgh.yml
+++ b/config/locales/zgh.yml
@@ -40,8 +40,6 @@ zgh:
all: ⵎⴰⵕⵕⴰ
public: ⴰⴳⴷⵓⴷⴰⵏ
reject: ⴰⴳⵢ
- roles:
- user: ⵓⵏⵙⵙⵓⵎⵔⵙ
title: ⵉⵎⵉⴹⴰⵏⵏ
web: ⵡⵉⴱ
action_logs:
diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml
index 475d03a2a3f..9ccabc99836 100644
--- a/config/locales/zh-CN.yml
+++ b/config/locales/zh-CN.yml
@@ -79,10 +79,8 @@ zh-CN:
posts_tab_heading: 嘟文
posts_with_replies: 嘟文和回复
roles:
- admin: 管理员
bot: 机器人
group: 群组
- moderator: 监察员
unavailable: 个人资料不可用
unfollow: 取消关注
admin:
@@ -101,7 +99,6 @@ zh-CN:
avatar: 头像
by_domain: 域名
change_email:
- changed_msg: 已成功更改账号的电子邮箱!
current_email: 当前的电子邮箱
label: 更改电子邮箱
new_email: 新的电子邮箱
@@ -182,12 +179,6 @@ zh-CN:
reset: 重置
reset_password: 重置密码
resubscribe: 重新订阅
- role: 用户组
- roles:
- admin: 管理员
- moderator: 监察员
- staff: 站务人员
- user: 普通用户
search: 搜索
search_same_email_domain: 其他具有相同电子邮箱域名的用户
search_same_ip: 具有相同IP的其他用户
@@ -687,9 +678,6 @@ zh-CN:
deletion:
desc_html: 允许所有人删除自己的帐户
title: 开放删除帐户权限
- min_invite_role:
- disabled: 没有人
- title: 允许发送邀请的用户组
require_invite_text:
desc_html: 当注册需要手动批准时,将“你为什么想要加入?”设为必填项
title: 要求新用户填写申请注册的原因
@@ -702,9 +690,6 @@ zh-CN:
show_known_fediverse_at_about_page:
desc_html: 如果开启,就会在时间轴预览显示其他站点嘟文,否则就只会只显示本站嘟文。
title: 在时间轴预览中显示其他站点嘟文
- show_staff_badge:
- desc_html: 在个人资料页上显示管理人员标志
- title: 显示管理人员标志
site_description:
desc_html: 首页上的介绍文字。 描述一下本 Mastodon 实例的特殊之处以及其他重要信息。可以使用 HTML 标签,包括 <a>
和 <em>
。
title: 本站简介
@@ -1091,10 +1076,11 @@ zh-CN:
public: 公共时间轴
thread: 对话
edit:
+ add_keyword: 添加关键词
+ keywords: 关键词
title: 编辑过滤器
errors:
invalid_context: 过滤器场景没有或无效
- invalid_irreversible: 此功能只适用于主页时间轴或通知
index:
delete: 删除
empty: 你没有过滤器。
diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml
index 5b6e0b83a26..e375bb4c8a5 100644
--- a/config/locales/zh-HK.yml
+++ b/config/locales/zh-HK.yml
@@ -75,10 +75,8 @@ zh-HK:
posts_tab_heading: 文章
posts_with_replies: 包含回覆的文章
roles:
- admin: 管理員
bot: 機械人
group: 群組
- moderator: 板主
unavailable: 無法取得個人檔案
unfollow: 取消關注
admin:
@@ -97,7 +95,6 @@ zh-HK:
avatar: 頭像
by_domain: 域名
change_email:
- changed_msg: 帳號電郵更新成功!
current_email: 現時電郵
label: 更改電郵
new_email: 新的電郵
@@ -174,12 +171,6 @@ zh-HK:
reset: 重設
reset_password: 重設密碼
resubscribe: 重新訂閱
- role: 權限
- roles:
- admin: 管理員
- moderator: 管理員
- staff: 工作人員
- user: 普通使用者
search: 搜尋
search_same_email_domain: 其他有相同電郵網域的使用者
search_same_ip: 其他有相同 IP 位址的使用者
@@ -568,9 +559,6 @@ zh-HK:
deletion:
desc_html: 允許所有人刪除自己的帳號
title: 容許刪除帳號
- min_invite_role:
- disabled: 沒有人
- title: 允許發送邀請的身份
require_invite_text:
desc_html: 如果已設定為手動審核注冊,請把「加入的原因」設定為必填項目。
title: 要求新用戶填寫注冊申請
@@ -583,9 +571,6 @@ zh-HK:
show_known_fediverse_at_about_page:
desc_html: 如果停用,將會只在本站的歡迎頁顯示本站的文章。
title: 在訪客預覽本站的時間軸上,顯示跨站文章
- show_staff_badge:
- desc_html: 在個人資料頁上顯示工作人員標誌
- title: 顯示工作人員標誌
site_description:
desc_html: 在首頁顯示,及在 meta 標籤使用作網站介紹。
你可以在此使用 <a>
和 <em>
等 HTML 標籤。
title: 本站介紹
@@ -836,7 +821,6 @@ zh-HK:
title: 編輯篩選器
errors:
invalid_context: 沒有提供內文或內文無效
- invalid_irreversible: 不可逆的篩選器只適用放主頁或通知頁面
index:
delete: 刪除
empty: 你沒有過濾器。
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index 7d2bb80cbea..1490aeef131 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -1,7 +1,7 @@
---
zh-TW:
about:
- about_hashtag_html: 這些是包含「#%{hashtag}」標籤的公開文章。只要您有任何 Mastodon 站點、或者其他站點的使用者,便可以與他們互動。
+ about_hashtag_html: 這些是包含「#%{hashtag}」標籤的公開文章。只要您有任何 Mastodon 站點、或者其他聯邦宇宙的使用者,便可以與他們互動。
about_mastodon_html: Mastodon (長毛象)是一個自由、開放原始碼的社群網站。它是一個分散式的服務,避免您的通訊被單一商業機構壟斷操控。請您選擇一家您信任的 Mastodon 站點,在上面建立帳號,然後您就可以和任一 Mastodon 站點上的使用者互通,享受無縫的社群網路交流。
about_this: 關於本站
active_count_after: 活躍
@@ -22,7 +22,9 @@ zh-TW:
federation_hint_html: 您只需要擁有 %{instance} 的帳號,就可以追蹤任何一台 Mastodon 伺服器上的人等等。
get_apps: 嘗試行動應用程式
hosted_on: 在 %{domain} 運作的 Mastodon 站點
- instance_actor_flash: "這個帳戶是個用來代表伺服器自已的虛擬角色,而不是實際的使用者。它是用來聯盟用的,除非您想要封鎖整個站台,不然不該封鎖它。但要封鎖整個站台,您可以使用網域封鎖功能。 \n"
+ instance_actor_flash: '這個帳戶是個用來代表伺服器本身的虛擬角色,而非實際的使用者。它是用來聯盟用的,除非您想要封鎖整個站台,不然不該封鎖它。但要封鎖整個站台,您可以使用網域封鎖功能。
+
+ '
learn_more: 了解詳細
logged_in_as_html: 您目前登入使用的帳號是 %{username}
logout_before_registering: 您已經登入了!
@@ -60,7 +62,7 @@ zh-TW:
followers:
other: 跟隨者
following: 正在跟隨
- instance_actor_flash: 這個帳號是一個用來代表此伺服器的虛擬執行者,而非真實使用者。它用途為站點聯盟且不應被停權。
+ instance_actor_flash: 這個帳號是一個用來代表此伺服器的虛擬執行者,而非真實使用者。它用途為聯邦宇宙且不應被停權。
joined: 加入於 %{date}
last_active: 上次活躍時間
link_verified_on: 此連結的所有權已在 %{date} 檢查過
@@ -77,10 +79,8 @@ zh-TW:
posts_tab_heading: 嘟文
posts_with_replies: 嘟文與回覆
roles:
- admin: 管理員
bot: 機器人
group: 群組
- moderator: 版主
unavailable: 無法取得個人檔案
unfollow: 取消跟隨
admin:
@@ -99,12 +99,17 @@ zh-TW:
avatar: 頭像
by_domain: 站點
change_email:
- changed_msg: 已成功變更帳號電子信箱地址!
+ changed_msg: 電子郵件已成功變更!
current_email: 目前的電子信箱地址
label: 變更電子信箱地址
new_email: 新的電子信箱地址
submit: 變更電子信箱地址
title: 為 %{username} 變更電子信箱地址
+ change_role:
+ changed_msg: 成功修改角色!
+ label: 變更角色
+ no_role: 沒有角色
+ title: 為 %{username} 變更角色
confirm: 確定
confirmed: 已確定
confirming: 確定
@@ -148,13 +153,15 @@ zh-TW:
active: 活躍
all: 全部
pending: 等待中
+ silenced: 受限的
suspended: 已停權
- title: 版務
+ title: 站務
moderation_notes: 管理備忘
most_recent_activity: 最近活動
most_recent_ip: 最近 IP 位址
no_account_selected: 未選取任何帳號,因此未變更
no_limits_imposed: 未受限制
+ no_role_assigned: 未指派角色
not_subscribed: 未訂閱
pending: 等待審核中
perform_full_suspension: 停權
@@ -180,12 +187,7 @@ zh-TW:
reset: 重設
reset_password: 重設密碼
resubscribe: 重新訂閱
- role: 身份
- roles:
- admin: 管理員
- moderator: 版主
- staff: 管理人員
- user: 普通使用者
+ role: 角色
search: 搜尋
search_same_email_domain: 其他有同個電子郵件網域的使用者
search_same_ip: 其他有同個 IP 的使用者
@@ -283,7 +285,7 @@ zh-TW:
create_account_warning_html: "%{name} 已對 %{target} 送出警告"
create_announcement_html: "%{name} 新增了公告 %{target}"
create_custom_emoji_html: "%{name} 上傳了新自訂表情符號 %{target}"
- create_domain_allow_html: "%{name} 允許 %{target} 網域加入站點聯盟"
+ create_domain_allow_html: "%{name} 允許 %{target} 網域加入聯邦宇宙"
create_domain_block_html: "%{name} 封鎖了網域 %{target}"
create_email_domain_block_html: "%{name} 封鎖了電子信箱網域 %{target}"
create_ip_block_html: "%{name} 已經設定了IP %{target} 的規則"
@@ -291,7 +293,7 @@ zh-TW:
demote_user_html: "%{name} 將使用者 %{target} 降級"
destroy_announcement_html: "%{name} 刪除了公告 %{target}"
destroy_custom_emoji_html: "%{name} 停用了自訂表情符號 %{target}"
- destroy_domain_allow_html: "%{name} 不允許與網域 %{target} 加入站點聯盟"
+ destroy_domain_allow_html: "%{name} 不允許與網域 %{target} 加入聯邦宇宙"
destroy_domain_block_html: "%{name} 取消了對網域 %{target} 的封鎖"
destroy_email_domain_block_html: "%{name} 取消了對電子信箱網域 %{target} 的封鎖"
destroy_instance_html: "%{name} 清除了網域 %{target}"
@@ -407,10 +409,10 @@ zh-TW:
empty: 找不到申訴。
title: 申訴
domain_allows:
- add_new: 將網域加入白名單
- created_msg: 網域已成功加入白名單
- destroyed_msg: 網域已成功從白名單移除
- undo: 從白名單移除
+ add_new: 將網域加入聯邦宇宙白名單
+ created_msg: 網域已成功加入聯邦宇宙白名單
+ destroyed_msg: 網域已成功從聯邦宇宙白名單移除
+ undo: 從聯邦宇宙白名單移除
domain_blocks:
add_new: 新增欲封鎖域名
created_msg: 正在進行站點封鎖
@@ -520,12 +522,12 @@ zh-TW:
moderation:
all: 全部
limited: 限制
- title: 版主
+ title: 管管
private_comment: 私人留言
public_comment: 公開留言
purge: 清除
purge_description_html: 若您相信此網域將永久離線,您可以自儲存空間中刪除該網域所有帳號紀錄及相關資料。這可能花費一些時間。
- title: 聯邦
+ title: 聯邦宇宙
total_blocked_by_us: 被我們封鎖
total_followed_by_them: 被他們跟隨
total_followed_by_us: 被我們跟隨
@@ -570,7 +572,7 @@ zh-TW:
pending: 等待中繼站審核
save_and_enable: 儲存並啟用
setup: 設定中繼連結
- signatures_not_enabled: 若啟用安全模式或受限的站點聯盟模式,中繼將不會正常運作
+ signatures_not_enabled: 若啟用安全模式或受限的聯邦宇宙模式,中繼將不會正常運作
status: 狀態
title: 中繼
report_notes:
@@ -635,6 +637,65 @@ zh-TW:
unresolved: 未解決
updated_at: 更新
view_profile: 檢視個人資料頁
+ roles:
+ add_new: 新增角色
+ assigned_users:
+ other: "%{count} 個使用者"
+ categories:
+ administration: 管理員
+ devops: Devops
+ invites: 邀請
+ moderation: 站務
+ special: 特殊
+ delete: 刪除
+ description_html: 透過使用者角色,您可以自訂您的使用者可以存取 Mastodon 的哪些功能與區域。
+ edit: 編輯「%{name}」角色
+ everyone: 預設權限
+ everyone_full_description_html: 這是會影響所有使用者的基本角色,即使是那些沒有被分配角色的使用者也一樣。其他所有的角色都從它繼承權限。
+ permissions_count:
+ other: "%{count} 個權限"
+ privileges:
+ administrator: 管理員
+ administrator_description: 擁有此權限的使用者將會略過所有權限
+ delete_user_data: 刪除使用者資料
+ delete_user_data_description: 允許使用者立刻刪除其他使用者的資料
+ invite_users: 邀請使用者
+ invite_users_description: 允許使用者邀請新人加入伺服器
+ manage_announcements: 管理公告
+ manage_announcements_description: 允許使用者管理伺服器上的公告
+ manage_appeals: 管理解封申訴系統
+ manage_appeals_description: 允許使用者審閱針對站務動作的申訴
+ manage_blocks: 管理封鎖
+ manage_blocks_description: 允許使用者封鎖電子郵件提供者與 IP 位置
+ manage_custom_emojis: 管理自訂表情符號
+ manage_custom_emojis_description: 允許使用者管理伺服器上的自訂表情符號
+ manage_federation: 管理聯邦宇宙
+ manage_federation_description: 允許使用者封鎖或允許與其他網域的聯邦宇宙,並控制傳遞能力
+ manage_invites: 管理邀請
+ manage_invites_description: 允許使用者瀏覽與停用邀請連結
+ manage_reports: 管理回報
+ manage_reports_description: 允許使用者審閱回報並對回報執行站務動作
+ manage_roles: 管理角色
+ manage_roles_description: 允許使用者管理並指派低於他們的使用者
+ manage_rules: 管理規則
+ manage_rules_description: 允許使用者變更伺服器規則
+ manage_settings: 管理設定
+ manage_settings_description: 允許使用者變更站點設定
+ manage_taxonomies: 管理分類方式
+ manage_taxonomies_description: 允許使用者審閱熱門內容與更新主題標籤設定
+ manage_user_access: 管理使用者存取權
+ manage_user_access_description: 允許使用者停用其他人的兩步驟驗證、變更他們的電子郵件地址以及重設他們的密碼
+ manage_users: 管理使用者
+ manage_users_description: 允許使用者檢視其他使用者的詳細資訊並對回報執行站務動作
+ manage_webhooks: 管理 Webhooks
+ manage_webhooks_description: 允許使用者為管理事件設定 webhooks
+ view_audit_log: 檢視審核日誌
+ view_audit_log_description: 允許使用者檢視伺服器上的管理動作歷史
+ view_dashboard: 檢視儀表板
+ view_dashboard_description: 允許使用者存取儀表板與各種指標
+ view_devops: Devops
+ view_devops_description: 允許使用者存取 Sidekiq 與 pgHero 儀表板
+ title: 角色
rules:
add_new: 新增規則
delete: 刪除
@@ -687,9 +748,6 @@ zh-TW:
deletion:
desc_html: 允許所有人刪除自己的帳號
title: 開放刪除帳號的權限
- min_invite_role:
- disabled: 沒有人
- title: 允許發送邀請的身份
require_invite_text:
desc_html: 如果已設定為手動審核註冊,請將「加入原因」設定為必填項目。
title: 要求新使用者填申請書以索取邀請
@@ -702,9 +760,6 @@ zh-TW:
show_known_fediverse_at_about_page:
desc_html: 如果開啟,就會在時間軸預覽顯示其他站點嘟文,否則就只會顯示本站點嘟文。
title: 在時間軸預覽顯示其他站點嘟文
- show_staff_badge:
- desc_html: 在個人資料頁面上顯示管理人員標誌
- title: 顯示管理人員標誌
site_description:
desc_html: 首頁上的介紹文字,描述此 Mastodon 伺服器的特別之處和其他重要資訊。可使用 HTML 標籤,包括 <a>
和 <em>
。
title: 伺服器描述
@@ -1106,15 +1161,23 @@ zh-TW:
public: 公開時間軸
thread: 會話
edit:
+ add_keyword: 新增關鍵字
+ keywords: 關鍵字
title: 編輯篩選條件
errors:
+ deprecated_api_multiple_keywords: 這些參數無法從此應用程式中更改,因為它們適用於一或多個過濾器關鍵字。請使用較新的應用程式或是網頁介面。
invalid_context: 沒有提供內文或內文無效
- invalid_irreversible: 此功能僅適用於首頁或通知頁面
index:
+ contexts: "%{contexts} 中的過濾器"
delete: 刪除
empty: 您沒有過濾器。
+ expires_in: 於 %{distance} 過期
+ expires_on: 於 %{date} 過期
+ keywords:
+ other: "%{count} 個關鍵字"
title: 過濾器
new:
+ save: 儲存新過濾器
title: 新增篩選器
footer:
developers: 開發者
@@ -1224,13 +1287,15 @@ zh-TW:
other_data: 其他資料並不會自動轉移
redirect: 您目前的帳號將會在個人資料頁面新增重新導向公告,並會被排除在搜尋結果之外
moderation:
- title: 營運
+ title: 站務
move_handler:
carry_blocks_over_text: 此使用者轉移自被您封鎖的 %{acct}。
carry_mutes_over_text: 此使用者轉移自被您靜音的 %{acct}。
copy_account_note_text: 此使用者轉移自 %{acct},以下是您之前關於他們的備註:
notification_mailer:
admin:
+ report:
+ subject: "%{name} 送出了一則檢舉報告"
sign_up:
subject: "%{name} 已進行註冊"
digest:
diff --git a/config/navigation.rb b/config/navigation.rb
index 2a4bf2d39d2..7a1aee07825 100644
--- a/config/navigation.rb
+++ b/config/navigation.rb
@@ -2,72 +2,73 @@
SimpleNavigation::Configuration.run do |navigation|
navigation.items do |n|
- n.item :web, safe_join([fa_icon('chevron-left fw'), t('settings.back')]), root_url
+ n.item :web, safe_join([fa_icon('chevron-left fw'), t('settings.back')]), root_path
- n.item :profile, safe_join([fa_icon('user fw'), t('settings.profile')]), settings_profile_url, if: -> { current_user.functional? } do |s|
- s.item :profile, safe_join([fa_icon('pencil fw'), t('settings.appearance')]), settings_profile_url
- s.item :featured_tags, safe_join([fa_icon('hashtag fw'), t('settings.featured_tags')]), settings_featured_tags_url
+ n.item :profile, safe_join([fa_icon('user fw'), t('settings.profile')]), settings_profile_path, if: -> { current_user.functional? } do |s|
+ s.item :profile, safe_join([fa_icon('pencil fw'), t('settings.appearance')]), settings_profile_path
+ s.item :featured_tags, safe_join([fa_icon('hashtag fw'), t('settings.featured_tags')]), settings_featured_tags_path
end
- n.item :preferences, safe_join([fa_icon('cog fw'), t('settings.preferences')]), settings_preferences_url, if: -> { current_user.functional? } do |s|
- s.item :appearance, safe_join([fa_icon('desktop fw'), t('settings.appearance')]), settings_preferences_appearance_url
- s.item :notifications, safe_join([fa_icon('bell fw'), t('settings.notifications')]), settings_preferences_notifications_url
- s.item :other, safe_join([fa_icon('cog fw'), t('preferences.other')]), settings_preferences_other_url
+ n.item :preferences, safe_join([fa_icon('cog fw'), t('settings.preferences')]), settings_preferences_path, if: -> { current_user.functional? } do |s|
+ s.item :appearance, safe_join([fa_icon('desktop fw'), t('settings.appearance')]), settings_preferences_appearance_path
+ s.item :notifications, safe_join([fa_icon('bell fw'), t('settings.notifications')]), settings_preferences_notifications_path
+ s.item :other, safe_join([fa_icon('cog fw'), t('preferences.other')]), settings_preferences_other_path
end
- n.item :flavours, safe_join([fa_icon('paint-brush fw'), t('settings.flavours')]), settings_flavours_url do |flavours|
+ n.item :flavours, safe_join([fa_icon('paint-brush fw'), t('settings.flavours')]), settings_flavours_path do |flavours|
Themes.instance.flavours.each do |flavour|
- flavours.item flavour.to_sym, safe_join([fa_icon('star fw'), t("flavours.#{flavour}.name", default: flavour)]), settings_flavour_url(flavour)
+ flavours.item flavour.to_sym, safe_join([fa_icon('star fw'), t("flavours.#{flavour}.name", default: flavour)]), settings_flavour_path(flavour)
end
end
- n.item :relationships, safe_join([fa_icon('users fw'), t('settings.relationships')]), relationships_url, if: -> { current_user.functional? }
+ n.item :relationships, safe_join([fa_icon('users fw'), t('settings.relationships')]), relationships_path, if: -> { current_user.functional? }
n.item :filters, safe_join([fa_icon('filter fw'), t('filters.index.title')]), filters_path, highlights_on: %r{/filters}, if: -> { current_user.functional? }
- n.item :statuses_cleanup, safe_join([fa_icon('history fw'), t('settings.statuses_cleanup')]), statuses_cleanup_url, if: -> { current_user.functional? }
+ n.item :statuses_cleanup, safe_join([fa_icon('history fw'), t('settings.statuses_cleanup')]), statuses_cleanup_path, if: -> { current_user.functional? }
- n.item :security, safe_join([fa_icon('lock fw'), t('settings.account')]), edit_user_registration_url do |s|
- s.item :password, safe_join([fa_icon('lock fw'), t('settings.account_settings')]), edit_user_registration_url, highlights_on: %r{/auth/edit|/settings/delete|/settings/migration|/settings/aliases|/settings/login_activities|^/disputes}
- s.item :two_factor_authentication, safe_join([fa_icon('mobile fw'), t('settings.two_factor_authentication')]), settings_two_factor_authentication_methods_url, highlights_on: %r{/settings/two_factor_authentication|/settings/otp_authentication|/settings/security_keys}
- s.item :authorized_apps, safe_join([fa_icon('list fw'), t('settings.authorized_apps')]), oauth_authorized_applications_url
+ n.item :security, safe_join([fa_icon('lock fw'), t('settings.account')]), edit_user_registration_path do |s|
+ s.item :password, safe_join([fa_icon('lock fw'), t('settings.account_settings')]), edit_user_registration_path, highlights_on: %r{/auth/edit|/settings/delete|/settings/migration|/settings/aliases|/settings/login_activities|^/disputes}
+ s.item :two_factor_authentication, safe_join([fa_icon('mobile fw'), t('settings.two_factor_authentication')]), settings_two_factor_authentication_methods_path, highlights_on: %r{/settings/two_factor_authentication|/settings/otp_authentication|/settings/security_keys}
+ s.item :authorized_apps, safe_join([fa_icon('list fw'), t('settings.authorized_apps')]), oauth_authorized_applications_path
end
- n.item :data, safe_join([fa_icon('cloud-download fw'), t('settings.import_and_export')]), settings_export_url do |s|
- s.item :import, safe_join([fa_icon('cloud-upload fw'), t('settings.import')]), settings_import_url, if: -> { current_user.functional? }
- s.item :export, safe_join([fa_icon('cloud-download fw'), t('settings.export')]), settings_export_url
+ n.item :data, safe_join([fa_icon('cloud-download fw'), t('settings.import_and_export')]), settings_export_path do |s|
+ s.item :import, safe_join([fa_icon('cloud-upload fw'), t('settings.import')]), settings_import_path, if: -> { current_user.functional? }
+ s.item :export, safe_join([fa_icon('cloud-download fw'), t('settings.export')]), settings_export_path
end
- n.item :invites, safe_join([fa_icon('user-plus fw'), t('invites.title')]), invites_path, if: proc { Setting.min_invite_role == 'user' && current_user.functional? }
- n.item :development, safe_join([fa_icon('code fw'), t('settings.development')]), settings_applications_url, if: -> { current_user.functional? }
+ n.item :invites, safe_join([fa_icon('user-plus fw'), t('invites.title')]), invites_path, if: -> { current_user.can?(:invite_users) && current_user.functional? }
+ n.item :development, safe_join([fa_icon('code fw'), t('settings.development')]), settings_applications_path, if: -> { current_user.functional? }
- n.item :trends, safe_join([fa_icon('fire fw'), t('admin.trends.title')]), admin_trends_tags_path, if: proc { current_user.staff? } do |s|
+ n.item :trends, safe_join([fa_icon('fire fw'), t('admin.trends.title')]), admin_trends_statuses_path, if: -> { current_user.can?(:manage_taxonomies) } do |s|
s.item :statuses, safe_join([fa_icon('comments-o fw'), t('admin.trends.statuses.title')]), admin_trends_statuses_path, highlights_on: %r{/admin/trends/statuses}
s.item :tags, safe_join([fa_icon('hashtag fw'), t('admin.trends.tags.title')]), admin_trends_tags_path, highlights_on: %r{/admin/tags|/admin/trends/tags}
s.item :links, safe_join([fa_icon('newspaper-o fw'), t('admin.trends.links.title')]), admin_trends_links_path, highlights_on: %r{/admin/trends/links}
end
- n.item :moderation, safe_join([fa_icon('gavel fw'), t('moderation.title')]), admin_reports_url, if: proc { current_user.staff? } do |s|
- s.item :action_logs, safe_join([fa_icon('bars fw'), t('admin.action_logs.title')]), admin_action_logs_url
- s.item :reports, safe_join([fa_icon('flag fw'), t('admin.reports.title')]), admin_reports_url, highlights_on: %r{/admin/reports}
- s.item :accounts, safe_join([fa_icon('users fw'), t('admin.accounts.title')]), admin_accounts_url(origin: 'local'), highlights_on: %r{/admin/accounts|/admin/pending_accounts|/admin/disputes}
- s.item :invites, safe_join([fa_icon('user-plus fw'), t('admin.invites.title')]), admin_invites_path
- s.item :follow_recommendations, safe_join([fa_icon('user-plus fw'), t('admin.follow_recommendations.title')]), admin_follow_recommendations_path, highlights_on: %r{/admin/follow_recommendations}
- s.item :instances, safe_join([fa_icon('cloud fw'), t('admin.instances.title')]), admin_instances_url(limited: whitelist_mode? ? nil : '1'), highlights_on: %r{/admin/instances|/admin/domain_blocks|/admin/domain_allows}, if: -> { current_user.admin? }
- s.item :email_domain_blocks, safe_join([fa_icon('envelope fw'), t('admin.email_domain_blocks.title')]), admin_email_domain_blocks_url, highlights_on: %r{/admin/email_domain_blocks}, if: -> { current_user.admin? }
- s.item :ip_blocks, safe_join([fa_icon('ban fw'), t('admin.ip_blocks.title')]), admin_ip_blocks_url, highlights_on: %r{/admin/ip_blocks}, if: -> { current_user.admin? }
+ n.item :moderation, safe_join([fa_icon('gavel fw'), t('moderation.title')]), nil, if: -> { current_user.can?(:manage_reports, :view_audit_log, :manage_users, :manage_invites, :manage_taxonomies, :manage_federation, :manage_blocks) } do |s|
+ s.item :reports, safe_join([fa_icon('flag fw'), t('admin.reports.title')]), admin_reports_path, highlights_on: %r{/admin/reports}, if: -> { current_user.can?(:manage_reports) }
+ s.item :accounts, safe_join([fa_icon('users fw'), t('admin.accounts.title')]), admin_accounts_path(origin: 'local'), highlights_on: %r{/admin/accounts|/admin/pending_accounts|/admin/disputes|/admin/users}, if: -> { current_user.can?(:manage_users) }
+ s.item :invites, safe_join([fa_icon('user-plus fw'), t('admin.invites.title')]), admin_invites_path, if: -> { current_user.can?(:manage_invites) }
+ s.item :follow_recommendations, safe_join([fa_icon('user-plus fw'), t('admin.follow_recommendations.title')]), admin_follow_recommendations_path, highlights_on: %r{/admin/follow_recommendations}, if: -> { current_user.can?(:manage_taxonomies) }
+ s.item :instances, safe_join([fa_icon('cloud fw'), t('admin.instances.title')]), admin_instances_path(limited: whitelist_mode? ? nil : '1'), highlights_on: %r{/admin/instances|/admin/domain_blocks|/admin/domain_allows}, if: -> { current_user.can?(:manage_federation) }
+ s.item :email_domain_blocks, safe_join([fa_icon('envelope fw'), t('admin.email_domain_blocks.title')]), admin_email_domain_blocks_path, highlights_on: %r{/admin/email_domain_blocks}, if: -> { current_user.can?(:manage_blocks) }
+ s.item :ip_blocks, safe_join([fa_icon('ban fw'), t('admin.ip_blocks.title')]), admin_ip_blocks_path, highlights_on: %r{/admin/ip_blocks}, if: -> { current_user.can?(:manage_blocks) }
+ s.item :action_logs, safe_join([fa_icon('bars fw'), t('admin.action_logs.title')]), admin_action_logs_path, if: -> { current_user.can?(:view_audit_log) }
end
- n.item :admin, safe_join([fa_icon('cogs fw'), t('admin.title')]), admin_dashboard_url, if: proc { current_user.staff? } do |s|
- s.item :dashboard, safe_join([fa_icon('tachometer fw'), t('admin.dashboard.title')]), admin_dashboard_url
- s.item :settings, safe_join([fa_icon('cogs fw'), t('admin.settings.title')]), edit_admin_settings_url, if: -> { current_user.admin? }, highlights_on: %r{/admin/settings}
- s.item :rules, safe_join([fa_icon('gavel fw'), t('admin.rules.title')]), admin_rules_path, highlights_on: %r{/admin/rules}
- s.item :announcements, safe_join([fa_icon('bullhorn fw'), t('admin.announcements.title')]), admin_announcements_path, highlights_on: %r{/admin/announcements}
- s.item :custom_emojis, safe_join([fa_icon('smile-o fw'), t('admin.custom_emojis.title')]), admin_custom_emojis_url, highlights_on: %r{/admin/custom_emojis}
- s.item :webhooks, safe_join([fa_icon('inbox fw'), t('admin.webhooks.title')]), admin_webhooks_path, highlights_on: %r{/admin/webhooks}
- s.item :relays, safe_join([fa_icon('exchange fw'), t('admin.relays.title')]), admin_relays_url, if: -> { current_user.admin? && !whitelist_mode? }, highlights_on: %r{/admin/relays}
- s.item :sidekiq, safe_join([fa_icon('diamond fw'), 'Sidekiq']), sidekiq_url, link_html: { target: 'sidekiq' }, if: -> { current_user.admin? }
- s.item :pghero, safe_join([fa_icon('database fw'), 'PgHero']), pghero_url, link_html: { target: 'pghero' }, if: -> { current_user.admin? }
+ n.item :admin, safe_join([fa_icon('cogs fw'), t('admin.title')]), nil, if: -> { current_user.can?(:view_dashboard, :manage_settings, :manage_rules, :manage_announcements, :manage_custom_emojis, :manage_webhooks, :manage_federation) } do |s|
+ s.item :dashboard, safe_join([fa_icon('tachometer fw'), t('admin.dashboard.title')]), admin_dashboard_path, if: -> { current_user.can?(:view_dashboard) }
+ s.item :settings, safe_join([fa_icon('cogs fw'), t('admin.settings.title')]), edit_admin_settings_path, if: -> { current_user.can?(:manage_settings) }, highlights_on: %r{/admin/settings}
+ s.item :rules, safe_join([fa_icon('gavel fw'), t('admin.rules.title')]), admin_rules_path, highlights_on: %r{/admin/rules}, if: -> { current_user.can?(:manage_rules) }
+ s.item :roles, safe_join([fa_icon('vcard fw'), t('admin.roles.title')]), admin_roles_path, highlights_on: %r{/admin/roles}, if: -> { current_user.can?(:manage_roles) }
+ s.item :announcements, safe_join([fa_icon('bullhorn fw'), t('admin.announcements.title')]), admin_announcements_path, highlights_on: %r{/admin/announcements}, if: -> { current_user.can?(:manage_announcements) }
+ s.item :custom_emojis, safe_join([fa_icon('smile-o fw'), t('admin.custom_emojis.title')]), admin_custom_emojis_path, highlights_on: %r{/admin/custom_emojis}, if: -> { current_user.can?(:manage_custom_emojis) }
+ s.item :webhooks, safe_join([fa_icon('inbox fw'), t('admin.webhooks.title')]), admin_webhooks_path, highlights_on: %r{/admin/webhooks}, if: -> { current_user.can?(:manage_webhooks) }
+ s.item :relays, safe_join([fa_icon('exchange fw'), t('admin.relays.title')]), admin_relays_path, highlights_on: %r{/admin/relays}, if: -> { !whitelist_mode? && current_user.can?(:manage_federation) }
end
- n.item :logout, safe_join([fa_icon('sign-out fw'), t('auth.logout')]), destroy_user_session_url, link_html: { 'data-method' => 'delete' }
+ n.item :sidekiq, safe_join([fa_icon('diamond fw'), 'Sidekiq']), sidekiq_path, link_html: { target: 'sidekiq' }, if: -> { current_user.can?(:view_devops) }
+ n.item :pghero, safe_join([fa_icon('database fw'), 'PgHero']), pghero_path, link_html: { target: 'pghero' }, if: -> { current_user.can?(:view_devops) }
+ n.item :logout, safe_join([fa_icon('sign-out fw'), t('auth.logout')]), destroy_user_session_path, link_html: { 'data-method' => 'delete' }
end
end
diff --git a/config/roles.yml b/config/roles.yml
new file mode 100644
index 00000000000..f443250d177
--- /dev/null
+++ b/config/roles.yml
@@ -0,0 +1,35 @@
+moderator:
+ name: Moderator
+ position: 10
+ permissions:
+ - view_dashboard
+ - view_audit_log
+ - manage_users
+ - manage_reports
+ - manage_taxonomies
+admin:
+ name: Admin
+ position: 100
+ permissions:
+ - view_dashboard
+ - view_audit_log
+ - manage_users
+ - manage_user_access
+ - delete_user_data
+ - manage_reports
+ - manage_taxonomies
+ - manage_federation
+ - manage_settings
+ - manage_blocks
+ - manage_appeals
+ - manage_rules
+ - manage_invites
+ - manage_announcements
+ - manage_custom_emojis
+ - manage_webhooks
+ - manage_roles
+owner:
+ name: Owner
+ position: 1000
+ permissions:
+ - administrator
diff --git a/config/routes.rb b/config/routes.rb
index d778997c18c..3c467f24a3a 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -10,7 +10,7 @@ Rails.application.routes.draw do
get 'health', to: 'health#show'
- authenticate :user, lambda { |u| u.admin? } do
+ authenticate :user, lambda { |u| u.role&.can?(:view_devops) } do
mount Sidekiq::Web, at: 'sidekiq', as: :sidekiq
mount PgHero::Engine, at: 'pghero', as: :pghero
end
@@ -316,17 +316,11 @@ Rails.application.routes.draw do
post :resend
end
end
-
- resource :role, only: [] do
- member do
- post :promote
- post :demote
- end
- end
end
resources :users, only: [] do
- resource :two_factor_authentication, only: [:destroy]
+ resource :two_factor_authentication, only: [:destroy], controller: 'users/two_factor_authentications'
+ resource :role, only: [:show, :update], controller: 'users/roles'
end
resources :custom_emojis, only: [:index, :new, :create] do
@@ -341,6 +335,7 @@ Rails.application.routes.draw do
end
end
+ resources :roles, except: [:show]
resources :account_moderation_notes, only: [:create, :destroy]
resource :follow_recommendations, only: [:show, :update]
resources :tags, only: [:show, :update]
@@ -559,6 +554,15 @@ Rails.application.routes.draw do
resource :note, only: :create, controller: 'accounts/notes'
end
+ resources :tags, only: [:show], constraints: { id: /#{Tag::HASHTAG_NAME_RE}/ } do
+ member do
+ post :follow
+ post :unfollow
+ end
+ end
+
+ resources :followed_tags, only: [:index]
+
resources :lists, only: [:index, :create, :show, :update, :destroy] do
resource :accounts, only: [:show, :create, :destroy], controller: 'lists/accounts'
end
diff --git a/db/migrate/20220611210335_create_user_roles.rb b/db/migrate/20220611210335_create_user_roles.rb
new file mode 100644
index 00000000000..6b7f2b63711
--- /dev/null
+++ b/db/migrate/20220611210335_create_user_roles.rb
@@ -0,0 +1,13 @@
+class CreateUserRoles < ActiveRecord::Migration[6.1]
+ def change
+ create_table :user_roles do |t|
+ t.string :name, null: false, default: ''
+ t.string :color, null: false, default: ''
+ t.integer :position, null: false, default: 0
+ t.bigint :permissions, null: false, default: 0
+ t.boolean :highlighted, null: false, default: false
+
+ t.timestamps
+ end
+ end
+end
diff --git a/db/migrate/20220611212541_add_role_id_to_users.rb b/db/migrate/20220611212541_add_role_id_to_users.rb
new file mode 100644
index 00000000000..2fda647d4c3
--- /dev/null
+++ b/db/migrate/20220611212541_add_role_id_to_users.rb
@@ -0,0 +1,8 @@
+class AddRoleIdToUsers < ActiveRecord::Migration[6.1]
+ disable_ddl_transaction!
+
+ def change
+ safety_assured { add_reference :users, :role, foreign_key: { to_table: 'user_roles', on_delete: :nullify }, index: false }
+ add_index :users, :role_id, algorithm: :concurrently, where: 'role_id IS NOT NULL'
+ end
+end
diff --git a/db/migrate/20220710102457_add_display_name_to_tags.rb b/db/migrate/20220710102457_add_display_name_to_tags.rb
new file mode 100644
index 00000000000..aa78676459d
--- /dev/null
+++ b/db/migrate/20220710102457_add_display_name_to_tags.rb
@@ -0,0 +1,5 @@
+class AddDisplayNameToTags < ActiveRecord::Migration[6.1]
+ def change
+ add_column :tags, :display_name, :string
+ end
+end
diff --git a/db/migrate/20220714171049_create_tag_follows.rb b/db/migrate/20220714171049_create_tag_follows.rb
new file mode 100644
index 00000000000..a393e90f508
--- /dev/null
+++ b/db/migrate/20220714171049_create_tag_follows.rb
@@ -0,0 +1,12 @@
+class CreateTagFollows < ActiveRecord::Migration[6.1]
+ def change
+ create_table :tag_follows do |t|
+ t.belongs_to :tag, null: false, foreign_key: { on_delete: :cascade }
+ t.belongs_to :account, null: false, foreign_key: { on_delete: :cascade }, index: false
+
+ t.timestamps
+ end
+
+ add_index :tag_follows, [:account_id, :tag_id], unique: true
+ end
+end
diff --git a/db/post_migrate/20220617202502_migrate_roles.rb b/db/post_migrate/20220617202502_migrate_roles.rb
new file mode 100644
index 00000000000..b7a7b22012d
--- /dev/null
+++ b/db/post_migrate/20220617202502_migrate_roles.rb
@@ -0,0 +1,26 @@
+# frozen_string_literal: true
+
+class MigrateRoles < ActiveRecord::Migration[5.2]
+ disable_ddl_transaction!
+
+ class UserRole < ApplicationRecord; end
+ class User < ApplicationRecord; end
+
+ def up
+ load Rails.root.join('db', 'seeds', '03_roles.rb')
+
+ admin_role = UserRole.find_by(name: 'Admin')
+ moderator_role = UserRole.find_by(name: 'Moderator')
+
+ User.where(admin: true).in_batches.update_all(role_id: admin_role.id)
+ User.where(moderator: true).in_batches.update_all(role_id: moderator_role.id)
+ end
+
+ def down
+ admin_role = UserRole.find_by(name: 'Admin')
+ moderator_role = UserRole.find_by(name: 'Moderator')
+
+ User.where(role_id: admin_role.id).in_batches.update_all(admin: true) if admin_role
+ User.where(role_id: moderator_role.id).in_batches.update_all(moderator: true) if moderator_role
+ end
+end
diff --git a/db/post_migrate/20220704024901_migrate_settings_to_user_roles.rb b/db/post_migrate/20220704024901_migrate_settings_to_user_roles.rb
new file mode 100644
index 00000000000..254690cc3a4
--- /dev/null
+++ b/db/post_migrate/20220704024901_migrate_settings_to_user_roles.rb
@@ -0,0 +1,41 @@
+# frozen_string_literal: true
+
+class MigrateSettingsToUserRoles < ActiveRecord::Migration[6.1]
+ disable_ddl_transaction!
+
+ class UserRole < ApplicationRecord; end
+
+ def up
+ owner_role = UserRole.find_by(name: 'Owner')
+ admin_role = UserRole.find_by(name: 'Admin')
+ moderator_role = UserRole.find_by(name: 'Moderator')
+ everyone_role = UserRole.find_by(id: -99)
+
+ min_invite_role = Setting.min_invite_role
+ show_staff_badge = Setting.show_staff_badge
+
+ if everyone_role
+ everyone_role.permissions &= ~::UserRole::FLAGS[:invite_users] unless min_invite_role == 'user'
+ everyone_role.save
+ end
+
+ if owner_role
+ owner_role.highlighted = show_staff_badge
+ owner_role.save
+ end
+
+ if admin_role
+ admin_role.permissions |= ::UserRole::FLAGS[:invite_users] if %w(admin moderator).include?(min_invite_role)
+ admin_role.highlighted = show_staff_badge
+ admin_role.save
+ end
+
+ if moderator_role
+ moderator_role.permissions |= ::UserRole::FLAGS[:invite_users] if %w(moderator).include?(min_invite_role)
+ moderator_role.highlighted = show_staff_badge
+ moderator_role.save
+ end
+ end
+
+ def down; end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 8a1565e9789..7a8262dfa0a 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema.define(version: 2022_06_13_110903) do
+ActiveRecord::Schema.define(version: 2022_07_14_171049) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@@ -931,6 +931,15 @@ ActiveRecord::Schema.define(version: 2022_06_13_110903) do
t.datetime "updated_at", null: false
end
+ create_table "tag_follows", force: :cascade do |t|
+ t.bigint "tag_id", null: false
+ t.bigint "account_id", null: false
+ t.datetime "created_at", precision: 6, null: false
+ t.datetime "updated_at", precision: 6, null: false
+ t.index ["account_id", "tag_id"], name: "index_tag_follows_on_account_id_and_tag_id", unique: true
+ t.index ["tag_id"], name: "index_tag_follows_on_tag_id"
+ end
+
create_table "tags", force: :cascade do |t|
t.string "name", default: "", null: false
t.datetime "created_at", null: false
@@ -943,6 +952,7 @@ ActiveRecord::Schema.define(version: 2022_06_13_110903) do
t.datetime "last_status_at"
t.float "max_score"
t.datetime "max_score_at"
+ t.string "display_name"
t.index "lower((name)::text) text_pattern_ops", name: "index_tags_on_name_lower_btree", unique: true
end
@@ -971,6 +981,16 @@ ActiveRecord::Schema.define(version: 2022_06_13_110903) do
t.index ["user_id"], name: "index_user_invite_requests_on_user_id"
end
+ create_table "user_roles", force: :cascade do |t|
+ t.string "name", default: "", null: false
+ t.string "color", default: "", null: false
+ t.integer "position", default: 0, null: false
+ t.bigint "permissions", default: 0, null: false
+ t.boolean "highlighted", default: false, null: false
+ t.datetime "created_at", precision: 6, null: false
+ t.datetime "updated_at", precision: 6, null: false
+ end
+
create_table "users", force: :cascade do |t|
t.string "email", default: "", null: false
t.datetime "created_at", null: false
@@ -1006,11 +1026,13 @@ ActiveRecord::Schema.define(version: 2022_06_13_110903) do
t.string "webauthn_id"
t.inet "sign_up_ip"
t.boolean "skip_sign_in_token"
+ t.bigint "role_id"
t.index ["account_id"], name: "index_users_on_account_id"
t.index ["confirmation_token"], name: "index_users_on_confirmation_token", unique: true
t.index ["created_by_application_id"], name: "index_users_on_created_by_application_id", where: "(created_by_application_id IS NOT NULL)"
t.index ["email"], name: "index_users_on_email", unique: true
t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true, opclass: :text_pattern_ops, where: "(reset_password_token IS NOT NULL)"
+ t.index ["role_id"], name: "index_users_on_role_id", where: "(role_id IS NOT NULL)"
end
create_table "web_push_subscriptions", force: :cascade do |t|
@@ -1157,11 +1179,14 @@ ActiveRecord::Schema.define(version: 2022_06_13_110903) do
add_foreign_key "statuses", "statuses", column: "reblog_of_id", on_delete: :cascade
add_foreign_key "statuses_tags", "statuses", on_delete: :cascade
add_foreign_key "statuses_tags", "tags", name: "fk_3081861e21", on_delete: :cascade
+ add_foreign_key "tag_follows", "accounts", on_delete: :cascade
+ add_foreign_key "tag_follows", "tags", on_delete: :cascade
add_foreign_key "tombstones", "accounts", on_delete: :cascade
add_foreign_key "user_invite_requests", "users", on_delete: :cascade
add_foreign_key "users", "accounts", name: "fk_50500f500d", on_delete: :cascade
add_foreign_key "users", "invites", on_delete: :nullify
add_foreign_key "users", "oauth_applications", column: "created_by_application_id", on_delete: :nullify
+ add_foreign_key "users", "user_roles", column: "role_id", on_delete: :nullify
add_foreign_key "web_push_subscriptions", "oauth_access_tokens", column: "access_token_id", on_delete: :cascade
add_foreign_key "web_push_subscriptions", "users", on_delete: :cascade
add_foreign_key "web_settings", "users", name: "fk_11910667b2", on_delete: :cascade
diff --git a/db/seeds.rb b/db/seeds.rb
index 0bfb5d0db5a..1ca300de734 100644
--- a/db/seeds.rb
+++ b/db/seeds.rb
@@ -1,11 +1,5 @@
-Doorkeeper::Application.create!(name: 'Web', superapp: true, redirect_uri: Doorkeeper.configuration.native_redirect_uri, scopes: 'read write follow push')
+# frozen_string_literal: true
-domain = ENV['LOCAL_DOMAIN'] || Rails.configuration.x.local_domain
-account = Account.find_or_initialize_by(id: -99, actor_type: 'Application', locked: true, username: domain)
-account.save!
-
-if Rails.env.development?
- admin = Account.where(username: 'admin').first_or_initialize(username: 'admin')
- admin.save(validate: false)
- User.where(email: "admin@#{domain}").first_or_initialize(email: "admin@#{domain}", password: 'mastodonadmin', password_confirmation: 'mastodonadmin', confirmed_at: Time.now.utc, admin: true, account: admin, agreement: true, approved: true).save!
+Dir[Rails.root.join('db', 'seeds', '*.rb')].sort.each do |seed|
+ load seed
end
diff --git a/db/seeds/01_web_app.rb b/db/seeds/01_web_app.rb
new file mode 100644
index 00000000000..a457a883b31
--- /dev/null
+++ b/db/seeds/01_web_app.rb
@@ -0,0 +1 @@
+Doorkeeper::Application.create_with(name: 'Web', redirect_uri: Doorkeeper.configuration.native_redirect_uri, scopes: 'read write follow push').find_or_create_by(superapp: true)
diff --git a/db/seeds/02_instance_actor.rb b/db/seeds/02_instance_actor.rb
new file mode 100644
index 00000000000..39186b27344
--- /dev/null
+++ b/db/seeds/02_instance_actor.rb
@@ -0,0 +1 @@
+Account.create_with(actor_type: 'Application', locked: true, username: ENV['LOCAL_DOMAIN'] || Rails.configuration.x.local_domain).find_or_create_by(id: -99)
diff --git a/db/seeds/03_roles.rb b/db/seeds/03_roles.rb
new file mode 100644
index 00000000000..7fedf0f7118
--- /dev/null
+++ b/db/seeds/03_roles.rb
@@ -0,0 +1,9 @@
+# Pre-create base role
+UserRole.everyone
+
+# Create default roles defined in config file
+default_roles = YAML.load_file(Rails.root.join('config', 'roles.yml'))
+
+default_roles.each do |_, config|
+ UserRole.create_with(position: config['position'], permissions_as_keys: config['permissions'], highlighted: true).find_or_create_by(name: config['name'])
+end
diff --git a/db/seeds/04_admin.rb b/db/seeds/04_admin.rb
new file mode 100644
index 00000000000..a67040e4ecf
--- /dev/null
+++ b/db/seeds/04_admin.rb
@@ -0,0 +1,8 @@
+if Rails.env.development?
+ domain = ENV['LOCAL_DOMAIN'] || Rails.configuration.x.local_domain
+
+ admin = Account.where(username: 'admin').first_or_initialize(username: 'admin')
+ admin.save(validate: false)
+
+ User.where(email: "admin@#{domain}").first_or_initialize(email: "admin@#{domain}", password: 'mastodonadmin', password_confirmation: 'mastodonadmin', confirmed_at: Time.now.utc, role: UserRole.find_by(name: 'Owner'), account: admin, agreement: true, approved: true).save!
+end
diff --git a/lib/mastodon/accounts_cli.rb b/lib/mastodon/accounts_cli.rb
index 7256d1da98f..29c93445386 100644
--- a/lib/mastodon/accounts_cli.rb
+++ b/lib/mastodon/accounts_cli.rb
@@ -54,7 +54,7 @@ module Mastodon
option :email, required: true
option :confirmed, type: :boolean
- option :role, default: 'user', enum: %w(user moderator admin)
+ option :role
option :reattach, type: :boolean
option :force, type: :boolean
desc 'create USERNAME', 'Create a new user'
@@ -65,8 +65,7 @@ module Mastodon
With the --confirmed option, the confirmation e-mail will
be skipped and the account will be active straight away.
- With the --role option one of "user", "admin" or "moderator"
- can be supplied. Defaults to "user"
+ With the --role option, the role can be supplied.
With the --reattach option, the new user will be reattached
to a given existing username of an old account. If the old
@@ -75,9 +74,22 @@ module Mastodon
username to the new account anyway.
LONG_DESC
def create(username)
+ role_id = nil
+
+ if options[:role]
+ role = UserRole.find_by(name: options[:role])
+
+ if role.nil?
+ say('Cannot find user role with that name', :red)
+ exit(1)
+ end
+
+ role_id = role.id
+ end
+
account = Account.new(username: username)
password = SecureRandom.hex
- user = User.new(email: options[:email], password: password, agreement: true, approved: true, admin: options[:role] == 'admin', moderator: options[:role] == 'moderator', confirmed_at: options[:confirmed] ? Time.now.utc : nil, bypass_invite_request_check: true)
+ user = User.new(email: options[:email], password: password, agreement: true, approved: true, role_id: role_id, confirmed_at: options[:confirmed] ? Time.now.utc : nil, bypass_invite_request_check: true)
if options[:reattach]
account = Account.find_local(username) || Account.new(username: username)
@@ -106,14 +118,14 @@ module Mastodon
user.errors.to_h.each do |key, error|
say('Failure/Error: ', :red)
say(key)
- say(' ' + error, :red)
+ say(" #{error}", :red)
end
exit(1)
end
end
- option :role, enum: %w(user moderator admin)
+ option :role
option :email
option :confirm, type: :boolean
option :enable, type: :boolean
@@ -125,8 +137,7 @@ module Mastodon
long_desc <<-LONG_DESC
Modify a user account.
- With the --role option, update the user's role to one of "user",
- "moderator" or "admin".
+ With the --role option, update the user's role.
With the --email option, update the user's e-mail address. With
the --confirm option, mark the user's e-mail as confirmed.
@@ -152,8 +163,14 @@ module Mastodon
end
if options[:role]
- user.admin = options[:role] == 'admin'
- user.moderator = options[:role] == 'moderator'
+ role = UserRole.find_by(name: options[:role])
+
+ if role.nil?
+ say('Cannot find user role with that name', :red)
+ exit(1)
+ end
+
+ user.role_id = role.id
end
password = SecureRandom.hex if options[:reset_password]
@@ -172,7 +189,7 @@ module Mastodon
user.errors.to_h.each do |key, error|
say('Failure/Error: ', :red)
say(key)
- say(' ' + error, :red)
+ say(" #{error}", :red)
end
exit(1)
@@ -319,7 +336,7 @@ module Mastodon
unless skip_domains.empty?
say('The following domains were not available during the check:', :yellow)
- skip_domains.each { |domain| say(' ' + domain) }
+ skip_domains.each { |domain| say(" #{domain}") }
end
end
diff --git a/lib/simple_navigation/item_extensions.rb b/lib/simple_navigation/item_extensions.rb
new file mode 100644
index 00000000000..28af37a1884
--- /dev/null
+++ b/lib/simple_navigation/item_extensions.rb
@@ -0,0 +1,15 @@
+# frozen_string_literal: true
+
+module SimpleNavigation
+ module ItemExtensions
+ def url
+ if @url.nil? && @sub_navigation
+ @sub_navigation.items.first.url
+ else
+ @url
+ end
+ end
+ end
+end
+
+SimpleNavigation::Item.prepend(SimpleNavigation::ItemExtensions)
diff --git a/package.json b/package.json
index c823438493e..5e875dab583 100644
--- a/package.json
+++ b/package.json
@@ -65,7 +65,7 @@
"fuzzysort": "^1.9.0",
"glob": "^8.0.3",
"history": "^4.10.1",
- "http-link-header": "^1.0.4",
+ "http-link-header": "^1.0.5",
"immutable": "^4.1.0",
"imports-loader": "^1.2.0",
"intersection-observer": "^0.12.2",
@@ -77,7 +77,7 @@
"jsdom": "^20.0.0",
"lodash": "^4.17.21",
"mark-loader": "^0.1.6",
- "marky": "^1.2.4",
+ "marky": "^1.2.5",
"mini-css-extract-plugin": "^1.6.2",
"mkdirp": "^1.0.4",
"npmlog": "^6.0.2",
@@ -107,7 +107,7 @@
"react-redux-loading-bar": "^4.0.8",
"react-router-dom": "^4.1.1",
"react-router-scroll-4": "^1.0.0-beta.1",
- "react-select": "^5.3.2",
+ "react-select": "^5.4.0",
"react-sparklines": "^1.7.0",
"react-swipeable-views": "^0.14.0",
"react-textarea-autosize": "^8.3.4",
@@ -144,14 +144,14 @@
"@babel/eslint-parser": "^7.18.2",
"@testing-library/jest-dom": "^5.16.4",
"@testing-library/react": "^12.1.5",
- "babel-jest": "^28.1.1",
+ "babel-jest": "^28.1.2",
"eslint": "^7.32.0",
"eslint-plugin-import": "~2.26.0",
"eslint-plugin-jsx-a11y": "~6.6.0",
"eslint-plugin-promise": "~6.0.0",
"eslint-plugin-react": "~7.30.1",
- "jest": "^28.1.1",
- "jest-environment-jsdom": "^28.1.1",
+ "jest": "^28.1.2",
+ "jest-environment-jsdom": "^28.1.2",
"postcss-scss": "^4.0.4",
"prettier": "^2.7.1",
"raf": "^3.4.1",
diff --git a/spec/controllers/admin/account_moderation_notes_controller_spec.rb b/spec/controllers/admin/account_moderation_notes_controller_spec.rb
index 410ce6543db..d3f3263f884 100644
--- a/spec/controllers/admin/account_moderation_notes_controller_spec.rb
+++ b/spec/controllers/admin/account_moderation_notes_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Admin::AccountModerationNotesController, type: :controller do
render_views
- let(:user) { Fabricate(:user, admin: true) }
+ let(:user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
let(:target_account) { Fabricate(:account) }
before do
diff --git a/spec/controllers/admin/accounts_controller_spec.rb b/spec/controllers/admin/accounts_controller_spec.rb
index 1779fb7c0be..1bd51a0c827 100644
--- a/spec/controllers/admin/accounts_controller_spec.rb
+++ b/spec/controllers/admin/accounts_controller_spec.rb
@@ -6,7 +6,7 @@ RSpec.describe Admin::AccountsController, type: :controller do
before { sign_in current_user, scope: :user }
describe 'GET #index' do
- let(:current_user) { Fabricate(:user, admin: true) }
+ let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
around do |example|
default_per_page = Account.default_per_page
@@ -60,7 +60,7 @@ RSpec.describe Admin::AccountsController, type: :controller do
end
describe 'GET #show' do
- let(:current_user) { Fabricate(:user, admin: true) }
+ let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
let(:account) { Fabricate(:account) }
it 'returns http success' do
@@ -72,15 +72,15 @@ RSpec.describe Admin::AccountsController, type: :controller do
describe 'POST #memorialize' do
subject { post :memorialize, params: { id: account.id } }
- let(:current_user) { Fabricate(:user, admin: current_user_admin) }
+ let(:current_user) { Fabricate(:user, role: current_role) }
let(:account) { user.account }
- let(:user) { Fabricate(:user, admin: target_user_admin) }
+ let(:user) { Fabricate(:user, role: target_role) }
context 'when user is admin' do
- let(:current_user_admin) { true }
+ let(:current_role) { UserRole.find_by(name: 'Admin') }
context 'when target user is admin' do
- let(:target_user_admin) { true }
+ let(:target_role) { UserRole.find_by(name: 'Admin') }
it 'fails to memorialize account' do
is_expected.to have_http_status :forbidden
@@ -89,7 +89,7 @@ RSpec.describe Admin::AccountsController, type: :controller do
end
context 'when target user is not admin' do
- let(:target_user_admin) { false }
+ let(:target_role) { UserRole.find_by(name: 'Moderator') }
it 'succeeds in memorializing account' do
is_expected.to redirect_to admin_account_path(account.id)
@@ -99,10 +99,10 @@ RSpec.describe Admin::AccountsController, type: :controller do
end
context 'when user is not admin' do
- let(:current_user_admin) { false }
+ let(:current_role) { UserRole.find_by(name: 'Moderator') }
context 'when target user is admin' do
- let(:target_user_admin) { true }
+ let(:target_role) { UserRole.find_by(name: 'Admin') }
it 'fails to memorialize account' do
is_expected.to have_http_status :forbidden
@@ -111,7 +111,7 @@ RSpec.describe Admin::AccountsController, type: :controller do
end
context 'when target user is not admin' do
- let(:target_user_admin) { false }
+ let(:target_role) { UserRole.find_by(name: 'Moderator') }
it 'fails to memorialize account' do
is_expected.to have_http_status :forbidden
@@ -124,12 +124,12 @@ RSpec.describe Admin::AccountsController, type: :controller do
describe 'POST #enable' do
subject { post :enable, params: { id: account.id } }
- let(:current_user) { Fabricate(:user, admin: admin) }
+ let(:current_user) { Fabricate(:user, role: role) }
let(:account) { user.account }
let(:user) { Fabricate(:user, disabled: true) }
context 'when user is admin' do
- let(:admin) { true }
+ let(:role) { UserRole.find_by(name: 'Admin') }
it 'succeeds in enabling account' do
is_expected.to redirect_to admin_account_path(account.id)
@@ -138,7 +138,7 @@ RSpec.describe Admin::AccountsController, type: :controller do
end
context 'when user is not admin' do
- let(:admin) { false }
+ let(:role) { UserRole.everyone }
it 'fails to enable account' do
is_expected.to have_http_status :forbidden
@@ -150,19 +150,23 @@ RSpec.describe Admin::AccountsController, type: :controller do
describe 'POST #redownload' do
subject { post :redownload, params: { id: account.id } }
- let(:current_user) { Fabricate(:user, admin: admin) }
- let(:account) { Fabricate(:account) }
+ let(:current_user) { Fabricate(:user, role: role) }
+ let(:account) { Fabricate(:account, domain: 'example.com') }
+
+ before do
+ allow_any_instance_of(ResolveAccountService).to receive(:call)
+ end
context 'when user is admin' do
- let(:admin) { true }
+ let(:role) { UserRole.find_by(name: 'Admin') }
- it 'succeeds in redownloadin' do
+ it 'succeeds in redownloading' do
is_expected.to redirect_to admin_account_path(account.id)
end
end
context 'when user is not admin' do
- let(:admin) { false }
+ let(:role) { UserRole.everyone }
it 'fails to redownload' do
is_expected.to have_http_status :forbidden
@@ -173,11 +177,11 @@ RSpec.describe Admin::AccountsController, type: :controller do
describe 'POST #remove_avatar' do
subject { post :remove_avatar, params: { id: account.id } }
- let(:current_user) { Fabricate(:user, admin: admin) }
+ let(:current_user) { Fabricate(:user, role: role) }
let(:account) { Fabricate(:account) }
context 'when user is admin' do
- let(:admin) { true }
+ let(:role) { UserRole.find_by(name: 'Admin') }
it 'succeeds in removing avatar' do
is_expected.to redirect_to admin_account_path(account.id)
@@ -185,7 +189,7 @@ RSpec.describe Admin::AccountsController, type: :controller do
end
context 'when user is not admin' do
- let(:admin) { false }
+ let(:role) { UserRole.everyone }
it 'fails to remove avatar' do
is_expected.to have_http_status :forbidden
@@ -196,12 +200,12 @@ RSpec.describe Admin::AccountsController, type: :controller do
describe 'POST #unblock_email' do
subject { post :unblock_email, params: { id: account.id } }
- let(:current_user) { Fabricate(:user, admin: admin) }
+ let(:current_user) { Fabricate(:user, role: role) }
let(:account) { Fabricate(:account, suspended: true) }
let!(:email_block) { Fabricate(:canonical_email_block, reference_account: account) }
context 'when user is admin' do
- let(:admin) { true }
+ let(:role) { UserRole.find_by(name: 'Admin') }
it 'succeeds in removing email blocks' do
expect { subject }.to change { CanonicalEmailBlock.where(reference_account: account).count }.from(1).to(0)
@@ -214,7 +218,7 @@ RSpec.describe Admin::AccountsController, type: :controller do
end
context 'when user is not admin' do
- let(:admin) { false }
+ let(:role) { UserRole.everyone }
it 'fails to remove avatar' do
subject
diff --git a/spec/controllers/admin/action_logs_controller_spec.rb b/spec/controllers/admin/action_logs_controller_spec.rb
index 4720ed2e2bb..c1957258fa9 100644
--- a/spec/controllers/admin/action_logs_controller_spec.rb
+++ b/spec/controllers/admin/action_logs_controller_spec.rb
@@ -5,7 +5,7 @@ require 'rails_helper'
describe Admin::ActionLogsController, type: :controller do
describe 'GET #index' do
it 'returns 200' do
- sign_in Fabricate(:user, admin: true)
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin'))
get :index, params: { page: 1 }
expect(response).to have_http_status(200)
diff --git a/spec/controllers/admin/base_controller_spec.rb b/spec/controllers/admin/base_controller_spec.rb
index 9ac833623f6..44be91951b2 100644
--- a/spec/controllers/admin/base_controller_spec.rb
+++ b/spec/controllers/admin/base_controller_spec.rb
@@ -5,13 +5,14 @@ require 'rails_helper'
describe Admin::BaseController, type: :controller do
controller do
def success
+ authorize :dashboard, :index?
render 'admin/reports/show'
end
end
it 'requires administrator or moderator' do
routes.draw { get 'success' => 'admin/base#success' }
- sign_in(Fabricate(:user, admin: false, moderator: false))
+ sign_in(Fabricate(:user))
get :success
expect(response).to have_http_status(:forbidden)
@@ -19,14 +20,14 @@ describe Admin::BaseController, type: :controller do
it 'renders admin layout as a moderator' do
routes.draw { get 'success' => 'admin/base#success' }
- sign_in(Fabricate(:user, moderator: true))
+ sign_in(Fabricate(:user, role: UserRole.find_by(name: 'Moderator')))
get :success
expect(response).to render_template layout: 'admin'
end
it 'renders admin layout as an admin' do
routes.draw { get 'success' => 'admin/base#success' }
- sign_in(Fabricate(:user, admin: true))
+ sign_in(Fabricate(:user, role: UserRole.find_by(name: 'Admin')))
get :success
expect(response).to render_template layout: 'admin'
end
diff --git a/spec/controllers/admin/change_email_controller_spec.rb b/spec/controllers/admin/change_email_controller_spec.rb
index e7f3f7c97d7..cf8a27d3947 100644
--- a/spec/controllers/admin/change_email_controller_spec.rb
+++ b/spec/controllers/admin/change_email_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Admin::ChangeEmailsController, type: :controller do
render_views
- let(:admin) { Fabricate(:user, admin: true) }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
before do
sign_in admin
diff --git a/spec/controllers/admin/confirmations_controller_spec.rb b/spec/controllers/admin/confirmations_controller_spec.rb
index 5b4f7e925c3..6268903c4ed 100644
--- a/spec/controllers/admin/confirmations_controller_spec.rb
+++ b/spec/controllers/admin/confirmations_controller_spec.rb
@@ -4,7 +4,7 @@ RSpec.describe Admin::ConfirmationsController, type: :controller do
render_views
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'POST #create' do
diff --git a/spec/controllers/admin/custom_emojis_controller_spec.rb b/spec/controllers/admin/custom_emojis_controller_spec.rb
index a8d96948cae..06cd0c22df0 100644
--- a/spec/controllers/admin/custom_emojis_controller_spec.rb
+++ b/spec/controllers/admin/custom_emojis_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
describe Admin::CustomEmojisController do
render_views
- let(:user) { Fabricate(:user, admin: true) }
+ let(:user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
before do
sign_in user, scope: :user
diff --git a/spec/controllers/admin/dashboard_controller_spec.rb b/spec/controllers/admin/dashboard_controller_spec.rb
index 7824854f9c7..6231a09a249 100644
--- a/spec/controllers/admin/dashboard_controller_spec.rb
+++ b/spec/controllers/admin/dashboard_controller_spec.rb
@@ -12,7 +12,7 @@ describe Admin::DashboardController, type: :controller do
Admin::SystemCheck::Message.new(:rules_check, nil, admin_rules_path),
Admin::SystemCheck::Message.new(:sidekiq_process_check, 'foo, bar'),
])
- sign_in Fabricate(:user, admin: true)
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin'))
end
it 'returns 200' do
diff --git a/spec/controllers/admin/disputes/appeals_controller_spec.rb b/spec/controllers/admin/disputes/appeals_controller_spec.rb
index 6a06f940692..71265779156 100644
--- a/spec/controllers/admin/disputes/appeals_controller_spec.rb
+++ b/spec/controllers/admin/disputes/appeals_controller_spec.rb
@@ -14,7 +14,7 @@ RSpec.describe Admin::Disputes::AppealsController, type: :controller do
end
describe 'POST #approve' do
- let(:current_user) { Fabricate(:user, admin: true) }
+ let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
before do
allow(UserMailer).to receive(:appeal_approved).and_return(double('email', deliver_later: nil))
@@ -35,7 +35,7 @@ RSpec.describe Admin::Disputes::AppealsController, type: :controller do
end
describe 'POST #reject' do
- let(:current_user) { Fabricate(:user, admin: true) }
+ let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
before do
allow(UserMailer).to receive(:appeal_rejected).and_return(double('email', deliver_later: nil))
diff --git a/spec/controllers/admin/domain_allows_controller_spec.rb b/spec/controllers/admin/domain_allows_controller_spec.rb
index 8bacdd3e40c..6c4e677876e 100644
--- a/spec/controllers/admin/domain_allows_controller_spec.rb
+++ b/spec/controllers/admin/domain_allows_controller_spec.rb
@@ -4,7 +4,7 @@ RSpec.describe Admin::DomainAllowsController, type: :controller do
render_views
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'GET #new' do
diff --git a/spec/controllers/admin/domain_blocks_controller_spec.rb b/spec/controllers/admin/domain_blocks_controller_spec.rb
index a35b2fb3b98..98cda50047c 100644
--- a/spec/controllers/admin/domain_blocks_controller_spec.rb
+++ b/spec/controllers/admin/domain_blocks_controller_spec.rb
@@ -4,7 +4,7 @@ RSpec.describe Admin::DomainBlocksController, type: :controller do
render_views
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'GET #new' do
diff --git a/spec/controllers/admin/email_domain_blocks_controller_spec.rb b/spec/controllers/admin/email_domain_blocks_controller_spec.rb
index cf194579da0..e9cef4a94c8 100644
--- a/spec/controllers/admin/email_domain_blocks_controller_spec.rb
+++ b/spec/controllers/admin/email_domain_blocks_controller_spec.rb
@@ -6,7 +6,7 @@ RSpec.describe Admin::EmailDomainBlocksController, type: :controller do
render_views
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'GET #index' do
diff --git a/spec/controllers/admin/export_domain_allows_controller_spec.rb b/spec/controllers/admin/export_domain_allows_controller_spec.rb
index f6275c2d659..1e1a5ae7d4f 100644
--- a/spec/controllers/admin/export_domain_allows_controller_spec.rb
+++ b/spec/controllers/admin/export_domain_allows_controller_spec.rb
@@ -4,7 +4,7 @@ RSpec.describe Admin::ExportDomainAllowsController, type: :controller do
render_views
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'GET #export' do
diff --git a/spec/controllers/admin/export_domain_blocks_controller_spec.rb b/spec/controllers/admin/export_domain_blocks_controller_spec.rb
index 0493df85912..8697e0c2156 100644
--- a/spec/controllers/admin/export_domain_blocks_controller_spec.rb
+++ b/spec/controllers/admin/export_domain_blocks_controller_spec.rb
@@ -4,7 +4,7 @@ RSpec.describe Admin::ExportDomainBlocksController, type: :controller do
render_views
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'GET #export' do
diff --git a/spec/controllers/admin/instances_controller_spec.rb b/spec/controllers/admin/instances_controller_spec.rb
index 53427b8748f..337f7a80c77 100644
--- a/spec/controllers/admin/instances_controller_spec.rb
+++ b/spec/controllers/admin/instances_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Admin::InstancesController, type: :controller do
render_views
- let(:current_user) { Fabricate(:user, admin: true) }
+ let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
let!(:account) { Fabricate(:account, domain: 'popular') }
let!(:account2) { Fabricate(:account, domain: 'popular') }
@@ -35,11 +35,11 @@ RSpec.describe Admin::InstancesController, type: :controller do
describe 'DELETE #destroy' do
subject { delete :destroy, params: { id: Instance.first.id } }
- let(:current_user) { Fabricate(:user, admin: admin) }
+ let(:current_user) { Fabricate(:user, role: role) }
let(:account) { Fabricate(:account) }
context 'when user is admin' do
- let(:admin) { true }
+ let(:role) { UserRole.find_by(name: 'Admin') }
it 'succeeds in purging instance' do
is_expected.to redirect_to admin_instances_path
@@ -47,7 +47,7 @@ RSpec.describe Admin::InstancesController, type: :controller do
end
context 'when user is not admin' do
- let(:admin) { false }
+ let(:role) { nil }
it 'fails to purge instance' do
is_expected.to have_http_status :forbidden
diff --git a/spec/controllers/admin/invites_controller_spec.rb b/spec/controllers/admin/invites_controller_spec.rb
index 449a699e403..1fb4887423d 100644
--- a/spec/controllers/admin/invites_controller_spec.rb
+++ b/spec/controllers/admin/invites_controller_spec.rb
@@ -5,7 +5,7 @@ require 'rails_helper'
describe Admin::InvitesController do
render_views
- let(:user) { Fabricate(:user, admin: true) }
+ let(:user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
before do
sign_in user, scope: :user
diff --git a/spec/controllers/admin/report_notes_controller_spec.rb b/spec/controllers/admin/report_notes_controller_spec.rb
index c0013f41aec..fa7572d1864 100644
--- a/spec/controllers/admin/report_notes_controller_spec.rb
+++ b/spec/controllers/admin/report_notes_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
describe Admin::ReportNotesController do
render_views
- let(:user) { Fabricate(:user, admin: true) }
+ let(:user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
before do
sign_in user, scope: :user
diff --git a/spec/controllers/admin/reports_controller_spec.rb b/spec/controllers/admin/reports_controller_spec.rb
index d421f0739c9..4cd1524bf73 100644
--- a/spec/controllers/admin/reports_controller_spec.rb
+++ b/spec/controllers/admin/reports_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
describe Admin::ReportsController do
render_views
- let(:user) { Fabricate(:user, admin: true) }
+ let(:user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
before do
sign_in user, scope: :user
end
diff --git a/spec/controllers/admin/resets_controller_spec.rb b/spec/controllers/admin/resets_controller_spec.rb
index 28510b5afb5..aeb172318bf 100644
--- a/spec/controllers/admin/resets_controller_spec.rb
+++ b/spec/controllers/admin/resets_controller_spec.rb
@@ -5,7 +5,7 @@ describe Admin::ResetsController do
let(:account) { Fabricate(:account) }
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'POST #create' do
diff --git a/spec/controllers/admin/roles_controller_spec.rb b/spec/controllers/admin/roles_controller_spec.rb
index 8e0de73cbd9..8ff8912054a 100644
--- a/spec/controllers/admin/roles_controller_spec.rb
+++ b/spec/controllers/admin/roles_controller_spec.rb
@@ -3,31 +3,247 @@ require 'rails_helper'
describe Admin::RolesController do
render_views
- let(:admin) { Fabricate(:user, admin: true) }
+ let(:permissions) { UserRole::Flags::NONE }
+ let(:current_role) { UserRole.create(name: 'Foo', permissions: permissions, position: 10) }
+ let(:current_user) { Fabricate(:user, role: current_role) }
before do
- sign_in admin, scope: :user
+ sign_in current_user, scope: :user
end
- describe 'POST #promote' do
- subject { post :promote, params: { account_id: user.account_id } }
+ describe 'GET #index' do
+ before do
+ get :index
+ end
- let(:user) { Fabricate(:user, moderator: false, admin: false) }
+ context 'when user does not have permission to manage roles' do
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
- it 'promotes user' do
- expect(subject).to redirect_to admin_account_path(user.account_id)
- expect(user.reload).to be_moderator
+ context 'when user has permission to manage roles' do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
end
end
- describe 'POST #demote' do
- subject { post :demote, params: { account_id: user.account_id } }
+ describe 'GET #new' do
+ before do
+ get :new
+ end
- let(:user) { Fabricate(:user, moderator: true, admin: false) }
+ context 'when user does not have permission to manage roles' do
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
- it 'demotes user' do
- expect(subject).to redirect_to admin_account_path(user.account_id)
- expect(user.reload).not_to be_moderator
+ context 'when user has permission to manage roles' do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+ end
+ end
+
+ describe 'POST #create' do
+ let(:selected_position) { 1 }
+ let(:selected_permissions_as_keys) { %w(manage_roles) }
+
+ before do
+ post :create, params: { user_role: { name: 'Bar', position: selected_position, permissions_as_keys: selected_permissions_as_keys } }
+ end
+
+ context 'when user has permission to manage roles' do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+
+ context 'when new role\'s does not elevate above the user\'s role' do
+ let(:selected_position) { 1 }
+ let(:selected_permissions_as_keys) { %w(manage_roles) }
+
+ it 'redirects to roles page' do
+ expect(response).to redirect_to(admin_roles_path)
+ end
+
+ it 'creates new role' do
+ expect(UserRole.find_by(name: 'Bar')).to_not be_nil
+ end
+ end
+
+ context 'when new role\'s position is higher than user\'s role' do
+ let(:selected_position) { 100 }
+ let(:selected_permissions_as_keys) { %w(manage_roles) }
+
+ it 'renders new template' do
+ expect(response).to render_template(:new)
+ end
+
+ it 'does not create new role' do
+ expect(UserRole.find_by(name: 'Bar')).to be_nil
+ end
+ end
+
+ context 'when new role has permissions the user does not have' do
+ let(:selected_position) { 1 }
+ let(:selected_permissions_as_keys) { %w(manage_roles manage_users manage_reports) }
+
+ it 'renders new template' do
+ expect(response).to render_template(:new)
+ end
+
+ it 'does not create new role' do
+ expect(UserRole.find_by(name: 'Bar')).to be_nil
+ end
+ end
+
+ context 'when user has administrator permission' do
+ let(:permissions) { UserRole::FLAGS[:administrator] }
+
+ let(:selected_position) { 1 }
+ let(:selected_permissions_as_keys) { %w(manage_roles manage_users manage_reports) }
+
+ it 'redirects to roles page' do
+ expect(response).to redirect_to(admin_roles_path)
+ end
+
+ it 'creates new role' do
+ expect(UserRole.find_by(name: 'Bar')).to_not be_nil
+ end
+ end
+ end
+ end
+
+ describe 'GET #edit' do
+ let(:role_position) { 8 }
+ let(:role) { UserRole.create(name: 'Bar', permissions: UserRole::FLAGS[:manage_users], position: role_position) }
+
+ before do
+ get :edit, params: { id: role.id }
+ end
+
+ context 'when user does not have permission to manage roles' do
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
+
+ context 'when user has permission to manage roles' do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+
+ context 'when user outranks the role' do
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+ end
+
+ context 'when role outranks user' do
+ let(:role_position) { current_role.position + 1 }
+
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
+ end
+ end
+
+ describe 'PUT #update' do
+ let(:role_position) { 8 }
+ let(:role_permissions) { UserRole::FLAGS[:manage_users] }
+ let(:role) { UserRole.create(name: 'Bar', permissions: role_permissions, position: role_position) }
+
+ let(:selected_position) { 8 }
+ let(:selected_permissions_as_keys) { %w(manage_users) }
+
+ before do
+ put :update, params: { id: role.id, user_role: { name: 'Baz', position: selected_position, permissions_as_keys: selected_permissions_as_keys } }
+ end
+
+ context 'when user does not have permission to manage roles' do
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+
+ it 'does not update the role' do
+ expect(role.reload.name).to eq 'Bar'
+ end
+ end
+
+ context 'when user has permission to manage roles' do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+
+ context 'when role has permissions the user doesn\'t' do
+ it 'renders edit template' do
+ expect(response).to render_template(:edit)
+ end
+
+ it 'does not update the role' do
+ expect(role.reload.name).to eq 'Bar'
+ end
+ end
+
+ context 'when user has all permissions of the role' do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] | UserRole::FLAGS[:manage_users] }
+
+ context 'when user outranks the role' do
+ it 'redirects to roles page' do
+ expect(response).to redirect_to(admin_roles_path)
+ end
+
+ it 'updates the role' do
+ expect(role.reload.name).to eq 'Baz'
+ end
+ end
+
+ context 'when role outranks user' do
+ let(:role_position) { current_role.position + 1 }
+
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+
+ it 'does not update the role' do
+ expect(role.reload.name).to eq 'Bar'
+ end
+ end
+ end
+ end
+ end
+
+ describe 'DELETE #destroy' do
+ let(:role_position) { 8 }
+ let(:role) { UserRole.create(name: 'Bar', permissions: UserRole::FLAGS[:manage_users], position: role_position) }
+
+ before do
+ delete :destroy, params: { id: role.id }
+ end
+
+ context 'when user does not have permission to manage roles' do
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
+
+ context 'when user has permission to manage roles' do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+
+ context 'when user outranks the role' do
+ it 'redirects to roles page' do
+ expect(response).to redirect_to(admin_roles_path)
+ end
+ end
+
+ context 'when role outranks user' do
+ let(:role_position) { current_role.position + 1 }
+
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
end
end
end
diff --git a/spec/controllers/admin/settings_controller_spec.rb b/spec/controllers/admin/settings_controller_spec.rb
index 6cf0ee20a61..46749f76c61 100644
--- a/spec/controllers/admin/settings_controller_spec.rb
+++ b/spec/controllers/admin/settings_controller_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe Admin::SettingsController, type: :controller do
describe 'When signed in as an admin' do
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'GET #edit' do
diff --git a/spec/controllers/admin/statuses_controller_spec.rb b/spec/controllers/admin/statuses_controller_spec.rb
index de32fd18e1d..227688e2364 100644
--- a/spec/controllers/admin/statuses_controller_spec.rb
+++ b/spec/controllers/admin/statuses_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
describe Admin::StatusesController do
render_views
- let(:user) { Fabricate(:user, admin: true) }
+ let(:user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
let(:account) { Fabricate(:account) }
let!(:status) { Fabricate(:status, account: account) }
let(:media_attached_status) { Fabricate(:status, account: account, sensitive: !sensitive) }
diff --git a/spec/controllers/admin/tags_controller_spec.rb b/spec/controllers/admin/tags_controller_spec.rb
index 85c801a9c70..52fd09eb107 100644
--- a/spec/controllers/admin/tags_controller_spec.rb
+++ b/spec/controllers/admin/tags_controller_spec.rb
@@ -6,7 +6,7 @@ RSpec.describe Admin::TagsController, type: :controller do
render_views
before do
- sign_in Fabricate(:user, admin: true)
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin'))
end
describe 'GET #show' do
diff --git a/spec/controllers/admin/users/roles_controller.rb b/spec/controllers/admin/users/roles_controller.rb
new file mode 100644
index 00000000000..bd6a3fa6734
--- /dev/null
+++ b/spec/controllers/admin/users/roles_controller.rb
@@ -0,0 +1,81 @@
+require 'rails_helper'
+
+describe Admin::Users::RolesController do
+ render_views
+
+ let(:current_role) { UserRole.create(name: 'Foo', permissions: UserRole::FLAGS[:manage_roles], position: 10) }
+ let(:current_user) { Fabricate(:user, role: current_role) }
+
+ let(:previous_role) { nil }
+ let(:user) { Fabricate(:user, role: previous_role) }
+
+ before do
+ sign_in current_user, scope: :user
+ end
+
+ describe 'GET #show' do
+ before do
+ get :show, params: { user_id: user.id }
+ end
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+
+ context 'when target user is higher ranked than current user' do
+ let(:previous_role) { UserRole.create(name: 'Baz', permissions: UserRole::FLAGS[:administrator], position: 100) }
+
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
+ end
+
+ describe 'PUT #update' do
+ let(:selected_role) { UserRole.create(name: 'Bar', permissions: permissions, position: position) }
+
+ before do
+ put :update, params: { user_id: user.id, user: { role_id: selected_role.id } }
+ end
+
+ context do
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+ let(:position) { 1 }
+
+ it 'updates user role' do
+ expect(user.reload.role_id).to eq selected_role&.id
+ end
+
+ it 'redirects back to account page' do
+ expect(response).to redirect_to(admin_account_path(user.account_id))
+ end
+ end
+
+ context 'when selected role has higher position than current user\'s role' do
+ let(:permissions) { UserRole::FLAGS[:administrator] }
+ let(:position) { 100 }
+
+ it 'does not update user role' do
+ expect(user.reload.role_id).to eq previous_role&.id
+ end
+
+ it 'renders edit form' do
+ expect(response).to render_template(:show)
+ end
+ end
+
+ context 'when target user is higher ranked than current user' do
+ let(:previous_role) { UserRole.create(name: 'Baz', permissions: UserRole::FLAGS[:administrator], position: 100) }
+ let(:permissions) { UserRole::FLAGS[:manage_roles] }
+ let(:position) { 1 }
+
+ it 'does not update user role' do
+ expect(user.reload.role_id).to eq previous_role&.id
+ end
+
+ it 'returns http forbidden' do
+ expect(response).to have_http_status(:forbidden)
+ end
+ end
+ end
+end
diff --git a/spec/controllers/admin/two_factor_authentications_controller_spec.rb b/spec/controllers/admin/users/two_factor_authentications_controller_spec.rb
similarity index 90%
rename from spec/controllers/admin/two_factor_authentications_controller_spec.rb
rename to spec/controllers/admin/users/two_factor_authentications_controller_spec.rb
index c650957290f..e56264ef62e 100644
--- a/spec/controllers/admin/two_factor_authentications_controller_spec.rb
+++ b/spec/controllers/admin/users/two_factor_authentications_controller_spec.rb
@@ -1,12 +1,13 @@
require 'rails_helper'
require 'webauthn/fake_client'
-describe Admin::TwoFactorAuthenticationsController do
+describe Admin::Users::TwoFactorAuthenticationsController do
render_views
let(:user) { Fabricate(:user) }
+
before do
- sign_in Fabricate(:user, admin: true), scope: :user
+ sign_in Fabricate(:user, role: UserRole.find_by(name: 'Admin')), scope: :user
end
describe 'DELETE #destroy' do
diff --git a/spec/controllers/api/v1/admin/account_actions_controller_spec.rb b/spec/controllers/api/v1/admin/account_actions_controller_spec.rb
index 601290b8244..199395f55c2 100644
--- a/spec/controllers/api/v1/admin/account_actions_controller_spec.rb
+++ b/spec/controllers/api/v1/admin/account_actions_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Api::V1::Admin::AccountActionsController, type: :controller do
render_views
- let(:role) { 'moderator' }
+ let(:role) { UserRole.find_by(name: 'Moderator') }
let(:user) { Fabricate(:user, role: role) }
let(:scopes) { 'admin:read admin:write' }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
@@ -22,7 +22,7 @@ RSpec.describe Api::V1::Admin::AccountActionsController, type: :controller do
end
shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { wrong_role }
+ let(:role) { UserRole.find_by(name: wrong_role) }
it 'returns http forbidden' do
expect(response).to have_http_status(403)
@@ -35,7 +35,7 @@ RSpec.describe Api::V1::Admin::AccountActionsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
diff --git a/spec/controllers/api/v1/admin/accounts_controller_spec.rb b/spec/controllers/api/v1/admin/accounts_controller_spec.rb
index b69595f7e42..cd38030e0c0 100644
--- a/spec/controllers/api/v1/admin/accounts_controller_spec.rb
+++ b/spec/controllers/api/v1/admin/accounts_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
render_views
- let(:role) { 'moderator' }
+ let(:role) { UserRole.find_by(name: 'Moderator') }
let(:user) { Fabricate(:user, role: role) }
let(:scopes) { 'admin:read admin:write' }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
@@ -22,7 +22,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { wrong_role }
+ let(:role) { UserRole.find_by(name: wrong_role) }
it 'returns http forbidden' do
expect(response).to have_http_status(403)
@@ -46,7 +46,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
[
[{ active: 'true', local: 'true', staff: 'true' }, [:admin_account]],
@@ -77,7 +77,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -91,7 +91,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -109,7 +109,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -127,7 +127,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -145,7 +145,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -163,7 +163,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -181,7 +181,7 @@ RSpec.describe Api::V1::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
diff --git a/spec/controllers/api/v1/admin/domain_allows_controller_spec.rb b/spec/controllers/api/v1/admin/domain_allows_controller_spec.rb
index edee3ab6c50..26a391a60c7 100644
--- a/spec/controllers/api/v1/admin/domain_allows_controller_spec.rb
+++ b/spec/controllers/api/v1/admin/domain_allows_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Api::V1::Admin::DomainAllowsController, type: :controller do
render_views
- let(:role) { 'admin' }
+ let(:role) { UserRole.find_by(name: 'Admin') }
let(:user) { Fabricate(:user, role: role) }
let(:scopes) { 'admin:read admin:write' }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
@@ -21,7 +21,7 @@ RSpec.describe Api::V1::Admin::DomainAllowsController, type: :controller do
end
shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { wrong_role }
+ let(:role) { UserRole.find_by(name: wrong_role) }
it 'returns http forbidden' do
expect(response).to have_http_status(403)
@@ -36,8 +36,8 @@ RSpec.describe Api::V1::Admin::DomainAllowsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -58,8 +58,8 @@ RSpec.describe Api::V1::Admin::DomainAllowsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -79,8 +79,8 @@ RSpec.describe Api::V1::Admin::DomainAllowsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -99,8 +99,8 @@ RSpec.describe Api::V1::Admin::DomainAllowsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
diff --git a/spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb b/spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb
index 196f6dc28ed..f12285b2a62 100644
--- a/spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb
+++ b/spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Api::V1::Admin::DomainBlocksController, type: :controller do
render_views
- let(:role) { 'admin' }
+ let(:role) { UserRole.find_by(name: 'Admin') }
let(:user) { Fabricate(:user, role: role) }
let(:scopes) { 'admin:read admin:write' }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
@@ -21,7 +21,7 @@ RSpec.describe Api::V1::Admin::DomainBlocksController, type: :controller do
end
shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { wrong_role }
+ let(:role) { UserRole.find_by(name: wrong_role) }
it 'returns http forbidden' do
expect(response).to have_http_status(403)
@@ -36,8 +36,8 @@ RSpec.describe Api::V1::Admin::DomainBlocksController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -58,8 +58,8 @@ RSpec.describe Api::V1::Admin::DomainBlocksController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -79,8 +79,8 @@ RSpec.describe Api::V1::Admin::DomainBlocksController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -100,8 +100,8 @@ RSpec.describe Api::V1::Admin::DomainBlocksController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
- it_behaves_like 'forbidden for wrong role', 'moderator'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
expect(response).to have_http_status(200)
diff --git a/spec/controllers/api/v1/admin/reports_controller_spec.rb b/spec/controllers/api/v1/admin/reports_controller_spec.rb
index b6df53048a6..880e72030a8 100644
--- a/spec/controllers/api/v1/admin/reports_controller_spec.rb
+++ b/spec/controllers/api/v1/admin/reports_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
render_views
- let(:role) { 'moderator' }
+ let(:role) { UserRole.find_by(name: 'Moderator') }
let(:user) { Fabricate(:user, role: role) }
let(:scopes) { 'admin:read admin:write' }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
@@ -22,7 +22,7 @@ RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
end
shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { wrong_role }
+ let(:role) { UserRole.find_by(name: wrong_role) }
it 'returns http forbidden' do
expect(response).to have_http_status(403)
@@ -35,7 +35,7 @@ RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -48,7 +48,7 @@ RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -61,7 +61,7 @@ RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -74,7 +74,7 @@ RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -87,7 +87,7 @@ RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
@@ -100,7 +100,7 @@ RSpec.describe Api::V1::Admin::ReportsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
it 'returns http success' do
expect(response).to have_http_status(200)
diff --git a/spec/controllers/api/v1/followed_tags_controller_spec.rb b/spec/controllers/api/v1/followed_tags_controller_spec.rb
new file mode 100644
index 00000000000..2191350ef6b
--- /dev/null
+++ b/spec/controllers/api/v1/followed_tags_controller_spec.rb
@@ -0,0 +1,23 @@
+require 'rails_helper'
+
+RSpec.describe Api::V1::FollowedTagsController, type: :controller do
+ render_views
+
+ let(:user) { Fabricate(:user) }
+ let(:scopes) { 'read:follows' }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+
+ before { allow(controller).to receive(:doorkeeper_token) { token } }
+
+ describe 'GET #index' do
+ let!(:tag_follows) { Fabricate.times(5, :tag_follow, account: user.account) }
+
+ before do
+ get :index, params: { limit: 1 }
+ end
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+ end
+end
diff --git a/spec/controllers/api/v1/reports_controller_spec.rb b/spec/controllers/api/v1/reports_controller_spec.rb
index b5baf60e11b..dbc64e7047b 100644
--- a/spec/controllers/api/v1/reports_controller_spec.rb
+++ b/spec/controllers/api/v1/reports_controller_spec.rb
@@ -13,7 +13,7 @@ RSpec.describe Api::V1::ReportsController, type: :controller do
end
describe 'POST #create' do
- let!(:admin) { Fabricate(:user, admin: true) }
+ let!(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
let(:scopes) { 'write:reports' }
let(:status) { Fabricate(:status) }
diff --git a/spec/controllers/api/v1/tags_controller_spec.rb b/spec/controllers/api/v1/tags_controller_spec.rb
new file mode 100644
index 00000000000..ac42660dfaf
--- /dev/null
+++ b/spec/controllers/api/v1/tags_controller_spec.rb
@@ -0,0 +1,82 @@
+require 'rails_helper'
+
+RSpec.describe Api::V1::TagsController, type: :controller do
+ render_views
+
+ let(:user) { Fabricate(:user) }
+ let(:scopes) { 'write:follows' }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+
+ before { allow(controller).to receive(:doorkeeper_token) { token } }
+
+ describe 'GET #show' do
+ before do
+ get :show, params: { id: name }
+ end
+
+ context 'with existing tag' do
+ let!(:tag) { Fabricate(:tag) }
+ let(:name) { tag.name }
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+ end
+
+ context 'with non-existing tag' do
+ let(:name) { 'hoge' }
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+ end
+ end
+
+ describe 'POST #follow' do
+ before do
+ post :follow, params: { id: name }
+ end
+
+ context 'with existing tag' do
+ let!(:tag) { Fabricate(:tag) }
+ let(:name) { tag.name }
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+
+ it 'creates follow' do
+ expect(TagFollow.where(tag: tag, account: user.account).exists?).to be true
+ end
+ end
+
+ context 'with non-existing tag' do
+ let(:name) { 'hoge' }
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+
+ it 'creates follow' do
+ expect(TagFollow.where(tag: Tag.find_by!(name: name), account: user.account).exists?).to be true
+ end
+ end
+ end
+
+ describe 'POST #unfollow' do
+ let!(:tag) { Fabricate(:tag, name: 'foo') }
+ let!(:tag_follow) { Fabricate(:tag_follow, account: user.account, tag: tag) }
+
+ before do
+ post :unfollow, params: { id: tag.name }
+ end
+
+ it 'returns http success' do
+ expect(response).to have_http_status(:success)
+ end
+
+ it 'removes the follow' do
+ expect(TagFollow.where(tag: tag, account: user.account).exists?).to be false
+ end
+ end
+end
diff --git a/spec/controllers/api/v2/admin/accounts_controller_spec.rb b/spec/controllers/api/v2/admin/accounts_controller_spec.rb
index 3212ddb844e..2508a9e0557 100644
--- a/spec/controllers/api/v2/admin/accounts_controller_spec.rb
+++ b/spec/controllers/api/v2/admin/accounts_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
RSpec.describe Api::V2::Admin::AccountsController, type: :controller do
render_views
- let(:role) { 'moderator' }
+ let(:role) { UserRole.find_by(name: 'Moderator') }
let(:user) { Fabricate(:user, role: role) }
let(:scopes) { 'admin:read admin:write' }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
@@ -22,7 +22,7 @@ RSpec.describe Api::V2::Admin::AccountsController, type: :controller do
end
shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { wrong_role }
+ let(:role) { UserRole.find_by(name: wrong_role) }
it 'returns http forbidden' do
expect(response).to have_http_status(403)
@@ -46,7 +46,7 @@ RSpec.describe Api::V2::Admin::AccountsController, type: :controller do
end
it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', 'user'
+ it_behaves_like 'forbidden for wrong role', ''
[
[{ status: 'active', origin: 'local', permissions: 'staff' }, [:admin_account]],
diff --git a/spec/controllers/application_controller_spec.rb b/spec/controllers/application_controller_spec.rb
index 851e58d60ca..2af12376dce 100644
--- a/spec/controllers/application_controller_spec.rb
+++ b/spec/controllers/application_controller_spec.rb
@@ -187,70 +187,6 @@ describe ApplicationController, type: :controller do
end
end
- describe 'require_admin!' do
- controller do
- before_action :require_admin!
-
- def success
- head 200
- end
- end
-
- before do
- routes.draw { get 'success' => 'anonymous#success' }
- end
-
- it 'returns a 403 if current user is not admin' do
- sign_in(Fabricate(:user, admin: false))
- get 'success'
- expect(response).to have_http_status(403)
- end
-
- it 'returns a 403 if current user is only a moderator' do
- sign_in(Fabricate(:user, moderator: true))
- get 'success'
- expect(response).to have_http_status(403)
- end
-
- it 'does nothing if current user is admin' do
- sign_in(Fabricate(:user, admin: true))
- get 'success'
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'require_staff!' do
- controller do
- before_action :require_staff!
-
- def success
- head 200
- end
- end
-
- before do
- routes.draw { get 'success' => 'anonymous#success' }
- end
-
- it 'returns a 403 if current user is not admin or moderator' do
- sign_in(Fabricate(:user, admin: false, moderator: false))
- get 'success'
- expect(response).to have_http_status(403)
- end
-
- it 'does nothing if current user is moderator' do
- sign_in(Fabricate(:user, moderator: true))
- get 'success'
- expect(response).to have_http_status(200)
- end
-
- it 'does nothing if current user is admin' do
- sign_in(Fabricate(:user, admin: true))
- get 'success'
- expect(response).to have_http_status(200)
- end
- end
-
describe 'forbidden' do
controller do
def route_forbidden
diff --git a/spec/controllers/disputes/appeals_controller_spec.rb b/spec/controllers/disputes/appeals_controller_spec.rb
index faa571fc9e7..90f222f4944 100644
--- a/spec/controllers/disputes/appeals_controller_spec.rb
+++ b/spec/controllers/disputes/appeals_controller_spec.rb
@@ -5,7 +5,7 @@ RSpec.describe Disputes::AppealsController, type: :controller do
before { sign_in current_user, scope: :user }
- let!(:admin) { Fabricate(:user, admin: true) }
+ let!(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
describe '#create' do
let(:current_user) { Fabricate(:user) }
diff --git a/spec/controllers/invites_controller_spec.rb b/spec/controllers/invites_controller_spec.rb
index 76e617e6b69..23b98fb1290 100644
--- a/spec/controllers/invites_controller_spec.rb
+++ b/spec/controllers/invites_controller_spec.rb
@@ -7,30 +7,30 @@ describe InvitesController do
sign_in user
end
- around do |example|
- min_invite_role = Setting.min_invite_role
- example.run
- Setting.min_invite_role = min_invite_role
- end
-
describe 'GET #index' do
subject { get :index }
- let(:user) { Fabricate(:user, moderator: false, admin: false) }
+ let(:user) { Fabricate(:user) }
let!(:invite) { Fabricate(:invite, user: user) }
- context 'when user is a staff' do
+ context 'when everyone can invite' do
+ before do
+ UserRole.everyone.update(permissions: UserRole.everyone.permissions | UserRole::FLAGS[:invite_users])
+ end
+
it 'renders index page' do
- Setting.min_invite_role = 'user'
expect(subject).to render_template :index
expect(assigns(:invites)).to include invite
expect(assigns(:invites).count).to eq 1
end
end
- context 'when user is not a staff' do
+ context 'when not everyone can invite' do
+ before do
+ UserRole.everyone.update(permissions: UserRole.everyone.permissions & ~UserRole::FLAGS[:invite_users])
+ end
+
it 'returns 403' do
- Setting.min_invite_role = 'modelator'
expect(subject).to have_http_status 403
end
end
@@ -39,8 +39,12 @@ describe InvitesController do
describe 'POST #create' do
subject { post :create, params: { invite: { max_uses: '10', expires_in: 1800 } } }
- context 'when user is an admin' do
- let(:user) { Fabricate(:user, moderator: false, admin: true) }
+ context 'when everyone can invite' do
+ let(:user) { Fabricate(:user) }
+
+ before do
+ UserRole.everyone.update(permissions: UserRole.everyone.permissions | UserRole::FLAGS[:invite_users])
+ end
it 'succeeds to create a invite' do
expect { subject }.to change { Invite.count }.by(1)
@@ -49,8 +53,12 @@ describe InvitesController do
end
end
- context 'when user is not an admin' do
- let(:user) { Fabricate(:user, moderator: true, admin: false) }
+ context 'when not everyone can invite' do
+ let(:user) { Fabricate(:user) }
+
+ before do
+ UserRole.everyone.update(permissions: UserRole.everyone.permissions & ~UserRole::FLAGS[:invite_users])
+ end
it 'returns 403' do
expect(subject).to have_http_status 403
@@ -61,8 +69,8 @@ describe InvitesController do
describe 'DELETE #create' do
subject { delete :destroy, params: { id: invite.id } }
+ let(:user) { Fabricate(:user) }
let!(:invite) { Fabricate(:invite, user: user, expires_at: nil) }
- let(:user) { Fabricate(:user, moderator: false, admin: true) }
it 'expires invite' do
expect(subject).to redirect_to invites_path
diff --git a/spec/fabricators/tag_follow_fabricator.rb b/spec/fabricators/tag_follow_fabricator.rb
new file mode 100644
index 00000000000..a2cccb07a83
--- /dev/null
+++ b/spec/fabricators/tag_follow_fabricator.rb
@@ -0,0 +1,4 @@
+Fabricator(:tag_follow) do
+ tag
+ account
+end
diff --git a/spec/fabricators/user_role_fabricator.rb b/spec/fabricators/user_role_fabricator.rb
new file mode 100644
index 00000000000..28f76c8c474
--- /dev/null
+++ b/spec/fabricators/user_role_fabricator.rb
@@ -0,0 +1,5 @@
+Fabricator(:user_role) do
+ name "MyString"
+ color "MyString"
+ permissions ""
+end
\ No newline at end of file
diff --git a/spec/lib/hashtag_normalizer_spec.rb b/spec/lib/hashtag_normalizer_spec.rb
new file mode 100644
index 00000000000..fbb9f37c070
--- /dev/null
+++ b/spec/lib/hashtag_normalizer_spec.rb
@@ -0,0 +1,29 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+describe HashtagNormalizer do
+ subject { described_class.new }
+
+ describe '#normalize' do
+ it 'converts full-width Latin characters into basic Latin characters' do
+ expect(subject.normalize('Synthwave')).to eq 'synthwave'
+ end
+
+ it 'converts half-width Katakana into Kana characters' do
+ expect(subject.normalize('シーサイドライナー')).to eq 'シーサイドライナー'
+ end
+
+ it 'converts modified Latin characters into basic Latin characters' do
+ expect(subject.normalize('BLÅHAJ')).to eq 'blahaj'
+ end
+
+ it 'strips out invalid characters' do
+ expect(subject.normalize('#foo')).to eq 'foo'
+ end
+
+ it 'keeps valid characters' do
+ expect(subject.normalize('a·b')).to eq 'a·b'
+ end
+ end
+end
diff --git a/spec/models/account_spec.rb b/spec/models/account_spec.rb
index dc0ca3da374..467d41836a4 100644
--- a/spec/models/account_spec.rb
+++ b/spec/models/account_spec.rb
@@ -445,7 +445,7 @@ RSpec.describe Account, type: :model do
it 'accepts arbitrary limits' do
2.times.each { Fabricate(:account, display_name: "Display Name") }
- results = Account.search_for("display", 1)
+ results = Account.search_for("display", limit: 1)
expect(results.size).to eq 1
end
@@ -473,7 +473,7 @@ RSpec.describe Account, type: :model do
)
account.follow!(match)
- results = Account.advanced_search_for('A?l\i:c e', account, 10, true)
+ results = Account.advanced_search_for('A?l\i:c e', account, limit: 10, following: true)
expect(results).to eq [match]
end
@@ -485,7 +485,7 @@ RSpec.describe Account, type: :model do
domain: 'example.com'
)
- results = Account.advanced_search_for('A?l\i:c e', account, 10, true)
+ results = Account.advanced_search_for('A?l\i:c e', account, limit: 10, following: true)
expect(results).to eq []
end
@@ -498,7 +498,7 @@ RSpec.describe Account, type: :model do
suspended: true
)
- results = Account.advanced_search_for('username', account, 10, true)
+ results = Account.advanced_search_for('username', account, limit: 10, following: true)
expect(results).to eq []
end
@@ -511,7 +511,7 @@ RSpec.describe Account, type: :model do
match.user.update(approved: false)
- results = Account.advanced_search_for('username', account, 10, true)
+ results = Account.advanced_search_for('username', account, limit: 10, following: true)
expect(results).to eq []
end
@@ -524,7 +524,7 @@ RSpec.describe Account, type: :model do
match.user.update(confirmed_at: nil)
- results = Account.advanced_search_for('username', account, 10, true)
+ results = Account.advanced_search_for('username', account, limit: 10, following: true)
expect(results).to eq []
end
end
@@ -588,7 +588,7 @@ RSpec.describe Account, type: :model do
it 'accepts arbitrary limits' do
2.times { Fabricate(:account, display_name: "Display Name") }
- results = Account.advanced_search_for("display", account, 1)
+ results = Account.advanced_search_for("display", account, limit: 1)
expect(results.size).to eq 1
end
diff --git a/spec/models/admin/account_action_spec.rb b/spec/models/admin/account_action_spec.rb
index 809c7fc46dd..b6a052b7697 100644
--- a/spec/models/admin/account_action_spec.rb
+++ b/spec/models/admin/account_action_spec.rb
@@ -5,7 +5,7 @@ RSpec.describe Admin::AccountAction, type: :model do
describe '#save!' do
subject { account_action.save! }
- let(:account) { Fabricate(:user, admin: true).account }
+ let(:account) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:target_account) { Fabricate(:account) }
let(:type) { 'disable' }
diff --git a/spec/models/tag_follow_spec.rb b/spec/models/tag_follow_spec.rb
new file mode 100644
index 00000000000..50c04d2e460
--- /dev/null
+++ b/spec/models/tag_follow_spec.rb
@@ -0,0 +1,4 @@
+require 'rails_helper'
+
+RSpec.describe TagFollow, type: :model do
+end
diff --git a/spec/models/tag_spec.rb b/spec/models/tag_spec.rb
index 3949dbce548..b16f99a7995 100644
--- a/spec/models/tag_spec.rb
+++ b/spec/models/tag_spec.rb
@@ -91,7 +91,7 @@ RSpec.describe Tag, type: :model do
upcase_string = 'abcABCabcABCやゆよ'
downcase_string = 'abcabcabcabcやゆよ';
- tag = Fabricate(:tag, name: downcase_string)
+ tag = Fabricate(:tag, name: HashtagNormalizer.new.normalize(downcase_string))
expect(Tag.find_normalized(upcase_string)).to eq tag
end
end
@@ -101,12 +101,12 @@ RSpec.describe Tag, type: :model do
upcase_string = 'abcABCabcABCやゆよ'
downcase_string = 'abcabcabcabcやゆよ';
- tag = Fabricate(:tag, name: downcase_string)
+ tag = Fabricate(:tag, name: HashtagNormalizer.new.normalize(downcase_string))
expect(Tag.matches_name(upcase_string)).to eq [tag]
end
it 'uses the LIKE operator' do
- expect(Tag.matches_name('100%abc').to_sql).to eq %q[SELECT "tags".* FROM "tags" WHERE LOWER("tags"."name") LIKE LOWER('100\\%abc%')]
+ expect(Tag.matches_name('100%abc').to_sql).to eq %q[SELECT "tags".* FROM "tags" WHERE LOWER("tags"."name") LIKE LOWER('100abc%')]
end
end
@@ -115,7 +115,7 @@ RSpec.describe Tag, type: :model do
upcase_string = 'abcABCabcABCやゆよ'
downcase_string = 'abcabcabcabcやゆよ';
- tag = Fabricate(:tag, name: downcase_string)
+ tag = Fabricate(:tag, name: HashtagNormalizer.new.normalize(downcase_string))
expect(Tag.matching_name(upcase_string)).to eq [tag]
end
end
diff --git a/spec/models/user_role_spec.rb b/spec/models/user_role_spec.rb
new file mode 100644
index 00000000000..28019593e53
--- /dev/null
+++ b/spec/models/user_role_spec.rb
@@ -0,0 +1,189 @@
+require 'rails_helper'
+
+RSpec.describe UserRole, type: :model do
+ subject { described_class.create(name: 'Foo', position: 1) }
+
+ describe '#can?' do
+ context 'with a single flag' do
+ it 'returns true if any of them are present' do
+ subject.permissions = UserRole::FLAGS[:manage_reports]
+ expect(subject.can?(:manage_reports)).to be true
+ end
+
+ it 'returns false if it is not set' do
+ expect(subject.can?(:manage_reports)).to be false
+ end
+ end
+
+ context 'with multiple flags' do
+ it 'returns true if any of them are present' do
+ subject.permissions = UserRole::FLAGS[:manage_users]
+ expect(subject.can?(:manage_reports, :manage_users)).to be true
+ end
+
+ it 'returns false if none of them are present' do
+ expect(subject.can?(:manage_reports, :manage_users)).to be false
+ end
+ end
+
+ context 'with an unknown flag' do
+ it 'raises an error' do
+ expect { subject.can?(:foo) }.to raise_error ArgumentError
+ end
+ end
+ end
+
+ describe '#overrides?' do
+ it 'returns true if other role has lower position' do
+ expect(subject.overrides?(described_class.new(position: subject.position - 1))).to be true
+ end
+
+ it 'returns true if other role is nil' do
+ expect(subject.overrides?(nil)).to be true
+ end
+
+ it 'returns false if other role has higher position' do
+ expect(subject.overrides?(described_class.new(position: subject.position + 1))).to be false
+ end
+ end
+
+ describe '#permissions_as_keys' do
+ before do
+ subject.permissions = UserRole::FLAGS[:invite_users] | UserRole::FLAGS[:view_dashboard] | UserRole::FLAGS[:manage_reports]
+ end
+
+ it 'returns an array' do
+ expect(subject.permissions_as_keys).to match_array %w(invite_users view_dashboard manage_reports)
+ end
+ end
+
+ describe '#permissions_as_keys=' do
+ let(:input) { }
+
+ before do
+ subject.permissions_as_keys = input
+ end
+
+ context 'with a single value' do
+ let(:input) { %w(manage_users) }
+
+ it 'sets permission flags' do
+ expect(subject.permissions).to eq UserRole::FLAGS[:manage_users]
+ end
+ end
+
+ context 'with multiple values' do
+ let(:input) { %w(manage_users manage_reports) }
+
+ it 'sets permission flags' do
+ expect(subject.permissions).to eq UserRole::FLAGS[:manage_users] | UserRole::FLAGS[:manage_reports]
+ end
+ end
+
+ context 'with an unknown value' do
+ let(:input) { %w(foo) }
+
+ it 'does not set permission flags' do
+ expect(subject.permissions).to eq UserRole::Flags::NONE
+ end
+ end
+ end
+
+ describe '#computed_permissions' do
+ context 'when the role is nobody' do
+ let(:subject) { described_class.nobody }
+
+ it 'returns none' do
+ expect(subject.computed_permissions).to eq UserRole::Flags::NONE
+ end
+ end
+
+ context 'when the role is everyone' do
+ let(:subject) { described_class.everyone }
+
+ it 'returns permissions' do
+ expect(subject.computed_permissions).to eq subject.permissions
+ end
+ end
+
+ context 'when role has the administrator flag' do
+ before do
+ subject.permissions = UserRole::FLAGS[:administrator]
+ end
+
+ it 'returns all permissions' do
+ expect(subject.computed_permissions).to eq UserRole::Flags::ALL
+ end
+ end
+
+ context do
+ it 'returns permissions combined with the everyone role' do
+ expect(subject.computed_permissions).to eq described_class.everyone.permissions
+ end
+ end
+ end
+
+ describe '.everyone' do
+ subject { described_class.everyone }
+
+ it 'returns a role' do
+ expect(subject).to be_kind_of(described_class)
+ end
+
+ it 'is identified as the everyone role' do
+ expect(subject.everyone?).to be true
+ end
+
+ it 'has default permissions' do
+ expect(subject.permissions).to eq UserRole::FLAGS[:invite_users]
+ end
+
+ it 'has negative position' do
+ expect(subject.position).to eq -1
+ end
+ end
+
+ describe '.nobody' do
+ subject { described_class.nobody }
+
+ it 'returns a role' do
+ expect(subject).to be_kind_of(described_class)
+ end
+
+ it 'is identified as the nobody role' do
+ expect(subject.nobody?).to be true
+ end
+
+ it 'has no permissions' do
+ expect(subject.permissions).to eq UserRole::Flags::NONE
+ end
+
+ it 'has negative position' do
+ expect(subject.position).to eq -1
+ end
+ end
+
+ describe '#everyone?' do
+ it 'returns true when id is -99' do
+ subject.id = -99
+ expect(subject.everyone?).to be true
+ end
+
+ it 'returns false when id is not -99' do
+ subject.id = 123
+ expect(subject.everyone?).to be false
+ end
+ end
+
+ describe '#nobody?' do
+ it 'returns true when id is nil' do
+ subject.id = nil
+ expect(subject.nobody?).to be true
+ end
+
+ it 'returns false when id is not nil' do
+ subject.id = 123
+ expect(subject.nobody?).to be false
+ end
+ end
+end
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index 1645ab59e04..a7da31e6064 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -56,14 +56,6 @@ RSpec.describe User, type: :model do
end
end
- describe 'admins' do
- it 'returns an array of users who are admin' do
- user_1 = Fabricate(:user, admin: false)
- user_2 = Fabricate(:user, admin: true)
- expect(User.admins).to match_array([user_2])
- end
- end
-
describe 'confirmed' do
it 'returns an array of users who are confirmed' do
user_1 = Fabricate(:user, confirmed_at: nil)
@@ -289,49 +281,6 @@ RSpec.describe User, type: :model do
end
end
- describe '#role' do
- it 'returns admin for admin' do
- user = User.new(admin: true)
- expect(user.role).to eq 'admin'
- end
-
- it 'returns moderator for moderator' do
- user = User.new(moderator: true)
- expect(user.role).to eq 'moderator'
- end
-
- it 'returns user otherwise' do
- user = User.new
- expect(user.role).to eq 'user'
- end
- end
-
- describe '#role?' do
- it 'returns false when invalid role requested' do
- user = User.new(admin: true)
- expect(user.role?('disabled')).to be false
- end
-
- it 'returns true when exact role match' do
- user = User.new
- mod = User.new(moderator: true)
- admin = User.new(admin: true)
-
- expect(user.role?('user')).to be true
- expect(mod.role?('moderator')).to be true
- expect(admin.role?('admin')).to be true
- end
-
- it 'returns true when role higher than needed' do
- mod = User.new(moderator: true)
- admin = User.new(admin: true)
-
- expect(mod.role?('user')).to be true
- expect(admin.role?('user')).to be true
- expect(admin.role?('moderator')).to be true
- end
- end
-
describe '#disable!' do
subject(:user) { Fabricate(:user, disabled: false, current_sign_in_at: current_sign_in_at, last_sign_in_at: nil) }
let(:current_sign_in_at) { Time.zone.now }
@@ -420,110 +369,6 @@ RSpec.describe User, type: :model do
end
end
- describe '#promote!' do
- subject(:user) { Fabricate(:user, admin: is_admin, moderator: is_moderator) }
-
- before do
- user.promote!
- end
-
- context 'when user is an admin' do
- let(:is_admin) { true }
-
- context 'when user is a moderator' do
- let(:is_moderator) { true }
-
- it 'changes moderator filed false' do
- expect(user).to be_admin
- expect(user).not_to be_moderator
- end
- end
-
- context 'when user is not a moderator' do
- let(:is_moderator) { false }
-
- it 'does not change status' do
- expect(user).to be_admin
- expect(user).not_to be_moderator
- end
- end
- end
-
- context 'when user is not admin' do
- let(:is_admin) { false }
-
- context 'when user is a moderator' do
- let(:is_moderator) { true }
-
- it 'changes user into an admin' do
- expect(user).to be_admin
- expect(user).not_to be_moderator
- end
- end
-
- context 'when user is not a moderator' do
- let(:is_moderator) { false }
-
- it 'changes user into a moderator' do
- expect(user).not_to be_admin
- expect(user).to be_moderator
- end
- end
- end
- end
-
- describe '#demote!' do
- subject(:user) { Fabricate(:user, admin: admin, moderator: moderator) }
-
- before do
- user.demote!
- end
-
- context 'when user is an admin' do
- let(:admin) { true }
-
- context 'when user is a moderator' do
- let(:moderator) { true }
-
- it 'changes user into a moderator' do
- expect(user).not_to be_admin
- expect(user).to be_moderator
- end
- end
-
- context 'when user is not a moderator' do
- let(:moderator) { false }
-
- it 'changes user into a moderator' do
- expect(user).not_to be_admin
- expect(user).to be_moderator
- end
- end
- end
-
- context 'when user is not an admin' do
- let(:admin) { false }
-
- context 'when user is a moderator' do
- let(:moderator) { true }
-
- it 'changes user into a plain user' do
- expect(user).not_to be_admin
- expect(user).not_to be_moderator
- end
- end
-
- context 'when user is not a moderator' do
- let(:moderator) { false }
-
- it 'does not change any fields' do
- expect(user).not_to be_admin
- expect(user).not_to be_moderator
- end
- end
- end
- end
-
describe '#active_for_authentication?' do
subject { user.active_for_authentication? }
let(:user) { Fabricate(:user, disabled: disabled, confirmed_at: confirmed_at) }
@@ -560,4 +405,8 @@ RSpec.describe User, type: :model do
end
end
end
+
+ describe '.those_who_can' do
+ pending
+ end
end
diff --git a/spec/policies/account_moderation_note_policy_spec.rb b/spec/policies/account_moderation_note_policy_spec.rb
index 39ec2008aec..8467473465e 100644
--- a/spec/policies/account_moderation_note_policy_spec.rb
+++ b/spec/policies/account_moderation_note_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe AccountModerationNotePolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :create? do
@@ -31,7 +31,7 @@ RSpec.describe AccountModerationNotePolicy do
context 'admin' do
it 'grants to destroy' do
- expect(subject).to permit(admin, AccountModerationNotePolicy)
+ expect(subject).to permit(admin, account_moderation_note)
end
end
diff --git a/spec/policies/account_policy_spec.rb b/spec/policies/account_policy_spec.rb
index b55eb65a796..0f23fd97e28 100644
--- a/spec/policies/account_policy_spec.rb
+++ b/spec/policies/account_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe AccountPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
let(:alice) { Fabricate(:account) }
@@ -55,7 +55,7 @@ RSpec.describe AccountPolicy do
end
end
- permissions :redownload?, :subscribe?, :unsubscribe? do
+ permissions :redownload? do
context 'admin' do
it 'permits' do
expect(subject).to permit(admin)
@@ -70,7 +70,7 @@ RSpec.describe AccountPolicy do
end
permissions :suspend?, :silence? do
- let(:staff) { Fabricate(:user, admin: true).account }
+ let(:staff) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
context 'staff' do
context 'record is staff' do
@@ -94,7 +94,7 @@ RSpec.describe AccountPolicy do
end
permissions :memorialize? do
- let(:other_admin) { Fabricate(:user, admin: true).account }
+ let(:other_admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
context 'admin' do
context 'record is admin' do
diff --git a/spec/policies/custom_emoji_policy_spec.rb b/spec/policies/custom_emoji_policy_spec.rb
index e4f1af3c1b9..6a6ef6694d7 100644
--- a/spec/policies/custom_emoji_policy_spec.rb
+++ b/spec/policies/custom_emoji_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe CustomEmojiPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :index?, :enable?, :disable? do
diff --git a/spec/policies/domain_block_policy_spec.rb b/spec/policies/domain_block_policy_spec.rb
index b24ed9e3a32..01b97e823a2 100644
--- a/spec/policies/domain_block_policy_spec.rb
+++ b/spec/policies/domain_block_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe DomainBlockPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :index?, :show?, :create?, :destroy? do
diff --git a/spec/policies/email_domain_block_policy_spec.rb b/spec/policies/email_domain_block_policy_spec.rb
index 1ff55af8e6b..913075c3d28 100644
--- a/spec/policies/email_domain_block_policy_spec.rb
+++ b/spec/policies/email_domain_block_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe EmailDomainBlockPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :index?, :create?, :destroy? do
diff --git a/spec/policies/instance_policy_spec.rb b/spec/policies/instance_policy_spec.rb
index 71ef1fe5077..f6f51af068b 100644
--- a/spec/policies/instance_policy_spec.rb
+++ b/spec/policies/instance_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe InstancePolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :index?, :show?, :destroy? do
diff --git a/spec/policies/invite_policy_spec.rb b/spec/policies/invite_policy_spec.rb
index 12213780479..01660322f1e 100644
--- a/spec/policies/invite_policy_spec.rb
+++ b/spec/policies/invite_policy_spec.rb
@@ -5,8 +5,8 @@ require 'pundit/rspec'
RSpec.describe InvitePolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
- let(:john) { Fabricate(:account) }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
+ let(:john) { Fabricate(:user).account }
permissions :index? do
context 'staff?' do
@@ -17,16 +17,22 @@ RSpec.describe InvitePolicy do
end
permissions :create? do
- context 'min_required_role?' do
+ context 'has privilege' do
+ before do
+ UserRole.everyone.update(permissions: UserRole::FLAGS[:invite_users])
+ end
+
it 'permits' do
- allow_any_instance_of(described_class).to receive(:min_required_role?) { true }
expect(subject).to permit(john, Invite)
end
end
- context 'not min_required_role?' do
+ context 'does not have privilege' do
+ before do
+ UserRole.everyone.update(permissions: UserRole::Flags::NONE)
+ end
+
it 'denies' do
- allow_any_instance_of(described_class).to receive(:min_required_role?) { false }
expect(subject).to_not permit(john, Invite)
end
end
@@ -54,39 +60,15 @@ RSpec.describe InvitePolicy do
end
context 'not owner?' do
- context 'Setting.min_invite_role == "admin"' do
- before do
- Setting.min_invite_role = 'admin'
- end
-
- context 'admin?' do
- it 'permits' do
- expect(subject).to permit(admin, Fabricate(:invite))
- end
- end
-
- context 'not admin?' do
- it 'denies' do
- expect(subject).to_not permit(john, Fabricate(:invite))
- end
+ context 'admin?' do
+ it 'permits' do
+ expect(subject).to permit(admin, Fabricate(:invite))
end
end
- context 'Setting.min_invite_role != "admin"' do
- before do
- Setting.min_invite_role = 'else'
- end
-
- context 'staff?' do
- it 'permits' do
- expect(subject).to permit(admin, Fabricate(:invite))
- end
- end
-
- context 'not staff?' do
- it 'denies' do
- expect(subject).to_not permit(john, Fabricate(:invite))
- end
+ context 'not admin?' do
+ it 'denies' do
+ expect(subject).to_not permit(john, Fabricate(:invite))
end
end
end
diff --git a/spec/policies/relay_policy_spec.rb b/spec/policies/relay_policy_spec.rb
index 139d945dc8f..2c50ba1e9fe 100644
--- a/spec/policies/relay_policy_spec.rb
+++ b/spec/policies/relay_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe RelayPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :update? do
diff --git a/spec/policies/report_note_policy_spec.rb b/spec/policies/report_note_policy_spec.rb
index c34f99b712d..99f5ffb8e38 100644
--- a/spec/policies/report_note_policy_spec.rb
+++ b/spec/policies/report_note_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe ReportNotePolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :create? do
@@ -25,7 +25,8 @@ RSpec.describe ReportNotePolicy do
permissions :destroy? do
context 'admin?' do
it 'permit' do
- expect(subject).to permit(admin, ReportNote)
+ report_note = Fabricate(:report_note, account: john)
+ expect(subject).to permit(admin, report_note)
end
end
diff --git a/spec/policies/report_policy_spec.rb b/spec/policies/report_policy_spec.rb
index 84c366d7f3e..8b005d8ddd0 100644
--- a/spec/policies/report_policy_spec.rb
+++ b/spec/policies/report_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe ReportPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :update?, :index?, :show? do
diff --git a/spec/policies/settings_policy_spec.rb b/spec/policies/settings_policy_spec.rb
index 3fa183c509d..e16ee51a485 100644
--- a/spec/policies/settings_policy_spec.rb
+++ b/spec/policies/settings_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe SettingsPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :update?, :show? do
diff --git a/spec/policies/status_policy_spec.rb b/spec/policies/status_policy_spec.rb
index 865c693aa88..c2dcc50dfaa 100644
--- a/spec/policies/status_policy_spec.rb
+++ b/spec/policies/status_policy_spec.rb
@@ -6,7 +6,7 @@ require 'pundit/rspec'
RSpec.describe StatusPolicy, type: :model do
subject { described_class }
- let(:admin) { Fabricate(:user, admin: true) }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
let(:alice) { Fabricate(:account, username: 'alice') }
let(:bob) { Fabricate(:account, username: 'bob') }
let(:status) { Fabricate(:status, account: alice) }
diff --git a/spec/policies/tag_policy_spec.rb b/spec/policies/tag_policy_spec.rb
index 256e6786a30..9be7140fc2d 100644
--- a/spec/policies/tag_policy_spec.rb
+++ b/spec/policies/tag_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe TagPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :index?, :show?, :update? do
diff --git a/spec/policies/user_policy_spec.rb b/spec/policies/user_policy_spec.rb
index 731c041d11e..ff0916674e5 100644
--- a/spec/policies/user_policy_spec.rb
+++ b/spec/policies/user_policy_spec.rb
@@ -5,7 +5,7 @@ require 'pundit/rspec'
RSpec.describe UserPolicy do
let(:subject) { described_class }
- let(:admin) { Fabricate(:user, admin: true).account }
+ let(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')).account }
let(:john) { Fabricate(:account) }
permissions :reset_password?, :change_email? do
@@ -111,57 +111,4 @@ RSpec.describe UserPolicy do
end
end
end
-
- permissions :promote? do
- context 'admin?' do
- context 'promotable?' do
- it 'permits' do
- expect(subject).to permit(admin, john.user)
- end
- end
-
- context '!promotable?' do
- it 'denies' do
- expect(subject).to_not permit(admin, admin.user)
- end
- end
- end
-
- context '!admin?' do
- it 'denies' do
- expect(subject).to_not permit(john, User)
- end
- end
- end
-
- permissions :demote? do
- context 'admin?' do
- context '!record.admin?' do
- context 'demoteable?' do
- it 'permits' do
- john.user.update(moderator: true)
- expect(subject).to permit(admin, john.user)
- end
- end
-
- context '!demoteable?' do
- it 'denies' do
- expect(subject).to_not permit(admin, john.user)
- end
- end
- end
-
- context 'record.admin?' do
- it 'denies' do
- expect(subject).to_not permit(admin, admin.user)
- end
- end
- end
-
- context '!admin?' do
- it 'denies' do
- expect(subject).to_not permit(john, User)
- end
- end
- end
end
diff --git a/streaming/index.js b/streaming/index.js
index 183cdf78998..ff7d48250be 100644
--- a/streaming/index.js
+++ b/streaming/index.js
@@ -900,6 +900,34 @@ const startWorker = async (workerId) => {
return arr;
};
+ /**
+ * See app/lib/ascii_folder.rb for the canon definitions
+ * of these constants
+ */
+ const NON_ASCII_CHARS = 'ÀÁÂÃÄÅàáâãäåĀāĂ㥹ÇçĆćĈĉĊċČčÐðĎďĐđÈÉÊËèéêëĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħÌÍÎÏìíîïĨĩĪīĬĭĮįİıĴĵĶķĸĹĺĻļĽľĿŀŁłÑñŃńŅņŇňʼnŊŋÒÓÔÕÖØòóôõöøŌōŎŏŐőŔŕŖŗŘřŚśŜŝŞşŠšſŢţŤťŦŧÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųŴŵÝýÿŶŷŸŹźŻżŽž';
+ const EQUIVALENT_ASCII_CHARS = 'AAAAAAaaaaaaAaAaAaCcCcCcCcCcDdDdDdEEEEeeeeEeEeEeEeEeGgGgGgGgHhHhIIIIiiiiIiIiIiIiIiJjKkkLlLlLlLlLlNnNnNnNnnNnOOOOOOooooooOoOoOoRrRrRrSsSsSsSssTtTtTtUUUUuuuuUuUuUuUuUuUuWwYyyYyYZzZzZz';
+
+ /**
+ * @param {string} str
+ * @return {string}
+ */
+ const foldToASCII = str => {
+ const regex = new RegExp(NON_ASCII_CHARS.split('').join('|'), 'g');
+
+ return str.replace(regex, match => {
+ const index = NON_ASCII_CHARS.indexOf(match);
+ return EQUIVALENT_ASCII_CHARS[index];
+ });
+ };
+
+ /**
+ * @param {string} str
+ * @return {string}
+ */
+ const normalizeHashtag = str => {
+ return foldToASCII(str.normalize('NFKC').toLowerCase()).replace(/[^\p{L}\p{N}_\u00b7\u200c]/gu, '');
+ };
+
/**
* @param {any} req
* @param {string} name
@@ -990,7 +1018,7 @@ const startWorker = async (workerId) => {
reject('No tag for stream provided');
} else {
resolve({
- channelIds: [`timeline:hashtag:${params.tag.toLowerCase()}`],
+ channelIds: [`timeline:hashtag:${normalizeHashtag(params.tag)}`],
options: { needsFiltering: true, allowLocalOnly: true },
});
}
@@ -1001,7 +1029,7 @@ const startWorker = async (workerId) => {
reject('No tag for stream provided');
} else {
resolve({
- channelIds: [`timeline:hashtag:${params.tag.toLowerCase()}:local`],
+ channelIds: [`timeline:hashtag:${normalizeHashtag(params.tag)}:local`],
options: { needsFiltering: true, allowLocalOnly: true },
});
}
diff --git a/yarn.lock b/yarn.lock
index f24128eeadd..b405f7bd7de 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1245,15 +1245,15 @@
jest-util "^28.1.1"
slash "^3.0.0"
-"@jest/core@^28.1.1":
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/@jest/core/-/core-28.1.1.tgz#086830bec6267accf9af5ca76f794858e9f9f092"
- integrity sha512-3pYsBoZZ42tXMdlcFeCc/0j9kOlK7MYuXs2B1QbvDgMoW1K9NJ4G/VYvIbMb26iqlkTfPHo7SC2JgjDOk/mxXw==
+"@jest/core@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/core/-/core-28.1.2.tgz#eac519b9acbd154313854b8823a47b5c645f785a"
+ integrity sha512-Xo4E+Sb/nZODMGOPt2G3cMmCBqL4/W2Ijwr7/mrXlq4jdJwcFQ/9KrrJZT2adQRk2otVBXXOz1GRQ4Z5iOgvRQ==
dependencies:
"@jest/console" "^28.1.1"
- "@jest/reporters" "^28.1.1"
+ "@jest/reporters" "^28.1.2"
"@jest/test-result" "^28.1.1"
- "@jest/transform" "^28.1.1"
+ "@jest/transform" "^28.1.2"
"@jest/types" "^28.1.1"
"@types/node" "*"
ansi-escapes "^4.2.1"
@@ -1262,15 +1262,15 @@
exit "^0.1.2"
graceful-fs "^4.2.9"
jest-changed-files "^28.0.2"
- jest-config "^28.1.1"
+ jest-config "^28.1.2"
jest-haste-map "^28.1.1"
jest-message-util "^28.1.1"
jest-regex-util "^28.0.2"
jest-resolve "^28.1.1"
- jest-resolve-dependencies "^28.1.1"
- jest-runner "^28.1.1"
- jest-runtime "^28.1.1"
- jest-snapshot "^28.1.1"
+ jest-resolve-dependencies "^28.1.2"
+ jest-runner "^28.1.2"
+ jest-runtime "^28.1.2"
+ jest-snapshot "^28.1.2"
jest-util "^28.1.1"
jest-validate "^28.1.1"
jest-watcher "^28.1.1"
@@ -1280,12 +1280,12 @@
slash "^3.0.0"
strip-ansi "^6.0.0"
-"@jest/environment@^28.1.1":
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-28.1.1.tgz#c4cbf85283278d768f816ebd1a258ea6f9e39d4f"
- integrity sha512-9auVQ2GzQ7nrU+lAr8KyY838YahElTX9HVjbQPPS2XjlxQ+na18G113OoBhyBGBtD6ZnO/SrUy5WR8EzOj1/Uw==
+"@jest/environment@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-28.1.2.tgz#94a052c0c5f9f8c8e6d13ea6da78dbc5d7d9b85b"
+ integrity sha512-I0CR1RUMmOzd0tRpz10oUfaChBWs+/Hrvn5xYhMEF/ZqrDaaeHwS8yDBqEWCrEnkH2g+WE/6g90oBv3nKpcm8Q==
dependencies:
- "@jest/fake-timers" "^28.1.1"
+ "@jest/fake-timers" "^28.1.2"
"@jest/types" "^28.1.1"
"@types/node" "*"
jest-mock "^28.1.1"
@@ -1297,46 +1297,46 @@
dependencies:
jest-get-type "^28.0.2"
-"@jest/expect@^28.1.1":
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-28.1.1.tgz#ea4fcc8504b45835029221c0dc357c622a761326"
- integrity sha512-/+tQprrFoT6lfkMj4mW/mUIfAmmk/+iQPmg7mLDIFOf2lyf7EBHaS+x3RbeR0VZVMe55IvX7QRoT/2aK3AuUXg==
+"@jest/expect@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-28.1.2.tgz#0b25acedff46e1e1e5606285306c8a399c12534f"
+ integrity sha512-HBzyZBeFBiOelNbBKN0pilWbbrGvwDUwAqMC46NVJmWm8AVkuE58NbG1s7DR4cxFt4U5cVLxofAoHxgvC5MyOw==
dependencies:
expect "^28.1.1"
- jest-snapshot "^28.1.1"
+ jest-snapshot "^28.1.2"
-"@jest/fake-timers@^28.1.1":
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-28.1.1.tgz#47ce33296ab9d680c76076d51ddbe65ceb3337f1"
- integrity sha512-BY/3+TyLs5+q87rGWrGUY5f8e8uC3LsVHS9Diz8+FV3ARXL4sNnkLlIB8dvDvRrp+LUCGM+DLqlsYubizGUjIA==
+"@jest/fake-timers@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-28.1.2.tgz#d49e8ee4e02ba85a6e844a52a5e7c59c23e3b76f"
+ integrity sha512-xSYEI7Y0D5FbZN2LsCUj/EKRR1zfQYmGuAUVh6xTqhx7V5JhjgMcK5Pa0iR6WIk0GXiHDe0Ke4A+yERKE9saqg==
dependencies:
"@jest/types" "^28.1.1"
- "@sinonjs/fake-timers" "^9.1.1"
+ "@sinonjs/fake-timers" "^9.1.2"
"@types/node" "*"
jest-message-util "^28.1.1"
jest-mock "^28.1.1"
jest-util "^28.1.1"
-"@jest/globals@^28.1.1":
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-28.1.1.tgz#c0a7977f85e26279cc090d9adcdf82b8a34c4061"
- integrity sha512-dEgl/6v7ToB4vXItdvcltJBgny0xBE6xy6IYQrPJAJggdEinGxCDMivNv7sFzPcTITGquXD6UJwYxfJ/5ZwDSg==
+"@jest/globals@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-28.1.2.tgz#92fab296e337c7309c25e4202fb724f62249d83f"
+ integrity sha512-cz0lkJVDOtDaYhvT3Fv2U1B6FtBnV+OpEyJCzTHM1fdoTsU4QNLAt/H4RkiwEUU+dL4g/MFsoTuHeT2pvbo4Hg==
dependencies:
- "@jest/environment" "^28.1.1"
- "@jest/expect" "^28.1.1"
+ "@jest/environment" "^28.1.2"
+ "@jest/expect" "^28.1.2"
"@jest/types" "^28.1.1"
-"@jest/reporters@^28.1.1":
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-28.1.1.tgz#9389f4bb3cce4d9b586f6195f83c79cd2a1c8662"
- integrity sha512-597Zj4D4d88sZrzM4atEGLuO7SdA/YrOv9SRXHXRNC+/FwPCWxZhBAEzhXoiJzfRwn8zes/EjS8Lo6DouGN5Gg==
+"@jest/reporters@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-28.1.2.tgz#0327be4ce4d0d9ae49e7908656f89669d0c2a260"
+ integrity sha512-/whGLhiwAqeCTmQEouSigUZJPVl7sW8V26EiboImL+UyXznnr1a03/YZ2BX8OlFw0n+Zlwu+EZAITZtaeRTxyA==
dependencies:
"@bcoe/v8-coverage" "^0.2.3"
"@jest/console" "^28.1.1"
"@jest/test-result" "^28.1.1"
- "@jest/transform" "^28.1.1"
+ "@jest/transform" "^28.1.2"
"@jest/types" "^28.1.1"
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@jridgewell/trace-mapping" "^0.3.13"
"@types/node" "*"
chalk "^4.0.0"
collect-v8-coverage "^1.0.0"
@@ -1355,7 +1355,7 @@
string-length "^4.0.1"
strip-ansi "^6.0.0"
terminal-link "^2.0.0"
- v8-to-istanbul "^9.0.0"
+ v8-to-istanbul "^9.0.1"
"@jest/schemas@^28.0.2":
version "28.0.2"
@@ -1364,12 +1364,12 @@
dependencies:
"@sinclair/typebox" "^0.23.3"
-"@jest/source-map@^28.0.2":
- version "28.0.2"
- resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-28.0.2.tgz#914546f4410b67b1d42c262a1da7e0406b52dc90"
- integrity sha512-Y9dxC8ZpN3kImkk0LkK5XCEneYMAXlZ8m5bflmSL5vrwyeUpJfentacCUg6fOb8NOpOO7hz2+l37MV77T6BFPw==
+"@jest/source-map@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-28.1.2.tgz#7fe832b172b497d6663cdff6c13b0a920e139e24"
+ integrity sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==
dependencies:
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@jridgewell/trace-mapping" "^0.3.13"
callsites "^3.0.0"
graceful-fs "^4.2.9"
@@ -1393,14 +1393,14 @@
jest-haste-map "^28.1.1"
slash "^3.0.0"
-"@jest/transform@^28.1.1":
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-28.1.1.tgz#83541f2a3f612077c8501f49cc4e205d4e4a6b27"
- integrity sha512-PkfaTUuvjUarl1EDr5ZQcCA++oXkFCP9QFUkG0yVKVmNObjhrqDy0kbMpMebfHWm3CCDHjYNem9eUSH8suVNHQ==
+"@jest/transform@^28.1.2":
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-28.1.2.tgz#b367962c53fd53821269bde050ce373e111327c1"
+ integrity sha512-3o+lKF6iweLeJFHBlMJysdaPbpoMmtbHEFsjzSv37HIq/wWt5ijTeO2Yf7MO5yyczCopD507cNwNLeX8Y/CuIg==
dependencies:
"@babel/core" "^7.11.6"
"@jest/types" "^28.1.1"
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@jridgewell/trace-mapping" "^0.3.13"
babel-plugin-istanbul "^6.1.1"
chalk "^4.0.0"
convert-source-map "^1.4.0"
@@ -1479,10 +1479,10 @@
"@jridgewell/resolve-uri" "^3.0.3"
"@jridgewell/sourcemap-codec" "^1.4.10"
-"@jridgewell/trace-mapping@^0.3.7":
- version "0.3.9"
- resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"
- integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
+"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.13":
+ version "0.3.14"
+ resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz#b231a081d8f66796e475ad588a1ef473112701ed"
+ integrity sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==
dependencies:
"@jridgewell/resolve-uri" "^3.0.3"
"@jridgewell/sourcemap-codec" "^1.4.10"
@@ -1580,7 +1580,7 @@
dependencies:
type-detect "4.0.8"
-"@sinonjs/fake-timers@^9.1.1":
+"@sinonjs/fake-timers@^9.1.2":
version "9.1.2"
resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c"
integrity sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==
@@ -2466,12 +2466,12 @@ axobject-query@^2.2.0:
resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.2.0.tgz#943d47e10c0b704aa42275e20edf3722648989be"
integrity sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==
-babel-jest@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-28.1.1.tgz#2a3a4ae50964695b2d694ccffe4bec537c5a3586"
- integrity sha512-MEt0263viUdAkTq5D7upHPNxvt4n9uLUGa6pPz3WviNBMtOmStb1lIXS3QobnoqM+qnH+vr4EKlvhe8QcmxIYw==
+babel-jest@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-28.1.2.tgz#2b37fb81439f14d34d8b2cc4a4bd7efabf9acbfe"
+ integrity sha512-pfmoo6sh4L/+5/G2OOfQrGJgvH7fTa1oChnuYH2G/6gA+JwDvO8PELwvwnofKBMNrQsam0Wy/Rw+QSrBNewq2Q==
dependencies:
- "@jest/transform" "^28.1.1"
+ "@jest/transform" "^28.1.2"
"@types/babel__core" "^7.1.14"
babel-plugin-istanbul "^6.1.1"
babel-preset-jest "^28.1.1"
@@ -5637,10 +5637,10 @@ http-errors@~1.6.2:
setprototypeof "1.1.0"
statuses ">= 1.4.0 < 2"
-http-link-header@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/http-link-header/-/http-link-header-1.0.4.tgz#f4efc76c6151ed0ba0d1a2d679798a18854a4a99"
- integrity sha512-Cnv3Q+FF+35avekdnH/ML8dls++tdnSgrvUIWw0YEszrWeLSuw5Iq1vyCVTb5v0rEUgFTy0x4shxXyrO0MDUzw==
+http-link-header@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/http-link-header/-/http-link-header-1.0.5.tgz#8e6d9ed1d393e8d5e01aa5c48bd97aa38d7e261c"
+ integrity sha512-msKrMbv/xHzhdOD4sstbEr+NbGqpv8ZtZliiCeByGENJo1jK1GZ/81zHF9HpWtEH5ihovPpdqHXniwZapJCKEA==
"http-parser-js@>=0.4.0 <0.4.11":
version "0.4.10"
@@ -6391,13 +6391,13 @@ jest-changed-files@^28.0.2:
execa "^5.0.0"
throat "^6.0.1"
-jest-circus@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-28.1.1.tgz#3d27da6a974d85a466dc0cdc6ddeb58daaa57bb4"
- integrity sha512-75+BBVTsL4+p2w198DQpCeyh1RdaS2lhEG87HkaFX/UG0gJExVq2skG2pT7XZEGBubNj2CytcWSPan4QEPNosw==
+jest-circus@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-28.1.2.tgz#0d5a5623eccb244efe87d1edc365696e4fcf80ce"
+ integrity sha512-E2vdPIJG5/69EMpslFhaA46WkcrN74LI5V/cSJ59L7uS8UNoXbzTxmwhpi9XrIL3zqvMt5T0pl5k2l2u2GwBNQ==
dependencies:
- "@jest/environment" "^28.1.1"
- "@jest/expect" "^28.1.1"
+ "@jest/environment" "^28.1.2"
+ "@jest/expect" "^28.1.2"
"@jest/test-result" "^28.1.1"
"@jest/types" "^28.1.1"
"@types/node" "*"
@@ -6408,52 +6408,52 @@ jest-circus@^28.1.1:
jest-each "^28.1.1"
jest-matcher-utils "^28.1.1"
jest-message-util "^28.1.1"
- jest-runtime "^28.1.1"
- jest-snapshot "^28.1.1"
+ jest-runtime "^28.1.2"
+ jest-snapshot "^28.1.2"
jest-util "^28.1.1"
pretty-format "^28.1.1"
slash "^3.0.0"
stack-utils "^2.0.3"
throat "^6.0.1"
-jest-cli@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-28.1.1.tgz#23ddfde8940e1818585ae4a568877b33b0e51cfe"
- integrity sha512-+sUfVbJqb1OjBZ0OdBbI6OWfYM1i7bSfzYy6gze1F1w3OKWq8ZTEKkZ8a7ZQPq6G/G1qMh/uKqpdWhgl11NFQQ==
+jest-cli@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-28.1.2.tgz#b89012e5bad14135e71b1628b85475d3773a1bbc"
+ integrity sha512-l6eoi5Do/IJUXAFL9qRmDiFpBeEJAnjJb1dcd9i/VWfVWbp3mJhuH50dNtX67Ali4Ecvt4eBkWb4hXhPHkAZTw==
dependencies:
- "@jest/core" "^28.1.1"
+ "@jest/core" "^28.1.2"
"@jest/test-result" "^28.1.1"
"@jest/types" "^28.1.1"
chalk "^4.0.0"
exit "^0.1.2"
graceful-fs "^4.2.9"
import-local "^3.0.2"
- jest-config "^28.1.1"
+ jest-config "^28.1.2"
jest-util "^28.1.1"
jest-validate "^28.1.1"
prompts "^2.0.1"
yargs "^17.3.1"
-jest-config@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-28.1.1.tgz#e90b97b984f14a6c24a221859e81b258990fce2f"
- integrity sha512-tASynMhS+jVV85zKvjfbJ8nUyJS/jUSYZ5KQxLUN2ZCvcQc/OmhQl2j6VEL3ezQkNofxn5pQ3SPYWPHb0unTZA==
+jest-config@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-28.1.2.tgz#ba00ad30caf62286c86e7c1099e915218a0ac8c6"
+ integrity sha512-g6EfeRqddVbjPVBVY4JWpUY4IvQoFRIZcv4V36QkqzE0IGhEC/VkugFeBMAeUE7PRgC8KJF0yvJNDeQRbamEVA==
dependencies:
"@babel/core" "^7.11.6"
"@jest/test-sequencer" "^28.1.1"
"@jest/types" "^28.1.1"
- babel-jest "^28.1.1"
+ babel-jest "^28.1.2"
chalk "^4.0.0"
ci-info "^3.2.0"
deepmerge "^4.2.2"
glob "^7.1.3"
graceful-fs "^4.2.9"
- jest-circus "^28.1.1"
- jest-environment-node "^28.1.1"
+ jest-circus "^28.1.2"
+ jest-environment-node "^28.1.2"
jest-get-type "^28.0.2"
jest-regex-util "^28.0.2"
jest-resolve "^28.1.1"
- jest-runner "^28.1.1"
+ jest-runner "^28.1.2"
jest-util "^28.1.1"
jest-validate "^28.1.1"
micromatch "^4.0.4"
@@ -6500,13 +6500,13 @@ jest-each@^28.1.1:
jest-util "^28.1.1"
pretty-format "^28.1.1"
-jest-environment-jsdom@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-28.1.1.tgz#8bd721915b32f9b196723292c4461a0ad548b55b"
- integrity sha512-41ZvgSoPNcKG5q3LuuOcAczdBxRq9DbZkPe24okN6ZCmiZdAfFtPg3z+lOtsT1fM6OAERApKT+3m0MRDQH2zIA==
+jest-environment-jsdom@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-28.1.2.tgz#d3fe82ef8f900c34ab582df7d3002c5079e3d8ab"
+ integrity sha512-Ujhx/xFZGVPuxAVpseQ7KqdBErenuWH3Io2HujkGOKMS2VWmpnTGYHzv+73p21QJ9yYQlJkeg06rTe1svV+u0g==
dependencies:
- "@jest/environment" "^28.1.1"
- "@jest/fake-timers" "^28.1.1"
+ "@jest/environment" "^28.1.2"
+ "@jest/fake-timers" "^28.1.2"
"@jest/types" "^28.1.1"
"@types/jsdom" "^16.2.4"
"@types/node" "*"
@@ -6514,13 +6514,13 @@ jest-environment-jsdom@^28.1.1:
jest-util "^28.1.1"
jsdom "^19.0.0"
-jest-environment-node@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-28.1.1.tgz#1c86c59003a7d319fa06ea3b1bbda6c193715c67"
- integrity sha512-2aV/eeY/WNgUUJrrkDJ3cFEigjC5fqT1+fCclrY6paqJ5zVPoM//sHmfgUUp7WLYxIdbPwMiVIzejpN56MxnNA==
+jest-environment-node@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-28.1.2.tgz#3e2eb47f6d173b0648d5f7c717cb1c26651d5c8a"
+ integrity sha512-oYsZz9Qw27XKmOgTtnl0jW7VplJkN2oeof+SwAwKFQacq3CLlG9u4kTGuuLWfvu3J7bVutWlrbEQMOCL/jughw==
dependencies:
- "@jest/environment" "^28.1.1"
- "@jest/fake-timers" "^28.1.1"
+ "@jest/environment" "^28.1.2"
+ "@jest/fake-timers" "^28.1.2"
"@jest/types" "^28.1.1"
"@types/node" "*"
jest-mock "^28.1.1"
@@ -6606,13 +6606,13 @@ jest-regex-util@^28.0.2:
resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-28.0.2.tgz#afdc377a3b25fb6e80825adcf76c854e5bf47ead"
integrity sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==
-jest-resolve-dependencies@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.1.tgz#3dffaaa56f4b41bc6b61053899d1756401763a27"
- integrity sha512-p8Y150xYJth4EXhOuB8FzmS9r8IGLEioiaetgdNGb9VHka4fl0zqWlVe4v7mSkYOuEUg2uB61iE+zySDgrOmgQ==
+jest-resolve-dependencies@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.2.tgz#ca528858e0c6642d5a1dda8fc7cda10230c275bc"
+ integrity sha512-OXw4vbOZuyRTBi3tapWBqdyodU+T33ww5cPZORuTWkg+Y8lmsxQlVu3MWtJh6NMlKRTHQetF96yGPv01Ye7Mbg==
dependencies:
jest-regex-util "^28.0.2"
- jest-snapshot "^28.1.1"
+ jest-snapshot "^28.1.2"
jest-resolve@^28.1.1:
version "28.1.1"
@@ -6629,44 +6629,44 @@ jest-resolve@^28.1.1:
resolve.exports "^1.1.0"
slash "^3.0.0"
-jest-runner@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-28.1.1.tgz#9ecdb3f27a00059986797aa6b012ba8306aa436c"
- integrity sha512-W5oFUiDBgTsCloTAj6q95wEvYDB0pxIhY6bc5F26OucnwBN+K58xGTGbliSMI4ChQal5eANDF+xvELaYkJxTmA==
+jest-runner@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-28.1.2.tgz#f293409592a62234285a71237e38499a3554e350"
+ integrity sha512-6/k3DlAsAEr5VcptCMdhtRhOoYClZQmxnVMZvZ/quvPGRpN7OBQYPIC32tWSgOnbgqLXNs5RAniC+nkdFZpD4A==
dependencies:
"@jest/console" "^28.1.1"
- "@jest/environment" "^28.1.1"
+ "@jest/environment" "^28.1.2"
"@jest/test-result" "^28.1.1"
- "@jest/transform" "^28.1.1"
+ "@jest/transform" "^28.1.2"
"@jest/types" "^28.1.1"
"@types/node" "*"
chalk "^4.0.0"
emittery "^0.10.2"
graceful-fs "^4.2.9"
jest-docblock "^28.1.1"
- jest-environment-node "^28.1.1"
+ jest-environment-node "^28.1.2"
jest-haste-map "^28.1.1"
jest-leak-detector "^28.1.1"
jest-message-util "^28.1.1"
jest-resolve "^28.1.1"
- jest-runtime "^28.1.1"
+ jest-runtime "^28.1.2"
jest-util "^28.1.1"
jest-watcher "^28.1.1"
jest-worker "^28.1.1"
source-map-support "0.5.13"
throat "^6.0.1"
-jest-runtime@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-28.1.1.tgz#569e1dc3c36c6c4c0b29516c1c49b6ad580abdaf"
- integrity sha512-J89qEJWW0leOsqyi0D9zHpFEYHwwafFdS9xgvhFHtIdRghbadodI0eA+DrthK/1PebBv3Px8mFSMGKrtaVnleg==
+jest-runtime@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-28.1.2.tgz#d68f34f814a848555a345ceda23289f14d59a688"
+ integrity sha512-i4w93OsWzLOeMXSi9epmakb2+3z0AchZtUQVF1hesBmcQQy4vtaql5YdVe9KexdJaVRyPDw8DoBR0j3lYsZVYw==
dependencies:
- "@jest/environment" "^28.1.1"
- "@jest/fake-timers" "^28.1.1"
- "@jest/globals" "^28.1.1"
- "@jest/source-map" "^28.0.2"
+ "@jest/environment" "^28.1.2"
+ "@jest/fake-timers" "^28.1.2"
+ "@jest/globals" "^28.1.2"
+ "@jest/source-map" "^28.1.2"
"@jest/test-result" "^28.1.1"
- "@jest/transform" "^28.1.1"
+ "@jest/transform" "^28.1.2"
"@jest/types" "^28.1.1"
chalk "^4.0.0"
cjs-module-lexer "^1.0.0"
@@ -6679,15 +6679,15 @@ jest-runtime@^28.1.1:
jest-mock "^28.1.1"
jest-regex-util "^28.0.2"
jest-resolve "^28.1.1"
- jest-snapshot "^28.1.1"
+ jest-snapshot "^28.1.2"
jest-util "^28.1.1"
slash "^3.0.0"
strip-bom "^4.0.0"
-jest-snapshot@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-28.1.1.tgz#ab825c16c8d8b5e883bd57eee6ca8748c42ab848"
- integrity sha512-1KjqHJ98adRcbIdMizjF5DipwZFbvxym/kFO4g4fVZCZRxH/dqV8TiBFCa6rqic3p0karsy8RWS1y4E07b7P0A==
+jest-snapshot@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-28.1.2.tgz#93d31b87b11b384f5946fe0767541496135f8d52"
+ integrity sha512-wzrieFttZYfLvrCVRJxX+jwML2YTArOUqFpCoSVy1QUapx+LlV9uLbV/mMEhYj4t7aMeE9aSQFHSvV/oNoDAMA==
dependencies:
"@babel/core" "^7.11.6"
"@babel/generator" "^7.7.2"
@@ -6695,7 +6695,7 @@ jest-snapshot@^28.1.1:
"@babel/traverse" "^7.7.2"
"@babel/types" "^7.3.3"
"@jest/expect-utils" "^28.1.1"
- "@jest/transform" "^28.1.1"
+ "@jest/transform" "^28.1.2"
"@jest/types" "^28.1.1"
"@types/babel__traverse" "^7.0.6"
"@types/prettier" "^2.1.5"
@@ -6769,15 +6769,15 @@ jest-worker@^28.1.1:
merge-stream "^2.0.0"
supports-color "^8.0.0"
-jest@^28.1.1:
- version "28.1.1"
- resolved "https://registry.yarnpkg.com/jest/-/jest-28.1.1.tgz#3c39a3a09791e16e9ef283597d24ab19a0df701e"
- integrity sha512-qw9YHBnjt6TCbIDMPMpJZqf9E12rh6869iZaN08/vpOGgHJSAaLLUn6H8W3IAEuy34Ls3rct064mZLETkxJ2XA==
+jest@^28.1.2:
+ version "28.1.2"
+ resolved "https://registry.yarnpkg.com/jest/-/jest-28.1.2.tgz#451ff24081ce31ca00b07b60c61add13aa96f8eb"
+ integrity sha512-Tuf05DwLeCh2cfWCQbcz9UxldoDyiR1E9Igaei5khjonKncYdc6LDfynKCEWozK0oLE3GD+xKAo2u8x/0s6GOg==
dependencies:
- "@jest/core" "^28.1.1"
+ "@jest/core" "^28.1.2"
"@jest/types" "^28.1.1"
import-local "^3.0.2"
- jest-cli "^28.1.1"
+ jest-cli "^28.1.2"
js-base64@^2.1.9:
version "2.6.4"
@@ -7230,10 +7230,10 @@ mark-loader@^0.1.6:
resolved "https://registry.yarnpkg.com/mark-loader/-/mark-loader-0.1.6.tgz#0abb477dca7421d70e20128ff6489f5cae8676d5"
integrity sha1-CrtHfcp0IdcOIBKP9kifXK6GdtU=
-marky@^1.2.4:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.4.tgz#d02bb4c08be2366687c778ecd2a328971ce23d7f"
- integrity sha512-zd2/GiSn6U3/jeFVZ0J9CA1LzQ8RfIVvXkb/U0swFHF/zT+dVohTAWjmo2DcIuofmIIIROlwTbd+shSeXmxr0w==
+marky@^1.2.5:
+ version "1.2.5"
+ resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.5.tgz#55796b688cbd72390d2d399eaaf1832c9413e3c0"
+ integrity sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==
mathml-tag-names@^2.1.3:
version "2.1.3"
@@ -9226,10 +9226,10 @@ react-router@^4.3.1:
prop-types "^15.6.1"
warning "^4.0.1"
-react-select@^5.3.2:
- version "5.3.2"
- resolved "https://registry.yarnpkg.com/react-select/-/react-select-5.3.2.tgz#ecee0d5c59ed4acb7f567f7de3c75a488d93dacb"
- integrity sha512-W6Irh7U6Ha7p5uQQ2ZnemoCQ8mcfgOtHfw3wuMzG6FAu0P+CYicgofSLOq97BhjMx8jS+h+wwWdCBeVVZ9VqlQ==
+react-select@^5.4.0:
+ version "5.4.0"
+ resolved "https://registry.yarnpkg.com/react-select/-/react-select-5.4.0.tgz#81f6ac73906126706f104751ee14437bd16798f4"
+ integrity sha512-CjE9RFLUvChd5SdlfG4vqxZd55AZJRrLrHzkQyTYeHlpOztqcgnyftYAolJ0SGsBev6zAs6qFrjm6KU3eo2hzg==
dependencies:
"@babel/runtime" "^7.12.0"
"@emotion/cache" "^11.4.0"
@@ -11230,12 +11230,12 @@ v8-compile-cache@^2.0.3, v8-compile-cache@^2.1.1, v8-compile-cache@^2.3.0:
resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
-v8-to-istanbul@^9.0.0:
- version "9.0.0"
- resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.0.tgz#be0dae58719fc53cb97e5c7ac1d7e6d4f5b19511"
- integrity sha512-HcvgY/xaRm7isYmyx+lFKA4uQmfUbN0J4M0nNItvzTvH/iQ9kW5j/t4YSR+Ge323/lrgDAWJoF46tzGQHwBHFw==
+v8-to-istanbul@^9.0.1:
+ version "9.0.1"
+ resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz#b6f994b0b5d4ef255e17a0d17dc444a9f5132fa4"
+ integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==
dependencies:
- "@jridgewell/trace-mapping" "^0.3.7"
+ "@jridgewell/trace-mapping" "^0.3.12"
"@types/istanbul-lib-coverage" "^2.0.1"
convert-source-map "^1.6.0"