diff --git a/Gemfile b/Gemfile index bc3b64e7ea6c..89e5cc53c08d 100644 --- a/Gemfile +++ b/Gemfile @@ -399,4 +399,4 @@ end gem "openproject-octicons", "~>19.18.0" gem "openproject-octicons_helper", "~>19.18.0" -gem "openproject-primer_view_components", "~>0.47.0" +gem "openproject-primer_view_components", "~>0.47.1" diff --git a/Gemfile.lock b/Gemfile.lock index 67827b4a54cc..29724ed92fc3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -804,7 +804,7 @@ GEM actionview openproject-octicons (= 19.18.0) railties - openproject-primer_view_components (0.47.0) + openproject-primer_view_components (0.47.1) actionview (>= 5.0.0) activesupport (>= 5.0.0) openproject-octicons (>= 19.17.0) @@ -1303,7 +1303,7 @@ DEPENDENCIES openproject-octicons (~> 19.18.0) openproject-octicons_helper (~> 19.18.0) openproject-openid_connect! - openproject-primer_view_components (~> 0.47.0) + openproject-primer_view_components (~> 0.47.1) openproject-recaptcha! openproject-reporting! openproject-storages! diff --git a/app/controllers/admin/custom_fields/custom_field_projects_controller.rb b/app/controllers/admin/custom_fields/custom_field_projects_controller.rb index e21966dd67b9..3d7dbcd33702 100644 --- a/app/controllers/admin/custom_fields/custom_field_projects_controller.rb +++ b/app/controllers/admin/custom_fields/custom_field_projects_controller.rb @@ -65,9 +65,8 @@ def create create_service.on_success { render_project_list(url_for_action: :index) } create_service.on_failure do - update_flash_message_via_turbo_stream( - message: join_flash_messages(create_service.errors), - full: true, dismiss_scheme: :hide, scheme: :danger + render_error_flash_message_via_turbo_stream( + message: join_flash_messages(create_service.errors) ) end @@ -82,9 +81,8 @@ def destroy delete_service.on_success { render_project_list(url_for_action: :index) } delete_service.on_failure do - update_flash_message_via_turbo_stream( - message: join_flash_messages(delete_service.errors.full_messages), - full: true, dismiss_scheme: :hide, scheme: :danger + render_error_flash_message_via_turbo_stream( + message: join_flash_messages(delete_service.errors.full_messages) ) end @@ -139,15 +137,6 @@ def find_custom_field_project_to_destroy respond_with_project_not_found_turbo_streams end - def update_project_list_via_turbo_stream(url_for_action: action_name) - update_via_turbo_stream( - component: Admin::CustomFields::CustomFieldProjects::TableComponent.new( - query: available_custom_fields_projects_query, - params: { custom_field: @custom_field, url_for_action: } - ) - ) - end - def available_custom_fields_projects_query @available_custom_fields_projects_query = ProjectQuery.new( name: "custom-fields-projects-#{@custom_field.id}" @@ -166,9 +155,8 @@ def initialize_custom_field_project end def respond_with_project_not_found_turbo_streams - update_flash_message_via_turbo_stream message: t(:notice_project_not_found), full: true, dismiss_scheme: :hide, - scheme: :danger - update_project_list_via_turbo_stream + render_error_flash_message_via_turbo_stream message: t(:notice_project_not_found) + render_project_list(url_for_action: :index) respond_with_turbo_streams end diff --git a/app/controllers/admin/settings/project_custom_fields_controller.rb b/app/controllers/admin/settings/project_custom_fields_controller.rb index 5bccb8501fc7..4c2bfce929d9 100644 --- a/app/controllers/admin/settings/project_custom_fields_controller.rb +++ b/app/controllers/admin/settings/project_custom_fields_controller.rb @@ -89,9 +89,8 @@ def link create_service.on_success { render_project_list(url_for_action: :project_mappings) } create_service.on_failure do - update_flash_message_via_turbo_stream( - message: join_flash_messages(create_service.errors), - full: true, dismiss_scheme: :hide, scheme: :danger + render_error_flash_message_via_turbo_stream( + message: join_flash_messages(create_service.errors) ) end @@ -106,9 +105,8 @@ def unlink delete_service.on_success { render_project_list(url_for_action: :project_mappings) } delete_service.on_failure do - update_flash_message_via_turbo_stream( - message: join_flash_messages(delete_service.errors.full_messages), - full: true, dismiss_scheme: :hide, scheme: :danger + render_error_flash_message_via_turbo_stream( + message: join_flash_messages(delete_service.errors.full_messages) ) end @@ -184,15 +182,8 @@ def find_unlink_project_custom_field_mapping project_id: permitted_params.project_custom_field_project_mapping[:project_id] ) rescue ActiveRecord::RecordNotFound - update_flash_message_via_turbo_stream( - message: t(:notice_file_not_found), full: true, dismiss_scheme: :hide, scheme: :danger - ) - replace_via_turbo_stream( - component: Settings::ProjectCustomFields::ProjectCustomFieldMapping::TableComponent.new( - query: project_custom_field_mappings_query, - params: { custom_field: @custom_field } - ) - ) + render_error_flash_message_via_turbo_stream(message: t(:notice_file_not_found)) + render_project_list(url_for_action: :project_mappings) respond_with_turbo_streams end @@ -213,10 +204,8 @@ def find_custom_field_projects_to_link false end rescue ActiveRecord::RecordNotFound - update_flash_message_via_turbo_stream( - message: t(:notice_project_not_found), full: true, dismiss_scheme: :hide, scheme: :danger - ) - render_project_list + render_error_flash_message_via_turbo_stream(message: t(:notice_project_not_found)) + render_project_list(url_for_action: :project_mappings) respond_with_turbo_streams end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index fbeabfd68b2e..079034343892 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -172,12 +172,6 @@ def labeled_check_box_tags(name, collection, options = {}) end.join.html_safe end - def html_hours(text) - html_safe_gsub(text, - %r{(\d+)\.(\d+)}, - '\1.\2') - end - def html_safe_gsub(string, *gsub_args, &) html_safe = string.html_safe? result = string.gsub(*gsub_args, &) diff --git a/app/models/status.rb b/app/models/status.rb index 1ca04da06be0..3b5d7462fd11 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -41,7 +41,7 @@ class Status < ApplicationRecord uniqueness: { case_sensitive: false }, length: { maximum: 256 } - validates :default_done_ratio, inclusion: { in: 0..100, allow_nil: true } + validates :default_done_ratio, inclusion: { in: 0..100, allow_nil: false } validate :default_status_must_not_be_readonly diff --git a/app/views/custom_styles/_primer_color_mapping.erb b/app/views/custom_styles/_primer_color_mapping.erb index e169a42e33c0..57a050ab2f91 100644 --- a/app/views/custom_styles/_primer_color_mapping.erb +++ b/app/views/custom_styles/_primer_color_mapping.erb @@ -16,6 +16,7 @@ --controlKnob-borderColor-checked: var(--control-checked-color) !important; --button-primary-fgColor-rest: var(--button--primary-font-color) !important; --button-primary-bgColor-rest: var(--button--primary-background-color) !important; + --button-primary-bgColor-active: var(--button--primary-background-active-color) !important; --button-primary-bgColor-hover: var(--button--primary-background-hover-color) !important; --button-primary-bgColor-disabled: var(--button--primary-background-disabled-color) !important; --button-primary-borderColor-disabled: var(--button--primary-border-disabled-color) !important; diff --git a/app/views/statuses/_form.html.erb b/app/views/statuses/_form.html.erb index ccc96b2d68d0..89ba2073e277 100644 --- a/app/views/statuses/_form.html.erb +++ b/app/views/statuses/_form.html.erb @@ -31,7 +31,7 @@ See COPYRIGHT and LICENSE files for more details.
<%= f.text_field "name", required: true, container_class: "-middle" %>
-
<%= f.number_field "default_done_ratio", min: 0, max: 100, container_class: "-xslim" %>
+
<%= f.number_field "default_done_ratio", required: true, min: 0, max: 100, container_class: "-xslim" %>
<%= f.check_box "is_closed" %>
<% unless @status.is_default? %>
<%= f.check_box "is_default" %>
diff --git a/app/views/versions/show.html.erb b/app/views/versions/show.html.erb index b1c43a297acc..63198f80c000 100644 --- a/app/views/versions/show.html.erb +++ b/app/views/versions/show.html.erb @@ -73,12 +73,12 @@ See COPYRIGHT and LICENSE files for more details. - + <% if User.current.allowed_in_project?(:view_time_entries, @project) %> - + <% end %>
<%= Version.human_attribute_name(:estimated_hours) %><%= html_hours(l_hours(@version.estimated_hours)) %><%= l_hours(@version.estimated_hours) %>
<%= t(:label_spent_time) %><%= html_hours(l_hours(@version.spent_hours)) %><%= l_hours(@version.spent_hours) %>
diff --git a/app/workers/application_job.rb b/app/workers/application_job.rb index 44c81ab93723..c2197a5f15bd 100644 --- a/app/workers/application_job.rb +++ b/app/workers/application_job.rb @@ -30,13 +30,7 @@ class ApplicationJob < ActiveJob::Base include ::JobStatus::ApplicationJobWithStatus - - ## - # By default, do not log the arguments of a background job - # to avoid leaking sensitive information to logs - self.log_arguments = false - - around_perform :prepare_job_context + include SharedJobSetup ## # Return a priority number on the given payload @@ -65,45 +59,7 @@ def self.queue_with_priority(value = :default) end end - # Resets the thread local request store. - # This should be done, because normal application code expects the RequestStore to be - # invalidated between multiple requests and does usually not care whether it is executed - # from a request or from a delayed job. - # For a delayed job, each job execution is the thing that comes closest to - # the concept of a new request. - def with_clean_request_store - store = RequestStore.store - - begin - RequestStore.clear! - yield - ensure - # Reset to previous value - RequestStore.clear! - RequestStore.store.merge! store - end - end - - # Reloads the thread local ActionMailer configuration. - # Since the email configuration is now done in the web app, we need to - # make sure that any changes to the configuration is correctly picked up - # by the background jobs at runtime. - def reload_mailer_settings! - Setting.reload_mailer_settings! - end - def job_scheduled_at GoodJob::Job.where(id: job_id).pick(:scheduled_at) end - - private - - def prepare_job_context - with_clean_request_store do - ::OpenProject::Appsignal.tag_request - reload_mailer_settings! - - yield - end - end end diff --git a/app/workers/mails/mailer_job.rb b/app/workers/mails/mailer_job.rb index beaed7c77fae..696daa79ec4a 100644 --- a/app/workers/mails/mailer_job.rb +++ b/app/workers/mails/mailer_job.rb @@ -26,46 +26,44 @@ # See COPYRIGHT and LICENSE files for more details. #++ -## -# This job gets called when internally using +# OpenProject is configured to use this job when sending emails like this: # # ``` # UserMailer.some_mail("some param").deliver_later # ``` # -# because we want to have the sending of the email run in an `ApplicationJob` -# as opposed to using `ActiveJob::QueueAdapters::DelayedJobAdapter::JobWrapper`. -# We want it to run in an `ApplicationJob` because of the shared setup required -# such as reloading the mailer configuration and resetting the request store. -class Mails::MailerJob < ApplicationJob - queue_as { ActionMailer::Base.deliver_later_queue_name } - - # Retry mailing jobs three times with polinomial backoff - retry_on StandardError, wait: :polynomially_longer, attempts: 3 - - # If exception is handled in mail handler - # retry_on will be ignored - rescue_from StandardError, with: :handle_exception_with_mailer_class - - def perform(mailer, mail_method, delivery, args:) - mailer.constantize.public_send(mail_method, *args).send(delivery) - end - - private - - # "Deserialize" the mailer class name by hand in case another argument - # (like a Global ID reference) raised DeserializationError. - def mailer_class - if mailer = Array(@serialized_arguments).first || Array(arguments).first - mailer.constantize - end - end +# This job is used because all our `XxxMailer` classes inherit from +# `ApplicationMailer`, and `ApplicationMailer.delivery_job` is set to +# `::Mails::MailerJob`. +# +# The `delivery_job` is customized to add the shared job setup required for +# OpenProject such as reloading the mailer configuration and resetting the +# request store on each job execution. +# +# It also adds retry logic to the job. +class Mails::MailerJob < ActionMailer::MailDeliveryJob + include SharedJobSetup - def handle_exception_with_mailer_class(exception) - if klass = mailer_class - klass.handle_exception exception - else - raise exception - end - end + # Retry mailing jobs 14 times with polynomial backoff (retries for ~ 1.5 days). + # + # with polynomial backoff, the formula to get wait_duration is: + # + # ((executions**4) + (Kernel.rand * (executions**4) * jitter)) + 2 + # + # as the default jitter is 0.0, the formula becomes: + # + # ((executions**4) + 2) + # + # To get the numbers, run this: + # + # (1..20).reduce(0) do |total_wait, i| + # wait = (i**4) + 2 + # total_wait += wait + # puts "Execution #{i} waits #{wait} secs. Total wait: #{total_wait} secs" + # total_wait + # end + # + # We set attemps to 14 to have it retry for 127715 seconds which is more than + # 1 day (~= 1 day 11 hours 30 min) + retry_on StandardError, wait: :polynomially_longer, attempts: 14 end diff --git a/app/workers/shared_job_setup.rb b/app/workers/shared_job_setup.rb new file mode 100644 index 000000000000..21019b136b1d --- /dev/null +++ b/app/workers/shared_job_setup.rb @@ -0,0 +1,92 @@ +# frozen_string_literal: true + +#-- copyright +# OpenProject is an open source project management software. +# Copyright (C) the OpenProject GmbH +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License version 3. +# +# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: +# Copyright (C) 2006-2013 Jean-Philippe Lang +# Copyright (C) 2010-2013 the ChiliProject Team +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# See COPYRIGHT and LICENSE files for more details. +#++ + +# Shared setup for jobs. +# +# This module is included in `ApplicationJob` and `Mails::MailerJob` and does +# the following: +# +# - disable logging of arguments +# - before each job execution: +# - reloads the mailer settings +# - resets the request store +# - tags the request for AppSignal +module SharedJobSetup + extend ActiveSupport::Concern + + included do + # By default, do not log the arguments of a background job + # to avoid leaking sensitive information to logs + self.log_arguments = false + + around_perform :prepare_job_context + end + + # Prepare the job execution by cleaning the request store, reloading the + # mailer settings and tagging the request + def prepare_job_context + with_clean_request_store do + ::OpenProject::Appsignal.tag_request + reload_mailer_settings! + + yield + end + end + + # Resets the thread local request store. + # + # This should be done, because normal application code expects the + # RequestStore to be invalidated between multiple requests and does usually + # not care whether it is executed from a request or from a job. + # + # For a job, each job execution is the thing that comes closest to the concept + # of a new request. + def with_clean_request_store + store = RequestStore.store + + begin + RequestStore.clear! + yield + ensure + # Reset to previous value + RequestStore.clear! + RequestStore.store.merge! store + end + end + + # Reloads the thread local ActionMailer configuration. + # + # Since the email configuration is done in the web app, it makes sure that any + # changes to the configuration is correctly picked up by the background jobs + # at runtime. + def reload_mailer_settings! + Setting.reload_mailer_settings! + end +end diff --git a/config/locales/crowdin/af.yml b/config/locales/crowdin/af.yml index 1206cee548fd..0167913ad3ae 100644 --- a/config/locales/crowdin/af.yml +++ b/config/locales/crowdin/af.yml @@ -813,7 +813,7 @@ af: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ af: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ af: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ af: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ af: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/ar.yml b/config/locales/crowdin/ar.yml index 11fc4fc98dea..4344ce673d6b 100644 --- a/config/locales/crowdin/ar.yml +++ b/config/locales/crowdin/ar.yml @@ -841,7 +841,7 @@ ar: blank: "لا يمكن أن يكون فارغا." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "حزمة العمل لا يمكن أن تكون مرتبطة إلى واحدة من المهام الفرعية." circular_dependency: "ان هذه العلاقة خلق تبعية دائرية." confirmation: "لا يتطابق مع %{attribute}." @@ -1482,8 +1482,8 @@ ar: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1943,6 +1943,8 @@ ar: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1970,6 +1972,10 @@ ar: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3345,6 +3351,13 @@ ar: setting_sys_api_enabled: "تمكين خدمة ويب إدارة المستودع" setting_sys_api_description: "ويوفر خدمة ويب إدارة المستودع التكامل و إذن للمستخدم للوصول إلى المستودعات." setting_time_format: "الوقت" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "تمكين وضع إمكانية الوصول للمستخدمين المجهولين" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/az.yml b/config/locales/crowdin/az.yml index 445b5b98a369..33b6a300eb20 100644 --- a/config/locales/crowdin/az.yml +++ b/config/locales/crowdin/az.yml @@ -813,7 +813,7 @@ az: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ az: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ az: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ az: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ az: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/be.yml b/config/locales/crowdin/be.yml index 2ad5fadb1ceb..22fd9237c5a5 100644 --- a/config/locales/crowdin/be.yml +++ b/config/locales/crowdin/be.yml @@ -827,7 +827,7 @@ be: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1448,8 +1448,8 @@ be: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1873,6 +1873,8 @@ be: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1900,6 +1902,10 @@ be: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3273,6 +3279,13 @@ be: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/bg.yml b/config/locales/crowdin/bg.yml index 9bd85f39761a..a2ee01f88351 100644 --- a/config/locales/crowdin/bg.yml +++ b/config/locales/crowdin/bg.yml @@ -813,7 +813,7 @@ bg: blank: "не може да бъде празно." blank_nested: "трябва да бъде зададено свойството '%{property}'." cannot_delete_mapping: "е необходимо. Не може да бъде изтрит." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Работния пакет не може да бъде свързан с една от неговите подзадачи." circular_dependency: "Тази връзка ще доведе до циклична зависимост." confirmation: "не съвпада с %{attribute}." @@ -1414,8 +1414,8 @@ bg: failure_message: Съгласието не е дадено, не може да се продължи. title: Съгласие на потребителя decline_warning_message: Отказали сте да се съгласите и сте бил изведен от системата. - user_has_consented: Потребителят се е съгласил с конфигурираните от вас изявления в дадения момент. - not_yet_consented: Потребителят все още не е дал съгласието си, то ще бъде поискано при следващото влизане. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Определете пощенския адрес, на който потребителите могат да се свържат с администратора на данни, за да изпълняват заявки за промяна или премахване на данни. contact_your_administrator: Моля, свържете се с вашия администратор, ако искате да изтриете профила си. contact_this_mail_address: Моля, свържете се с %{mail_address} , ако искате да изтриете профила си. @@ -1803,6 +1803,8 @@ bg: progress_mode_changed_to_status_based: "Актуализирано изчисление на напредъка" status_changed: "Състояние '%{status_name}'" system_update: "Актуализация на системата OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: чрез промени в предшественика %{link} work_package_parent_changed_times: чрез промени в родителския %{link} @@ -1830,6 +1832,10 @@ bg: Изчисляването на напредъка се коригира автоматично при актуализиране на версията. totals_removed_from_childless_work_packages: >- Автоматично премахване на общите суми за работа и напредък за работни пакети, които не са родителски, при актуализиране на версията. Това е задача по поддръжката и може спокойно да бъде пренебрегната. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Ръководство за конфигуриране" get_in_touch: "Имате въпроси? Свържете се с нас." @@ -3199,6 +3205,13 @@ bg: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Час" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Разрешаване на достъпен режим за анонимни потребители" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/ca.yml b/config/locales/crowdin/ca.yml index a5bae9e91eab..1916c7f98f3c 100644 --- a/config/locales/crowdin/ca.yml +++ b/config/locales/crowdin/ca.yml @@ -809,7 +809,7 @@ ca: blank: "no pot estar en blanc." blank_nested: "és necessari de definir la propietat '%{property}' ." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Un paquet de treball no es pot enllaçar a una de les seves subtasques." circular_dependency: "Aquesta relació crearia una dependència circular." confirmation: "no coincideix amb el %{attribute}." @@ -1410,8 +1410,8 @@ ca: failure_message: Error de concentiment, no es pot procedir. title: Consentiment d'usuari decline_warning_message: Has declinat el consentiment i per tant s'ha tancat la sessió. - user_has_consented: L'usuari ha consentit la teva declaració configurada amb el temps requerit. - not_yet_consented: L'usuari encara no ha donat el seu consentiment, se li tornarà a demanar en el pròxim inici de sessió. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Defineix l'adreça de correu electrònic que els usuaris poden utilitzar per accedir al controlador de dades per poder canviar dades o fer peticions d'eliminació. contact_your_administrator: Si us plau, contacte el teu administrador si vols eliminar el teu compte. contact_this_mail_address: Si us plau, contacte %{mail_address} si vols eliminar el teu compte. @@ -1799,6 +1799,8 @@ ca: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: per canvis en el predecessor %{link} work_package_parent_changed_times: per canvis en el pare %{link} @@ -1826,6 +1828,10 @@ ca: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Guia de configuració" get_in_touch: "Tens preguntes? Posa't en contacte amb nosaltres." @@ -3188,6 +3194,13 @@ ca: setting_sys_api_enabled: "Activar el servei web de gestió del repositori" setting_sys_api_description: "La gestió del repositori per servei web proporciona integració i autorització d'usuaris per l'accés a repositoris." setting_time_format: "Hora" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Activar el mode d'accessibilitat per a usuaris anònims" setting_user_format: "Format de nom d'usuari" setting_user_default_timezone: "Zona horària per defecte de l'usuari" diff --git a/config/locales/crowdin/ckb-IR.yml b/config/locales/crowdin/ckb-IR.yml index 69803d15e9e8..7d0575a44357 100644 --- a/config/locales/crowdin/ckb-IR.yml +++ b/config/locales/crowdin/ckb-IR.yml @@ -813,7 +813,7 @@ ckb-IR: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ ckb-IR: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ ckb-IR: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ ckb-IR: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ ckb-IR: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/cs.yml b/config/locales/crowdin/cs.yml index 82a3476a3051..0dc71dd91eed 100644 --- a/config/locales/crowdin/cs.yml +++ b/config/locales/crowdin/cs.yml @@ -471,7 +471,7 @@ cs: irreversible: "Tato akce je nevratná" confirmation: "Zadejte název zástupného uživatele %{name} pro potvrzení odstranění." upsale: - title: placeholder uživatel + title: Placeholder uživatel description: > Placeholder uživatelé jsou způsob, jak přiřadit pracovní balíčky uživatelům, kteří nejsou součástí vašeho projektu. Mohou být užiteční v řadě scénářů; například, pokud potřebujete sledovat úkoly u zdroje, který ještě nejsou pojmenovány nebo dostupné, nebo pokud nechcete této osobě umožnit přístup k OpenProject ale stále chcete sledovat úkoly, které jim byly přiděleny. prioritiies: @@ -695,7 +695,7 @@ cs: false: "archivováno" identifier: "Identifikátor" latest_activity_at: "Poslední aktivita" - parent: "Podprojekt" + parent: "Nadřazený projekt" public_value: title: "Viditelnost" true: "veřejný" @@ -801,7 +801,7 @@ cs: true: "zahrnuje nepracovní dny" notify: "Oznámit" #used in custom actions parent: "Nadřazený" - parent_issue: "Rodič" + parent_issue: "Nadřazený" parent_work_package: "Nadřazený" priority: "Priorita" progress: "% Dokončeno" @@ -827,7 +827,7 @@ cs: blank: "nemůže být prázdné." blank_nested: "musí mít nastavenou vlastnost '%{property}'." cannot_delete_mapping: "je povinné. Nelze odstranit." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Pracovní balíček nemůže být propojen s jedním z jeho podúkolů." circular_dependency: "Tento vztah by vytvořil kruhovou závislost." confirmation: "neshoduje se s %{attribute}." @@ -938,7 +938,7 @@ cs: meeting: error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." notifications: - at_least_one_channel: "Alespoň jeden kanál pro odesílání oznámení musí být specifikován." + at_least_one_channel: "Pro odesílání notifikací musí být specifikován alespoň jeden kanál" attributes: read_ian: read_on_creation: "nelze nastavit na pravdivé při vytváření oznámení " @@ -1190,11 +1190,11 @@ cs: member: "Člen" news: "Novinky" notification: - one: "Oznámení" - few: "Oznámení" - many: "Oznámení" - other: "Oznámení" - placeholder_user: "placeholder uživatel" + one: "Notifikace" + few: "Notifikací" + many: "Notifikací" + other: "Notifikace" + placeholder_user: "Placeholder uživatel" project: "Projekt" project_query: one: "Seznam projektů" @@ -1448,8 +1448,8 @@ cs: failure_message: Souhlas se nezdařil, nelze pokračovat. title: Souhlas uživatele decline_warning_message: Odmítli jste souhlas a byli jste odhlášeni. - user_has_consented: Uživatel udělil vámi nastavený souhlas v daném čase. - not_yet_consented: Uživatel ještě neudělil souhlas, ale při příštím přihlášení bude vyzván. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Definujte e-mailovou adresu správce údajů, který může vyřídit požadavky na změny v datech nebo žádosti o výmaz. contact_your_administrator: Pokud chcete svůj účet odstranit, obraťte se na správce systému. contact_this_mail_address: Pokud chcete svůj účet odstranit, obraťte se na %{mail_address}. @@ -1873,6 +1873,8 @@ cs: progress_mode_changed_to_status_based: "Výpočet průběhu byl aktualizován" status_changed: "Stav '%{status_name}'" system_update: "Aktualizace systému OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: podle změn na předchůdce %{link} work_package_parent_changed_times: podle změn na nadřazený %{link} @@ -1900,6 +1902,10 @@ cs: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Konfigurační manuál" get_in_touch: "Máte otázky? Spojte se s námi." @@ -1908,7 +1914,7 @@ cs: instructions_after_error: "Zkuste se znovu přihlásit kliknutím na %{signin}. Pokud chyba přetrvává, požádejte správce o pomoc." menus: admin: - mail_notification: "E-mailová upozornění" + mail_notification: "E-mailové notifikace" mails_and_notifications: "E-maily a oznámení" aggregation: "Agregace" api_and_webhooks: "API & Webhooky" @@ -1971,7 +1977,7 @@ cs: by_project: "Nepřečteno dle projektu" by_reason: "Důvod" inbox: "Doručená pošta" - send_notifications: "Odeslat oznámení pro tuto akci" + send_notifications: "Pro tuto akci odeslat notifikaci" work_packages: subject: created: "Pracovní balíček byl vytvořen." @@ -2197,7 +2203,7 @@ cs: label_force_user_language_to_default: "Nastavte jazyk uživatelů, kteří nemají povolený jazyk na výchozí" label_form_configuration: "Konfigurace formuláře" label_gantt_chart: "Ganttův diagram" - label_gantt_chart_plural: "Ganttovi diagramy" + label_gantt_chart_plural: "Ganttovy diagramy" label_general: "Obecné" label_generate_key: "Generovat klíč" label_git_path: "Cesta ke složce .git" @@ -2368,9 +2374,9 @@ cs: label_permissions: "Práva" label_permissions_report: "Přehled oprávnění" label_personalize_page: "Přizpůsobit tuto stránku" - label_placeholder_user: "placeholder uživatel" + label_placeholder_user: "Placeholder uživatel" label_placeholder_user_new: "" - label_placeholder_user_plural: "placeholder uživatelé" + label_placeholder_user_plural: "Placeholder uživatelé" label_planning: "Plánování" label_please_login: "Přihlaste se prosím" label_plugins: "Pluginy" @@ -2393,7 +2399,7 @@ cs: label_project_attribute_plural: "Atributy projektu" label_project_attribute_manage_link: "Správa atributů produktu" label_project_count: "Celkový počet projektů" - label_project_copy_notifications: "Během kopie projektu odeslat oznámení e-mailem" + label_project_copy_notifications: "Během kopírování projektu odeslat notifikace e-mailem" label_project_latest: "Nejnovější projekty" label_project_default_type: "Povolit prázdný typ" label_project_hierarchy: "Hierarchie projektu" @@ -2535,7 +2541,7 @@ cs: label_users_settings: "Uživatelská nastavení" label_version_new: "Nová verze" label_version_plural: "Verze" - label_version_sharing_descendants: "S Podprojekty" + label_version_sharing_descendants: "S podprojekty" label_version_sharing_hierarchy: "S hierarchií projektu" label_version_sharing_none: "Není sdíleno" label_version_sharing_system: "Se všemi projekty" @@ -2640,28 +2646,28 @@ cs: digests: including_mention_singular: "včetně zmínky" including_mention_plural: "včetně %{number_mentioned} zmínění" - unread_notification_singular: "1 nepřečtené oznámení" - unread_notification_plural: "%{number_unread} nepřečtených oznámení" + unread_notification_singular: "1 nepřečtená notifikace" + unread_notification_plural: "%{number_unread} nepřečtených notifikací" you_have: "Máte" logo_alt_text: "Logo" mention: subject: "%{user_name} vás zmínil v #%{id} - %{subject}" notification: - center: "Centrum oznámení" + center: "Centrum notifikací" see_in_center: "Zobrazit komentář v oznamovacím centru" settings: "Změnit nastavení e-mailu" salutation: "Ahoj %{user}!" salutation_full_name: "Jméno a příjmení" work_packages: created_at: "Vytvořeno v %{timestamp} uživatelem %{user} " - login_to_see_all: "Přihlaste se pro zobrazení všech oznámení." + login_to_see_all: "Přihlaste se pro zobrazení všech notifikací." mentioned: "Byli jste zmíněni v komentáři" mentioned_by: "%{user} vás zmínil v komentáři" more_to_see: - one: "Existuje ještě 1 pracovní balíček s oznámeními." - few: "Existuje ještě %{count} pracovních balíčků s oznámeními." - many: "Existuje ještě %{count} pracovních balíčků s oznámeními." - other: "Existuje ještě %{count} pracovních balíčků s oznámeními." + one: "Existuje ještě 1 pracovní balíček s notifikací." + few: "Existuje ještě %{count} pracovních balíčků s notifikacema." + many: "Existuje ještě %{count} pracovních balíčků s notifikacema." + other: "Existuje ještě %{count} pracovních balíčků s notifikacema." open_in_browser: "Otevřít v prohlížeči" reason: watched: "Sledováno" @@ -2670,7 +2676,7 @@ cs: mentioned: "Zmíněné" shared: "Sdílené" subscribed: "vše" - prefix: "Obdrženo z důvodu nastavení oznámení: %{reason}" + prefix: "Obdrženo z důvodu nastavení notifikací: %{reason}" date_alert_start_date: "Upozornění na datum" date_alert_due_date: "Upozornění na datum" see_all: "Zobrazit vše" @@ -2944,7 +2950,7 @@ cs: permission_move_work_packages: "Přesun pracovních balíčků" permission_protect_wiki_pages: "Ochrana stránky wiki" permission_rename_wiki_pages: "Přejmenovat stránky wiki" - permission_save_queries: "Uložit pohled" + permission_save_queries: "Uložit zobrazení" permission_search_project: "Hledat projekt" permission_select_custom_fields: "Vybrat vlastní pole" permission_select_project_custom_fields: "Vyberte atributy projektu" @@ -3272,6 +3278,13 @@ cs: setting_sys_api_enabled: "Povolit webovou službu pro správu repositářů" setting_sys_api_description: "Webová služba pro správu repositářů poskytuje integraci a uživatelskou autorizaci pro přístup k repositářům." setting_time_format: "Čas" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Povolit režim usnadnění pro anonymní uživatele" setting_user_format: "Formát uživatelského jména" setting_user_default_timezone: "Výchozí časové pásmo uživatele" @@ -3332,7 +3345,7 @@ cs: enable_subscriptions_text_html: Umožňuje uživatelům s nezbytnými oprávněními přihlásit se do OpenProject kalendářů a získat přístup k informacím o pracovním balíčku prostřednictvím externího klienta kalendáře. Poznámka: Před povolením si prosím přečtěte iCalendar předplatné. language_name_being_default: "%{language_name} (výchozí)" notifications: - events_explanation: "Určuje, pro kterou událost je odeslán e-mail. Pracovní balíčky jsou z tohoto seznamu vyloučeny, protože oznámení pro ně mohou být nastavena speciálně pro každého uživatele." + events_explanation: "Určuje, pro kterou událost je odeslán e-mail. Pracovní balíčky jsou z tohoto seznamu vyloučeny, protože notifikace pro ně mohou být nastavena speciálně pro každého uživatele." delay_minutes_explanation: "Odesílání e-mailu může být pozdrženo, aby bylo uživatelům s nakonfigurovaným v oznámení aplikace před odesláním pošty potvrzeno oznámení. Uživatelé, kteří si přečtou oznámení v aplikaci, nedostanou e-mail pro již přečtené oznámení." other: "Ostatní" passwords: "Hesla" @@ -3417,7 +3430,7 @@ cs: text_destroy_with_associated: "Existují další objekty, které jsou přiřazeny k pracovním balíčkům a které mají být odstraněny. Tyto objekty jsou následující typy:" text_destroy_what_to_do: "Co chcete udělat?" text_diff_truncated: "... Toto rozlišení bylo zkráceno, protože přesahuje maximální velikost, kterou lze zobrazit." - text_email_delivery_not_configured: "Doručení e-mailu není nakonfigurováno a oznámení jsou zakázána.\nNakonfigurujte váš SMTP server pro jejich povolení." + text_email_delivery_not_configured: "Doručení e-mailu není nakonfigurováno a notifikace jsou zakázány.\nNakonfigurujte váš SMTP server pro jejich povolení." text_enumeration_category_reassign_to: "Přiřadit je k této hodnotě:" text_enumeration_destroy_question: "%{count} objektů je přiřazeno k této hodnotě." text_file_repository_writable: "Do adresáře příloh lze zapisovat" diff --git a/config/locales/crowdin/da.yml b/config/locales/crowdin/da.yml index b2ee686021c7..78db37daada1 100644 --- a/config/locales/crowdin/da.yml +++ b/config/locales/crowdin/da.yml @@ -811,7 +811,7 @@ da: blank: "må ikke være tomt." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "En arbejdspakke kan ikke knyttes til en af dens underopgaver." circular_dependency: "Denne relation vil skabe en cirkulær afhængighed." confirmation: "matcher ikke %{attribute}." @@ -1412,8 +1412,8 @@ da: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1801,6 +1801,8 @@ da: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1828,6 +1830,10 @@ da: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "Har du spørgsmål? Kom i kontakt med os." @@ -3195,6 +3201,13 @@ da: setting_sys_api_enabled: "Aktiver repositorieadministrations-webtjeneste" setting_sys_api_description: "Repositorieadministration-webtjenesten sørger for integration og brugertilladelse for adgang til repositorier." setting_time_format: "Tidspunkt" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Aktivér tilgængelighedstilstand for anonyme brugere" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/de.yml b/config/locales/crowdin/de.yml index 4647e1be406c..9be1b3f132dc 100644 --- a/config/locales/crowdin/de.yml +++ b/config/locales/crowdin/de.yml @@ -31,9 +31,9 @@ de: custom_styles: color_theme: "Farbschema" color_theme_custom: "(Benutzerdefiniert)" - tab_interface: "Interface" + tab_interface: "Benutzeroberfläche" tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_pdf_export_styles: "PDF-Exportstile" colors: primary-button-color: "Primäre Schaltfläche" accent-color: "Akzent" @@ -51,7 +51,7 @@ de: main-menu-border-color: "Rahmenfarbe des Hauptmenüs" custom_colors: "Benutzerdefinierte Farben" customize: "Passen Sie Ihre OpenProject Installation mit Ihrem eigenen Logo und eigenen Farben an." - enterprise_notice: "Diese kleine Erweiterung steht den Abonnenten der Enterprise edition ganz exklusiv als kleines Dankeschön für deren finanzielle Unterstützung zur Verfügung." + enterprise_notice: "Dieses kleine Add-on steht den Abonnenten der Enterprise-Edition ganz exklusiv als kleines Dankeschön für deren finanzielle Unterstützung zur Verfügung." enterprise_more_info: "Hinweis: Das verwendete Logo wird öffentlich zugänglich sein." manage_colors: "Farbauswahloptionen bearbeiten" instructions: @@ -64,15 +64,15 @@ de: main-menu-bg-color: "Hintergrundfarbe des Menüs in der linken Seitenleiste." theme_warning: Das Ändern des Themes wird Ihr benutzerdefiniertes Design überschreiben. Alle Änderungen werden dann verloren gehen. Sind Sie sicher, dass Sie fortfahren möchten? enterprise: - upgrade_to_ee: "Auf Enterprise edition upgraden" - add_token: "Enterprise edition Support Token hochladen" + upgrade_to_ee: "Auf Enterprise-Edition upgraden" + add_token: "Enterprise-Edition Support Token hochladen" delete_token_modal: - text: "Sind Sie sicher, dass Sie das aktuelle Enterprise edition token entfernen möchten?" + text: "Sind Sie sicher, dass Sie das aktuelle Enterprise Edition-Token entfernen möchten?" title: "Token löschen" replace_token: "Aktuellen Enterprise edition Support Token ersetzen" order: "Enterprise on-premises bestellen" - paste: "Enterprise edition Support Token hier einfügen" - required_for_feature: "Dieses Add-on ist nur mit einem aktiven Enterprise edition Support-Token verfügbar." + paste: "Enterprise-Edition Support Token hier einfügen" + required_for_feature: "Dieses Add-on ist nur mit einem aktiven Enterprise-Edition Support-Token verfügbar." enterprise_link: "Klicken Sie hier für weitere Informationen." start_trial: "Kostenlose Testversion starten" book_now: "Jetzt buchen" @@ -82,7 +82,7 @@ de: contact: "Kontaktieren Sie uns für eine Demo" enterprise_info_html: "ist ein Enterprise Add-on." upgrade_info: "Bitte steigen Sie auf einen kostenpflichtigen Plan um, um diese Funktion zu aktivieren und in Ihrem Team zu verwenden." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Jemalloc Speicher allocator journal_aggregation: explanation: text: "Individuelle Aktionen eines Benutzers (z.B. ein Arbeitspaket zweimal aktualisieren) werden zu einer einzigen Aktion zusammengefasst, wenn ihr Altersunterschied kleiner ist als der angegebene Zeitraum. Sie werden als eine einzige Aktion innerhalb der Anwendung angezeigt. Dadurch werden Benachrichtigungen um die gleiche Zeit verzögert, wodurch die Anzahl der gesendeten E-Mails verringert wird. Dies wirkt sich auch auf die Verzögerung von %{webhook_link} aus." @@ -807,7 +807,7 @@ de: blank: "muss ausgefüllt werden." blank_nested: "muss die Eigenschaft '%{property}' gesetzt haben." cannot_delete_mapping: "ist erforderlich. Kann nicht gelöscht werden." - is_for_all_cannot_modify: "ist für alle. Kann nicht geändert werden." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Ein Arbeitspaket kann nicht mit einer seiner Unteraufgaben verlinkt werden." circular_dependency: "Diese Beziehung würde eine zyklische Abhängigkeit erzeugen." confirmation: "stimmt nicht mit %{attribute} überein." @@ -916,7 +916,7 @@ de: blank: "ist obligatorisch. Bitte wählen Sie einen Namen aus." not_unique: "ist bereits in Gebrauch. Bitte wählen Sie einen anderen Namen aus." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Das Speichern ist nicht möglich, da die Besprechung in der Zwischenzeit von einem anderen Benutzer aktualisiert wurde. Bitte laden Sie die Seite neu." notifications: at_least_one_channel: "Mindestens ein Kanal zum Senden von Benachrichtigungen muss angegeben werden." attributes: @@ -1408,8 +1408,8 @@ de: failure_message: Einwilligung fehlgeschlagen, kann nicht fortfahren. title: Nutzer-Einwilligung decline_warning_message: Sie haben die Einwilligung abgelehnt und wurden deshalb abgemeldet. - user_has_consented: Der Benutzer hat seine Einwilligung zu dem Statement dieser Instanz zu der angegebenen Zeit gegeben. - not_yet_consented: Der Benutzer hat seine Einwilligung noch nicht gegeben und wird beim nächsten Login dazu befragt. + user_has_consented: Der Benutzer hat Ihrem [konfigurierten Einwilligungstext](consent_settings) zugestimmt. + not_yet_consented: Der Benutzer hat seine Einwilligung zu Ihrem [konfigurierten Einwilligungstext](consent_settings) noch nicht gegeben. Er wird bei der nächsten Anmeldung daran erinnert werden. contact_mail_instructions: Definieren Sie die E-Mail-Adresse, über die Benutzer einen Daten-Controller erreichen können, um Anfragen zu Datenänderung oder -löschung einzureichen. contact_your_administrator: Bitte kontaktieren Sie Ihren Administrator um bspw. eine Löschung Ihres Accounts zu beantragen. contact_this_mail_address: 'Bitte kontaktieren Sie für Datenänderungs- oder Löschanfragen Ihren Administrator unter: %{mail_address}.' @@ -1609,7 +1609,7 @@ de: error_cookie_missing: "Das OpenProject Cookie fehlt. Bitte stellen Sie sicher, dass Cookies aktiviert sind, da diese Applikation ohne aktivierte Cookies nicht korrekt funktioniert." error_custom_option_not_found: "Option ist nicht vorhanden." error_enterprise_activation_user_limit: "Ihr Konto konnte nicht aktiviert werden (Nutzerlimit erreicht). Bitte kontaktieren Sie Ihren Administrator um Zugriff zu erhalten." - error_enterprise_token_invalid_domain: "Die Enterprise edition ist nicht aktiv. Die aktuelle Domain (%{actual}) entspricht nicht dem erwarteten Hostnamen (%{expected})." + error_enterprise_token_invalid_domain: "Die Enterprise-Edition ist nicht aktiv. Die aktuelle Domain (%{actual}) entspricht nicht dem erwarteten Hostnamen (%{expected})." error_failed_to_delete_entry: "Fehler beim Löschen dieses Eintrags." error_in_dependent: "Fehler beim Versuch, abhängiges Objekt zu ändern: %{dependent_class} #%{related_id} - %{related_subject}: %{error}" error_in_new_dependent: "Fehler beim Versuch, abhängiges Objekt zu erstellen: %{dependent_class} - %{related_subject}: %{error}" @@ -1642,7 +1642,7 @@ de: error_menu_item_not_saved: Menüpunkt konnte nicht aktualisiert werden. error_wiki_root_menu_item_conflict: > Kann "%{old_name}" nicht in "%{new_name}" umbenennen, weil es mit dem bestehenden Menüeintrag "%{existing_caption}" (%{existing_identifier}) kollidiert. - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Die externe Authentifizierung ist fehlgeschlagen: %{message}" error_attribute_not_highlightable: "Nicht hervorhebbare Attribut(e): %{attributes}" events: changeset: "Projektarchiv-Änderung bearbeitet" @@ -1774,10 +1774,10 @@ de: blocks: community: "OpenProject Community" upsale: - title: "Auf Enterprise edition upgraden" + title: "Auf Enterprise-Edition upgraden" more_info: "Weitere Informationen" links: - upgrade_enterprise_edition: "Auf Enterprise edition upgraden" + upgrade_enterprise_edition: "Auf Enterprise-Edition upgraden" postgres_migration: "Migration Ihrer Installation zu PostgreSQL" user_guides: "Benutzerhandbuch" faq: "Häufig gestellte Fragen" @@ -1797,6 +1797,8 @@ de: progress_mode_changed_to_status_based: "Fortschrittsberechnung aktualisiert" status_changed: "Status '%{status_name}'" system_update: "OpenProject-Systemaktualisierung:" + total_percent_complete_mode_changed_to_work_weighted_average: "Die Berechnung der Gesamtwerte für % abgeschlossen wird jetzt nach Aufwand gewichtet." + total_percent_complete_mode_changed_to_simple_average: "Die Berechnung der Gesamtwerte für % abgeschlossen basiert jetzt auf dem einfachen Durchschnitt der % abgeschlossen-Werte." cause_descriptions: work_package_predecessor_changed_times: durch Änderungen am Vorgänger %{link} work_package_parent_changed_times: durch Änderungen am übergeordneten Arbeitspaket %{link} @@ -1811,10 +1813,10 @@ de: dates: working: "%{date} ist jetzt ein Arbeitstag" non_working: "%{date} ist jetzt ein arbeitsfreier Tag" - progress_mode_changed_to_status_based: Fortschrittberechnung wurde auf Status-basiert gesetzt + progress_mode_changed_to_status_based: Fortschrittberechnung wurde auf Status-bezogen gesetzt status_excluded_from_totals_set_to_false_message: jetzt in den Gesamtwerten der Hierarchie enthalten status_excluded_from_totals_set_to_true_message: jetzt von den Hierarchie-Gesamtwerten ausgeschlossen - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% abgeschlossen von %{old_value}% auf %{new_value} % geändert" system_update: file_links_journal: > Ab sofort erscheinen hier Aktivitäten, die sich auf Datei-Links beziehen (Dateien in externen Speichermedien) auf der Registerkarte Aktivität. Folgende Aktivitäten betreffen bereits existierende Links: @@ -1824,6 +1826,10 @@ de: Die Fortschrittsberechnung wurde automatisch durch das Systemupdate angepasst. totals_removed_from_childless_work_packages: >- Arbeits- und Fortschrittssummen werden bei der Versionsaktualisierung automatisch für nicht übergeordnete Arbeitspakete entfernt. Diese Änderung entstand durch ein Upgrade und kann ignoriert werden. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Untergeordnete Arbeitspakete ohne Arbeit werden ignoriert. + total_percent_complete_mode_changed_to_simple_average: >- + Arbeitswerte von untergeordneten Arbeitspaketen werden ignoriert. links: configuration_guide: "Konfigurationsanleitung" get_in_touch: "Sie haben Fragen? Nehmen Sie Kontakt mit uns auf." @@ -1923,8 +1929,8 @@ de: label_additional_workflow_transitions_for_assignee: "Zusätzliche Workflow-Übergänge für den Nutzer, dem ein Arbeitspaket zugewiesen ist" label_additional_workflow_transitions_for_author: "Zusätzliche Workflow-Übergänge wenn der Nutzer der Autor des Arbeitspakets ist" label_administration: "Administration" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Farben der Benutzeroberfläche" + label_interface_colors_description: "Diese Farben bestimmen, wie die Anwendung aussieht. Änderungen dieser Farben wirken sich auf das Design aus, aber wir können dadurch nicht mehr garantieren, dass die Mindestanforderungen an die Barrierefreiheit (WCAG 2.1) eingehalten werden. " label_age: "Geändert vor" label_ago: "vor (Tage)" label_all: "alle" @@ -2038,7 +2044,7 @@ de: label_custom_field_plural: "Benutzerdefinierte Felder" label_custom_field_default_type: "Leerer Typ" label_custom_style: "Design" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Wählen Sie über Design und Farben aus, wie die OpenProject Benutzeroberfläche und Exporte aussehen sollen." label_dashboard: "Dashboard" label_database_version: "PostgreSQL-Version" label_date: "Datum" @@ -2087,7 +2093,7 @@ de: label_enumerations: "Aufzählungen" label_enterprise: "Enterprise" label_enterprise_active_users: "%{current}/%{limit} gebuchte aktive Nutzer" - label_enterprise_edition: "Enterprise edition" + label_enterprise_edition: "Enterprise Edition" label_enterprise_support: "Enterprise Support" label_enterprise_addon: "Enterprise Add-on" label_environment: "Umgebung" @@ -2161,7 +2167,7 @@ de: label_share_work_package: "Arbeitspaket teilen" label_show_all_registered_users: "Alle registrierten Benutzer anzeigen" label_show_less: "Weniger anzeigen" - label_show_more: "Show more" + label_show_more: "Mehr anzeigen" label_journal: "Änderungen" label_journal_diff: "Beschreibungsvergleich" label_language: "Sprache" @@ -3033,8 +3039,8 @@ de: update_timeout: "Speichere die Informationen bzgl. des genutzten Festplattenspeichers eines Projektarchivs für N Minuten.\nErhöhen Sie diesen Wert zur Verbesserung der Performance, da die Erfassung des genutzten Festplattenspeichers Ressourcen-intensiv ist." oauth_application_details: "Der Client Geheimcode wird nach dem Schließen dieses Fensters nicht mehr zugänglich sein. Bitte kopieren Sie diese Werte in die Nextcloud OpenProject Integrationseinstellungen:" oauth_application_details_link_text: "Zu den Einstellungen gehen" - setup_documentation_details: "Wenn Sie Hilfe bei der Konfiguration eines neuen Datei-Speichers benötigen, konsultieren Sie bitte die Dokumentation: " - setup_documentation_details_link_text: "Datei-Speicher einrichten" + setup_documentation_details: "Wenn Sie Hilfe bei der Konfiguration eines neuen Dateispeichers benötigen, konsultieren Sie bitte die Dokumentation: " + setup_documentation_details_link_text: "Dateispeicher einrichten" show_warning_details: "Um diesen Dateispeicher nutzen zu können, müssen Sie das Modul und den spezifischen Speicher in den Projekteinstellungen jedes gewünschten Projekts aktivieren." subversion: existing_title: "Vorhandenes Subversion Projektarchiv" @@ -3162,13 +3168,13 @@ de: setting_password_min_length: "Minimale Länge" setting_password_min_adhered_rules: "Mindestanzahl zu verwendender Zeichenklassen" setting_per_page_options: "Objekte pro Seite" - setting_percent_complete_on_status_closed: "% Complete when status is closed" + setting_percent_complete_on_status_closed: "% abgeschlossen, wenn der Status geschlossen ist" setting_percent_complete_on_status_closed_no_change: "Keine Änderung" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. + Der Wert von % abgeschlossen ändert sich nicht, auch wenn ein Arbeitspaket geschlossen wird. setting_percent_complete_on_status_closed_set_100p: "Automatisch auf 100 % eingestellt" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Ein Arbeitspaket mit geschlossenem Status wird als vollständig betrachtet. setting_plain_text_mail: "Nur reinen Text (kein HTML) senden" setting_protocol: "Protokoll" setting_project_gantt_query: "Projekt-Portfolioübersicht" @@ -3193,6 +3199,13 @@ de: setting_sys_api_enabled: "Den Web-Service zur Projektarchiv-Verwaltung aktivieren" setting_sys_api_description: "Der Web-Service für Projektarchiv-Verwaltung erlaubt Integration und Nutzer-Autorisierung für den Zugriff auf Projektarchive." setting_time_format: "Zeit" + setting_total_percent_complete_mode: "Berechnung des Gesamtwerts % abgeschlossen in Hierarchien" + setting_total_percent_complete_mode_work_weighted_average: "Nach Arbeit gewichtet" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + Der Gesamtwert % abgeschlossen wird gegen den Aufwand der einzelnen Arbeitspakete in der Hierarchie gewichtet. Arbeitspakete ohne Aufwand werden ignoriert. + setting_total_percent_complete_mode_simple_average: "Einfacher Durchschnitt" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Der Aufwand wird ignoriert und der Gesamtwert % abgeschlossen ist der einfache Durchschnitt der % abgeschlossen Werte der Arbeitspakete in der Hierarchie. setting_accessibility_mode_for_anonymous: "Barrierefreien Modus für nicht angemeldete Nutzer aktivieren" setting_user_format: "Format des Benutzernamens" setting_user_default_timezone: "Standard-Zeitzone für Benutzer" @@ -3503,7 +3516,7 @@ de: warning_user_limit_reached_admin: > Das Hinzufügen zusätzlicher Benutzer überschreitet das aktuelle Benutzerlimit. Bitte aktualisieren Sie Ihr Abonnement um sicherzustellen, dass externe Benutzer auf diese Instanz zugreifen können. warning_user_limit_reached_instructions: > - Du hast dein Nutzerlimit erreicht (%{current}/%{max} active users). Bitte kontaktiere sales@openproject.com um deinen Enterprise edition Plan upzugraden und weitere Nutzer hinzuzufügen. + Du hast dein Nutzerlimit erreicht (%{current}/%{max} active users). Bitte kontaktiere sales@openproject.com um deinen Enterprise Edition Plan upzugraden und weitere Nutzer hinzuzufügen. warning_protocol_mismatch_html: > warning_bar: diff --git a/config/locales/crowdin/el.yml b/config/locales/crowdin/el.yml index 44f612ebf5e0..3551d0a8653f 100644 --- a/config/locales/crowdin/el.yml +++ b/config/locales/crowdin/el.yml @@ -809,7 +809,7 @@ el: blank: "δεν πρέπει να είναι κενό." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Ένα πακέτο εργασίας δεν μπορεί να συνδεθεί με μια από τις υποεργασίες του." circular_dependency: "Αυτή η σχέση θα δημιουργήσει κυκλική εξάρτηση." confirmation: "δεν ταιριάζει με %{attribute}." @@ -1410,8 +1410,8 @@ el: failure_message: Η συναίνεση απέτυχε, δεν μπορείτε να προχωρήσετε. title: Συναίνεση χρήστη decline_warning_message: Έχετε αρνηθεί να συναινέσετε και αποσυνδεθήκατε. - user_has_consented: Ο χρήστης έχει συναινέσει στην τροποποιημένη δήλωση στο δοσμένο χρόνο. - not_yet_consented: Ο χρήστης δεν έχει συναινέσει ακόμη, θα ζητηθεί στην επόμενη σύνδεση του. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Ορίστε τη διεύθυνση email που θα χρησιμοποιούν οι χρήστες για να επικοινωνήσουν με ένα χειριστή δεδομένων ώστε να εκτελέσουν αλλαγές στα δεδομένα ή να αφαιρέσουν αιτήματα. contact_your_administrator: Παρακαλούμε επικοινωνήστε με τον διαχειριστή σας αν θέλετε να διαγραφεί ο λογαριασμός σας. contact_this_mail_address: Παρακαλούμε επικοινωνήστε με το %{mail_address} αν θέλετε να διαγραφεί ο λογαριασμός σας. @@ -1799,6 +1799,8 @@ el: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1826,6 +1828,10 @@ el: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Οδηγός διαμόρφωσης" get_in_touch: "Έχετε απορίες; Επικοινωνήστε μαζί μας." @@ -3194,6 +3200,13 @@ el: setting_sys_api_enabled: "Ενεργοποίηση του web service διαχείρισης αποθετηρίων" setting_sys_api_description: "Το web service διαχείρισης αποθετηρίων παρέχει ενσωμάτωση και αυθεντικοποίηση χρήστη για την πρόσβαση σε αποθετήρια." setting_time_format: "Ώρα" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Ενεργοποίηση της λειτουργίας προσβασιμότητας για ανώνυμους χρήστες" setting_user_format: "Users name format" setting_user_default_timezone: "Προεπιλεγμένη ζώνη ώρας του χρήστη" diff --git a/config/locales/crowdin/eo.yml b/config/locales/crowdin/eo.yml index 112a4d70da16..59eba78af17a 100644 --- a/config/locales/crowdin/eo.yml +++ b/config/locales/crowdin/eo.yml @@ -813,7 +813,7 @@ eo: blank: "ne povas esti malplena." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Laborpakaĵo ne povis esti ligita al unu el siaj subtaskoj." circular_dependency: "Tiu ĉi rilato povus krei cirklan dependon." confirmation: "ne kongruas kun %{attribute}" @@ -1414,8 +1414,8 @@ eo: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ eo: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ eo: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Agordgvidilo" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ eo: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/es.yml b/config/locales/crowdin/es.yml index d8dc5392b6b7..066dc9696c4b 100644 --- a/config/locales/crowdin/es.yml +++ b/config/locales/crowdin/es.yml @@ -31,9 +31,9 @@ es: custom_styles: color_theme: "Tema de color" color_theme_custom: "(Personalizado)" - tab_interface: "Interface" - tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_interface: "Interfaz" + tab_branding: "Personalización de marca" + tab_pdf_export_styles: "Estilos de exportación PDF" colors: primary-button-color: "Botón primario" accent-color: "Acento" @@ -82,7 +82,7 @@ es: contact: "Contáctenos para una demostración" enterprise_info_html: "es una extensión Enterprise ." upgrade_info: "Actualice a un plan de pago para activarlo y empezar a usarlo en su equipo." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Asignador de memoria Jemalloc journal_aggregation: explanation: text: "Las acciones individuales de un usuario (como actualizar dos veces un paquete de trabajo) se combinan en una sola acción si la diferencia de antigüedad es inferior al intervalo de tiempo especificado. Se mostrarán como una sola acción en la aplicación. También se retrasarán las notificaciones por la misma cantidad de tiempo, lo que reducirá el número de correos electrónicos enviados y causará también que se retrase el %{webhook_link}." @@ -206,8 +206,8 @@ es: admin: custom_field_projects: is_for_all_blank_slate: - heading: For all projects - description: This custom field is enabled in all projects since the "For all projects" option is checked. It cannot be deactivated for individual projects. + heading: Para todos los proyectos + description: Este campo personalizado está activado en todos los proyectos, ya que la opción «Para todos los proyectos» está marcada. No puede desactivarse para proyectos individuales. text_add_new_custom_field: > Para agregar nuevos campos personalizados a un proyecto, primero debe crearlos, y luego añadirlos a este proyecto. is_enabled_globally: "Está activado a nivel global" @@ -637,8 +637,8 @@ es: uid: "ID de cliente" secret: "Clave de cliente secreta" owner: "Propietario" - builtin: "Builtin" - enabled: "Active" + builtin: "Incorporado" + enabled: "Activo" redirect_uri: "Redireccionar URI" client_credentials_user_id: "ID de Usuario de Credenciales del Cliente" scopes: "Ámbitos" @@ -810,7 +810,7 @@ es: blank: "no puede estar en blanco." blank_nested: "necesita tener la propiedad '%{property}' definida." cannot_delete_mapping: "es obligatorio. No se puede eliminar." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Un paquete de trabajo no puede ser vinculado a una de sus subtareas." circular_dependency: "Esta relación podría crear una dependencia circular." confirmation: "no coincide con %{attribute}." @@ -887,7 +887,7 @@ es: custom_fields_project: attributes: project_ids: - blank: "Please select a project." + blank: "Seleccione un proyecto." custom_actions: only_one_allowed: "Solo se permite un valor (%{name})." empty: "El valor (%{name}) no puede estar vacío." @@ -919,7 +919,7 @@ es: blank: "es obligatorio. Por favor, seleccione un nombre." not_unique: "ya está en uso. Por favor, seleccione otro nombre." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "No se ha podido guardar porque otra persona ha actualizado la reunión mientras tanto. Vuelva a cargar la página." notifications: at_least_one_channel: "Debe especificarse al menos un canal para enviar notificaciones." attributes: @@ -1411,8 +1411,8 @@ es: failure_message: Consentimiento fallido, no puede continuar. title: Consentimiento del usuario decline_warning_message: Usted ha declinado consentir y ha sido desconectado. - user_has_consented: El usuario ha dado el consentimiento a su declaración configurada en el momento dado. - not_yet_consented: El usuario no ha validado todavía, se le solicitará en el próximo login. + user_has_consented: El usuario ha dado su consentimiento a su [texto de información de consentimiento configurado](consent_settings). + not_yet_consented: El usuario aún no ha dado su consentimiento a su [texto de información de consentimiento configurado](consent_settings). Se le recordará la próxima vez que se conecte. contact_mail_instructions: Defina la dirección de correo a la que los usuarios pueden acceder a un controlador de datos a fin de realizar cambios de datos o solicitudes de eliminación. contact_your_administrator: Por favor, contacte su administrador si desea eliminar su cuenta. contact_this_mail_address: Por favor, contacte con %{mail_address} para eliminar su cuenta. @@ -1645,7 +1645,7 @@ es: error_menu_item_not_saved: Elemento de menú no podría ser guardado error_wiki_root_menu_item_conflict: > No se puede renombrar "%{old_name}" a "%{new_name}" debido a un conflicto en el elemento de menú resultante con el elemento de menú existente "%{existing_caption}" (%{existing_identifier}). - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Se ha producido un error durante la autenticación externa: %{message}" error_attribute_not_highlightable: "Atributos que no pueden resaltarse: %{attributes}" events: changeset: "Set de cambios editado" @@ -1800,6 +1800,8 @@ es: progress_mode_changed_to_status_based: "Cálculo del progreso actualizado" status_changed: "Estado «%{status_name}»" system_update: "Actualización del sistema OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "El cálculo de los totales de % completado ahora se pondera por Trabajo." + total_percent_complete_mode_changed_to_simple_average: "El cálculo de los totales de % completado se basa ahora en una media simple de solo los valores de % completado." cause_descriptions: work_package_predecessor_changed_times: por cambios al %{link} predecesor work_package_parent_changed_times: por cambios al %{link} principal @@ -1817,7 +1819,7 @@ es: progress_mode_changed_to_status_based: Modo de cálculo del progreso establecido como basado en el estado status_excluded_from_totals_set_to_false_message: ahora incluido en totales de jerarquía status_excluded_from_totals_set_to_true_message: ahora excluido de los totales de la jerarquía - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% completado cambiado de %{old_value} % a %{new_value} %" system_update: file_links_journal: > A partir de ahora, la actividad relacionada con los enlaces de archivos (archivos almacenados en almacenamiento externo) aparecerá aquí en la pestaña Actividad. La siguiente representa la actividad relativa a los enlaces que ya existían: @@ -1827,6 +1829,10 @@ es: Cálculo de progreso automático ajustado con la actualización de versión. totals_removed_from_childless_work_packages: >- Los totales de trabajo y progreso se eliminan automáticamente para los paquetes de trabajo no padres con la actualización de la versión. Se trata de una tarea de mantenimiento y puede ignorarse con seguridad. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Los paquetes de trabajo para niños sin Trabajo se ignoran. + total_percent_complete_mode_changed_to_simple_average: >- + Se ignoran los valores de trabajo de los paquetes de trabajo secundarios. links: configuration_guide: "Guía de configuración" get_in_touch: "¿Tiene alguna pregunta? Póngase en contacto con nosotros." @@ -1926,8 +1932,8 @@ es: label_additional_workflow_transitions_for_assignee: "Transiciones adicionales permitidas cuando el usuario es el asignado" label_additional_workflow_transitions_for_author: "Transiciones adicionales permitidas cuando el usuario es el autor" label_administration: "Administración" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Colores de la interfaz" + label_interface_colors_description: "Estos colores controlan el aspecto de la aplicación. Si los modifica, el tema cambiará automáticamente a Tema personalizado, pero no podemos asegurar el cumplimiento de los mínimos de contraste de accesibilidad (WCAG 2.1). " label_age: "Edad" label_ago: "días antes" label_all: "todos" @@ -1960,7 +1966,7 @@ es: label_attribute_expand_text: "El texto completo para «%{attribute}»" label_authentication: "Autentificación" label_authentication_settings: "Ajustes de autenticación" - label_available_custom_fields_projects: "Available custom fields projects" + label_available_custom_fields_projects: "Proyectos de campos personalizados disponibles" label_available_global_roles: "Roles globales disponibles" label_available_project_attributes: "Atributos del proyecto disponibles" label_available_project_forums: "Foros disponibles" @@ -2033,7 +2039,7 @@ es: label_copy_project: "Copiar proyecto" label_core_version: "Versión base" label_core_build: "Núcleo base" - label_created_by: "Created by %{user}" + label_created_by: "Creado por %{user}" label_current_status: "Estado actual" label_current_version: "Version actual" label_custom_field_add_no_type: "Agregue este campo a un tipo de paquete de trabajo" @@ -2041,7 +2047,7 @@ es: label_custom_field_plural: "Campos personalizados" label_custom_field_default_type: "Tipo vacío" label_custom_style: "Diseño" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Elija el aspecto que OpenProject le ofrece con los temas, seleccione los colores predeterminados que desea utilizar en la aplicación y el aspecto de las exportaciones." label_dashboard: "Paneles de control" label_database_version: "Versión de PostgreSQL" label_date: "Fecha" @@ -2163,8 +2169,8 @@ es: label_share_project_list: "Listas de proyectos compartidas" label_share_work_package: "Compartir paquete de trabajo" label_show_all_registered_users: "Mostrar todos los usuarios registrados" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Mostrar menos" + label_show_more: "Mostra més" label_journal: "Diario" label_journal_diff: "Comparación de la descripción" label_language: "Idioma" @@ -2314,7 +2320,7 @@ es: label_product_version: "Versión del producto" label_profile: "Perfil" label_percent_complete: "% compleado" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "Seguimiento del progreso" label_project: "Proyecto" label_project_activity: "Actividad del proyecto" label_project_attribute_plural: "Atributos del proyecto" @@ -2384,8 +2390,8 @@ es: label_role_plural: "Perfiles" label_role_search: "Asignar rol a nuevos miembros" label_scm: "SCM" - label_scroll_left: "Scroll left" - label_scroll_right: "Scroll right" + label_scroll_left: "Desplazar hacia la izquierda" + label_scroll_right: "Desplazar hacia la derecha" label_search: "Buscar" label_search_by_name: "Buscar por nombre" label_send_information: "Enviar nuevas credenciales al usuario" @@ -3137,13 +3143,13 @@ es: setting_hours_per_day_explanation: >- Define lo que se considera un "día" cuando se muestra la duración en días y horas (por ejemplo, si un día tiene 8 horas, 32 horas serían 4 días). setting_invitation_expiration_days: "El correo electrónico de activación caduca después de" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "Modo de cálculo del progreso" setting_work_package_done_ratio_field: "Basado en el trabajo" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + % completado puede fijarse libremente en cualquier valor. Si introduce opcionalmente un valor para Trabajo, se derivará automáticamente Trabajo restante. setting_work_package_done_ratio_status: "Basado en el estado" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + Cada estado tiene asociado un valor de % completado. El cambio de estado modificará el % completado. setting_work_package_done_ratio_explanation_html: > En el modo basado en trabajo, el % completado puede fijarse libremente en cualquier valor. Si introduce opcionalmente un valor para Trabajo, se derivará automáticamente Trabajo restante. En el modo basado en estados, cada estado tiene asociado un valor de % completado. Si cambia de estado, cambiará el % completado. setting_work_package_properties: "Propiedades de paquete de trabajo" @@ -3164,13 +3170,13 @@ es: setting_password_min_length: "Longitud mínima" setting_password_min_adhered_rules: "Numero mínimo de clases requeridas" setting_per_page_options: "Objetos por página de opciones" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% completado cuando el estado es cerrado" + setting_percent_complete_on_status_closed_no_change: "Sin cambios" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + El valor de % completado no cambiará aunque se cierre un paquete de trabajo. + setting_percent_complete_on_status_closed_set_100p: "Ajustado automáticamente al 100 %" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Un paquete de trabajo cerrado se considera completo. setting_plain_text_mail: "Correo en texto plano (sin HTML)" setting_protocol: "Protocolo" setting_project_gantt_query: "Diagrama de Gantt de la cartera de proyectos" @@ -3195,6 +3201,13 @@ es: setting_sys_api_enabled: "Habilitar el servicio web de administración de repositorios" setting_sys_api_description: "El servicio web de administración de repositorios proporciona integración y autorización de usuario para acceder a los repositorios." setting_time_format: "Hora" + setting_total_percent_complete_mode: "Cálculo de los totales de la jerarquía % completado" + setting_total_percent_complete_mode_work_weighted_average: "Ponderado por trabajo" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + El % total completado se ponderará con respecto al Trabajo de cada paquete de trabajo de la jerarquía. Los paquetes de trabajo sin Trabajo se ignorarán. + setting_total_percent_complete_mode_simple_average: "Media simple" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Trabajo se ignora y el % total completado será una media simple de los valores de % completado de los paquetes de trabajo de la jerarquía. setting_accessibility_mode_for_anonymous: "Activar el modo de accesibilidad para usuarios anónimos" setting_user_format: "Formato de nombre de usuarios" setting_user_default_timezone: "Zona horaria por defecto de los usuarios" @@ -3743,16 +3756,16 @@ es: close_warning: "Ignore esta advertencia." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: Aplicación de instancia incorporada + confidential: Confidencial singular: "Aplicación OAuth" plural: "Aplicaciones OAuth" named: "Aplicación OAuth '%{name}'" new: "Nueva aplicación OAuth" - non_confidential: Non confidential + non_confidential: No confidencial default_scopes: "(Ámbitos por defecto)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "Habilite esta aplicación, permitiendo a los usuarios realizar concesiones de autorización con ella." name: "El nombre de tu aplicación. Se mostrará a otros usuarios tras previa autorización." redirect_uri_html: > Las URLs permitidas a las que los usuarios autorizados serán redirigidos. Una entrada por línea.
Si estás registrando una aplicación de escritorio, usa la siguiente URL. @@ -3762,9 +3775,9 @@ es: register_intro: "Si estás desarrollando una aplicación de cliente API de OAuth para OpenProject, puedes registrarla usando este formulario para todos los usuarios." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: Aplicaciones OAuth integradas + other_applications: Otras aplicaciones OAuth + empty_application_lists: No se ha registrado ninguna aplicación OAuth. client_id: "ID de cliente" client_secret_notice: > Esta es la única vez que podremos imprimirte la clave de cliente secreta, por favor apúntalo y mantenlo en un lugar seguro. Debe tratarse como una contraseña y no puede ser recuperado de OpenProject más adelante. diff --git a/config/locales/crowdin/et.yml b/config/locales/crowdin/et.yml index f62e9c673097..ddbbbb84a082 100644 --- a/config/locales/crowdin/et.yml +++ b/config/locales/crowdin/et.yml @@ -813,7 +813,7 @@ et: blank: "ei tohi olla tühi." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ et: failure_message: Consent failed, cannot proceed. title: Kasutaja nõusolek decline_warning_message: Sa ei andnud nõusolekut ja sind on välja logitud. - user_has_consented: Kasutaja andis oma nõusoleku. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ et: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ et: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ et: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Aeg" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Võimalda külalistel kasutada hõlbustus- ja juurdepääsetavusrežiimi" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/eu.yml b/config/locales/crowdin/eu.yml index 946786fe6b4b..ac1041b0b170 100644 --- a/config/locales/crowdin/eu.yml +++ b/config/locales/crowdin/eu.yml @@ -813,7 +813,7 @@ eu: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ eu: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ eu: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ eu: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ eu: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Ordua" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/fa.yml b/config/locales/crowdin/fa.yml index 0491973f93d3..ecd459caaa9a 100644 --- a/config/locales/crowdin/fa.yml +++ b/config/locales/crowdin/fa.yml @@ -813,7 +813,7 @@ fa: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ fa: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ fa: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ fa: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "راهنمای پیکربندی" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ fa: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "زمان" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "منطقه زمانی پیش فرض کاربران" diff --git a/config/locales/crowdin/fi.yml b/config/locales/crowdin/fi.yml index 97a4e3366d47..225ac3b3983e 100644 --- a/config/locales/crowdin/fi.yml +++ b/config/locales/crowdin/fi.yml @@ -813,7 +813,7 @@ fi: blank: "ei voi olla sisällötön." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Tehtävää ei voida yhdistää alitehtäviin." circular_dependency: "Tämä riippuvuus loisi kehän." confirmation: "ei vastaa %{attribute}." @@ -1414,8 +1414,8 @@ fi: failure_message: Suostumuksen antaminen epäonnistui, ei voida jatkaa. title: Käyttäjän suostumus decline_warning_message: Et hyväksynyt ehtoja ja sinut on kirjattu ulos järjestelmästä. - user_has_consented: Käyttäjä on antanut suostumuksen konfiguroituun ilmoitukseen ilmoitettuna ajankohtana. - not_yet_consented: Käyttäjä ei ole vielä antanut suostumusta, pyydetään seuraavan kirjautumisen yhteydessä. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Määritä sähköpostiosoite, jonka käyttäjät voivat tavoittaa rekisterinpitäjän suorittamaan tietojen muutos- tai poistopyyntöjä. contact_your_administrator: Ota yhteyttä järjestelmänvalvojaan mikäli haluat että tilisi poistetaan. contact_this_mail_address: Ota yhteyttä %{mail_address} mikäli haluat että tilisi poistetaan. @@ -1803,6 +1803,8 @@ fi: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ fi: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ fi: setting_sys_api_enabled: "Salli WS tietovaraston hallintaan" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Aika" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Ota helppokäyttötila anonyymeille käyttäjille" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/fil.yml b/config/locales/crowdin/fil.yml index 1c2ce2b62964..1fe58f93250a 100644 --- a/config/locales/crowdin/fil.yml +++ b/config/locales/crowdin/fil.yml @@ -813,7 +813,7 @@ fil: blank: "hindi pwedeng blanko." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Ang isang package ng pagawaan ay hindi maaring mai-ugnay sa isa sa mga substak." circular_dependency: "Itong pakikipag-ugnayan ay lilikha ng kabilugang dependecia." confirmation: "hindi tugma %{attribute}." @@ -1414,8 +1414,8 @@ fil: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ fil: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ fil: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Gabay ng kumpigurasyon" get_in_touch: "You have questions? Get in touch with us." @@ -3197,6 +3203,13 @@ fil: setting_sys_api_enabled: "Paganahin ang serbisyo ng repository management web" setting_sys_api_description: "Ang serbisyo ng repositoryo management web ay nagbibigay ng intregrasyon at user awtorisasyon para sa pag-access ng mga repositoryo." setting_time_format: "Oras" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Paganahin ang aksebilidad mode para sa mga gumagamit ng anonymous" setting_user_format: "Users name format" setting_user_default_timezone: "Ang mga user defaullt time zone" diff --git a/config/locales/crowdin/fr.yml b/config/locales/crowdin/fr.yml index dd2ca8f212f8..798daeb9c343 100644 --- a/config/locales/crowdin/fr.yml +++ b/config/locales/crowdin/fr.yml @@ -32,8 +32,8 @@ fr: color_theme: "Thème de couleur" color_theme_custom: "(Personnalisé)" tab_interface: "Interface" - tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_branding: "Image de marque" + tab_pdf_export_styles: "Styles d'exportation PDF" colors: primary-button-color: "Bouton principal" accent-color: "Couleur d'accentuation" @@ -82,7 +82,7 @@ fr: contact: "Contactez-nous pour une démo" enterprise_info_html: "est un module de la version Enterprise." upgrade_info: "Veuillez passer à un plan payant pour l'activer et commencer à l'utiliser dans votre équipe." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Allocateur de mémoire Jemalloc journal_aggregation: explanation: text: "Les actions individuelles d'un utilisateur (par ex. mis à jour un lot de travaux deux fois) sont agrégés en une seule action si leur différence d'âge est inférieure à la période spécifiée. Elles seront affichées en une seule action dans l'application. Cela retardera également les notifications du même temps réduisant donc le nombre d'e-mails envoyés et affectera également le délai %{webhook_link}." @@ -209,8 +209,8 @@ fr: admin: custom_field_projects: is_for_all_blank_slate: - heading: For all projects - description: This custom field is enabled in all projects since the "For all projects" option is checked. It cannot be deactivated for individual projects. + heading: Pour tous les projets + description: Ce champ personnalisé est activé dans tous les projets, car l'option « Pour tous les projets » est cochée. Il ne peut pas être désactivé pour les projets individuels. text_add_new_custom_field: > Pour ajouter de nouveaux champs personnalisés à un projet, vous devez d’abord les créer avant de pouvoir les ajouter à ce projet. is_enabled_globally: "Est activé globalement" @@ -639,8 +639,8 @@ fr: uid: "Id du client" secret: "Clé secrète du client" owner: "Propriétaire" - builtin: "Builtin" - enabled: "Active" + builtin: "Intégré" + enabled: "Actif" redirect_uri: "URI de redirection" client_credentials_user_id: "ID d'utilisateur d'informations d'identification client" scopes: "Portées" @@ -812,7 +812,7 @@ fr: blank: "ne peut pas être vide." blank_nested: "doit avoir la propriété « %{property} » définie." cannot_delete_mapping: "est requis. Ne peut être supprimé." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "s'applique à tous les projets et ne peut donc pas être modifié." cant_link_a_work_package_with_a_descendant: "Un lot de travaux ne peut pas être lié à l'une de ses sous-tâches." circular_dependency: "Cette relation créerait une dépendance circulaire." confirmation: "ne correspond pas à %{attribute}." @@ -889,7 +889,7 @@ fr: custom_fields_project: attributes: project_ids: - blank: "Please select a project." + blank: "Veuillez sélectionner un projet." custom_actions: only_one_allowed: "(%{name}) seule valeur est autorisée." empty: "La zone (%{name}) ne peut pas être vide." @@ -921,7 +921,7 @@ fr: blank: "est obligatoire. Veuillez sélectionner un nom." not_unique: "est déjà utilisé. Veuillez choisir un autre nom." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Impossible d'enregistrer, car la réunion a été mise à jour par quelqu'un d'autre entre-temps. Veuillez recharger la page." notifications: at_least_one_channel: "Au moins un canal pour envoyer des notifications doit être spécifié." attributes: @@ -1413,8 +1413,8 @@ fr: failure_message: Échec de l'accord, impossible de continuer. title: Accord de l'utilisateur decline_warning_message: Vous avez refusé l'accord et avez été déconnecté. - user_has_consented: L'utilisateur a accepté votre déclaration configurée au moment donné. - not_yet_consented: L'utilisateur n'a pas encore donné son accord, il sera demandé lors de la prochaine connexion. + user_has_consented: L'utilisateur a donné son consentement à votre [texte d'information sur le consentement configuré](consent_settings). + not_yet_consented: L'utilisateur n'a pas encore donné son consentement à votre [texte d'information sur le consentement configuré](consent_settings). Un rappel lui sera envoyé lors de sa prochaine connexion. contact_mail_instructions: Définissez l'adresse mail à laquelle les utilisateurs peuvent joindre un contrôleur de données pour effectuer des modifications de données ou des demandes de suppression. contact_your_administrator: Veuillez contacter votre administrateur si vous souhaitez que votre compte soit supprimé. contact_this_mail_address: Veuillez contacter %{mail_address} si vous voulez que votre compte soit supprimé. @@ -1647,7 +1647,7 @@ fr: error_menu_item_not_saved: L'élément de menu n'a pas pu être sauvegardé error_wiki_root_menu_item_conflict: > Impossible de renommer "%{old_name}" en "%{new_name}" en raison d’un conflit dans l’élément de menu résultant avec l’élément de menu existant "%{existing_caption}" (%{existing_identifier}). - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Une erreur s'est produite lors de l'authentification externe : %{message}" error_attribute_not_highlightable: "Attribut(s) ne pouvant pas être mis en surbrillance: %{attributes}" events: changeset: "Lot de modification édité" @@ -1802,6 +1802,8 @@ fr: progress_mode_changed_to_status_based: "Mise à jour du calcul de la progression" status_changed: "Statut « %{status_name} »" system_update: "Mise à jour du système OpenProject :" + total_percent_complete_mode_changed_to_work_weighted_average: "Le calcul des totaux de % d'achèvement est désormais pondéré par le travail." + total_percent_complete_mode_changed_to_simple_average: "Le calcul des totaux de % d'achèvement est désormais basé sur une simple moyenne des seules valeurs de % d'achèvement." cause_descriptions: work_package_predecessor_changed_times: par changement vers le prédécesseur %{link} work_package_parent_changed_times: par changement vers le parent %{link} @@ -1819,7 +1821,7 @@ fr: progress_mode_changed_to_status_based: Le calcul de la progression est désormais basé sur le statut status_excluded_from_totals_set_to_false_message: désormais inclus dans les totaux de la hiérarchie status_excluded_from_totals_set_to_true_message: désormais exclus des totaux de la hiérarchie - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "Le % d'achèvement a changé de %{old_value} % à %{new_value} %" system_update: file_links_journal: > À partir de maintenant, l'activité liée aux liens de fichiers (fichiers stockés sur des supports externes) apparaîtra ici dans l'onglet Activité. Les activités suivantes concernent des liens déjà existants : @@ -1829,6 +1831,10 @@ fr: Le calcul de la progression est automatiquement ajusté avec la mise à jour de la version. totals_removed_from_childless_work_packages: >- Les totaux de travail et de progression sont automatiquement supprimés pour les lots de travaux non parents avec la mise à jour de la version. Il s'agit d'une tâche de maintenance qui peut être ignorée. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Les lots de travaux enfants sans travail sont ignorés. + total_percent_complete_mode_changed_to_simple_average: >- + Les valeurs de travail des lots de travaux enfants sont ignorées. links: configuration_guide: "Guide de configuration" get_in_touch: "Vous avez des questions ? Contactez-nous." @@ -1928,8 +1934,8 @@ fr: label_additional_workflow_transitions_for_assignee: "Transitions supplémentaires autorisées lorsque l'utilisateur est l'assigné" label_additional_workflow_transitions_for_author: "Transitions supplémentaires autorisées lorsque l'utilisateur est l'auteur" label_administration: "Administration" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Couleurs de l'interface" + label_interface_colors_description: "Ces couleurs contrôlent l'apparence de l'application. Si vous les modifiez, le thème sera automatiquement remplacé par le thème personnalisé, mais nous ne pouvons pas garantir la conformité aux normes minimales d'accessibilité (WCAG 2.1). " label_age: "Âge" label_ago: "il y a" label_all: "tous" @@ -1962,7 +1968,7 @@ fr: label_attribute_expand_text: "Le texte complet pour « %{attribute} »." label_authentication: "Authentification" label_authentication_settings: "Paramètres d'authentification" - label_available_custom_fields_projects: "Available custom fields projects" + label_available_custom_fields_projects: "Projets de champs personnalisés disponibles" label_available_global_roles: "Rôles globaux disponibles" label_available_project_attributes: "Attributs de projet disponibles" label_available_project_forums: "Forums disponibles" @@ -2035,7 +2041,7 @@ fr: label_copy_project: "Copier projet" label_core_version: "Version du cœur" label_core_build: "Construction de base" - label_created_by: "Created by %{user}" + label_created_by: "Créé par %{user}" label_current_status: "Statut actuel" label_current_version: "Version actuelle" label_custom_field_add_no_type: "Ajouter ce champ à un type de lot de travaux" @@ -2043,7 +2049,7 @@ fr: label_custom_field_plural: "Champs personnalisés" label_custom_field_default_type: "Type défaut" label_custom_style: "Apparence" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Choisissez l'apparence d'OpenProject avec des thèmes, sélectionnez les couleurs par défaut à utiliser dans l'application et l'apparence des exportations." label_dashboard: "Tableau de bord" label_database_version: "Version de PostgreSQL" label_date: "Date" @@ -2165,8 +2171,8 @@ fr: label_share_project_list: "Partager la liste des projets" label_share_work_package: "Partager le lot de travaux" label_show_all_registered_users: "Afficher tous les utilisateurs enregistrés" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Afficher moins" + label_show_more: "Afficher plus" label_journal: "Journal" label_journal_diff: "Comparaison de description" label_language: "Langue" @@ -2316,7 +2322,7 @@ fr: label_product_version: "Version du produit" label_profile: "Profil" label_percent_complete: "% réalisé" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "Suivi des progrès" label_project: "Projet" label_project_activity: "Activité du projet" label_project_attribute_plural: "Attributs du projet" @@ -3140,13 +3146,13 @@ fr: setting_hours_per_day_explanation: >- Cela définit ce qui est considéré comme un « jour » lors de l'affichage de la durée en jours et en heures (par exemple, si un jour dure 8 heures, 32 heures représentent 4 jours). setting_invitation_expiration_days: "L'émail d’activation expire après" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "Mode de calcul de l'avancement" setting_work_package_done_ratio_field: "Basé sur le travail" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + Le % d'achèvement peut être fixé librement sur n'importe quelle valeur. Si vous saisissez une valeur facultative pour le travail, le travail restant sera automatiquement dérivé. setting_work_package_done_ratio_status: "Basé sur le statut" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + Chaque statut est associé à une valeur de % d'achèvement. Le changement de statut modifie le % d'achèvement. setting_work_package_done_ratio_explanation_html: > En mode Basé sur le travail, le % d'achèvement peut être librement défini sur n'importe quelle valeur. Si vous saisissez une valeur pour le travail, le travail restant sera automatiquement dérivé. En mode Basé sur le statut, chaque état a une valeur de % d'achèvement associée. Le changement de statut changera la valeur de % d'achèvement. setting_work_package_properties: "Propriétés du Lot de Travaux" @@ -3167,13 +3173,13 @@ fr: setting_password_min_length: "Longueur minimale" setting_password_min_adhered_rules: "Nombre minimale des classe de caractère requise" setting_per_page_options: "Options des objets par page" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% d'achèvement lorsque le statut est fermé" + setting_percent_complete_on_status_closed_no_change: "Aucun changement" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + La valeur du % d'achèvement ne changera pas même si un lot de travaux est clôturé. + setting_percent_complete_on_status_closed_set_100p: "Réglé automatiquement à 100 %" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Un lot de travaux clôturé est considéré comme terminé. setting_plain_text_mail: "Courriel au format texte (pas de HTML)" setting_protocol: "Protocole" setting_project_gantt_query: "Vue Gantt du portefeuille du projet" @@ -3198,6 +3204,13 @@ fr: setting_sys_api_enabled: "Activer le service web de gestion de dépôt" setting_sys_api_description: "Le service web de gestion de dépôt fournit l'intégration et l'autorisation d'accès aux dépôts." setting_time_format: "Heure" + setting_total_percent_complete_mode: "Calcul des totaux de la hiérarchie en % d'achèvement" + setting_total_percent_complete_mode_work_weighted_average: "Pondéré par le travail" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + Le % d'achèvement total sera pondéré en fonction du travail de chaque lot de travaux repris dans la hiérarchie. Les lots de travaux sans travail seront ignorés. + setting_total_percent_complete_mode_simple_average: "Moyenne simple" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Le travail est ignoré et le % d'achèvement total sera une simple moyenne des valeurs de % d'achèvement des lots de travaux repris dans la hiérarchie. setting_accessibility_mode_for_anonymous: "Activer le mode d'accessibilité pour les utilisateurs anonymes" setting_user_format: "Format du nom d'utilisateur" setting_user_default_timezone: "Fuseau horaire par défaut des utilisateurs" @@ -3746,16 +3759,16 @@ fr: close_warning: "Ignorer cet avertissement." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: Application d'instance intégrée + confidential: Confidentiel singular: "Application OAuth" plural: "Applications OAuth" named: "Application OAuth '%{name}'" new: "Nouvelle application Oauth" - non_confidential: Non confidential + non_confidential: Non confidentiel default_scopes: "(Portée par défaut)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "Activez cette application et permettez aux utilisateurs de l'utiliser pour attribuer des autorisations." name: "Le nom de votre application. Ceci sera affiché aux autres utilisateurs sur autorisation." redirect_uri_html: > Les URL autorisées où peuvent être redirigés les utilisateurs. Une entrée par ligne.
Si vous enregistrez une application de bureau, utilisez l'URL suivante. @@ -3765,9 +3778,9 @@ fr: register_intro: "Si vous développez une application client OAuth API pour OpenProject, vous pouvez l'enregistrer en utilisant ce formulaire pour qu’elle soit utilisée par tous les utilisateurs." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: Applications OAuth intégrées + other_applications: Autres applications OAuth + empty_application_lists: Aucune application OAuth n'a été enregistrée. client_id: "Id du client" client_secret_notice: > Il s’agit de la seule fois où nous pouvons imprimer le secret du client, veuillez en prendre note et le garder dans un lieu sûr. Il doit être traité comme un mot de passe et ne peut pas être récupéré par OpenProject ultérieurement. diff --git a/config/locales/crowdin/he.yml b/config/locales/crowdin/he.yml index 889b14c25516..f391e6a87194 100644 --- a/config/locales/crowdin/he.yml +++ b/config/locales/crowdin/he.yml @@ -827,7 +827,7 @@ he: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1448,8 +1448,8 @@ he: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1873,6 +1873,8 @@ he: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1900,6 +1902,10 @@ he: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3273,6 +3279,13 @@ he: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "זמן" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/hi.yml b/config/locales/crowdin/hi.yml index 3cc78f8dfcb7..ae9323352423 100644 --- a/config/locales/crowdin/hi.yml +++ b/config/locales/crowdin/hi.yml @@ -811,7 +811,7 @@ hi: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1412,8 +1412,8 @@ hi: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1801,6 +1801,8 @@ hi: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1828,6 +1830,10 @@ hi: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3197,6 +3203,13 @@ hi: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "उपयोगकर्ता डिफ़ॉल्ट समय ज़ोन" diff --git a/config/locales/crowdin/hr.yml b/config/locales/crowdin/hr.yml index e06c8633c9d2..ccef1bf35a9b 100644 --- a/config/locales/crowdin/hr.yml +++ b/config/locales/crowdin/hr.yml @@ -820,7 +820,7 @@ hr: blank: "ne može biti prazan unos." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Radni paket ne može biti pridružen podređenim radnim zadacima." circular_dependency: "Ova relacija izraditi će skupnu odnosno cirkularnu ovisnost." confirmation: "ne odgovara %{attribute}." @@ -1431,8 +1431,8 @@ hr: failure_message: Suglasnost nije uspjela, ne može se nastaviti. title: Pristanak korisnika decline_warning_message: Odbili ste pristati i odjavljeni ste iz sustava. - user_has_consented: Korisnik je suglasan sa Vašom izjavom u danom trenutku. - not_yet_consented: Korisnik još nije suglasan, suglasnost će biti zahtijevana prilikom slijedeće prijave u sustav. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Potrebno definirati mail adresu da korisnici mogu doći do podataka za izvršavanje zahtjeva za promjenu ili uklanjanje podataka. contact_your_administrator: Obratite se administratoru ako želite imati svoj račun izbrisan. contact_this_mail_address: Molimo vas da kontaktirate %{mail_address} ako želite imati svoj račun izbrisan. @@ -1838,6 +1838,8 @@ hr: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1865,6 +1867,10 @@ hr: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Vodič za konfiguraciju" get_in_touch: "You have questions? Get in touch with us." @@ -3236,6 +3242,13 @@ hr: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "Web servis za upravljanje repozitorijom omogućava integraciju i autorizaciju za pristup repozitorijima." setting_time_format: "Vrijeme" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/hu.yml b/config/locales/crowdin/hu.yml index a0d0cdf273b3..df9e0254bfc5 100644 --- a/config/locales/crowdin/hu.yml +++ b/config/locales/crowdin/hu.yml @@ -810,7 +810,7 @@ hu: blank: "nem lehet üres." blank_nested: "be kell állítani a '%{property}' tulajdonságot.\n" cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A feladatcsoport nem kapcsolható saját részfeladatához." circular_dependency: "Ez a kapcsolat egy körkörös függőséget eredményezne." confirmation: "%{attribute} nem egyezik." @@ -1411,8 +1411,8 @@ hu: failure_message: A hozzájárulás sikertelen a művelet nem folytatható. title: Felhasználói jóváhagyás decline_warning_message: Elutasította a beleegyezést ezért ki lett léptetve. - user_has_consented: A felhasználó beleegyezett a beállított nyilatkozathoz az adott időpontban. - not_yet_consented: A felhasználó még nem járult hozzá, a következő bejelentkezéskor ismét kérni fogjuk. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Határozza meg az e-mail címet, amellyel a felhasználók elérhetik az adatkezelőt adatcserére vagy eltávolítási kérelmekre. contact_your_administrator: Kérjük lépjen kapcsolatba a rendszergazdával, ha fiókját törölni szeretné. contact_this_mail_address: Kérjük, lépjen kapcsolatba %{mail_address}, ha fiókját törölni szeretné. @@ -1800,6 +1800,8 @@ hu: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject rendszerfrissítés:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1827,6 +1829,10 @@ hu: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Konfigurációs útmutató" get_in_touch: "Kérdése van? Lépjen kapcsolatba velünk" @@ -3195,6 +3201,13 @@ hu: setting_sys_api_enabled: "Csomagtároló webszolgáltatás bekapcsolva" setting_sys_api_description: "A csomagtároló webszolgáltatás integrációt és felhasználói hozzáférést biztosít a tároló eléréséhez." setting_time_format: "Idő" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Engedélyezi a kisegítő módot a névtelen felhasználók számára" setting_user_format: "Users name format" setting_user_default_timezone: "A felhasználók alapértelmezett időzónája" diff --git a/config/locales/crowdin/id.yml b/config/locales/crowdin/id.yml index d24932c8f063..8972e4366e47 100644 --- a/config/locales/crowdin/id.yml +++ b/config/locales/crowdin/id.yml @@ -799,7 +799,7 @@ id: blank: "harus di isi." blank_nested: "harus menyetel properti '%{property}'." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Work package tidak dapat dihubungkan dengan subtask-nya." circular_dependency: "Relasi ini menyebabkan dependensi circular." confirmation: "tidak sesuai dengan %{attribute}." @@ -1390,8 +1390,8 @@ id: failure_message: Persetujuan gagal, tidak bisa dilanjutkan. title: Persetujuan Pengguna decline_warning_message: Anda telah menolak untuk menyetujui dan telah dikeluarkan. - user_has_consented: Pengguna telah menyetujui pernyataan yang Anda konfigurasikan pada waktu yang ditentukan. - not_yet_consented: Pengguna belum memberikan persetujuan, akan diminta saat login berikutnya. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Tentukan alamat email yang dapat dijangkau pengguna ke pengontrol data untuk melakukan permintaan perubahan atau penghapusan data. contact_your_administrator: Silakan hubungi administrator Anda jika Anda ingin akun Anda dihapus. contact_this_mail_address: Harap hubungi %{mail_address} jika Anda ingin akun Anda dihapus. @@ -1761,6 +1761,8 @@ id: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1788,6 +1790,10 @@ id: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Petunjuk Konfigurasi" get_in_touch: "Anda punya pertanyaan? Hubungi kami." @@ -2077,7 +2083,7 @@ id: label_file_plural: "File" label_filter_add: "Tambah Filter" label_filter: "Filter" - label_filter_plural: "Filter" + label_filter_plural: "Penyaring" label_filters_toggle: "Tampilkan/Sembunyikan penyaringan" label_float: "Float" label_folder: "Folder" @@ -3151,6 +3157,13 @@ id: setting_sys_api_enabled: "Aktifkan web service untuk manajemen repository" setting_sys_api_description: "Repository management web service menyediakan integrasi fungsi dan otorisasi untuk akses repository." setting_time_format: "Waktu" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Aktifkan mode Aksesibilitas untuk user anonim" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/it.yml b/config/locales/crowdin/it.yml index 25c97e8305df..8e547a1ce741 100644 --- a/config/locales/crowdin/it.yml +++ b/config/locales/crowdin/it.yml @@ -31,9 +31,9 @@ it: custom_styles: color_theme: "Tema a colori" color_theme_custom: "(Personalizzato)" - tab_interface: "Interface" + tab_interface: "Interfaccia" tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_pdf_export_styles: "Stili di esportazione PDF" colors: primary-button-color: "Pulsante principale" accent-color: "Accento" @@ -67,11 +67,11 @@ it: upgrade_to_ee: "Aggiorna a Enterprise edition" add_token: "Carica un token di assistenza per Enterprise edition" delete_token_modal: - text: "Vuoi davvero rimuovere il token Enterprise edition attualmente utilizzato?" + text: "Vuoi davvero rimuovere il token Enterprise Edition attualmente utilizzato?" title: "Elimina token" replace_token: "Sostituisci il token di assistenza attuale" order: "Ordina l'edizione Enterprise on-premises" - paste: "Incolla il tuo token di assistenza per Enterprise edition" + paste: "Incolla il tuo token di assistenza per Enterprise Edition" required_for_feature: "Questa aggiunta è disponibile solo con un token di assistenza Enterprise Edition attivo." enterprise_link: "Per ulteriori informazioni, clicca qui." start_trial: "Inizia la prova gratuita" @@ -82,7 +82,7 @@ it: contact: "Contattaci per una demo" enterprise_info_html: "è un componente aggiuntivo di Imprese ." upgrade_info: "Esegui l'upgrade a un piano a pagamento per attivarlo e iniziare a usarlo nel tuo team." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Allocatore di memoria Jemalloc journal_aggregation: explanation: text: "Le singole azioni di un utente (es. l'aggiornamento di una macro-attività due volte) vengono aggregate in un'unica azione se il tempo intercorso tra esse è inferiore al periodo minimo di tempo impostato. Verranno visualizzate quindi come un'unica azione all'interno dell'applicazione. Questo ritarderà anche le notifiche della stessa quantità di tempo, riducendo così il numero di email inviate, e influirà anche sul ritardo di %{webhook_link}." @@ -206,8 +206,8 @@ it: admin: custom_field_projects: is_for_all_blank_slate: - heading: For all projects - description: This custom field is enabled in all projects since the "For all projects" option is checked. It cannot be deactivated for individual projects. + heading: Per tutti i progetti + description: Questo campo personalizzato è attivato in tutti i progetti, poiché l'opzione "Per tutti i progetti" è selezionata. Non può essere disattivato per i singoli progetti. text_add_new_custom_field: > Per aggiungere nuovi campi personalizzati a un progetto, è necessario prima crearli. is_enabled_globally: "Abilitato a livello globale" @@ -637,8 +637,8 @@ it: uid: "Client ID" secret: "Chiave segreta del client" owner: "Proprietario" - builtin: "Builtin" - enabled: "Active" + builtin: "Integrato" + enabled: "Attivo" redirect_uri: "Reindirizzamento URI" client_credentials_user_id: "ID utente delle credenziali client" scopes: "Ambiti" @@ -810,13 +810,13 @@ it: blank: "non può essere lasciato vuoto." blank_nested: "deve avere la proprietà '%{property}' impostata." cannot_delete_mapping: "è necessario. Non può essere cancellato." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Una macro-attività non può essere collegato a una delle sue sottoattività." circular_dependency: "Questa relazione creerebbe una dipendenza circolare." confirmation: "non coincide con %{attribute}." could_not_be_copied: "%{dependency} non può essere (completamente) copiato." does_not_exist: "non esiste." - error_enterprise_only: "%{action} è disponibile solo in OpenProject Enterprise edition" + error_enterprise_only: "%{action} è disponibile solo in OpenProject Enterprise Edition" error_unauthorized: "potrebbe non essere accessibile." error_readonly: "è in sola lettura, pertanto non è stato possibile modificarlo." error_conflict: "L'informazione è stata aggiornata da almeno un altro utente nel frattempo." @@ -887,7 +887,7 @@ it: custom_fields_project: attributes: project_ids: - blank: "Please select a project." + blank: "Seleziona un progetto." custom_actions: only_one_allowed: "(%{name}) solo un valore è permesso." empty: "(%{name}) valore non può essere vuoto." @@ -919,7 +919,7 @@ it: blank: "è obbligatorio. Sei pregato di selezionare un nome." not_unique: "è già in uso. Sei pregato di selezionare un altro nome." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Impossibile salvare perché la riunione è stata aggiornata da qualcun altro nel frattempo. Ricarica la pagina." notifications: at_least_one_channel: "Deve essere specificato almeno un canale per l'invio delle notifiche." attributes: @@ -1411,8 +1411,8 @@ it: failure_message: Consenso respinto, impossibile procedere. title: Consenso dell'utente decline_warning_message: Hai rifiutato il consenso e sei stato disconnesso. - user_has_consented: L'utente ha acconsentito al tuo stato configurato al momento stabilito. - not_yet_consented: L'utente non ha ancora acconsentito, verrà richiesto al prossimo accesso. + user_has_consented: L'utente ha dato il proprio consenso al [testo informativo sul consenso configurato](consent_settings). + not_yet_consented: L'utente non ha ancora dato il suo consenso al tuo [testo informativo sul consenso configurato](consent_settings). Riceverà un promemoria la prossima volta che effettuerà l'accesso. contact_mail_instructions: Definire l'indirizzo mail di un controllore che gli utenti possono raggiungere per eseguire la modifica dei dati o le richieste di rimozione. contact_your_administrator: Contattare l'amministratore se desideri che il tuo account venga eliminato. contact_this_mail_address: Per favore contatta %{mail_address} se desideri che il tuo account venga eliminato. @@ -1612,7 +1612,7 @@ it: error_cookie_missing: "Il cookie di OpenProject è mancante. Prego, verifica che i cookie siano attivati, questa applicazione non funziona correttamente senza." error_custom_option_not_found: "L'opzione non esiste." error_enterprise_activation_user_limit: "Il tuo account potrebbe non essere attivo (raggiunto il limite utente). Si prega di contattare l'amministratore per ottenere l'accesso." - error_enterprise_token_invalid_domain: "L'Enterprise edition non è attiva. Il dominio del token Enterprise (%{actual}) non corrisponde al nome host del sistema (%{expected})." + error_enterprise_token_invalid_domain: "L'Enterprise Edition non è attiva. Il dominio del token Enterprise (%{actual}) non corrisponde al nome host del sistema (%{expected})." error_failed_to_delete_entry: "Cancellazione voce non riuscita." error_in_dependent: "Errore nel tentativo di modificare l'oggetto dipendente: %{dependent_class} #%{related_id} - %{related_subject}: %{error}" error_in_new_dependent: "Errore nel tentativo di creare un oggetto dipendente: %{dependent_class} - %{related_subject}: %{error}" @@ -1645,7 +1645,7 @@ it: error_menu_item_not_saved: La voce di menu non può essere salvata error_wiki_root_menu_item_conflict: > Impossibile rinominare "%{old_name}" a "%{new_name}" a causa di un conflitto nella voce di menu risultante con la voce di menu esistente "%{existing_caption}" (%{existing_identifier}). - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Si è verificato un errore durante l'autenticazione esterna: %{message}" error_attribute_not_highlightable: "Attributo/i non sottolineabile/i: %{attributes}" events: changeset: "Changeset modificato" @@ -1777,10 +1777,10 @@ it: blocks: community: "Comunità di OpenProject" upsale: - title: "Aggiorna ad Enterprise edition" + title: "Aggiorna ad Enterprise Edition" more_info: "Altre informazioni" links: - upgrade_enterprise_edition: "Aggiorna ad Enterprise edition" + upgrade_enterprise_edition: "Aggiorna ad Enterprise Edition" postgres_migration: "Migrazione dell'installazione su PostgreSQL" user_guides: "Guide utente" faq: "FAQ" @@ -1800,6 +1800,8 @@ it: progress_mode_changed_to_status_based: "Calcolo dei progressi aggiornato" status_changed: "Stato '%{status_name}'" system_update: "Aggiornamento del sistema OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "Il calcolo dei totali della % completamento è ora ponderato in base al Lavoro." + total_percent_complete_mode_changed_to_simple_average: "Il calcolo dei totali della % completamento si basa ora su una media semplice dei soli valori della % completamento." cause_descriptions: work_package_predecessor_changed_times: da modifiche al predecessore %{link} work_package_parent_changed_times: da modifiche al genitore %{link} @@ -1817,7 +1819,7 @@ it: progress_mode_changed_to_status_based: La modalità di calcolo dell'avanzamento è impostata in funzione dello stato. status_excluded_from_totals_set_to_false_message: ora incluso nei totali della gerarchia status_excluded_from_totals_set_to_true_message: ora escluso dai totali della gerarchia - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% completamento cambiata da %{old_value}% a %{new_value}%" system_update: file_links_journal: > D'ora in poi, l'attività relativa ai collegamenti ai file (file archiviati in archivi esterni) verrà visualizzata qui nella scheda Attività. Di seguito trovi attività riguardanti link già esistenti: @@ -1827,6 +1829,10 @@ it: Il calcolo dei progressi è modificato con l'aggiornamento della versione. totals_removed_from_childless_work_packages: >- I totali di lavoro e avanzamento vengono rimossi automaticamente per le macro-attività non principali con l'aggiornamento della versione. Questa è un'attività di manutenzione e può essere tranquillamente ignorata. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Le macro-attività figlie senza Lavoro vengono ignorate. + total_percent_complete_mode_changed_to_simple_average: >- + I valori di Lavoro delle macro-attività figlie vengono ignorati. links: configuration_guide: "Guida di configurazione" get_in_touch: "Hai dei dubbi? Mettiti in contatto con noi." @@ -1926,8 +1932,8 @@ it: label_additional_workflow_transitions_for_assignee: "Transizioni aggiuntive consentite quando l'utente è l'assegnatario" label_additional_workflow_transitions_for_author: "Transizioni aggiuntive consentite quando l'utente è l'autore" label_administration: "Amministrazione" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Colori dell'interfaccia" + label_interface_colors_description: "Questi colori controllano l'aspetto dell'applicazione. Se li modifichi, il tema verrà automaticamente cambiato in Tema personalizzato, ma non possiamo garantire la conformità ai minimi di contrasto di accessibilità (WCAG 2.1). " label_age: "Età" label_ago: "giorni fa" label_all: "tutti" @@ -1960,7 +1966,7 @@ it: label_attribute_expand_text: "Testo completo per \"%{attribute}\"" label_authentication: "Autenticazione" label_authentication_settings: "Impostazioni di autenticazione" - label_available_custom_fields_projects: "Available custom fields projects" + label_available_custom_fields_projects: "Progetti di campi personalizzati disponibili" label_available_global_roles: "Ruoli globali disponibili" label_available_project_attributes: "Attributi del progetto disponibili" label_available_project_forums: "Forum disponibili" @@ -2033,7 +2039,7 @@ it: label_copy_project: "Copia progetto" label_core_version: "Versione core" label_core_build: "Core build" - label_created_by: "Created by %{user}" + label_created_by: "Creato da %{user}" label_current_status: "Stato attuale" label_current_version: "Versione corrente" label_custom_field_add_no_type: "Aggiungi questo campo a un tipo di macro-attività" @@ -2041,7 +2047,7 @@ it: label_custom_field_plural: "Campo personalizzato" label_custom_field_default_type: "Tipo vuoto" label_custom_style: "Progettazione" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Scegli l'aspetto che vuoi dare a OpenProject con i temi, seleziona i colori predefiniti da utilizzare nell'app e l'aspetto delle esportazioni." label_dashboard: "Dashboard" label_database_version: "Versione di PostgreSQL" label_date: "Data" @@ -2090,7 +2096,7 @@ it: label_enumerations: "Enumerazioni" label_enterprise: "Enterprise" label_enterprise_active_users: "%{current}/%{limit} utenti attivi riservati" - label_enterprise_edition: "Enterprise edition" + label_enterprise_edition: "Enterprise Edition" label_enterprise_support: "Supporto per Imprese" label_enterprise_addon: "Componente aggiuntivo Enterprise" label_environment: "Ambiente" @@ -2163,8 +2169,8 @@ it: label_share_project_list: "Condividi elenco progetti" label_share_work_package: "Condividi macro-attività" label_show_all_registered_users: "Mostra tutti gli utenti registrati" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Mostra meno" + label_show_more: "Mostra di più" label_journal: "Diario" label_journal_diff: "Confronto Descrizione" label_language: "Linguaggio" @@ -2314,7 +2320,7 @@ it: label_product_version: "Versione del prodotto" label_profile: "Profilo" label_percent_complete: "% completamento" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "Monitoraggio dei progressi" label_project: "Progetto" label_project_activity: "Attività del progetto" label_project_attribute_plural: "Attributi del progetto" @@ -3138,13 +3144,13 @@ it: setting_hours_per_day_explanation: >- Definisce ciò che viene considerato un "giorno" quando si visualizza la durata in giorni e ore (per esempio, se un giorno è di 8 ore, 32 ore sono 4 giorni). setting_invitation_expiration_days: "L'email di attivazione scade dopo" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "Modalità di calcolo dei progressi" setting_work_package_done_ratio_field: "Basato sul lavoro" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + La % completamento può essere liberamente impostata su qualsiasi valore. Se si inserisce facoltativamente un valore per Lavoro, il Lavoro residuo verrà derivato automaticamente. setting_work_package_done_ratio_status: "Basato sullo stato" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + Ogni stato ha un valore di % completamento associato a esso. Cambiando lo stato cambierà la % completamento. setting_work_package_done_ratio_explanation_html: > Nella modalità basata sul lavoro, la % completamento può assumere qualsiasi valore. Se inserisci facoltativamente un Lavoro, il Lavoro residuo verrà automaticamente calcolato. Nella modalità basata sullo stato, a ogni stato è associato un valore di % completamento. La modifica dello stato cambierà la % completamento. setting_work_package_properties: "Proprietà della macro-attività" @@ -3165,13 +3171,13 @@ it: setting_password_min_length: "Lunghezza minima" setting_password_min_adhered_rules: "Numero minimo di classi richieste" setting_per_page_options: "Opzioni degli oggetti per pagina" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% completamento quando lo stato è chiuso" + setting_percent_complete_on_status_closed_no_change: "Nessun cambiamento" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + Il valore della % completamento non cambierà nemmeno quando una macro-attività è chiusa. + setting_percent_complete_on_status_closed_set_100p: "Imposta automaticamente al 100%" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Una macro-attività chiusa è considerata completata. setting_plain_text_mail: "Posta in formato testo semplice (no HTML)" setting_protocol: "Protocollo" setting_project_gantt_query: "Visione Gantt portafoglio progetti" @@ -3196,6 +3202,13 @@ it: setting_sys_api_enabled: "Abilita la gestione di archivi via web service" setting_sys_api_description: "Il web service di gestione archivio fornisce servizi per integrare ed autorizzare gli utenti nell'accesso agli archivi." setting_time_format: "Tempo" + setting_total_percent_complete_mode: "Calcolo della % completamento totale della gerarchia" + setting_total_percent_complete_mode_work_weighted_average: "Ponderato in base al lavoro" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + La % completamento totale sarà ponderata in base al Lavoro di ogni macro-attività nella gerarchia. Le macro-attività senza Lavoro verranno ignorate. + setting_total_percent_complete_mode_simple_average: "Media semplice" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Il Lavoro viene ignorato e la % completamento totale sarà una semplice media dei valori di % completamento delle macro-attività nella gerarchia. setting_accessibility_mode_for_anonymous: "Abilita la modalità di accesso facilitato per utenti anonimi" setting_user_format: "Formato del nome utente" setting_user_default_timezone: "Orario predefinito utenti" @@ -3745,16 +3758,16 @@ it: close_warning: "Ignora questo avviso." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: Applicazione di istanza integrata + confidential: Confidenziale singular: "Applicazione OAuth" plural: "Applicazioni OAuth" named: "Applicazione OAuth \"%{name}\"" new: "Nuova Applicazione OAuth" - non_confidential: Non confidential + non_confidential: Non confidenziale default_scopes: "(Ambiti predefiniti)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "Abilita questa applicazione, consentendo agli utenti di eseguire le autorizzazioni concesse con essa." name: "Il nome della tua applicazione. Verrà visualizzato dagli altri utenti all'autorizzazione." redirect_uri_html: > Gli URL consentiti a cui possono essere reindirizzati gli utenti autorizzati. Una voce per riga.
Se stai registrando un'applicazione desktop, usa il seguente URL. @@ -3764,9 +3777,9 @@ it: register_intro: "Se stai sviluppando un'applicazione client OAuth API per OpenProject è possibile registrarla utilizzando questo modulo per consentirne l'uso a tutti gli utenti." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: Applicazioni OAuth integrate + other_applications: Altre applicazioni OAuth + empty_application_lists: Nessuna applicazione OAuth è stata registrata. client_id: "Client ID" client_secret_notice: > Questa è l'unico momento in cui possiamo stampare il segreto del client, abbi cura di annotarlo e tenerlo al sicuro. Dovrebbe essere trattato come una password e non può essere recuperato da OpenProject in un momento successivo. diff --git a/config/locales/crowdin/ja.yml b/config/locales/crowdin/ja.yml index 6ca720db428b..6f2d875c71d6 100644 --- a/config/locales/crowdin/ja.yml +++ b/config/locales/crowdin/ja.yml @@ -802,7 +802,7 @@ ja: blank: "は空白にすることができません。" blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "親子関係にあるワークパッケージ間で関係の設定はできません。" circular_dependency: "この関係は循環依存になります。" confirmation: "は%{attribute} と一致しません。" @@ -1393,8 +1393,8 @@ ja: failure_message: 同意に失敗しました。続行することはできません。 title: ユーザーの同意 decline_warning_message: 同意せずにログアウトしました。 - user_has_consented: 指定された時刻で構成されているステートメントにユーザーが同意しました。 - not_yet_consented: ユーザーはまだ同意していません。次のログイン時に要求されます。 + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: データの変更または削除要求を実行するメールアドレスを定義します。 contact_your_administrator: アカウントを削除したい場合は、管理者に連絡してください。 contact_this_mail_address: アカウントを削除したい場合は %{mail_address} にご連絡ください。 @@ -1764,6 +1764,8 @@ ja: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1791,6 +1793,10 @@ ja: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "設定ガイド" get_in_touch: "ご質問がありますか?ご連絡ください。" @@ -3158,6 +3164,13 @@ ja: setting_sys_api_enabled: "リポジトリ管理Webサービスを有効にする" setting_sys_api_description: "リポジトリ管理Webサービスは、リポジトリへのアクセスの統合およびユーザー認証を提供します。" setting_time_format: "時間" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "匿名ユーザ向けにアクセシビリティモードを有効" setting_user_format: "Users name format" setting_user_default_timezone: "ユーザーのデフォルトのタイム ゾーン" diff --git a/config/locales/crowdin/js-af.yml b/config/locales/crowdin/js-af.yml index 17415dc56e50..a1c089dd1e2f 100644 --- a/config/locales/crowdin/js-af.yml +++ b/config/locales/crowdin/js-af.yml @@ -356,10 +356,10 @@ af: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-ar.yml b/config/locales/crowdin/js-ar.yml index f286aedfea93..243250ace55a 100644 --- a/config/locales/crowdin/js-ar.yml +++ b/config/locales/crowdin/js-ar.yml @@ -356,10 +356,10 @@ ar: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-az.yml b/config/locales/crowdin/js-az.yml index 17848eb42891..8790cfc77c73 100644 --- a/config/locales/crowdin/js-az.yml +++ b/config/locales/crowdin/js-az.yml @@ -356,10 +356,10 @@ az: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-be.yml b/config/locales/crowdin/js-be.yml index a916e9f3dbb5..016019859b16 100644 --- a/config/locales/crowdin/js-be.yml +++ b/config/locales/crowdin/js-be.yml @@ -356,10 +356,10 @@ be: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-bg.yml b/config/locales/crowdin/js-bg.yml index 74b3c8389d8e..a696d17a003c 100644 --- a/config/locales/crowdin/js-bg.yml +++ b/config/locales/crowdin/js-bg.yml @@ -356,10 +356,10 @@ bg: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-ca.yml b/config/locales/crowdin/js-ca.yml index 5612eb22f2e4..fe52c2691626 100644 --- a/config/locales/crowdin/js-ca.yml +++ b/config/locales/crowdin/js-ca.yml @@ -102,7 +102,7 @@ ca: button_save: "Desa" button_settings: "Configuració" button_uncheck_all: "Desmarca-ho tot" - button_update: "Actualitza" + button_update: "Actualitzar" button_export-pdf: "Descarregar PDF" button_export-atom: "Descarregar Atom" button_create: "Crear" @@ -356,10 +356,10 @@ ca: learn_about: "Més informació sobre les noves funcions" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "S'ha produït un error en carregar les dades." @@ -757,7 +757,7 @@ ca: label: "Pausa els correu electrònic recordatori temporalment" first_day: "Primer dia" last_day: "Últim dia" - text_are_you_sure: "N'esteu segur?" + text_are_you_sure: "N'estas segur?" text_data_lost: "Totes les dades entrades es perdran." text_user_wrote: "%{value} va escriure:" types: diff --git a/config/locales/crowdin/js-ckb-IR.yml b/config/locales/crowdin/js-ckb-IR.yml index c69c1033f69b..25104fce3d8d 100644 --- a/config/locales/crowdin/js-ckb-IR.yml +++ b/config/locales/crowdin/js-ckb-IR.yml @@ -356,10 +356,10 @@ ckb-IR: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-cs.yml b/config/locales/crowdin/js-cs.yml index 74cb63004fdd..b172d84c104e 100644 --- a/config/locales/crowdin/js-cs.yml +++ b/config/locales/crowdin/js-cs.yml @@ -355,10 +355,10 @@ cs: learn_about: "Další informace o nových funkcích" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Přihlásit kalendář k odběru" inital_setup_error_message: "Při načítání dat došlo k chybě." diff --git a/config/locales/crowdin/js-da.yml b/config/locales/crowdin/js-da.yml index d8c5472757eb..50ca0ae8e354 100644 --- a/config/locales/crowdin/js-da.yml +++ b/config/locales/crowdin/js-da.yml @@ -355,10 +355,10 @@ da: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-de.yml b/config/locales/crowdin/js-de.yml index 6b8bcac91db1..ee724ee03687 100644 --- a/config/locales/crowdin/js-de.yml +++ b/config/locales/crowdin/js-de.yml @@ -355,10 +355,10 @@ de: learn_about: "Erfahren Sie mehr über die neuen Funktionen" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - Die Version enthält verschiedene neue Funktionen und Verbesserungen, wie z.B.:
+ Die Version bietet Ihnen verschiedene Funktionen und Verbesserungen, z.B.
ical_sharing_modal: title: "Kalender abonnieren" inital_setup_error_message: "Beim Abrufen der Daten ist ein Fehler aufgetreten." @@ -611,7 +611,7 @@ de: assigned: "Beauftragter" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Verantwortlich" created: "Erstellt" scheduled: "Geplant" commented: "Kommentiert" diff --git a/config/locales/crowdin/js-el.yml b/config/locales/crowdin/js-el.yml index 989cb024c41a..71604c66f855 100644 --- a/config/locales/crowdin/js-el.yml +++ b/config/locales/crowdin/js-el.yml @@ -355,10 +355,10 @@ el: learn_about: "Μάθετε περισσότερα για τις νέες λειτουργίες" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-eo.yml b/config/locales/crowdin/js-eo.yml index bca76a4d3ae6..df1cff822743 100644 --- a/config/locales/crowdin/js-eo.yml +++ b/config/locales/crowdin/js-eo.yml @@ -356,10 +356,10 @@ eo: learn_about: "Lerni pli pri la novaj plibonigoj" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-es.yml b/config/locales/crowdin/js-es.yml index 4c4f33d8b62f..6e301f7be396 100644 --- a/config/locales/crowdin/js-es.yml +++ b/config/locales/crowdin/js-es.yml @@ -356,10 +356,10 @@ es: learn_about: "Más información sobre las nuevas funciones" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - La versión contiene varias características nuevas y mejoras, como:
+ La versión trae varias características y mejoras para usted, por ejemplo
ical_sharing_modal: title: "Suscribirse al calendario" inital_setup_error_message: "Se ha producido un error al obtener los datos." @@ -612,7 +612,7 @@ es: assigned: "Asignado a" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Responsable" created: "Creado" scheduled: "Programado" commented: "Comentado" diff --git a/config/locales/crowdin/js-et.yml b/config/locales/crowdin/js-et.yml index 6f31f5d51f9b..15a28bb71f0b 100644 --- a/config/locales/crowdin/js-et.yml +++ b/config/locales/crowdin/js-et.yml @@ -356,10 +356,10 @@ et: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-eu.yml b/config/locales/crowdin/js-eu.yml index 9544f9cfae6e..d57e222184f3 100644 --- a/config/locales/crowdin/js-eu.yml +++ b/config/locales/crowdin/js-eu.yml @@ -356,10 +356,10 @@ eu: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-fa.yml b/config/locales/crowdin/js-fa.yml index 616923abbd32..aec69c37fcb9 100644 --- a/config/locales/crowdin/js-fa.yml +++ b/config/locales/crowdin/js-fa.yml @@ -356,10 +356,10 @@ fa: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-fi.yml b/config/locales/crowdin/js-fi.yml index 9ea591b0770a..60ef1c1a38f5 100644 --- a/config/locales/crowdin/js-fi.yml +++ b/config/locales/crowdin/js-fi.yml @@ -356,10 +356,10 @@ fi: learn_about: "Lisätietoja uusista ominaisuuksista" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-fil.yml b/config/locales/crowdin/js-fil.yml index 2eba24a4c8eb..825a1e298572 100644 --- a/config/locales/crowdin/js-fil.yml +++ b/config/locales/crowdin/js-fil.yml @@ -356,10 +356,10 @@ fil: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-fr.yml b/config/locales/crowdin/js-fr.yml index fbbfb38c23e9..4713b1edf71c 100644 --- a/config/locales/crowdin/js-fr.yml +++ b/config/locales/crowdin/js-fr.yml @@ -356,10 +356,10 @@ fr: learn_about: "En savoir plus sur les nouvelles fonctionnalités" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - Cette version contient plusieurs nouvelles fonctionnalités et améliorations, telles que
+ Cette version apporte diverses fonctionnalités et améliorations, p. ex.,
ical_sharing_modal: title: "S'abonner au calendrier" inital_setup_error_message: "Une erreur est survenue lors de la récupération des données." @@ -612,7 +612,7 @@ fr: assigned: "Personne assignée" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Responsable" created: "Créé" scheduled: "Planifié" commented: "Commenté" diff --git a/config/locales/crowdin/js-he.yml b/config/locales/crowdin/js-he.yml index eebdb4a09ec6..88bc7d26f3d5 100644 --- a/config/locales/crowdin/js-he.yml +++ b/config/locales/crowdin/js-he.yml @@ -356,10 +356,10 @@ he: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-hi.yml b/config/locales/crowdin/js-hi.yml index 57b880414403..4f437955400a 100644 --- a/config/locales/crowdin/js-hi.yml +++ b/config/locales/crowdin/js-hi.yml @@ -356,10 +356,10 @@ hi: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-hr.yml b/config/locales/crowdin/js-hr.yml index c881b735febb..cb21efe93028 100644 --- a/config/locales/crowdin/js-hr.yml +++ b/config/locales/crowdin/js-hr.yml @@ -356,10 +356,10 @@ hr: learn_about: "Saznaj više o novim značajkama" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-hu.yml b/config/locales/crowdin/js-hu.yml index 88801b892be6..553abd97a886 100644 --- a/config/locales/crowdin/js-hu.yml +++ b/config/locales/crowdin/js-hu.yml @@ -356,10 +356,10 @@ hu: learn_about: "Tudjon meg többet az új funkciókról" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-id.yml b/config/locales/crowdin/js-id.yml index 0fc26660369d..e91bce7d7c5d 100644 --- a/config/locales/crowdin/js-id.yml +++ b/config/locales/crowdin/js-id.yml @@ -102,7 +102,7 @@ id: button_save: "Simpan" button_settings: "Pengaturan" button_uncheck_all: "Uncek semua" - button_update: "Update" + button_update: "Perbarui" button_export-pdf: "Download PDF" button_export-atom: "Download Atom" button_create: "Buat baru" @@ -356,10 +356,10 @@ id: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-it.yml b/config/locales/crowdin/js-it.yml index ca1d4cac84a4..a93d84c1e76d 100644 --- a/config/locales/crowdin/js-it.yml +++ b/config/locales/crowdin/js-it.yml @@ -356,10 +356,10 @@ it: learn_about: "Scopri di più sulle nuove funzionalità" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - Questa versione include varie nuove funzionalità e miglioramenti, come:
+ Questa versione offre diverse funzionalità e miglioramenti, come:
ical_sharing_modal: title: "Iscriviti al calendario" inital_setup_error_message: "Si è verificato un errore recuperando i dati." @@ -612,7 +612,7 @@ it: assigned: "Assegnatario" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Responsabile" created: "Creato" scheduled: "Programmato" commented: "Commentato" diff --git a/config/locales/crowdin/js-ja.yml b/config/locales/crowdin/js-ja.yml index 3e352c3368d4..18719aa40dbf 100644 --- a/config/locales/crowdin/js-ja.yml +++ b/config/locales/crowdin/js-ja.yml @@ -357,10 +357,10 @@ ja: learn_about: "新機能の詳細はこちら" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-ka.yml b/config/locales/crowdin/js-ka.yml index c3b27619b196..55015b41d270 100644 --- a/config/locales/crowdin/js-ka.yml +++ b/config/locales/crowdin/js-ka.yml @@ -356,10 +356,10 @@ ka: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-kk.yml b/config/locales/crowdin/js-kk.yml index 4613b23aeb3c..b68e0f773d4c 100644 --- a/config/locales/crowdin/js-kk.yml +++ b/config/locales/crowdin/js-kk.yml @@ -356,10 +356,10 @@ kk: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-ko.yml b/config/locales/crowdin/js-ko.yml index b65917673268..5e4654ea1c14 100644 --- a/config/locales/crowdin/js-ko.yml +++ b/config/locales/crowdin/js-ko.yml @@ -356,10 +356,10 @@ ko: learn_about: "새로운 기능에 대해 자세히 알아보기" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - 이 릴리스에는 다음과 같은 다양한 새로운 기능과 개선 사항이 포함되어 있습니다:
+ 이 릴리스는 다음을 비롯한 다양한 기능과 개선 사항을 제공합니다.
ical_sharing_modal: title: "캘린더 구독" inital_setup_error_message: "데이터를 가져오는 중에 오류가 발생했습니다." @@ -612,7 +612,7 @@ ko: assigned: "담당자" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "담당" created: "생성됨" scheduled: "예약됨" commented: "코멘트 작성됨" diff --git a/config/locales/crowdin/js-lt.yml b/config/locales/crowdin/js-lt.yml index 1a9ae2418bdc..6a25f92bb219 100644 --- a/config/locales/crowdin/js-lt.yml +++ b/config/locales/crowdin/js-lt.yml @@ -356,10 +356,10 @@ lt: learn_about: "Sužinokite daugiau apie naujas galimybes" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Prenumeruoti kalendorių" inital_setup_error_message: "Gaunant duomenis įvyko klaida." diff --git a/config/locales/crowdin/js-lv.yml b/config/locales/crowdin/js-lv.yml index e046b3811912..947172bbf17b 100644 --- a/config/locales/crowdin/js-lv.yml +++ b/config/locales/crowdin/js-lv.yml @@ -356,10 +356,10 @@ lv: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-mn.yml b/config/locales/crowdin/js-mn.yml index 98a92c64c8a7..1b306ae6f84b 100644 --- a/config/locales/crowdin/js-mn.yml +++ b/config/locales/crowdin/js-mn.yml @@ -356,10 +356,10 @@ mn: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-ms.yml b/config/locales/crowdin/js-ms.yml index 9aa762a9fdbe..4cd7538fa584 100644 --- a/config/locales/crowdin/js-ms.yml +++ b/config/locales/crowdin/js-ms.yml @@ -356,10 +356,10 @@ ms: learn_about: "Ketahui lebih lanjut mengenai fitur-fitur baharu." #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Langgan kalendar" inital_setup_error_message: "Ralat berlaku ketika sedang mengambil data." diff --git a/config/locales/crowdin/js-ne.yml b/config/locales/crowdin/js-ne.yml index 32c7d93fd720..33cb08830f08 100644 --- a/config/locales/crowdin/js-ne.yml +++ b/config/locales/crowdin/js-ne.yml @@ -356,10 +356,10 @@ ne: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-nl.yml b/config/locales/crowdin/js-nl.yml index 3497091f9ea1..997ac14861f0 100644 --- a/config/locales/crowdin/js-nl.yml +++ b/config/locales/crowdin/js-nl.yml @@ -356,10 +356,10 @@ nl: learn_about: "Meer informatie over de nieuwe functies" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Abonneren op agenda" inital_setup_error_message: "Er is een fout opgetreden tijdens het ophalen van gegevens." diff --git a/config/locales/crowdin/js-no.yml b/config/locales/crowdin/js-no.yml index 83ebe795d946..baa66a6bf1de 100644 --- a/config/locales/crowdin/js-no.yml +++ b/config/locales/crowdin/js-no.yml @@ -102,7 +102,7 @@ button_save: "Lagre" button_settings: "Innstillinger" button_uncheck_all: "Avmerk alle" - button_update: "Oppdatèr" + button_update: "Oppdater" button_export-pdf: "Last ned PDF" button_export-atom: "Last ned Atom" button_create: "Opprett" @@ -356,10 +356,10 @@ learn_about: "Lær mer om de nye funksjonene" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Abonner på kalender" inital_setup_error_message: "En feil oppstod under henting av data." diff --git a/config/locales/crowdin/js-pl.yml b/config/locales/crowdin/js-pl.yml index 0b30914820b9..5ce93da5a2fa 100644 --- a/config/locales/crowdin/js-pl.yml +++ b/config/locales/crowdin/js-pl.yml @@ -356,10 +356,10 @@ pl: learn_about: "Dowiedz się więcej o nowych funkcjach" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - Wersja zawiera różne nowe funkcje i ulepszenia, takie jak:
+ Ta wersja wprowadza różne funkcje i ulepszenia m.in.
ical_sharing_modal: title: "Subskrybuj kalendarz" inital_setup_error_message: "Podczas pobierania danych wystąpił błąd." @@ -612,7 +612,7 @@ pl: assigned: "Przypisana osoba" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Osoba odpowiedzialna" created: "Utworzono" scheduled: "Zaplanowany" commented: "Skomentował" diff --git a/config/locales/crowdin/js-pt-BR.yml b/config/locales/crowdin/js-pt-BR.yml index fe507612b0eb..f2ccbe6c8f1e 100644 --- a/config/locales/crowdin/js-pt-BR.yml +++ b/config/locales/crowdin/js-pt-BR.yml @@ -355,10 +355,10 @@ pt-BR: learn_about: "Saiba mais sobre os novos recursos" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - A versão inclui várias novas funcionalidades e melhorias, como:
+ A nova versão traz diversas funcionalidades e melhorias para você, como:
ical_sharing_modal: title: "Assinar calendário" inital_setup_error_message: "Ocorreu um erro ao buscar dados." @@ -611,7 +611,7 @@ pt-BR: assigned: "Cessionário" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Responsável" created: "Criado" scheduled: "Planejado" commented: "Comentado" diff --git a/config/locales/crowdin/js-pt-PT.yml b/config/locales/crowdin/js-pt-PT.yml index e9fd50dfc13b..1ff770497a55 100644 --- a/config/locales/crowdin/js-pt-PT.yml +++ b/config/locales/crowdin/js-pt-PT.yml @@ -356,10 +356,10 @@ pt-PT: learn_about: "Saiba mais sobre os novos recursos" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - A versão contém várias funcionalidades novas e melhorias, tais como:
+ A versão traz várias funcionalidades e melhorias para si, por exemplo,
ical_sharing_modal: title: "Subscrever o calendário" inital_setup_error_message: "Ocorreu um erro ao recuperar os dados." @@ -612,7 +612,7 @@ pt-PT: assigned: "Pessoa atribuída" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Responsável" created: "Criado" scheduled: "Agendado" commented: "Comentado" diff --git a/config/locales/crowdin/js-ro.yml b/config/locales/crowdin/js-ro.yml index dc822aa7a0d9..0a75d12a715b 100644 --- a/config/locales/crowdin/js-ro.yml +++ b/config/locales/crowdin/js-ro.yml @@ -102,7 +102,7 @@ ro: button_save: "Salvează" button_settings: "Setări" button_uncheck_all: "Deselectează tot" - button_update: "Actualizare" + button_update: "Actualizează" button_export-pdf: "Descarcă PDF" button_export-atom: "Descarcă Atom" button_create: "Creează" @@ -355,10 +355,10 @@ ro: learn_about: "Aflați mai multe despre noile caracteristici" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." @@ -757,7 +757,7 @@ ro: label: "Întrerupeți temporar memento-urile zilnice prin e-mail" first_day: "Prima zi" last_day: "Ultima zi" - text_are_you_sure: "Sunteți sigur?" + text_are_you_sure: "Ești sigur?" text_data_lost: "Toate datele introduse vor fi pierdute." text_user_wrote: "%{value} a scris:" types: diff --git a/config/locales/crowdin/js-ru.yml b/config/locales/crowdin/js-ru.yml index 074cd0fdc2f1..2f9977f43d8f 100644 --- a/config/locales/crowdin/js-ru.yml +++ b/config/locales/crowdin/js-ru.yml @@ -102,7 +102,7 @@ ru: button_save: "Сохранить" button_settings: "Настройки" button_uncheck_all: "Снять все отметки" - button_update: "Обновление" + button_update: "Обновить" button_export-pdf: "Скачать PDF" button_export-atom: "Скачать Atom" button_create: "Создать" @@ -355,10 +355,10 @@ ru: learn_about: "Подробнее о новых функциях" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - Этот выпуск содержит различные новые функции и улучшения, такие как:
+ В этом выпуске представлены различные функции и улучшения, например,
ical_sharing_modal: title: "Подписаться на календарь" inital_setup_error_message: "Произошла ошибка при получении данных." @@ -416,7 +416,7 @@ ru: label_committed_at: "%{committed_revision_link} в %{date}" label_committed_link: "завершенная версия %{revision_identifier}" label_contains: "содержит" - label_created_on: "создано на" + label_created_on: "создано" label_edit_comment: "Редактировать этот комментарий" label_edit_status: "Изменить статус пакета работ" label_email: "Эл. почта" @@ -611,7 +611,7 @@ ru: assigned: "Назначенный" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Ответственный" created: "Создано" scheduled: "Запланировано" commented: "Прокомментировано" @@ -642,7 +642,7 @@ ru: with_current_filter: "На данный момент в этом представлении нет уведомлений" mark_all_read: "Отметить всё как прочитанное" mark_as_read: "Отметить как прочитанное" - text_update_date_by: "по %{date}" + text_update_date_by: "%{date}" total_count_warning: "Показаны %{newest_count} самые последние уведомления. Ещё %{more_count} не отображаются." empty_state: no_notification: "Похоже, вы все сделали." diff --git a/config/locales/crowdin/js-rw.yml b/config/locales/crowdin/js-rw.yml index 3e806685e7e7..a84dc400f9c8 100644 --- a/config/locales/crowdin/js-rw.yml +++ b/config/locales/crowdin/js-rw.yml @@ -356,10 +356,10 @@ rw: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-si.yml b/config/locales/crowdin/js-si.yml index 16fc779a85d9..952d3d1262ec 100644 --- a/config/locales/crowdin/js-si.yml +++ b/config/locales/crowdin/js-si.yml @@ -356,10 +356,10 @@ si: learn_about: "නව විශේෂාංග ගැන වැඩි විස්තර දැනගන්න" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-sk.yml b/config/locales/crowdin/js-sk.yml index 86fdec412c45..775336345351 100644 --- a/config/locales/crowdin/js-sk.yml +++ b/config/locales/crowdin/js-sk.yml @@ -356,10 +356,10 @@ sk: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-sl.yml b/config/locales/crowdin/js-sl.yml index f3a6f02d6669..da0457fc07ee 100644 --- a/config/locales/crowdin/js-sl.yml +++ b/config/locales/crowdin/js-sl.yml @@ -355,10 +355,10 @@ sl: learn_about: "Preberite več o novostih" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-sr.yml b/config/locales/crowdin/js-sr.yml index 21f3e40625a3..cb9781d57d80 100644 --- a/config/locales/crowdin/js-sr.yml +++ b/config/locales/crowdin/js-sr.yml @@ -356,10 +356,10 @@ sr: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-sv.yml b/config/locales/crowdin/js-sv.yml index 8f43b94ad8d1..04f1ec969988 100644 --- a/config/locales/crowdin/js-sv.yml +++ b/config/locales/crowdin/js-sv.yml @@ -355,10 +355,10 @@ sv: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-th.yml b/config/locales/crowdin/js-th.yml index 08adf84d9adb..c063f1c6ea0c 100644 --- a/config/locales/crowdin/js-th.yml +++ b/config/locales/crowdin/js-th.yml @@ -356,10 +356,10 @@ th: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-tr.yml b/config/locales/crowdin/js-tr.yml index b58250135a38..5e3f3f03e39e 100644 --- a/config/locales/crowdin/js-tr.yml +++ b/config/locales/crowdin/js-tr.yml @@ -355,10 +355,10 @@ tr: learn_about: "Yeni özellikler hakkında daha fazla bilgi edinin" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-uk.yml b/config/locales/crowdin/js-uk.yml index e5a297150b2c..2c1a5d69869f 100644 --- a/config/locales/crowdin/js-uk.yml +++ b/config/locales/crowdin/js-uk.yml @@ -356,10 +356,10 @@ uk: learn_about: "Дізнатися більше про нові функції" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - Випуск включає такі наведені нижче функції і поліпшення.
+ Цей випуск включає багато нових функцій і покращень.
ical_sharing_modal: title: "Підписатися на календар" inital_setup_error_message: "Під час отримання даних сталася помилка." @@ -612,7 +612,7 @@ uk: assigned: "Виконавець" #The enum value is named 'responsible' in the database and that is what is transported through the API #up to the frontend. - responsible: "Accountable" + responsible: "Відповідальний" created: "Створено" scheduled: "Заплановано" commented: "Прокоментовано" diff --git a/config/locales/crowdin/js-uz.yml b/config/locales/crowdin/js-uz.yml index fdc16f5b567c..11f791be3df5 100644 --- a/config/locales/crowdin/js-uz.yml +++ b/config/locales/crowdin/js-uz.yml @@ -356,10 +356,10 @@ uz: learn_about: "Learn more about the new features" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Subscribe to calendar" inital_setup_error_message: "An error occured while fetching data." diff --git a/config/locales/crowdin/js-vi.yml b/config/locales/crowdin/js-vi.yml index aca95c7c7078..a6d27b64513a 100644 --- a/config/locales/crowdin/js-vi.yml +++ b/config/locales/crowdin/js-vi.yml @@ -102,7 +102,7 @@ vi: button_save: "Lưu" button_settings: "Cài đặt" button_uncheck_all: "Bỏ chọn tất cả" - button_update: "Cập Nhật" + button_update: "Cập nhật" button_export-pdf: "Tải xuống PDF" button_export-atom: "Tải xuống Atom" button_create: "Tạo" @@ -356,10 +356,10 @@ vi: learn_about: "Tìm hiểu thêm về các tính năng mới" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - Bản phát hành bao gồm nhiều tính năng và cải tiến mới, chẳng hạn như:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: title: "Đăng ký lịch" inital_setup_error_message: "Đã xảy ra lỗi khi lấy dữ liệu." diff --git a/config/locales/crowdin/js-zh-CN.yml b/config/locales/crowdin/js-zh-CN.yml index 7f2706a281a6..8d0ec26b0257 100644 --- a/config/locales/crowdin/js-zh-CN.yml +++ b/config/locales/crowdin/js-zh-CN.yml @@ -355,10 +355,10 @@ zh-CN: learn_about: "详细了解新功能" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - 该版本包含各种新功能和改进,例如
+ 此版本为您带来了各种功能和改进,例如:
ical_sharing_modal: title: "订阅日历" inital_setup_error_message: "获取数据时发生错误。" diff --git a/config/locales/crowdin/js-zh-TW.yml b/config/locales/crowdin/js-zh-TW.yml index a11c370449dd..b6f7474f0495 100644 --- a/config/locales/crowdin/js-zh-TW.yml +++ b/config/locales/crowdin/js-zh-TW.yml @@ -354,10 +354,10 @@ zh-TW: learn_about: "瞭解更多新功能的資訊" #Include the version to invalidate outdated translations in other locales. #Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - 該版本包含多種新功能和改進,例如:
+ 該版本為您帶來了各種功能和改進,例如:
ical_sharing_modal: title: "訂閱日曆" inital_setup_error_message: "更新資料時發生錯誤" diff --git a/config/locales/crowdin/ka.yml b/config/locales/crowdin/ka.yml index 296ab5be5e6b..a98418531d0c 100644 --- a/config/locales/crowdin/ka.yml +++ b/config/locales/crowdin/ka.yml @@ -813,7 +813,7 @@ ka: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ ka: failure_message: Consent failed, cannot proceed. title: მომხმარებლის თანხმობა decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ ka: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ ka: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ ka: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "დრო" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/kk.yml b/config/locales/crowdin/kk.yml index 3559fc8ad592..3b42c387d1a1 100644 --- a/config/locales/crowdin/kk.yml +++ b/config/locales/crowdin/kk.yml @@ -813,7 +813,7 @@ kk: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ kk: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ kk: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ kk: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ kk: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/ko.yml b/config/locales/crowdin/ko.yml index c473cbcc6039..a70600103921 100644 --- a/config/locales/crowdin/ko.yml +++ b/config/locales/crowdin/ko.yml @@ -31,9 +31,9 @@ ko: custom_styles: color_theme: "컬러 테마" color_theme_custom: "(사용자 지정)" - tab_interface: "Interface" - tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_interface: "인터페이스" + tab_branding: "브랜딩" + tab_pdf_export_styles: "PDF 내보내기 스타일" colors: primary-button-color: "기본 버튼" accent-color: "강조 색" @@ -82,7 +82,7 @@ ko: contact: "당사에 데모 요청하기" enterprise_info_html: "- Enterprise 추가 기능입니다." upgrade_info: "활성화하고 팀에서 사용하려면 유료 플랜으로 업그레이드하세요." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Jemalloc 메모리 할당기 journal_aggregation: explanation: text: "사용자의 개별 작업(예: 작업 패키지를 두 번 업데이트)은 연령 차이가 지정된 기간 미만인 경우 단일 작업으로 집계됩니다. 애플리케이션 내에서 단일 작업으로 표시됩니다. 또한 이는 전송되는 이메일 수를 줄이는 동일한 시간만큼 알림을 지연시키고 %{webhook_link} 지연에도 영향을 미칩니다." @@ -116,7 +116,7 @@ ko: ldap_auth_sources: ldap_error: "LDAP 오류: %{error_message}" ldap_auth_failed: "LDAP 서버에서 인증할 수 없습니다." - sync_failed: "LDAP에서 동기화하지 못함: %{message}." + sync_failed: "LDAP에서 동기화하지 못했습니다: %{message}." back_to_index: "연결 목록으로 돌아가려면 여기를 클릭하세요." technical_warning_html: | 이 LDAP 양식을 사용하려면 LDAP / Active Directory 설정에 대한 기술 지식이 필요합니다. @@ -209,8 +209,8 @@ ko: admin: custom_field_projects: is_for_all_blank_slate: - heading: For all projects - description: This custom field is enabled in all projects since the "For all projects" option is checked. It cannot be deactivated for individual projects. + heading: 모든 프로젝트용 + description: '"모든 프로젝트용" 옵션이 선택되었으므로 모든 프로젝트에서 이 사용자 지정 필드가 활성화되었습니다. 개별 프로젝트에 대해 비활성화할 수 없습니다.' text_add_new_custom_field: > 프로젝트에 새 사용자 지정 필드를 추가하려면 먼저 해당 필드를 만들어야 합니다. 그래야 이 프로젝트에 해당 필드를 추가할 수 있습니다. is_enabled_globally: "는 세계적으로 사용 가능합니다." @@ -632,8 +632,8 @@ ko: uid: "고객 ID" secret: "클라이언트 비밀번호" owner: "소유자" - builtin: "Builtin" - enabled: "Active" + builtin: "기본 제공" + enabled: "활성" redirect_uri: "리디렉션 URI" client_credentials_user_id: "클라이언트 자격 증명 사용자 ID" scopes: "범위" @@ -805,7 +805,7 @@ ko: blank: "내용을 입력해주세요" blank_nested: "- '%{property}' 속성이 설정되어 있어야 합니다." cannot_delete_mapping: "- 필수입니다. 삭제할 수 없습니다." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "- 모든 프로젝트용므로 수정할 수 없습니다." cant_link_a_work_package_with_a_descendant: "작업 패키지는 하위 작업패키지들 중 하나에 연결 될 수 없습니다." circular_dependency: "이 연계는 순환 종속관계를 만듭니다." confirmation: "%{attribute} 속성에 부합하지 않습니다." @@ -882,7 +882,7 @@ ko: custom_fields_project: attributes: project_ids: - blank: "Please select a project." + blank: "프로젝트를 선택하세요." custom_actions: only_one_allowed: "(%{name}) 하나의 값만 허용됩니다." empty: "(%{name}) 값은 비워둘 수 없습니다." @@ -914,7 +914,7 @@ ko: blank: "- 필수입니다. 이름을 선택하세요." not_unique: "- 사용 중입니다. 다른 이름을 선택하세요." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "그 사이에 다른 사람이 미팅을 업데이트했기 때문에 저장할 수 없습니다. 페이지를 다시 로드하세요." notifications: at_least_one_channel: "알림을 보낼 채널을 하나 이상 지정해야 합니다." attributes: @@ -1396,8 +1396,8 @@ ko: failure_message: 동의에 실패했습니다. 계속할 수 없습니다. title: 사용자 동의 decline_warning_message: 동의를 거부하고 로그아웃했습니다. - user_has_consented: 지정된 시간에 사용자가 해당 구성 내용에 동의했습니다. - not_yet_consented: 사용자가 아직 동의하지 않았습니다. 다음에 로그인하면 동의를 요청할 것입니다. + user_has_consented: 사용자가 [구성된 동의 정보 텍스트](consent_settings)에 동의했습니다. + not_yet_consented: 사용자가 [구성된 동의 정보 텍스트](consent_settings)에 아직 동의하지 않았습니다. 다음에 로그인할 때 알림이 표시됩니다. contact_mail_instructions: 사용자가 데이터 변경 또는 제거 요청을 수행하기 위해 데이터 컨트롤러에게 연락할 수 있는 메일 주소를 정의합니다. contact_your_administrator: 계정을 삭제하려는 경우 관리자에 문의하세요. contact_this_mail_address: 계정을 삭제하려는 경우 %{mail_address}에 문의하세요. @@ -1612,7 +1612,7 @@ ko: error_menu_item_not_saved: 메뉴 항목을 저장할 수 없습니다. error_wiki_root_menu_item_conflict: > 결과 메뉴 항목에서 기존 메뉴 항목 "%{existing_caption}" (%{existing_identifier})과(와)의 충돌로 인해 "%{old_name}"을(를) "%{new_name}"(으)로 이름을 바꿀 수 없습니다. - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "외부 인증 중에 오류가 발생했습니다: %{message}" error_attribute_not_highlightable: "강조 표시되지 않는 특성: %{attributes}" events: changeset: "변경 집합 편집됨" @@ -1767,6 +1767,8 @@ ko: progress_mode_changed_to_status_based: "진행률 계산 업데이트됨" status_changed: "상태 '%{status_name}'" system_update: "OpenProject 시스템 업데이트:" + total_percent_complete_mode_changed_to_work_weighted_average: "이제 완료 % 합계 계산에는 작업별로 가중치가 적용됩니다." + total_percent_complete_mode_changed_to_simple_average: "이제 완료 % 합계 계산은 완료 % 값의 단순 평균만을 기반으로 합니다." cause_descriptions: work_package_predecessor_changed_times: 이전 %{link}에 대한 변경 사항 기준 work_package_parent_changed_times: 부모 %{link}에 대한 변경 사항 기준 @@ -1784,7 +1786,7 @@ ko: progress_mode_changed_to_status_based: 진행률 계산 모드가 상태 기반으로 설정되었습니다 status_excluded_from_totals_set_to_false_message: 이제 계층 합계에 포함됨 status_excluded_from_totals_set_to_true_message: 이제 계층 합계에서 제외됨 - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "완료 %가 %{old_value}%에서 %{new_value}%로 변경되었습니다" system_update: file_links_journal: > 지금부터 파일 링크(외부 저장소에 저장된 파일)와 관련된 활동이 활동 탭에 표시됩니다. 다음은 이미 존재하는 링크와 관련된 활동을 나타냅니다. @@ -1794,6 +1796,10 @@ ko: 진행률 계산은 자동으로 버전 업데이트에 따라 조정됩니다. totals_removed_from_childless_work_packages: >- 버전 업데이트를 통해 부모가 아닌 작업 패키지의 작업 및 진행률 합계가 자동으로 제거됩니다. 유지 관리 작업이므로 무시해도 됩니다. + total_percent_complete_mode_changed_to_work_weighted_average: >- + 작업이 없는 자식 작업 패키지는 무시됩니다. + total_percent_complete_mode_changed_to_simple_average: >- + 자식 작업 패키지의 작업 값은 무시됩니다. links: configuration_guide: "구성 가이드" get_in_touch: "질문이 있으신가요? 문의해 주세요." @@ -1893,8 +1899,8 @@ ko: label_additional_workflow_transitions_for_assignee: "사용자가 담당자일 때 허용되는 추가 전환" label_additional_workflow_transitions_for_author: "사용자가 작성자일 때 허용되는 추가 전환" label_administration: "관리" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "인터페이스 색상" + label_interface_colors_description: "이러한 색상은 애플리케이션의 모양을 제어합니다. 색상을 수정하면 테마가 자동으로 사용자 지정 테마로 변경되지만, 접근성 대비 최소값(WCAG 2.1)을 준수하는지 확인할 수 없습니다. " label_age: "기간" label_ago: "일 전" label_all: "모두" @@ -1927,7 +1933,7 @@ ko: label_attribute_expand_text: "'%{attribute}'의 전체 텍스트" label_authentication: "인증" label_authentication_settings: "인증 설정" - label_available_custom_fields_projects: "Available custom fields projects" + label_available_custom_fields_projects: "사용 가능한 사용자 지정 필드 프로젝트" label_available_global_roles: "사용 가능한 글로벌 역할" label_available_project_attributes: "사용 가능한 프로젝트 특성" label_available_project_forums: "사용 가능한 포럼" @@ -2000,7 +2006,7 @@ ko: label_copy_project: "프로젝트 복사" label_core_version: "코어 버전" label_core_build: "코어 빌드" - label_created_by: "Created by %{user}" + label_created_by: "작성자: %{user}" label_current_status: "현재 상태" label_current_version: "현재 버전" label_custom_field_add_no_type: "작업 패키지 유형에 이 필드 추가" @@ -2008,7 +2014,7 @@ ko: label_custom_field_plural: "사용자 정의 필드" label_custom_field_default_type: "빈 유형" label_custom_style: "디자인" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "테마를 사용하여 OpenProject의 모양을 선택하고, 앱에서 사용할 기본 색상 및 내보내기의 모양을 선택하세요." label_dashboard: "대시보드" label_database_version: "PostgreSQL 버전" label_date: "날짜" @@ -2130,8 +2136,8 @@ ko: label_share_project_list: "프로젝트 목록 공유" label_share_work_package: "작업 패키지 공유" label_show_all_registered_users: "등록된 사용자 모두 표시" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "간단히 표시" + label_show_more: "자세히 표시" label_journal: "기록일지" label_journal_diff: "설명 비교" label_language: "언어" @@ -2281,7 +2287,7 @@ ko: label_product_version: "제품 버전" label_profile: "프로필" label_percent_complete: "완료 %" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "진행률 추적" label_project: "프로젝트" label_project_activity: "프로젝트 활동" label_project_attribute_plural: "프로젝트 특성" @@ -3100,13 +3106,13 @@ ko: setting_hours_per_day_explanation: >- 일 및 시간으로 기간을 표시할 때 "하루"로 간주되는 시간을 정의합니다(예: 하루가 8시간이면 32시간은 4일이 됩니다). setting_invitation_expiration_days: "활성화 이메일 만료 기간:" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "진행률 계산 모드" setting_work_package_done_ratio_field: "작업 기반" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + 완료 %는 원하는 값으로 자유롭게 설정할 수 있습니다. 선택적으로 작업에 대한 값을 입력하면 남은 작업이 자동으로 나옵니다. setting_work_package_done_ratio_status: "상태 기반" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + 각 상태에는 완료 % 값이 연관되어 있습니다. 상태를 변경하면 완료 %가 변경됩니다. setting_work_package_done_ratio_explanation_html: > 작업 기반 모드에서 완료 %는 어떤 값으로든 자유롭게 설정할 수 있습니다. 선택적으로 작업에 대한 값을 입력하면 남은 작업이 자동으로 파생됩니다. 상태 기반 모드에서는 각 상태에 완료 % 값이 연결되어 있습니다. 상태를 변경하면 완료 %도 변경됩니다. setting_work_package_properties: "작업 패키지 속성" @@ -3127,13 +3133,13 @@ ko: setting_password_min_length: "최소 길이" setting_password_min_adhered_rules: "최소 필수 클래스 수" setting_per_page_options: "페이지당 개체 옵션" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "상태가 닫힘인 경우 완료 %" + setting_percent_complete_on_status_closed_no_change: "변경 없음" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + 완료 % 값은 작업 패키지가 닫혀도 변경되지 않습니다. + setting_percent_complete_on_status_closed_set_100p: "100%로 자동 설정" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + 닫힌 작업 패키지는 완료로 간주됩니다. setting_plain_text_mail: "일반 텍스트 메일(HTML 없음)" setting_protocol: "프로토콜" setting_project_gantt_query: "프로젝트 포트폴리오 Gantt 보기" @@ -3158,6 +3164,13 @@ ko: setting_sys_api_enabled: "리포지토리 관리 웹 서비스 사용" setting_sys_api_description: "리포지토리 관리 웹 서비스는 리포지토리에 액세스하기 위한 통합 및 사용자 인증을 제공합니다." setting_time_format: "시간" + setting_total_percent_complete_mode: "완료 % 계층 합계 계산" + setting_total_percent_complete_mode_work_weighted_average: "작업별 가중치 적용됨" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + 총 완료 %는 계층에 있는 각 작업 패키지의 작업에 따라 가중치가 적용됩니다. 작업이 없는 작업 패키지는 무시됩니다. + setting_total_percent_complete_mode_simple_average: "단순 평균" + setting_total_percent_complete_mode_simple_average_caption_html: >- + 작업은 무시되며 총 완료 %는 계층에 있는 작업 패키지의 완료 % 값에 대한 단순 평균이 됩니다. setting_accessibility_mode_for_anonymous: "익명 사용자에 대해 접근성 모드 사용" setting_user_format: "사용자 이름 형식" setting_user_default_timezone: "사용자의 기본 표준 시간대" @@ -3706,16 +3719,16 @@ ko: close_warning: "이 경고를 무시하십시오." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: 기본 제공 인스턴스 애플리케이션 + confidential: 기밀 singular: "OAuth 애플리케이션" plural: "OAuth 애플리케이션" named: "OAuth 애플리케이션 '%{name}'" new: "새로운 OAuth 애플리케이션" - non_confidential: Non confidential + non_confidential: 기밀 아님 default_scopes: "(기본 범위)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "이 애플리케이션을 활성화하여 사용자가 이 애플리케이션으로 권한 부여를 수행할 수 있도록 합니다." name: "애플리케이션 이름입니다. 권한 부여 시 다른 사용자에게 표시됩니다." redirect_uri_html: > 허용된 URL 인증 사용자로 리디렉션될 수 있습니다. 라인별로 하나의 항목이 있습니다.
데스크톱 애플리케이션을 등록하려면 다음 URL을 사용하세요. @@ -3725,9 +3738,9 @@ ko: register_intro: "OpenProject용 OAuth API 클라이언트 애플리케이션을 개발할 경우 이 양식을 사용하여 모든 사용자가 사용할 수 있도록 등록할 수 있습니다." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: 기본 제공 OAuth 애플리케이션 + other_applications: 기타 OAuth 애플리케이션 + empty_application_lists: 등록된 OAuth 애플리케이션이 없습니다. client_id: "고객 ID" client_secret_notice: > 클라이언트 비밀번호를 인쇄할 수 있는 유일한 순간입니다. 이 비밀번호를 기록하고 안전하게 보관하십시오. 이 비밀번호는 암호로 취급해야 하며 나중에 OpenProject로 검색할 수 없습니다. diff --git a/config/locales/crowdin/lt.yml b/config/locales/crowdin/lt.yml index e9d5a2a7578e..3362a0ee71fd 100644 --- a/config/locales/crowdin/lt.yml +++ b/config/locales/crowdin/lt.yml @@ -824,7 +824,7 @@ lt: blank: "negali būti tuščia." blank_nested: "reikalauja, kad savybė '%{property}' būtų nustatyta." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Darbų paketas negali būti susietas su viena iš savo vidinių užduočių." circular_dependency: "Šis ryšys sukurtų ciklinę priklausomybę." confirmation: "nesutampa su %{attribute}." @@ -1445,8 +1445,8 @@ lt: failure_message: Sutikimas negautas. Tęsti negalima. title: Naudotojo sutikimas decline_warning_message: Jūs nesutikote su sąlygomis, todėl buvote atjungtas nuo sistemos. - user_has_consented: Naudotojas sutiko su jūsų sukonfigūruotu teiginiu nurodytu metu. - not_yet_consented: Naudotojas dar nesutiko, jo bus paklausta kito prisijungimo metu. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Nurodyti pašto adresą, kuriuo naudotojai gali pasiekti duomenų valdytoją, kad prašytų duomenų pakeitimo ar pašalinimo. contact_your_administrator: Prašome susisiekti su jūsų administratoriumi, jei norite, kad jūsų paskyra būtų ištrinta. contact_this_mail_address: Prašome rašyti adresu %{mail_address}, jei norite, kad jūsų paskyra būtų ištrinta. @@ -1870,6 +1870,8 @@ lt: progress_mode_changed_to_status_based: "Eigos skaičiavimas atnaujintas" status_changed: "Status '%{status_name}'" system_update: "OpenProject sistemos atnaujinimas" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: dėl pirmtako pakeitimų %{link} work_package_parent_changed_times: dėl tėvo pakeitimų %{link} @@ -1897,6 +1899,10 @@ lt: Eigos skaičiavimas automatiškai pakeistas su versijos atnaujinimu. totals_removed_from_childless_work_packages: >- Darbo ir eigos sumos automatiškai išimtos ne tėviniams darbų paketams atnaujinant versiją. Tai palaikymo užduotis ir ją galima saugiai ignoruoti. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Konfigūravimo vadovas" get_in_touch: "Turite klausimų? Susisiekite su mumis." @@ -3266,6 +3272,13 @@ lt: setting_sys_api_enabled: "Įgalinti repozitorijos valdymo web tarnybą" setting_sys_api_description: "Repozitorijos valdymo web tarnyba teikia integraciją ir vartotojų autorizaciją bandant pasiekti repozitorijas." setting_time_format: "Laikas" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Leisti lengvos prieigos režimą anoniminiams vartotojams" setting_user_format: "Naudotojų vardo formatas" setting_user_default_timezone: "Numatytoji vartotojo laiko juosta" diff --git a/config/locales/crowdin/lv.yml b/config/locales/crowdin/lv.yml index 3198b093c469..f41d8a095150 100644 --- a/config/locales/crowdin/lv.yml +++ b/config/locales/crowdin/lv.yml @@ -820,7 +820,7 @@ lv: blank: "nevar būt tukšs." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Darbu kompleksu nevar saistīt vienu no tā apakšuzdevumiem." circular_dependency: "Šī attiecība radītu riņķveida saistību." confirmation: "neatbilst %{attribute}." @@ -1431,8 +1431,8 @@ lv: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1838,6 +1838,8 @@ lv: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1865,6 +1867,10 @@ lv: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3236,6 +3242,13 @@ lv: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Laiks" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/mn.yml b/config/locales/crowdin/mn.yml index ffda64cb600a..0804a534e8b6 100644 --- a/config/locales/crowdin/mn.yml +++ b/config/locales/crowdin/mn.yml @@ -813,7 +813,7 @@ mn: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ mn: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ mn: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ mn: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ mn: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/ms.yml b/config/locales/crowdin/ms.yml index a173ca0cc42c..b850b091a97b 100644 --- a/config/locales/crowdin/ms.yml +++ b/config/locales/crowdin/ms.yml @@ -804,7 +804,7 @@ ms: blank: "tidak boleh dibiarkan kosong." blank_nested: "perlu ada ciri-ciri '%{property}' yang ditetapkan." cannot_delete_mapping: "diperlukan. Tidak boleh dipadam." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Pakej kerja tidak boleh dipautkan ke salah satu subtugasnya." circular_dependency: "Hubungan ini akan mencipta kebergantungan bulat." confirmation: "tidak sepadan dengan %{attribute}." @@ -1395,8 +1395,8 @@ ms: failure_message: Persetujuan gagal, tidak boleh teruskan. title: Persetujuan Pengguna decline_warning_message: Anda telah menolak untuk memberi persetujuan dan telah dilog keluar. - user_has_consented: Pengguna telah bersetuju dengan kenyataan yang telah dikonfigurasi anda pada masa yang diberikan. - not_yet_consented: Pengguna masih belum memberi persetujuan, ia akan diminta pada log masuk seterusnya. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Tentukan alamat e-mel yang boleh dihubungi oleh pengguna untuk membuat permintaan perubahan atau pemindahan data kepada pengawal data. contact_your_administrator: Sila hubungi pentadbir anda jika anda mahu akaun anda dipadamkan. contact_this_mail_address: Sila hubungi %{mail_address} jika anda mahu akaun anda dipadamkan. @@ -1766,6 +1766,8 @@ ms: progress_mode_changed_to_status_based: "Pengiraan perkembangan dikemas kini" status_changed: "Status '%{status_name}'" system_update: "Kemas kini sistem OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: dengan perubahan pada pendahulu %{link} work_package_parent_changed_times: dengan perubahan pada induk %{link} @@ -1793,6 +1795,10 @@ ms: Perkembangan pengiraan diselaraskan dengan versi kemas kini. totals_removed_from_childless_work_packages: >- Jumlah kerja dan perkembangan dipadam untuk pakej kerja bukan induk secara automatik dengan versi kemas kini. Ini ialah tugasan penyelenggaraan dan boleh diabaikan dengan selamat. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Panduan konfigurasi" get_in_touch: "Anda mempunyai soalan? Sila hubungi kami." @@ -3158,6 +3164,13 @@ ms: setting_sys_api_enabled: "Mengaktifkan pengurusan repositori perkhidmatan web" setting_sys_api_description: "Perkhidmatan web pengurusan repositori menyediakan integrasi dan kebenaran pengguna untuk mengakses repositori." setting_time_format: "Masa" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Mengaktifkan mod kebolehcapaian untuk pengguna anonim" setting_user_format: "Format nama pengguna" setting_user_default_timezone: "Zon masa default pengguna" diff --git a/config/locales/crowdin/ne.yml b/config/locales/crowdin/ne.yml index 004e1174b2b5..366a785ecd3c 100644 --- a/config/locales/crowdin/ne.yml +++ b/config/locales/crowdin/ne.yml @@ -813,7 +813,7 @@ ne: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ ne: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ ne: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ ne: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ ne: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/nl.yml b/config/locales/crowdin/nl.yml index 92207c12813b..0914895a0ec8 100644 --- a/config/locales/crowdin/nl.yml +++ b/config/locales/crowdin/nl.yml @@ -810,7 +810,7 @@ nl: blank: "mag niet leeg zijn." blank_nested: "moet de eigenschap '%{property}' ingesteld hebben." cannot_delete_mapping: "is vereist. Kan niet worden verwijderd." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Een werkpakket kan niet worden gekoppeld aan een van de bijbehorende subtaken." circular_dependency: "Deze relatie zou een circulaire afhankelijkheid creëren." confirmation: "komt niet overeen met %{attribute}." @@ -1411,8 +1411,8 @@ nl: failure_message: Toestemming mislukt, kan niet doorgaan. title: Gebruikers toestemming decline_warning_message: U heeft de toestemming geweigerd en bent uitgelogd. - user_has_consented: Gebruiker heeft ingestemd met de geconfigureerde instructie op het gegeven moment. - not_yet_consented: Gebruiker nog niet heeft toegestemd en zal worden herinnert bij de volgende login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Definieer het mail-adres waar gebruikers een gegevensbeheerder op kunnen bereiken voor verzoeken om gegevens te wijzigen of te verwijderen. contact_your_administrator: Neem contact op met uw beheerder als u wilt dat uw account wordt verwijderd. contact_this_mail_address: Neem contact op met %{mail_address} als u wilt dat uw account wordt verwijderd. @@ -1800,6 +1800,8 @@ nl: progress_mode_changed_to_status_based: "Voortgangsberekening bijgewerkt" status_changed: "Status '%{status_name}'" system_update: "OpenProject systeemupdate:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1827,6 +1829,10 @@ nl: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuratiegids" get_in_touch: "Heb je vragen? Neem contact met ons op." @@ -3195,6 +3201,13 @@ nl: setting_sys_api_enabled: "Repository beheer web-service inschakelen" setting_sys_api_description: "De repository beheer web-service biedt integratie en autorisatie van gebruikers voor toegang tot de archieven." setting_time_format: "Tijd" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Toegankelijkheid modus voor anonieme gebruikers inschakelen" setting_user_format: "Users name format" setting_user_default_timezone: "Standaardtijdzone voor gebruikers" diff --git a/config/locales/crowdin/no.yml b/config/locales/crowdin/no.yml index 358c1571fd5d..544ccc5608b8 100644 --- a/config/locales/crowdin/no.yml +++ b/config/locales/crowdin/no.yml @@ -812,7 +812,7 @@ blank: "kan ikke være blank." blank_nested: "må ha egenskapen '%{property}' aktivert." cannot_delete_mapping: "er påkrevd. Kan ikke slettes." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "En arbeidspakke kan ikke knyttes til en av sine deloppgaver." circular_dependency: "En slik relasjon ville lage en sirkulær avhengighet." confirmation: "samsvarer ikke med %{attribute}." @@ -1413,8 +1413,8 @@ failure_message: Samtykke mislyktes, kan ikke fortsette. title: Samtykke fra bruker decline_warning_message: Du har avvist å samtykke og har blitt logget ut. - user_has_consented: Brukeren har på det gitte tidspunktet samtykket til ditt foreslåtte utsagn. - not_yet_consented: Brukeren har ikke samtykket enda, men vil bli bedt om det ved neste innlogging. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Angi e-postadressen som brukerne kan nå en datakontrollør for å utføre data-endring eller fjerne forespørsler. contact_your_administrator: Vennligst kontakt systemansvarlig dersom du ønsker å slette kontoen din. contact_this_mail_address: Vennligst kontakt %{mail_address} hvis du ønsker å slette kontoen din. @@ -1802,6 +1802,8 @@ progress_mode_changed_to_status_based: "Fremdriftsberegning oppdatert" status_changed: "Status '%{status_name}'" system_update: "OpenProject system oppdatering:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: etter endringer i forgjenger %{link} work_package_parent_changed_times: etter endringer til overordnet %{link} @@ -1829,6 +1831,10 @@ Fremdriftsberegning automatisk justert med versjon. totals_removed_from_childless_work_packages: >- Arbeids- og fremdriftssummer fjernet automatisk for ikke-overordnede arbeidspakker med -versjon. Dette er en vedlikeholdsoppgave og kan trygt ignoreres. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Konfigurasjonsveiviser" get_in_touch: "Har du spørsmål? Ta kontakt med oss." @@ -3198,6 +3204,13 @@ setting_sys_api_enabled: "Aktiver web-tjeneste for pakkebrønn" setting_sys_api_description: "Pakkebrønn web-tjenesten sørger for integrasjon og bruker autentisering for tilgang til pakkebrønner." setting_time_format: "Tidspunkt" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Aktiver tilgjengelighetsmodus for anonyme brukere" setting_user_format: "Brukernavn format" setting_user_default_timezone: "Standard tidssone for brukere" diff --git a/config/locales/crowdin/pl.yml b/config/locales/crowdin/pl.yml index dbe2f7f2dd49..7a83e89afe99 100644 --- a/config/locales/crowdin/pl.yml +++ b/config/locales/crowdin/pl.yml @@ -31,9 +31,9 @@ pl: custom_styles: color_theme: "Kolor motywu" color_theme_custom: "(Niestandardowe)" - tab_interface: "Interface" + tab_interface: "Interfejs" tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_pdf_export_styles: "Style eksportu PDF" colors: primary-button-color: "Przycisk główny" accent-color: "Akcent" @@ -82,7 +82,7 @@ pl: contact: "Skontaktuj się z nami, aby uzyskać demo" enterprise_info_html: "jest dodatkiem wersji Enterprise ." upgrade_info: "Aby ją aktywować i zacząć korzystać z niej w zespole, przejdź na plan płatny." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Alokator pamięci Jemalloc journal_aggregation: explanation: text: "Indywidualne działania użytkownika (np. dwukrotna aktualizacja pakietu roboczego) są agregowane w jedno działanie, jeśli różnica czasowa między nimi jest mniejsza niż określony przedział czasowy. Będą one wyświetlane jako jedno działanie w aplikacji. Spowoduje to również opóźnienie powiadomień o tę samą ilość czasu, zmniejszając liczbę wysyłanych wiadomości e-mail i wpłynie też na opóźnienie %{webhook_link}." @@ -206,8 +206,8 @@ pl: admin: custom_field_projects: is_for_all_blank_slate: - heading: For all projects - description: This custom field is enabled in all projects since the "For all projects" option is checked. It cannot be deactivated for individual projects. + heading: Dla wszystkich projektów + description: To pole niestandardowe jest włączone we wszystkich projektach, ponieważ jest zaznaczona opcja „Dla wszystkich projektów”. Nie można go wyłączyć dla poszczególnych projektów. text_add_new_custom_field: > Aby dodać do projektu nowe pola niestandardowe, najpierw należy je utworzyć. is_enabled_globally: "Jest włączony globalnie" @@ -651,8 +651,8 @@ pl: uid: "Numer klienta" secret: "Hasło klienta" owner: "Właściciel" - builtin: "Builtin" - enabled: "Active" + builtin: "Wbudowany" + enabled: "Aktywny" redirect_uri: "Identyfikator URI przekerowania" client_credentials_user_id: "Identyfikator użytkownika poświadczeń klienta" scopes: "Zakresy" @@ -824,13 +824,13 @@ pl: blank: "nie może być puste." blank_nested: "musi mieć ustawioną właściwość '%{property}'." cannot_delete_mapping: "jest wymagane. Nie można usunąć." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Zestaw zadań nie może być powiązany z jego podzadaniami." circular_dependency: "Ta relacja może wytworzyć zależność cykliczną." confirmation: "nie pasuje do %{attribute}." could_not_be_copied: "Nie można było (w pełni) skopiować %{dependency}." does_not_exist: "nie istnieje." - error_enterprise_only: "%{action} jest dostępna tylko w OpenProject Enterprise edition" + error_enterprise_only: "%{action} jest dostępna tylko w OpenProject Enterprise Edition" error_unauthorized: "— nie można uzyskac dostępu." error_readonly: "— podjęto próbę zapisu, ale nie jest zapisywalny." error_conflict: "Information has been updated by at least one other user in the meantime." @@ -901,7 +901,7 @@ pl: custom_fields_project: attributes: project_ids: - blank: "Please select a project." + blank: "Wybierz projekt." custom_actions: only_one_allowed: "(%{name}) – dozwolona jest tylko jedna wartość." empty: "(%{name}) – wartość nie może być pusta." @@ -933,7 +933,7 @@ pl: blank: "jest obowiązkowy. Wybierz nazwę." not_unique: "jest już w użyciu. Wybierz inną nazwę." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Nie można zapisać, ponieważ w tym czasie spotkanie zostało zaktualizowane przez inną osobę. Odśwież stronę." notifications: at_least_one_channel: "Należy określić co najmniej jeden kanał dla wysyłania powiadomień." attributes: @@ -1445,8 +1445,8 @@ pl: failure_message: Zgoda nie powiodła się, nie można kontynuować. title: Zgoda użytkownika decline_warning_message: Odrzuciłeś zgodę i wylogowano Cię. - user_has_consented: Użytkownik wyraził zgodę na twoje skonfigurowane oświadczenie w określonym czasie. - not_yet_consented: Użytkownik nie wyraził zgody, zostanie o to poproszony przy następnym logowaniu. + user_has_consented: Użytkownik wyraził zgodę na Twój [skonfigurowany tekst informacji o zgodzie](consent_settings). + not_yet_consented: Użytkownik nie wyraził jeszcze zgody na Twój [skonfigurowany tekst informacji o zgodzie](consent_settings). Otrzyma przypomnienie podczas kolejnego logowania. contact_mail_instructions: Zdefiniuj adres e-mail, na który użytkownicy mogą skontaktować się z administratorem danych w celu wykonania żądań zmiany lub usunięcia danych. contact_your_administrator: Jeśli chcesz usunąć swoje konto, skontaktuj się z administratorem. contact_this_mail_address: Jeśli chcesz usunąć swoje konto, skontaktuj się z %{mail_address}. @@ -1715,7 +1715,7 @@ pl: error_menu_item_not_saved: Nie można zapisać elementu menu error_wiki_root_menu_item_conflict: > Nie można zmienić nazwy "%{old_name}" na "%{new_name}", ze względu na konflikt w istniejącym elemencie menu "%{existing_caption}" (%{existing_identifier}). - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Podczas uwierzytelniania zewnętrznego wystąpił błąd: %{message}" error_attribute_not_highlightable: "Atrybuty, których nie można wyróżnić: %{attributes}" events: changeset: "Komentarze edytowane" @@ -1870,6 +1870,8 @@ pl: progress_mode_changed_to_status_based: "Zaktualizowano obliczenie postępu" status_changed: "Status „%{status_name}”" system_update: "Aktualizacja systemu OpenProjekt:" + total_percent_complete_mode_changed_to_work_weighted_average: "Obliczanie % Ukończenia jest teraz ważone parametrem Praca." + total_percent_complete_mode_changed_to_simple_average: "Obliczanie % Ukończenia opiera się teraz na średniej arytmetycznej % Ukończenia." cause_descriptions: work_package_predecessor_changed_times: przez zmiany poprzednika %{link} work_package_parent_changed_times: przez zmiany elementu nadrzędnego %{link} @@ -1887,7 +1889,7 @@ pl: progress_mode_changed_to_status_based: Tryb obliczania postępu ustawiono na oparty na statusie status_excluded_from_totals_set_to_false_message: teraz uwzględniono w sumach hierarchii status_excluded_from_totals_set_to_true_message: teraz wyłączono z sum hierarchii - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% Ukończenia zmienił się z %{old_value}% na %{new_value}%" system_update: file_links_journal: > Od teraz aktywność związana z linkami do plików (plików przechowywanych w magazynach zewnętrznych) będzie wyświetlana na karcie Aktywność. Poniżej przedstawiono aktywność dotyczącą linków, które już istniały: @@ -1897,6 +1899,10 @@ pl: Obliczanie postępu jest automatycznie dostosowywane wraz z aktualizacją wersji. totals_removed_from_childless_work_packages: >- Sumy pracy i postępu są automatycznie usuwane dla pakietów pracy innych niż nadrzędne wraz z aktualizacją wersji. Jest to zadanie konserwacyjne i można je bezpiecznie zignorować. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Podrzędne pakiety robocze bez parametru Praca są ignorowane. + total_percent_complete_mode_changed_to_simple_average: >- + Wartości parametru Praca podrzędnych pakietów roboczych są ignorowane. links: configuration_guide: "Przewodnik po konfiguracji" get_in_touch: "Masz pytania? Skontaktuj się z nami." @@ -1996,8 +2002,8 @@ pl: label_additional_workflow_transitions_for_assignee: "Dodatkowe przejścia dozwolone, gdy użytkownik jest cesjonariuszem" label_additional_workflow_transitions_for_author: "Dodatkowe przejścia dozwolone, gdy użytkownik jest autorem" label_administration: "Administracja" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Kolory interfejsu" + label_interface_colors_description: "Te kolory definiują wygląd aplikacji. Jeśli je zmodyfikujesz, motyw zostanie automatycznie zmieniony na niestandardowy, ale nie możemy zapewnić zgodności z minimalnymi wymaganiami w kwestii kontrastu (WCAG 2)." label_age: "Wiek" label_ago: "dni temu" label_all: "wszystkie" @@ -2030,7 +2036,7 @@ pl: label_attribute_expand_text: "Pełny tekst atrybutu „%{attribute}”" label_authentication: "Uwierzytelnianie" label_authentication_settings: "Ustawienia uwierzytelniania" - label_available_custom_fields_projects: "Available custom fields projects" + label_available_custom_fields_projects: "Dostępne niestandardowe projekty pól" label_available_global_roles: "Dostępne role globalne" label_available_project_attributes: "Dostępne atrybuty projektu" label_available_project_forums: "Dostępne fora" @@ -2103,7 +2109,7 @@ pl: label_copy_project: "Kopiuj projekt" label_core_version: "Wersja bazowa" label_core_build: "Kompilacja bazowa" - label_created_by: "Created by %{user}" + label_created_by: "Autor: %{user}" label_current_status: "Aktualny stan" label_current_version: "Aktualna wersja" label_custom_field_add_no_type: "Dodaj to pole do typu zadania" @@ -2111,7 +2117,7 @@ pl: label_custom_field_plural: "Pola niestandardowe" label_custom_field_default_type: "Typ pusty" label_custom_style: "Kompozycja" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Skonfiguruj wygląd OpenProject za pomocą motywów, wybierz domyślne kolory do wykorzystania w aplikacji i zaprojektuj wygląd eksportu produktów." label_dashboard: "Pulpit nawigacyjny" label_database_version: "Wersja PostgreSQL" label_date: "Data" @@ -2233,8 +2239,8 @@ pl: label_share_project_list: "Udostępnij listę projektów" label_share_work_package: "Udostępnij pakiet roboczy" label_show_all_registered_users: "Pokaż wszystkich zarejestrowanych użytkowników" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Pokaż mniej" + label_show_more: "Pokaż więcej" label_journal: "Dziennik" label_journal_diff: "Opis porównania" label_language: "Język" @@ -2384,7 +2390,7 @@ pl: label_product_version: "Wersja produktu" label_profile: "Profil" label_percent_complete: "% ukończenia" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "Śledzenie postępów" label_project: "Projekt" label_project_activity: "Aktywność projektu" label_project_attribute_plural: "Cechy projektu" @@ -3209,13 +3215,13 @@ pl: setting_hours_per_day_explanation: >- To definiuje, co jest uważane za „dzień” podczas wyświetlania czasu trwania w dniach i godzinach (na przykład, jeśli dzień ma 8 godzin, 32 godziny będą 4 dniami). setting_invitation_expiration_days: "Ważność aktywacyjnej waidomości e-mail wygasa po" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "Tryb obliczania postępów" setting_work_package_done_ratio_field: "Oparte na pracy" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + % Ukończenia można ustawić na dowolną wartość. Jeśli opcjonalnie wprowadzisz wartość dla parametru Praca, automatycznie zostanie wyprowadzona wartość dla parametru Pozostała praca. setting_work_package_done_ratio_status: "Oparte na statusie" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + Każdy status ma powiązaną wartość parametru % Ukończenia. Zmiana statusu zmieni % Ukończenia. setting_work_package_done_ratio_explanation_html: > W trybie opartym na pracy % ukończenia można swobodnie ustawić na dowolną wartość. Jeśli opcjonalnie wprowadzisz wartość Praca, Pozostała praca zostanie wyprowadzona automatycznie. W trybie opartym na statusie każdy status ma powiązaną wartość % ukończenia. Zmiana statusu spowoduje zmianę wartości % ukończenia. setting_work_package_properties: "Właściwości pakietu roboczego" @@ -3236,13 +3242,13 @@ pl: setting_password_min_length: "Minimalna długość" setting_password_min_adhered_rules: "Minimalna liczba wymaganych klas" setting_per_page_options: "Obiektów na stronie" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% Ukończenia, gdy status jest zamknięty" + setting_percent_complete_on_status_closed_no_change: "Bez zmian" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + Wartość % Ukończenia nie zmieni się nawet, gdy pakiet roboczy jest zamknięty. + setting_percent_complete_on_status_closed_set_100p: "Automatycznie ustaw na 100%" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Zamknięty pakiet roboczy jest uważany za ukończony. setting_plain_text_mail: "Poczta czystym tekstem (bez HTML)" setting_protocol: "Protokół" setting_project_gantt_query: "Widok wykresu Gantta portfolio projektu" @@ -3267,6 +3273,13 @@ pl: setting_sys_api_enabled: "Uaktywnij zarządzanie repozytoriami przez www" setting_sys_api_description: "Zarządzanie repozytoriami przez www umożliwia integrację i autoryzację użytkowników do dostępu do repozytoriów." setting_time_format: "Czas" + setting_total_percent_complete_mode: "Obliczenie % Ukończenia pełnej hierarchii" + setting_total_percent_complete_mode_work_weighted_average: "Ważone według pracy" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + Całkowity % Ukończenia będzie ważony względem parametru Praca każdego pakietu roboczego w hierarchii. Zadania bez parametru Praca zostaną zignorowane. + setting_total_percent_complete_mode_simple_average: "Średnia arytmetyczna" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Parametr Praca jest ignorowany, a całkowita wartość % Ukończenia będzie średnią arytmetyczną % Ukończenia wartości pakietów roboczych w hierarchii. setting_accessibility_mode_for_anonymous: "Włącz tryb dostępu dla użytkowników anonimowych" setting_user_format: "Format nazw użytkowników" setting_user_default_timezone: "Domyślna strefa czasowa użytkowników" @@ -3818,16 +3831,16 @@ pl: close_warning: "Zignoruj to ostrzeżenie." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: Wbudowana aplikacja + confidential: Poufne singular: "Aplikacje OAuth" plural: "Aplikacje OAuth" named: "Aplikacja OAuth „%{name}”" new: "Nowa aplikacja OAuth" - non_confidential: Non confidential + non_confidential: Niepoufne default_scopes: "(Zakresy domyślne)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "Włącz tę aplikację, aby pozwolić użytkownikom na przeprowadzanie autoryzacji z jej pomocą." name: "Nazwa aplikacji. Będzie wyświetlana innym użytkownikom po autoryzacji." redirect_uri_html: > Dozwolone adresy URL, do których mogą być przekierowywani autoryzowani użytkownicy. Jeden wpis w każdym wierszu.
Jeśli rejestrujesz aplikację komputerową, użyj następującego adresu URL. @@ -3837,9 +3850,9 @@ pl: register_intro: "Jeśli tworzysz aplikację kliencką interfejsu API OAuth do OpenProject, możesz zarejestrować ją za pomocą tego formularza do użytku wszystkich użytkowników." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: Wbudowane aplikacje OAuth + other_applications: Inne aplikacje OAuth + empty_application_lists: Nie zarejestrowano żadnych aplikacji OAuth. client_id: "Numer klienta" client_secret_notice: > Jest to jedyny moment, w którym możemy wydrukować tajne hasło klienta, zanotuj je i przechowuj w bezpiecznym miejscu. Należy je traktować jak hasło i nie można go później odzyskać przez OpenProject. diff --git a/config/locales/crowdin/pt-BR.yml b/config/locales/crowdin/pt-BR.yml index 0d1d42bc2900..a8c140b71c48 100644 --- a/config/locales/crowdin/pt-BR.yml +++ b/config/locales/crowdin/pt-BR.yml @@ -32,8 +32,8 @@ pt-BR: color_theme: "Tema Colorido" color_theme_custom: "(Personalizado)" tab_interface: "Interface" - tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_branding: "Gestão de marca" + tab_pdf_export_styles: "Estilos de exportação em PDF" colors: primary-button-color: "Botão primário" accent-color: "Destaque" @@ -82,7 +82,7 @@ pt-BR: contact: "Contate-nos para uma demonstração" enterprise_info_html: "é um complemento do Enterprise." upgrade_info: "Por favor, faça o upgrade para um plano pago para ativar e começar a usá-lo em sua equipe." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Alocador de memória Jemalloc journal_aggregation: explanation: text: "As ações individuais de um usuário (por exemplo, atualizar um pacote de trabalho duas vezes) são agregadas em uma única ação se o intervalo de tempo for menor que o intervalo especificado. Eles serão exibidos como uma única ação dentro do aplicativo. Isso também atrasará as notificações no mesmo intervalo de tempo, reduzindo o número de e-mails enviados e também afetará o atraso de %{webhook_link}." @@ -638,8 +638,8 @@ pt-BR: uid: "ID do cliente" secret: "Segredo do cliente" owner: "Proprietário" - builtin: "Builtin" - enabled: "Active" + builtin: "Integrado" + enabled: "Ativo" redirect_uri: "Redirecionar URI" client_credentials_user_id: "ID do usuário de credenciais do cliente" scopes: "Escopos" @@ -811,7 +811,7 @@ pt-BR: blank: "não pode ficar em branco." blank_nested: "precisa ter a propriedade '%{property}' definida. " cannot_delete_mapping: "é obrigatório. Não pode ser excluído." - is_for_all_cannot_modify: "é para todos. Não pode ser modificado." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Um pacote de trabalho não pode ser vinculado a uma das suas subtarefas." circular_dependency: "Esta relação vai criar uma dependência circular." confirmation: "não coincide com %{attribute}." @@ -920,7 +920,7 @@ pt-BR: blank: "é obrigatório. Selecione um nome." not_unique: "já está em uso. Selecione outro nome." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Não foi possível salvar, pois a reunião foi atualizada por outra pessoa enquanto isso. Atualize a página, por favor." notifications: at_least_one_channel: "É necessário especificar pelo menos um canal para o envio de notificações." attributes: @@ -1412,8 +1412,8 @@ pt-BR: failure_message: Consentimento falhou, não pode continuar. title: Consentimento do usuário decline_warning_message: Você se recusou a consentir e foi desconectado. - user_has_consented: Usuário consentiu no momento determinado. - not_yet_consented: Usuário ainda não consentiu, será solicitado no próximo login. + user_has_consented: O usuário deu seu consentimento para as [informações de consentimento configuradas](consent_settings). + not_yet_consented: O usuário ainda não deu seu consentimento para as [informações de consentimento configuradas](consent_settings). Ele será lembrado disso na próxima vez que fizer login. contact_mail_instructions: Defina o endereço de e-mail que os usuários devem utilizar para solicitar alteração ou remoção de dados. contact_your_administrator: Por favor, entre em contato com o administrador se quiser ter sua conta excluída. contact_this_mail_address: Por favor, entre em contato com %{mail_address} se quiser ter sua conta excluída. @@ -1646,7 +1646,7 @@ pt-BR: error_menu_item_not_saved: Item de menu não pôde ser salvo error_wiki_root_menu_item_conflict: > Não é possível renomear de"%{old_name}" para "%{new_name}" devido a um conflito no item de menu resultante com o item de menu existente "%{existing_caption}" (%{existing_identifier}). - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Ocorreu um erro durante a autenticação externa: %{message}" error_attribute_not_highlightable: "Atributo(s) não destacado(s): %{attributes}" events: changeset: "Conjunto de alterações editadas" @@ -1801,6 +1801,8 @@ pt-BR: progress_mode_changed_to_status_based: "Cálculo de progresso atualizado" status_changed: "Status '%{status_name}'" system_update: "Atualização do sistema OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "O cálculo dos totais de % de conclusão agora é ponderado pelo Trabalho." + total_percent_complete_mode_changed_to_simple_average: "O cálculo dos totais de % de conclusão agora é feito com base na média simples dos valores de % de conclusão." cause_descriptions: work_package_predecessor_changed_times: por alterações ao antecessor %{link} work_package_parent_changed_times: por alterações ao primário %{link} @@ -1818,7 +1820,7 @@ pt-BR: progress_mode_changed_to_status_based: Modo de cálculo de progresso definido como com base no status status_excluded_from_totals_set_to_false_message: agora incluído nos totais da hierarquia status_excluded_from_totals_set_to_true_message: agora excluído dos totais da hierarquia - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% de conclusão alterada de %{old_value}% para %{new_value}%" system_update: file_links_journal: > A partir de agora, a atividade relacionada a links de arquivos (arquivos armazenados em armazenamentos externos) aparecerá aqui na guia Atividade. O seguinte representa a atividade relacionada aos links que já existiam: @@ -1828,6 +1830,10 @@ pt-BR: Cálculo de progresso automaticamente ajustado com a atualização de versão. totals_removed_from_childless_work_packages: >- Os totais de trabalho e progresso foram removidos automaticamente para pacotes de trabalho que não são principais com a atualização de versão. Esta é uma tarefa de manutenção e pode ser ignorada com segurança. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Pacotes de trabalho infantil sem Trabalho são ignorados. + total_percent_complete_mode_changed_to_simple_average: >- + Os valores de trabalho dos pacotes de trabalho filhos são ignorados. links: configuration_guide: "Guia de configuração" get_in_touch: "Com dúvidas? Entre em contato conosco." @@ -1927,8 +1933,8 @@ pt-BR: label_additional_workflow_transitions_for_assignee: "Transições adicionais permitidas quando o usuário é o responsável" label_additional_workflow_transitions_for_author: "Transições adicionais permitidas quando o usuário é o autor" label_administration: "Administração" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Cores da interface" + label_interface_colors_description: "Essas cores controlam a aparência do aplicativo. Se você alterá-las, o tema mudará automaticamente para Tema Personalizado, mas não podemos garantir que atenda aos mínimos de contraste de acessibilidade (WCAG 2.1). " label_age: "Idade" label_ago: "dias atrás" label_all: "todos" @@ -2034,7 +2040,7 @@ pt-BR: label_copy_project: "Cópiar projeto" label_core_version: "Versão do núcleo" label_core_build: "Construção principal" - label_created_by: "Created by %{user}" + label_created_by: "Criado por %{user}" label_current_status: "Situação atual" label_current_version: "Versão atual" label_custom_field_add_no_type: "Adicionar este campo a um tipo de pacote de trabalho" @@ -2042,7 +2048,7 @@ pt-BR: label_custom_field_plural: "Campos personalizados" label_custom_field_default_type: "Tipo vazio" label_custom_style: "Design" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Escolha como o OpenProject será exibido para você com os temas, selecione suas cores padrão para usar no aplicativo e defina a aparência das exportações." label_dashboard: "Painel" label_database_version: "Versão do PostgreSQL" label_date: "Data" @@ -2164,8 +2170,8 @@ pt-BR: label_share_project_list: "Compartilhar lista de projeto" label_share_work_package: "Compartilhar pacote de trabalho" label_show_all_registered_users: "Mostrar todos usuários registrados" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Exibir menos" + label_show_more: "Exibir mais" label_journal: "Diário" label_journal_diff: "Comparação de Descrição" label_language: "Idioma" @@ -2315,7 +2321,7 @@ pt-BR: label_product_version: "Versão do produto" label_profile: "Perfil" label_percent_complete: "% de conclusão" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "Rastreamento de progresso" label_project: "Projeto" label_project_activity: "Atividade do projeto" label_project_attribute_plural: "Atributos do projeto" @@ -3137,13 +3143,13 @@ pt-BR: setting_hours_per_day_explanation: >- Isso define o que é considerado um "dia" ao exibir a duração em dias e horas (por exemplo, se um dia tem 8 horas, 32 horas serão exibidas como 4 dias). setting_invitation_expiration_days: "E-mail de ativação expira após" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "Modo de cálculo de progresso" setting_work_package_done_ratio_field: "Com base no trabalho" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + % de conclusão pode ser ajustado para qualquer valor. Se você inserir um valor para Trabalho, o Trabalho restante será calculado automaticamente. setting_work_package_done_ratio_status: "Com base no estado" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + Cada status tem um valor de % de conclusão associado. Ao mudar o status, o % de conclusão será atualizado automaticamente. setting_work_package_done_ratio_explanation_html: > No modo baseado em trabalho, você pode definir o % de conclusão para qualquer valor desejado. Se você inserir um valor para o Trabalho, o Trabalho restante será calculado automaticamente. No modo baseado em status, cada status está associado a um valor de % de conclusão. Alterar o status irá atualizar o % de conclusão correspondente. setting_work_package_properties: "Propriedades do pacote de trabalho" @@ -3164,13 +3170,13 @@ pt-BR: setting_password_min_length: "Tamanho mínimo" setting_password_min_adhered_rules: "Número mínimo de classes de caracteres obrigatórias" setting_per_page_options: "Opções de objetos por página" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% de conclusão quando o status for fechado" + setting_percent_complete_on_status_closed_no_change: "Sem alteração" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + O valor de % de conclusão não será alterado mesmo quando um pacote de trabalho for fechado. + setting_percent_complete_on_status_closed_set_100p: "Automaticamente definido para 100%" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Um pacote de trabalho fechado é considerado concluído. setting_plain_text_mail: "Mensagens de texto simples (sem HTML)" setting_protocol: "Protocolo" setting_project_gantt_query: "Visualização Gantt do portfólio de projetos" @@ -3195,6 +3201,13 @@ pt-BR: setting_sys_api_enabled: "Habilitar o serviço web de gerenciamento de repositório" setting_sys_api_description: "O serviço de web de gerenciamento de repositório fornece integração e autorização de usuário para acessar repositórios." setting_time_format: "Horário" + setting_total_percent_complete_mode: "Cálculo de totais de hierarquia de % de conclusão" + setting_total_percent_complete_mode_work_weighted_average: "Ponderado pelo trabalho" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + O total % de conclusão será calculado com base no Trabalho de cada pacote de trabalho na hierarquia. Pacotes de trabalho sem Trabalho serão desconsiderados. + setting_total_percent_complete_mode_simple_average: "Média simples" + setting_total_percent_complete_mode_simple_average_caption_html: >- + O Trabalho será ignorado, e o total % de conclusão será calculado como uma média simples dos valores de % de conclusão dos pacotes de trabalho na hierarquia. setting_accessibility_mode_for_anonymous: "Ativar o modo de acessibilidade para usuários anônimos" setting_user_format: "Formato do nome de usuário" setting_user_default_timezone: "Fuso horário padrão" @@ -3743,16 +3756,16 @@ pt-BR: close_warning: "Ignorar este aviso." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: Aplicativo de instância integrado + confidential: Confidencial singular: "Aplicação OAuth" plural: "Aplicações OAuth" named: "Aplicação OAuth '%{name}'" new: "Nova aplicação OAuth" - non_confidential: Non confidential + non_confidential: Não confidencial default_scopes: "(Escopos padrão)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "Habilite este aplicativo para permitir que os usuários realizem concessões de autorização com ele." name: "O nome da sua aplicação. Isto será exibido para outros usuários mediante autorização." redirect_uri_html: > Os URLs permitidos dos usuários autorizados podem ser redirecionadas para. Uma entrada por linha.
Se você estiver registrando uma aplicação desktop, use o seguinte URL. @@ -3762,9 +3775,9 @@ pt-BR: register_intro: "Se você estiver desenvolvendo uma aplicação cliente da API OAuth do OpenProject, poderá registrá-la usando este formulário para ser usada por todos os usuários." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: Aplicativo OAuth integrado + other_applications: Outras aplicações OAuth + empty_application_lists: Nenhuma aplicação OAuth foi registrada. client_id: "ID do cliente" client_secret_notice: > Esta é a única vez que podemos imprimir o segredo do cliente, por favor, anote-o e mantenha-o em local seguro. Ele deve ser tratado como uma senha e não poderá ser recuperado pelo OpenProject mais tarde. diff --git a/config/locales/crowdin/pt-PT.yml b/config/locales/crowdin/pt-PT.yml index b24a6713d829..fbd4cd2d0048 100644 --- a/config/locales/crowdin/pt-PT.yml +++ b/config/locales/crowdin/pt-PT.yml @@ -32,8 +32,8 @@ pt-PT: color_theme: "Cores do tema" color_theme_custom: "(Personalizado)" tab_interface: "Interface" - tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_branding: "Marca" + tab_pdf_export_styles: "Estilos de exportação PDF" colors: primary-button-color: "Botão principal" accent-color: "Destaque" @@ -82,7 +82,7 @@ pt-PT: contact: "Contacte-nos para obter uma demonstração" enterprise_info_html: "é um complemento de Enterprise ." upgrade_info: "Faça o upgrade para um plano pago para ativar e começar a usar na sua equipa." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Alocador de memória Jemalloc journal_aggregation: explanation: text: "As ações individuais de um utilizador (por exemplo, atualizar um pacote de trabalho duas vezes) são agregadas numa única ação se a sua diferença de idade for menor que o intervalo de tempo especificado. Serão mostradas como uma única ação dentro da aplicação. Também vai atrasar as notificações pelo mesmo período de tempo, o que reduz o número de e-mails enviados, e afeta ainda o atraso de %{webhook_link}." @@ -207,8 +207,8 @@ pt-PT: admin: custom_field_projects: is_for_all_blank_slate: - heading: For all projects - description: This custom field is enabled in all projects since the "For all projects" option is checked. It cannot be deactivated for individual projects. + heading: Para todos os projetos + description: Este campo personalizado é ativado em todos os projetos, uma vez que a opção "Para todos os projetos" está assinalada. Não pode ser desativado para projetos individuais. text_add_new_custom_field: > Para adicionar novos campos personalizados a um projeto, primeiro precisa de criá-los para depois adicioná-los a este projeto. is_enabled_globally: "Ativado a nível global" @@ -638,8 +638,8 @@ pt-PT: uid: "ID de cliente" secret: "Segredo do cliente" owner: "Proprietário" - builtin: "Builtin" - enabled: "Active" + builtin: "Incorporado" + enabled: "Ativo" redirect_uri: "Redirecionar URI" client_credentials_user_id: "ID de utilizador de Credenciais do Cliente" scopes: "Âmbitos" @@ -811,7 +811,7 @@ pt-PT: blank: "não pode ficar em branco." blank_nested: "precisa de ter a propriedade '%{property}' configurada." cannot_delete_mapping: "é necessário. Não pode ser eliminado." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Um pacote de trabalho não pode ser ligado a uma das suas sub-tarefas." circular_dependency: "Esta relação vai criar uma dependência circular." confirmation: "não coincide %{attribute}." @@ -888,7 +888,7 @@ pt-PT: custom_fields_project: attributes: project_ids: - blank: "Please select a project." + blank: "Selecione um projeto." custom_actions: only_one_allowed: "(%{name}) só é permitido um valor." empty: "(%{name}) valor não pode ficar vazio." @@ -920,7 +920,7 @@ pt-PT: blank: "é obrigatório. Selecione um nome." not_unique: "já está a ser utilizado. Escolha outro nome." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Não foi possível guardar porque a reunião entretanto foi atualizada por outra pessoa. Recarregue a página." notifications: at_least_one_channel: "É necessário especificar pelo menos um canal para o envio de notificações." attributes: @@ -1412,8 +1412,8 @@ pt-PT: failure_message: Consentimento falhou, não pode continuar. title: Consentimento do utilizador decline_warning_message: Recusou consentir e foi desligado. - user_has_consented: O utilizador consentiu o seu depoimento configurado no momento determinado. - not_yet_consented: O utilizador ainda não consentiu, será pedido no próximo início de sessão. + user_has_consented: O utilizador deu o seu consentimento ao seu [texto de informação de consentimento configurado](consent_settings). + not_yet_consented: O utilizador ainda não deu o seu consentimento ao seu [texto de informação de consentimento configurado] (consent_settings). Ser-lhe-á recordado quando iniciar sessão pela próxima vez. contact_mail_instructions: Defina o endereço de email que os utilizadores podem utilizar para contatar um controlador de dados a solicitar alteração ou remoção de dados. contact_your_administrator: Entre em contato com o administrador caso pretenda apagar a sua conta. contact_this_mail_address: Entre em contato com %{mail_address} caso pretenda apagar a sua conta. @@ -1646,7 +1646,7 @@ pt-PT: error_menu_item_not_saved: Item de menu não pôde ser guardado error_wiki_root_menu_item_conflict: > Não é possível mudar o nome de"%{old_name}" para "%{new_name}" devido a um conflito no item de menu resultante com o item de menu existente "%{existing_caption}" (%{existing_identifier}). - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Ocorreu um erro durante a autenticação externa: %{message}" error_attribute_not_highlightable: "Atributos não destacáveis: %{attributes}" events: changeset: "Changeset editado" @@ -1801,6 +1801,8 @@ pt-PT: progress_mode_changed_to_status_based: "Cálculo do progresso atualizado" status_changed: "Estado \"%{status_name}\"" system_update: "Atualização do sistema OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "O cálculo dos totais da % de conclusão é agora ponderado pelo Trabalho." + total_percent_complete_mode_changed_to_simple_average: "O cálculo dos totais da % de conclusão baseia-se agora numa média simples de apenas os valores da % de conclusão." cause_descriptions: work_package_predecessor_changed_times: por alterações no %{link} antecessor work_package_parent_changed_times: por alterações no %{link} principal @@ -1818,7 +1820,7 @@ pt-PT: progress_mode_changed_to_status_based: Modo de cálculo do progresso definido como baseado no estado status_excluded_from_totals_set_to_false_message: agora incluído nos totais da hierarquia status_excluded_from_totals_set_to_true_message: agora excluído dos totais da hierarquia - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% de conclusão alterada de %{old_value}% para %{new_value}%" system_update: file_links_journal: > A partir de agora, a atividade relacionada a links de arquivos (arquivos armazenados em armazenamentos externos) aparecerá aqui na guia Atividade. O seguinte representa a atividade relacionada aos links que já existiam: @@ -1828,6 +1830,10 @@ pt-PT: O cálculo do progresso é automaticamente ajustado com a atualização da versão. totals_removed_from_childless_work_packages: >- Os totais de trabalho e de progresso são automaticamente removidos dos pacotes de trabalho que não são principais com a atualização da versão. Esta é uma tarefa de manutenção e pode ser ignorada com segurança. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Os pacotes de trabalho para crianças sem Trabalho são ignorados. + total_percent_complete_mode_changed_to_simple_average: >- + Os valores de trabalho dos pacotes de trabalho para crianças são ignorados. links: configuration_guide: "Guia de configuração" get_in_touch: "Tem questões? Entre em contato conosco." @@ -1927,8 +1933,8 @@ pt-PT: label_additional_workflow_transitions_for_assignee: "Transições adicionais permitidas quando a tarefa está atribuída ao utilizador" label_additional_workflow_transitions_for_author: "Transições adicionais permitidas quando o utilizador é o autor da tarefa" label_administration: "Administração" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Cores da interface" + label_interface_colors_description: "Estas cores controlam o aspeto da aplicação. Se as modificar, o tema será automaticamente alterado para Tema personalizado, mas não podemos garantir a conformidade com os mínimos de contraste de acessibilidade (WCAG 2.1). " label_age: "Idade" label_ago: "dias atrás" label_all: "todos" @@ -1961,7 +1967,7 @@ pt-PT: label_attribute_expand_text: "O texto completo para \"%{attribute}\"" label_authentication: "Autenticação" label_authentication_settings: "Definições da autenticação" - label_available_custom_fields_projects: "Available custom fields projects" + label_available_custom_fields_projects: "Projetos de campos personalizados disponíveis" label_available_global_roles: "Papéis globais disponíveis" label_available_project_attributes: "Atributos do projeto disponíveis" label_available_project_forums: "Fóruns disponíveis" @@ -2034,7 +2040,7 @@ pt-PT: label_copy_project: "Copiar projeto" label_core_version: "Versão do núcleo" label_core_build: "Construção principal" - label_created_by: "Created by %{user}" + label_created_by: "Criado por %{user}" label_current_status: "Estado atual" label_current_version: "Versão atual" label_custom_field_add_no_type: "Adicionar este campo a um tipo de pacote de trabalho" @@ -2042,7 +2048,7 @@ pt-PT: label_custom_field_plural: "Campos personalizados" label_custom_field_default_type: "Tipo de vazio" label_custom_style: "Design" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Escolha o aspeto do OpenProject com temas, selecione as cores predefinidas a utilizar na aplicação e o aspeto das exportações." label_dashboard: "Painel" label_database_version: "versão PostgreSQL" label_date: "Data" @@ -2164,8 +2170,8 @@ pt-PT: label_share_project_list: "Partilhar lista de projetos" label_share_work_package: "Partilhar pacote de trabalho" label_show_all_registered_users: "Mostrar todos utilizadores registrados" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Mostrar menos" + label_show_more: "Mostrar mais" label_journal: "Diário" label_journal_diff: "Comparação de descrição" label_language: "Idioma" @@ -2315,7 +2321,7 @@ pt-PT: label_product_version: "Versão do produto" label_profile: "Perfil" label_percent_complete: "% de conclusão" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "Acompanhamento do progresso" label_project: "Projeto" label_project_activity: "Atividade do projeto" label_project_attribute_plural: "Atributos do projeto" @@ -3136,13 +3142,13 @@ pt-PT: setting_hours_per_day_explanation: >- Isto define o que é considerado um "dia" ao apresentar a duração em dias e horas (por exemplo, se um dia tiver 8 horas, 32 horas seriam 4 dias). setting_invitation_expiration_days: "O email de ativação expira após" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "Modo do cálculo do progresso" setting_work_package_done_ratio_field: "Baseado no trabalho" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + A % de conclusão pode ser definida livremente para qualquer valor. Se, opcionalmente, introduzir um valor para Trabalho, o Trabalho restante será automaticamente derivado. setting_work_package_done_ratio_status: "Baseado no estado" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + Cada estado tem um valor de % de conclusão associado. A alteração do estado altera a % de conclusão. setting_work_package_done_ratio_explanation_html: > No modo baseado no trabalho, a % de conclusão pode ser definida livremente para qualquer valor. Se, opcionalmente, introduzir um valor para Trabalho, o Trabalho restante será automaticamente derivado. No modo baseado no estado, cada estado tem um valor de % de conclusão associado. A alteração do estado altera a % de conclusão. setting_work_package_properties: "Propriedades das tarefas" @@ -3163,13 +3169,13 @@ pt-PT: setting_password_min_length: "Tamanho mínimo" setting_password_min_adhered_rules: "Número mínimo de classes obrigatórias" setting_per_page_options: "Opções de objetos por página" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% de conclusão quando o estado é encerrado" + setting_percent_complete_on_status_closed_no_change: "Sem alterações" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + O valor da % de conclusão não se altera mesmo quando um pacote de trabalho é encerrado. + setting_percent_complete_on_status_closed_set_100p: "Definido automaticamente para 100%" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Um pacote de trabalho fechado é considerado completo. setting_plain_text_mail: "Mensagens de texto simples (sem HTML)" setting_protocol: "Protocolo" setting_project_gantt_query: "Visualização de portfólio Gantt do projeto" @@ -3194,6 +3200,13 @@ pt-PT: setting_sys_api_enabled: "Habilitar o serviço web de gestão do repositório" setting_sys_api_description: "O serviço de web de gestão de repositório fornece integração e autorização ao utilizador para aceder a repositórios." setting_time_format: "Tempo" + setting_total_percent_complete_mode: "Cálculo dos totais da hierarquia da % de conclusão" + setting_total_percent_complete_mode_work_weighted_average: "Ponderado pelo trabalho" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + A % de conclusão total será ponderada em função do Trabalho de cada pacote de trabalho na hierarquia. Os pacotes de trabalho sem Trabalho serão ignorados. + setting_total_percent_complete_mode_simple_average: "Média simples" + setting_total_percent_complete_mode_simple_average_caption_html: >- + O Trabalho é ignorado e a % de conclusão total será uma média simples dos valores da % de conclusão dos pacotes de trabalho na hierarquia. setting_accessibility_mode_for_anonymous: "Ativar modo de acessibilidade para utilizadores anónimos" setting_user_format: "Formato de nomes de utilizador" setting_user_default_timezone: "Fuso horário padrão dos utilizadores" @@ -3743,16 +3756,16 @@ pt-PT: close_warning: "Ignore este aviso." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: Aplicação de instância incorporada + confidential: Confidencial singular: "Aplicação OAuth" plural: "Aplicações OAuth" named: "Aplicação OAuth '%{name}'" new: "Nova aplicação OAuth" - non_confidential: Non confidential + non_confidential: Não confidencial default_scopes: "(Âmbitos predefinidos)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "Ative esta aplicação, permitindo que os utilizadores efetuem concessões de autorização com ela." name: "O nome da sua aplicação. Isto será exibido aos outros utilizadores após a autorização." redirect_uri_html: > Os utilizadores autorizados com URLs podem ser redirecionados para. Uma entrada por linha.
Se estiver a registar uma aplicação de desktop, use a seguinte URL. @@ -3762,9 +3775,9 @@ pt-PT: register_intro: "Se está a desenvolver uma aplicação de cliente OAuth API para OpenProject, pode registá-la através deste formulário para que todos os utilizadores a possam usar." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: Aplicações OAuth incorporadas + other_applications: Outras aplicações OAuth + empty_application_lists: Não foram registadas aplicações OAuth. client_id: "ID de cliente" client_secret_notice: > Esta é a única vez que podemos imprimir o segredo do cliente, por favor anote-o e mantenha-o seguro. Deve ser tratado como uma palavra-passe e não pode ser recuperado mais tarde pelo OpenProject. diff --git a/config/locales/crowdin/ro.yml b/config/locales/crowdin/ro.yml index e0a2095d7a5a..a3faa6de720d 100644 --- a/config/locales/crowdin/ro.yml +++ b/config/locales/crowdin/ro.yml @@ -820,7 +820,7 @@ ro: blank: "nu poate fi gol." blank_nested: "trebuie să aibă setul '%{property}' al proprietății." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Un pachet de lucru nu poate fi legat de una din sub-activitățile sale." circular_dependency: "Această relație ar crea o dependință circulară." confirmation: "nu se potrivește cu %{attribute}." @@ -1431,8 +1431,8 @@ ro: failure_message: Consimţământul a eșuat, nu putem continua. title: Consimţământul utilizatorului decline_warning_message: Ați refuzat să fiți de acord și ați fost delogat. - user_has_consented: Utilizatorul a consimțit la declarația dvs. configurată la momentul dat. - not_yet_consented: Utilizatorul nu și-a exprimat acordul încă, consimțământul va fi solicitat la următoarea conectare. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Definiți adresa de e-mail pe care utilizatorii o pot utiliza pentru a ajunge la un responsabil cu securitatea datelor, pentru a efectua modificări de date sau solicitări de eliminare din înregistrări. contact_your_administrator: Contactați administratorul dvs. dacă doriți ștergerea contului dvs. contact_this_mail_address: Vă rugăm să contactați %{mail_address} dacă doriți ștergerea contului dvs. @@ -1838,6 +1838,8 @@ ro: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "Actualizare sistem OpenProiect:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1865,6 +1867,10 @@ ro: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Ghid de configurare" get_in_touch: "Aveți întrebări? Luați legătura cu noi." @@ -2115,7 +2121,7 @@ ro: label_duplicated_by: "dublat de" label_duplicate: "duplicat" label_duplicates: "dublează" - label_edit: "Editare" + label_edit: "Editează" label_edit_x: "Editare: %{x}" label_enable_multi_select: "Comutare selecție multiplă" label_enabled_project_custom_fields: "Câmpuri personalizate activate" @@ -2167,7 +2173,7 @@ ro: label_generate_key: "Generare cheie" label_git_path: "Calea catre directorul .git" label_greater_or_equal: ">=" - label_group_by: "Grupare după" + label_group_by: "Grupează după" label_group_new: "Grupare nouă" label_group: "Grup" label_group_named: "Grup %{name}" @@ -3235,6 +3241,13 @@ ro: setting_sys_api_enabled: "Activare serviciul web de administrare repo" setting_sys_api_description: "Serviciul web de administrare repo oferă integrare şi autorizare utilizatori pentru accesul la repo-uri." setting_time_format: "Ora" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Activează modul de accesibilitate pentru utilizatorii anonimi" setting_user_format: "Users name format" setting_user_default_timezone: "Fusul orar implicit al utilizatorilor" diff --git a/config/locales/crowdin/ru.yml b/config/locales/crowdin/ru.yml index 9104ddd713c9..d1f3d37974df 100644 --- a/config/locales/crowdin/ru.yml +++ b/config/locales/crowdin/ru.yml @@ -31,9 +31,9 @@ ru: custom_styles: color_theme: "Цветовая тема" color_theme_custom: "(Пользовательская)" - tab_interface: "Interface" - tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_interface: "Интерфейс" + tab_branding: "Фирменное оформление" + tab_pdf_export_styles: "Стили экспорта PDF" colors: primary-button-color: "Основная кнопка" accent-color: "Оттенок" @@ -82,7 +82,7 @@ ru: contact: "Свяжитесь с нами для демо" enterprise_info_html: "является дополнением Корпоративной версии ." upgrade_info: "Пожалуйста, перейдите на платный тарифный план, чтобы активировать его и начать использовать в вашей команде." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Распределитель памяти Jemalloc journal_aggregation: explanation: text: "Личные действия пользователя (например, обновление пакета работ дважды) агрегируются в одно действие, если их разница во времени не больше указанной. Они будут отображаться как одно действие внутри приложения. Это также задерживает уведомление на такое же количество времени, уменьшая количество отправляемых писем и также повлияет на %{webhook_link} задержки." @@ -739,7 +739,7 @@ ru: is_closed: "Пакет работ закрыт" is_readonly: "Пакет работ только для просмотра" excluded_from_totals: "Исключить из расчета итогов в иерархии" - default_done_ratio: "% Завершено" + default_done_ratio: "% Завершения" time_entry: activity: "Деятельность" hours: "Часы" @@ -789,7 +789,7 @@ ru: derived_done_ratio: "Всего % завершено" derived_remaining_hours: "Всего оставшихся работ" derived_remaining_time: "Всего оставшихся работ" - done_ratio: "% Завершено" + done_ratio: "% Завершения" duration: "Продолжительность" end_insertion: "Завершение вставки" end_deletion: "Завершение удаления" @@ -803,7 +803,7 @@ ru: parent_issue: "Родитель" parent_work_package: "Родитель" priority: "Приоритет" - progress: "% Завершено" + progress: "% Завершения" readonly: "Только для чтения" remaining_hours: "Оставшиеся часы" remaining_time: "Оставшиеся часы" @@ -826,7 +826,7 @@ ru: blank: "не может быть пустым." blank_nested: "должно быть установлено свойство '%{property}'." cannot_delete_mapping: "требуется. Невозможно удалить." - is_for_all_cannot_modify: "предназначен для всех. Не может быть изменен." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Пакет работ не может быть связан с одной из своих подзадач." circular_dependency: "Это отношение создаст циклическую зависимость." confirmation: "не совпадает со значением поля %{attribute}." @@ -935,7 +935,7 @@ ru: blank: "является обязательным. Пожалуйста, выберите имя." not_unique: "уже используется. Пожалуйста, выберите другое имя." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Невозможно сохранить, потому что встреча была обновлена кем-то другим за это время. Пожалуйста, перезагрузите страницу." notifications: at_least_one_channel: "Нужно указать хотя бы один канал для отправки уведомлений." attributes: @@ -1447,8 +1447,8 @@ ru: failure_message: Согласие не получено, продолжение невозможно. title: Согласие пользователя decline_warning_message: Вы отказались согласиться и были занесены в журнал. - user_has_consented: На данный момент пользователь согласен с вашей формулировкой. - not_yet_consented: Согласие от пользователя пока не получено и будет у него запрошено при следующем его входе в систему. + user_has_consented: Пользователь дал свое согласие на [настроенный текст информации о согласии](consent_settings). + not_yet_consented: Пользователь еще не дал своего согласия на [настроенный текст информации о согласии](consent_settings). При следующем входе в систему ему об этом напомнят. contact_mail_instructions: Укажите адрес электронной почты для контроля пользователями выполнения запросов на изменение или удаление данных. contact_your_administrator: Пожалуйста, обратитесь к администратору, если хотите, чтобы ваша учетная запись была удалена. contact_this_mail_address: Пожалуйста, свяжитесь по %{mail_address}, если хотите, чтобы ваша учетная запись была удалена. @@ -1717,7 +1717,7 @@ ru: error_menu_item_not_saved: Пункт меню не может быть сохранен error_wiki_root_menu_item_conflict: > Невозможно переименовать "%{old_name}" в "%{new_name}" из-за конфликта между получающимся и существующим пунктами меню "%{existing_caption}" (%{existing_identifier}). - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Во время внешней аутентификации произошла ошибка: %{message}" error_attribute_not_highlightable: "Атрибуты не выделяются: %{attributes}" events: changeset: "Набор изменений отредактирован" @@ -1872,6 +1872,8 @@ ru: progress_mode_changed_to_status_based: "Расчет прогресса обновлен" status_changed: "Статус '%{status_name}'" system_update: "Обновление системы OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "Вычисление % Завершения теперь взвешивается по Работе." + total_percent_complete_mode_changed_to_simple_average: "Вычисление % Завершения теперь основано на среднем арифметическом % Завершения." cause_descriptions: work_package_predecessor_changed_times: внесением изменений в предшественника %{link} work_package_parent_changed_times: внесением изменений в родительский %{link} @@ -1889,7 +1891,7 @@ ru: progress_mode_changed_to_status_based: Расчет прогресса установлен в режим "На основе статуса" status_excluded_from_totals_set_to_false_message: теперь включено в иерархию итогов status_excluded_from_totals_set_to_true_message: теперь исключено из иерархии итогов - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% Завершения изменен с %{old_value}% на %{new_value}%" system_update: file_links_journal: > Теперь на вкладке Активность появится активность, связанная со ссылками файлов (файлы, хранящиеся во внешних хранилищах). Ниже описывается деятельность по уже существующим ссылкам: @@ -1899,6 +1901,10 @@ ru: Расчет прогресса автоматически корректируется при обновлении версии. totals_removed_from_childless_work_packages: >- При обновлении версии автоматически удаляются итоги работы и прогресса для неродительских пакетов работ. Это задача по обслуживанию, и её можно смело игнорировать. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Дочерние пакеты работ без Работы игнорируются. + total_percent_complete_mode_changed_to_simple_average: >- + Значения Работы дочерних пакетов работ игнорируются. links: configuration_guide: "Руководство по конфигурации" get_in_touch: "У вас есть вопросы? Свяжитесь с нами." @@ -1998,8 +2004,8 @@ ru: label_additional_workflow_transitions_for_assignee: "Дополнительные переходы допускается, если пользователь является правопреемником" label_additional_workflow_transitions_for_author: "Дополнительные переходы допускаются, если пользователь является автором" label_administration: "Администрирование" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Цвета интерфейса" + label_interface_colors_description: "Эти цвета определяют внешний вид приложения. Если вы их измените, то тема будет автоматически изменена на пользовательскую тему, Но мы не можем гарантировать соответствие минимальным требованиям по контрасту (WCAG 2.1). " label_age: "Возраст" label_ago: "дней назад" label_all: "все" @@ -2113,7 +2119,7 @@ ru: label_custom_field_plural: "Пользовательские поля" label_custom_field_default_type: "Пустой тип" label_custom_style: "Дизайн" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Выберите, как OpenProject будет выглядеть с помощью тем, выберите цвета по умолчанию, которые Вы будете использовать в приложении, и как будет выглядеть экспорт." label_dashboard: "Панель" label_database_version: "Версия PostgreSQL" label_date: "Дата" @@ -2235,8 +2241,8 @@ ru: label_share_project_list: "Поделитесь списком проектов" label_share_work_package: "Поделиться пакетом работ" label_show_all_registered_users: "Показать всех зарегистрированных пользователей" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Показать меньше" + label_show_more: "Показать больше" label_journal: "Журнал" label_journal_diff: "Описание сравнения" label_language: "Язык" @@ -3238,13 +3244,13 @@ ru: setting_password_min_length: "Минимальная длина" setting_password_min_adhered_rules: "Минимальное количество необходимых классов" setting_per_page_options: "Количество объектов на страницу" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% Завершения, когда статус закрыт" + setting_percent_complete_on_status_closed_no_change: "Без изменений" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + Значение % Завершения не изменится, даже если пакет работ будет закрыт. + setting_percent_complete_on_status_closed_set_100p: "Автоматически устанавливается на 100%" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Закрытый пакет работ считается завершенным. setting_plain_text_mail: "Обычный текст электронной почты (не HTML)" setting_protocol: "Протокол" setting_project_gantt_query: "Портфолио проекта в виде диаграммы Ганта" @@ -3269,6 +3275,13 @@ ru: setting_sys_api_enabled: "Разрешить веб-сервис управления репозиторием" setting_sys_api_description: "Веб-сервис управления репозиторием обеспечивает интеграцию и авторизацию пользователя для доступа к репозиторию." setting_time_format: "Время" + setting_total_percent_complete_mode: "Расчет общего % Завершения полной иерархии" + setting_total_percent_complete_mode_work_weighted_average: "Взвешенное по работе" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + Общий % Завершения будет взвешен по Работе каждого пакета работ в иерархии. Пакеты работ без Работы будут игнорироваться. + setting_total_percent_complete_mode_simple_average: "Среднее арифметическое" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Работа игнорируется, и Общий % Завершения будет средним арифметическим значением % Завершения пакетов работ в иерархии. setting_accessibility_mode_for_anonymous: "Разрешить режим доступа людей с ограниченными возможностями для анонимных пользователей" setting_user_format: "Формат имени пользователя" setting_user_default_timezone: "Часовой пояс пользователя по умолчанию" @@ -3432,8 +3445,8 @@ ru: text_work_packages_destroy_confirmation: "Вы уверены, что хотите удалить выбранные пакет(-ы) работ?" text_work_packages_ref_in_commit_messages: "Привязка и фиксация пакетов работ в сообщениях коммитов" text_journal_added: "%{label} %{value} добавлено" - text_journal_attachment_added: "%{label} %{value} добавлено как вложение" - text_journal_attachment_deleted: "%{label} %{old} удален как вложение" + text_journal_attachment_added: "%{label} %{value} добавлено вложение" + text_journal_attachment_deleted: "%{label} %{old} удалено вложение" text_journal_changed_plain: "%{label} изменено с %{old} %{linebreak}на %{new}" text_journal_changed_no_detail: "%{label} обновлено" text_journal_changed_with_diff: "%{label} изменена (%{link})" diff --git a/config/locales/crowdin/rw.yml b/config/locales/crowdin/rw.yml index a7ab10fbc0e4..d9c75bb6379a 100644 --- a/config/locales/crowdin/rw.yml +++ b/config/locales/crowdin/rw.yml @@ -813,7 +813,7 @@ rw: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ rw: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ rw: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ rw: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ rw: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/si.yml b/config/locales/crowdin/si.yml index 8b54ed9f16cc..d0c9c4e8969a 100644 --- a/config/locales/crowdin/si.yml +++ b/config/locales/crowdin/si.yml @@ -813,7 +813,7 @@ si: blank: "හිස් විය නොහැක." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "වැඩ පැකේජයක් එහි එක් උප කර්තව්යයකට සම්බන්ධ කළ නොහැක." circular_dependency: "මෙම සම්බන්ධතාවය චක්රලේඛය යැපීමක් නිර්මාණය කරනු ඇත." confirmation: "%{attribute}නොගැලපේ." @@ -1414,8 +1414,8 @@ si: failure_message: කැමැත්ත අසාර්ථකයි, ඉදිරියට යා නොහැක. title: පරිශීලක කැමැත්ත decline_warning_message: ඔබ කැමැත්ත ප්රතික්ෂේප කර ඇති අතර ලොගින් වී ඇත. - user_has_consented: පරිශීලකයා විසින් ඔබගේ වින්යාසගත කළ ප්රකාශයට එකඟ වී ඇත. - not_yet_consented: පරිශීලකයා තවමත් එකඟ වී නැත, ඊළඟ පිවිසුම මත ඉල්ලා සිටිනු ඇත. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: දත්ත වෙනස් කිරීම හෝ ඉවත් කිරීමේ ඉල්ලීම් ඉටු කිරීම සඳහා පරිශීලකයින්ට දත්ත පාලකය වෙත ළඟා විය හැකි තැපැල් ලිපිනය නිර්වචනය කරන්න. contact_your_administrator: ඔබට ඔබගේ ගිණුම මකා දැමීමට අවශ්ය නම් කරුණාකර ඔබේ පරිපාලක අමතන්න. contact_this_mail_address: ඔබගේ ගිණුම මකා දැමීමට අවශ්ය නම් කරුණාකර %{mail_address} අමතන්න. @@ -1803,6 +1803,8 @@ si: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ si: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "වින්යාස මාර්ගෝපදේශය" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ si: setting_sys_api_enabled: "නිධි කළමනාකරණ වෙබ් සේවාව සක්රීය කරන්න" setting_sys_api_description: "ගබඩා කළමනාකරණ වෙබ් සේවාව මඟින් ගබඩාවට ප්රවේශ වීම සඳහා ඒකාබද්ධ කිරීම සහ පරිශීලක අවසරය ලබා දේ." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "නිර්නාමික පරිශීලකයින් සඳහා ප්රවේශ්යතා ප්රකාරය සක්රීය කරන්න" setting_user_format: "Users name format" setting_user_default_timezone: "පරිශීලකයන් පෙරනිමි කාල කලාපය" diff --git a/config/locales/crowdin/sk.yml b/config/locales/crowdin/sk.yml index 5853f816101a..ecf74d258ac8 100644 --- a/config/locales/crowdin/sk.yml +++ b/config/locales/crowdin/sk.yml @@ -827,7 +827,7 @@ sk: blank: "nemôže byť prázdne." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Pracovný balíček nemôže byť previazaný na žiadny zo svojich podriadenými balíčkov." circular_dependency: "Tento vzťah by vytvoril cyklickú závislosť." confirmation: "%{attribute} sa nezhoduje." @@ -1448,8 +1448,8 @@ sk: failure_message: Súhlas zlyhal, nie je možné pokračovať. title: Súhlas užívateľa decline_warning_message: Odmietli ste súhlas a boli ste odhlásený. - user_has_consented: Používateľ súhlasil s nakonfigurovaným prehlásením v danom čase. - not_yet_consented: Používateľ zatiaľ neudelil svoj súhlas a bude požiadaný pri ďalšom prihlásení. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Definovať e-mailovú adresu, ktorý používatelia môžu vybavovať žiadosti o zmeny v dátumoch alebo odstránenie údajov. contact_your_administrator: Pokiaľ chcete svoj účet odstrániť, obráťte se na správcu systému. contact_this_mail_address: Ak chcete svoj účet odstrániť, obráťte sa na %{mail_address}. @@ -1873,6 +1873,8 @@ sk: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1900,6 +1902,10 @@ sk: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Sprievodca konfiguráciou" get_in_touch: "You have questions? Get in touch with us." @@ -3272,6 +3278,13 @@ sk: setting_sys_api_enabled: "Povoliť webovú službu pre správu úložiska" setting_sys_api_description: "Webová služba pre správu úložiska umožňuje integráciu a autorizáciu používateľa na prístup k repozitárom." setting_time_format: "Čas" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Zapnúť režim prístupnosti pre anonymných používateľov" setting_user_format: "Users name format" setting_user_default_timezone: "Predvolená časová zóna užívateľa" diff --git a/config/locales/crowdin/sl.yml b/config/locales/crowdin/sl.yml index 56fc5ea9da30..23be4e53279c 100644 --- a/config/locales/crowdin/sl.yml +++ b/config/locales/crowdin/sl.yml @@ -824,7 +824,7 @@ sl: blank: "ne sme biti prazno." blank_nested: "mora imeti nastavljeno lastnost '%{property}'." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Zahtevek ne more biti povezan s svojo podnalogo" circular_dependency: "Ta povezava bi ustvarila krožno odvisnost." confirmation: "se ne ujema %{attribute}" @@ -1445,8 +1445,8 @@ sl: failure_message: Soglasje ni uspelo in nadaljevanje ni mogoče. title: Soglasje uporabnika decline_warning_message: Odklonili ste soglasje in ste se odjavili. - user_has_consented: Uporabnik je v danem času privolil v vašo konfigurirano izjavo. - not_yet_consented: "Uporabnik še ni privolil, zahtevano bo ob naslednji prijavi.\n" + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Določite e-poštni naslov, da lahko uporabniki dosežejo krmilnik podatkov za izvajanje zahtev za spremembo ali odstranitev podatkov. contact_your_administrator: Če želite izbrisati svoj račun, se obrnite na svojega skrbnika. contact_this_mail_address: Če želite izbrisati svoj račun, se obrnite na %{mail_address}. @@ -1520,8 +1520,8 @@ sl: - "avgust" - "september" - "oktober" - - "November" - - "December" + - "november" + - "december" order: - :leto - :mesec @@ -1870,6 +1870,8 @@ sl: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1897,6 +1899,10 @@ sl: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Vodnik za konfiguracijo" get_in_touch: "Imate vprašanja? Stopite v stik z nami.\n" @@ -3269,6 +3275,13 @@ sl: setting_sys_api_enabled: "Omogoči spletno storitev upravljanja repozitorija" setting_sys_api_description: "Spletna storitev za upravljanje skladišča nudi integracijo in pooblastilo uporabnika za dostop do repozitorija." setting_time_format: "Čas" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Omogoči način dostopa za anonimne uporabnike" setting_user_format: "Users name format" setting_user_default_timezone: "Uporabniški privzeti časovni pas" diff --git a/config/locales/crowdin/sr.yml b/config/locales/crowdin/sr.yml index 5c9b28b3b34c..47597083f275 100644 --- a/config/locales/crowdin/sr.yml +++ b/config/locales/crowdin/sr.yml @@ -820,7 +820,7 @@ sr: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1431,8 +1431,8 @@ sr: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1838,6 +1838,8 @@ sr: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1865,6 +1867,10 @@ sr: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3236,6 +3242,13 @@ sr: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/sv.yml b/config/locales/crowdin/sv.yml index e88000f8f6e3..57b5e80d4b61 100644 --- a/config/locales/crowdin/sv.yml +++ b/config/locales/crowdin/sv.yml @@ -282,7 +282,7 @@ sv: favored: "Favorite projects" archived: "Arkiverade projekt" shared: "Shared project lists" - my_lists: "My project lists" + my_lists: "Mina projektlistor" new: placeholder: "Ny projektlista" delete_modal: @@ -812,7 +812,7 @@ sv: blank: "kan inte vara tomt." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Ett arbetspaket kan inte kopplas till någon av dess underaktiviteter." circular_dependency: "Detta förhållande skulle skapa ett cirkelberoende." confirmation: "matchar inte %{attribute}." @@ -1413,8 +1413,8 @@ sv: failure_message: Samtycke misslyckades, kan inte fortsätta. title: Användarsamtycken decline_warning_message: Du har avböjt samtycke och loggats ut. - user_has_consented: Användaren har samtyckt till din konfigurerade redogörelse vid den angivna tidpunkten. - not_yet_consented: Användaren har ännu inte samtyckt till, kommer att begäras vid nästa inloggning. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Definiera den e-postadress som användarna kan nå en personuppgiftsansvarig för att utföra uppgifter, ändra eller ta bort förfrågningar. contact_your_administrator: Kontakta administratören om du vill att kontot ska tas bort. contact_this_mail_address: Kontakta %{mail_address} om du vill få ditt konto borttaget. @@ -1802,6 +1802,8 @@ sv: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1829,6 +1831,10 @@ sv: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Konfigurationsguide" get_in_touch: "Har du frågor? Ta kontakt med oss." @@ -2165,8 +2171,8 @@ sv: label_share_project_list: "Dela projektlista" label_share_work_package: "Share work package" label_show_all_registered_users: "Visa alla registrerade användare" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Visa mindre" + label_show_more: "Visa mer" label_journal: "Journal" label_journal_diff: "Jämför beskrivning" label_language: "Språk" @@ -3196,6 +3202,13 @@ sv: setting_sys_api_enabled: "Aktivera webbtjänsten arkivhantering" setting_sys_api_description: "Webtjänsten arkivhantering ger integrering och användarautentisering för att åtkomst av arkiv." setting_time_format: "Tid" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Aktivera hjälpmedelsläget för anonyma användare" setting_user_format: "Users name format" setting_user_default_timezone: "Standardtidszon för användarna" diff --git a/config/locales/crowdin/th.yml b/config/locales/crowdin/th.yml index f49c73f3556e..1de530a6e311 100644 --- a/config/locales/crowdin/th.yml +++ b/config/locales/crowdin/th.yml @@ -806,7 +806,7 @@ th: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1397,8 +1397,8 @@ th: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1768,6 +1768,8 @@ th: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1795,6 +1797,10 @@ th: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3162,6 +3168,13 @@ th: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "เปิดใช้งาน \"โหมดจำกัดการใช้งาน\" สำหรับผู้ใช้ที่ไม่ระบุชื่อ" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/tr.yml b/config/locales/crowdin/tr.yml index fb1ed3f91c8d..962e820ad8aa 100644 --- a/config/locales/crowdin/tr.yml +++ b/config/locales/crowdin/tr.yml @@ -31,8 +31,8 @@ tr: custom_styles: color_theme: "Renk teması" color_theme_custom: "(Özel)" - tab_interface: "Interface" - tab_branding: "Branding" + tab_interface: "Arayüz" + tab_branding: "Markalama" tab_pdf_export_styles: "PDF export styles" colors: primary-button-color: "Primary button" @@ -68,7 +68,7 @@ tr: add_token: "Bir Enterprise sürümü destek belirteci yükleyin" delete_token_modal: text: "Kullanılan geçerli Enterprise sürümü belirtecini kaldırmak istediğinizden emin misiniz?" - title: "Belirteci sil" + title: "Anahtarı sil" replace_token: "Geçerli destek anahtarını değiştirin" order: "Enterprise on-premises edition sipariş edin" paste: "Enterprise sürümü destek belirtecinizi yapıştırın" @@ -310,11 +310,11 @@ tr: label_enable_single: "Active in this project, click to disable" label_disable_single: "Inactive in this project, click to enable" remove_from_project: "Remove from project" - label_enable_all: "Enable all" - label_disable_all: "Disable all" + label_enable_all: "Tümünü etkinleştir" + label_disable_all: "Tümünü devre dışı bırak" is_required_blank_slate: - heading: Required in all projects - description: This project attribute is activated in all projects since the "Required in all projects" option is checked. It cannot be deactivated for individual projects. + heading: Tüm projelerde zorunludur + description: '"Tüm projelerde zorunlu" seçeneği işaretli olduğu için bu proje niteliği tüm projelerde etkindir. Projeler için bağımsız olarak devre dışı bırakılamaz.' types: no_results_title_text: Şu anda hiçbir tip mevcut değil. form: @@ -329,13 +329,13 @@ tr: success: "The modified list has been saved as a new list" failure: "The modified list cannot be saved: %{errors}" update: - success: "The modified list has been saved" + success: "Değiştirilen liste kaydedildi" failure: "The modified list cannot be saved: %{errors}" publish: - success: "The list has been made public" + success: "Liste herkese açık hale getirildi" failure: "The list cannot be made public: %{errors}" unpublish: - success: "The list has been made private" + success: "Liste gizli hale getirildi" failure: "The list cannot be made private: %{errors}" can_be_saved: "List modified:" can_be_saved_as: "The modifications can only be saved in a new list:" @@ -366,8 +366,8 @@ tr: however_work_packages_shared_with_group_html: one: "However, %{shared_work_packages_link} has also been shared with this group." other: "However, %{shared_work_packages_link} have also been shared with this group." - remove_work_packages_shared_with_user_too: "A user that has been removed as member can still access shared work packages. Would you like to remove the shares too?" - remove_work_packages_shared_with_group_too: "A group that has been removed as member can still access shared work packages. Would you like to remove the shares too?" + remove_work_packages_shared_with_user_too: "Üyelikten kaldırılan bir kullanıcı paylaşılan iş paketlerine erişmeye devam edebilir. Paylaşımları da kaldırmak ister misiniz?" + remove_work_packages_shared_with_group_too: "Üyelikten kaldırılan bir grup paylaşılan iş paketlerine erişmeye devam edebilir. Paylaşımları da kaldırmak ister misiniz?" will_not_affect_inherited_shares: "(This will not affect work packages shared with their group)." can_remove_direct_but_not_shared_roles: "You can remove this user as a direct project member but a group they are in is also a member of this project, so they will continue being a member via the group." also_work_packages_shared_with_user_html: @@ -404,11 +404,11 @@ tr: header: The %{type} token has been generated warning: Note that this is the only time you will see this token, make sure to copy it now. errors: - token_name_blank: "Please provide an API token name" - token_name_in_use: "This API token name is already in use, please select a different one" - new_access_token_dialog_title: "Create new API token" - new_access_token_dialog_show_button_text: "API token" - new_access_token_dialog_text_field_placeholder_text: "My API token" + token_name_blank: "Lütfen API anahtarı için bir ad girin" + token_name_in_use: "Bu API anahtarı adı kullanılmaktadır, lütfen başka bir tane seçin" + new_access_token_dialog_title: "Yeni bir API anahtarı oluştur" + new_access_token_dialog_show_button_text: "API anahtarı" + new_access_token_dialog_text_field_placeholder_text: "API anahtarım" new_access_token_dialog_text_field_label: "İsim" new_access_token_dialog_submit_button_text: "Oluştur" new_access_token_dialog_text: "This token will allow third-party applications to communicate with your instance. To differentiate the new API token, please give it a name." @@ -812,7 +812,7 @@ tr: blank: "boş bırakılamaz." blank_nested: "'%{property}' özelliğinin ayarlanmış olması gerekir." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "İş paketi alt görevlerinden birine bağlanamaz." circular_dependency: "Bu ilişki döngüsel bağımlılık oluşturacak." confirmation: "%{attribute} eşleşmiyor." @@ -1184,8 +1184,8 @@ tr: other: "Yetkiler" status: "İş paketi durumu" token/api: - one: Access token - other: Access tokens + one: Erişim anahtarı + other: Erişim anahtarları type: "Tür" user: "Kullanıcı" version: "Sürüm" @@ -1247,7 +1247,7 @@ tr: base: "Genel Hata:" blocks_ids: "Engellenen iş paketlerinin ID'leri" category: "Kategori" - comment: "Yorum" + comment: "Yorumlar" comments: "Yorum" content: "İçerik" color: "Renk" @@ -1413,8 +1413,8 @@ tr: failure_message: Rıza alımı başarısız oldu, işlenemedi. title: Kullanıcı Rızası decline_warning_message: Onay vermeyi reddettiniz ve çıkış yaptınız. - user_has_consented: Kullanıcı, belirtilen zamanda yapılandırılmış ifadenize izin verdi. - not_yet_consented: Kullanıcı henüz onaylamadı, bir sonraki oturum açmada talep edilecek. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Veri değişikliği veya kaldırma isteklerini gerçekleştirmek için kullanıcıların bir veri denetleyicisine erişebilecekleri posta adresini tanımlayın. contact_your_administrator: Hesabınızın silinmesini istiyorsanız, lütfen yöneticinize başvurun. contact_this_mail_address: Hesabınızın silinmesini istiyorsanız, lütfen %{mail_address} ile iletişime geçin. @@ -1802,6 +1802,8 @@ tr: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1829,6 +1831,10 @@ tr: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Yapılandırma rehberi" get_in_touch: "Senin soruların var? Bizimle temasa geçin." @@ -3195,6 +3201,13 @@ tr: setting_sys_api_enabled: "Depo yönetimi web hizmetini etkinleştir" setting_sys_api_description: "Depo yönetimi web servisi depolara erişmek için entegrasyon ve kullanıcı yetkilendirmesi sağlar." setting_time_format: "Saat" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "İsimsiz kullanıcılar için erişilebilirlik modunu etkinleştir" setting_user_format: "Users name format" setting_user_default_timezone: "Kullanıcıların varsayılan saat dilimi" diff --git a/config/locales/crowdin/uk.yml b/config/locales/crowdin/uk.yml index 61c4427f9dcb..893d5f27a749 100644 --- a/config/locales/crowdin/uk.yml +++ b/config/locales/crowdin/uk.yml @@ -31,9 +31,9 @@ uk: custom_styles: color_theme: "Колірна тема" color_theme_custom: "(Власний)" - tab_interface: "Interface" - tab_branding: "Branding" - tab_pdf_export_styles: "PDF export styles" + tab_interface: "Інтерфейс" + tab_branding: "Брендування" + tab_pdf_export_styles: "Стилі експорту PDF" colors: primary-button-color: "Основна кнопка" accent-color: "Акцент" @@ -82,7 +82,7 @@ uk: contact: "Зв’яжіться з нами, щоб отримати демоверсію" enterprise_info_html: "– це доповнення версії Enterprise ." upgrade_info: "Перейдіть на платний план, щоб активувати його та почати використовувати його у своїй команді." - jemalloc_allocator: Jemalloc memory allocator + jemalloc_allocator: Розподіл пам'яті Jemalloc journal_aggregation: explanation: text: "Окремі дії користувача (напр., оновлення робочого пакета двічі) зводяться в одну дію, якщо відмінність у часі між ними менша за вказаний проміжок часу. Їх буде виведено як окремі дії в межах додатка. Крім того, це призведе до затримки сповіщень на такий самий проміжок часу, що зменшить кількість електронних листів, які надсилатимуться, а також вплине на затримку %{webhook_link}." @@ -648,8 +648,8 @@ uk: uid: "Ідентифікатор клієнта" secret: "Секретний ключ клієнта" owner: "Власник" - builtin: "Builtin" - enabled: "Active" + builtin: "Вбудований" + enabled: "Активний" redirect_uri: "Перенаправити URI (Automatic Translation)" client_credentials_user_id: "Ідентифікатор користувача для облікових даних клієнта" scopes: "Область дії" @@ -821,7 +821,7 @@ uk: blank: "не може бути порожнім." blank_nested: "– потрібно встановити властивість «%{property}»." cannot_delete_mapping: "– обов’язкове. Неможливо видалити." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Робочий пакет не може бути пов'язаний з одним з підзадач." circular_dependency: "Це співвідношення створить кругову залежність." confirmation: "не збігається %{attribute}" @@ -898,7 +898,7 @@ uk: custom_fields_project: attributes: project_ids: - blank: "Please select a project." + blank: "Будь ласка, виберіть проєкт." custom_actions: only_one_allowed: "(%{name}) дозволено лише одне значення." empty: "(%{name}) значення не може бути порожнім." @@ -930,7 +930,7 @@ uk: blank: "– обов’язковий атрибут. Виберіть ім’я." not_unique: "уже використовується. Виберіть інше ім’я." meeting: - error_conflict: "Unable to save because the meeting was updated by someone else in the meantime. Please reload the page." + error_conflict: "Не вдалося зберегти, тому що зустріч була оновлена кимось іншим в цей час. Будь ласка, перезавантажте сторінку." notifications: at_least_one_channel: "Необхідно вказати принаймні один канал для надсилання сповіщень." attributes: @@ -1442,8 +1442,8 @@ uk: failure_message: Згода не отримана, продовження неможливе. title: Згода користувача decline_warning_message: Ви відхилили згоду і вийшли з системи. - user_has_consented: На даний час користувач погодився з Вашим формулюванням. - not_yet_consented: Користувач ще не погодився, запит буде надіслано після наступного входу. + user_has_consented: Користувач надав згоду на [налаштований текст інформації про згоду](consent_settings). + not_yet_consented: Користувач ще не надав згоду на [налаштований текст інформації про згоду] (consent_settings). Він отримає нагадування під час наступного входу. contact_mail_instructions: Визначте адресу електронної пошти, на яку користувачі можуть звертатися, для запитів на зміну або видалення даних. contact_your_administrator: Зверніться до свого адміністратора, якщо ви хочете, щоб ваш обліковий запис був видалений. contact_this_mail_address: Будь ласка зв'яжіться %{mail_address} якщо ви бажаєте, щоб ваш обліковий запис був видалений. @@ -1712,7 +1712,7 @@ uk: error_menu_item_not_saved: Не вдалося зберегти пункт меню error_wiki_root_menu_item_conflict: > Неможливо перейменувати %{old_name} для %{new_name} через конфлікт у результуючому пункті меню з існуючим пунктом меню %{existing_caption} %{existing_identifier} - error_external_authentication_failed_message: "An error occurred during external authentication: %{message}" + error_external_authentication_failed_message: "Під час зовнішньої автентифікації сталася помилка: %{message}" error_attribute_not_highlightable: "Атрибут(и) не виділено: %{attributes}" events: changeset: "Набір змін відредаговано" @@ -1867,6 +1867,8 @@ uk: progress_mode_changed_to_status_based: "Обчислення прогресу оновлено" status_changed: "Статус «%{status_name}»" system_update: "Оновлення системи OpenProject" + total_percent_complete_mode_changed_to_work_weighted_average: "Під час обчислення підсумків атрибута «% завершення» тепер враховується значення атрибута «Робота»." + total_percent_complete_mode_changed_to_simple_average: "Обчислення підсумків атрибута «% завершення» тепер ґрунтується на середньому арифметичному значень лише атрибута «% завершення»." cause_descriptions: work_package_predecessor_changed_times: внесенням змін у попередній елемент %{link} work_package_parent_changed_times: внесенням змін у батькіський елемент %{link} @@ -1884,7 +1886,7 @@ uk: progress_mode_changed_to_status_based: Установлено режим обчислення прогресу на основі статусу status_excluded_from_totals_set_to_false_message: тепер включено в підсумки ієрархії status_excluded_from_totals_set_to_true_message: тепер виключено з підсумків ієрархії - status_percent_complete_changed: "% Complete changed from %{old_value}% to %{new_value}%" + status_percent_complete_changed: "% Повністю змінено з %{old_value}% на %{new_value}%" system_update: file_links_journal: > Тепер дії, пов’язані з посиланнями на файли (файли, що зберігаються в зовнішніх сховищах), з’являтимуться на вкладці «Активність». Наявні дії, пов’язані із посиланнями: @@ -1894,6 +1896,10 @@ uk: Результати обчислення прогресу автоматично скориговано відповідно до оновленої версії. totals_removed_from_childless_work_packages: >- Результати обчислення обсягу й прогресу виконання роботи автоматично вилучено з небатьківських пакетів робіт з оновленням версії. Це завдання з технічного обслуговування, і його можна ігнорувати. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Дочірні пакети робіт без атрибута «Робота» ігноруються. + total_percent_complete_mode_changed_to_simple_average: >- + Значення атрибута «Робота» дочірніх пакетів робіт ігноруються. links: configuration_guide: "Посібник з налаштування" get_in_touch: "У вас виникли запитання? Зв'яжіться з нами." @@ -1993,8 +1999,8 @@ uk: label_additional_workflow_transitions_for_assignee: "Додаткові переходи можна коли користувач є правонаступником" label_additional_workflow_transitions_for_author: "Додаткові переходи дозволені користувачу, який є автором" label_administration: "Адміністрування" - label_interface_colors: "Interface colors" - label_interface_colors_description: "These colors control how the application looks. If you modify them the theme will automatically be changed to Custom theme, but we can’t assure the compliance of the accessibility contrast minimums (WCAG 2.1). " + label_interface_colors: "Кольори інтерфейсу" + label_interface_colors_description: "Ці кольори визначають зовнішній вигляд застосунку. Якщо ви зміните їх, тему буде автоматично змінено на користувацьку тему, але ми не можемо гарантувати дотримання доступності мінімального контрасту (WCAG 2.1). " label_age: "Вік" label_ago: "днів тому" label_all: "всі" @@ -2100,7 +2106,7 @@ uk: label_copy_project: "Копіювати проект" label_core_version: "Версія ядра" label_core_build: "Збірка ядра" - label_created_by: "Created by %{user}" + label_created_by: "Створено %{user}" label_current_status: "Поточний статус" label_current_version: "Поточна версія" label_custom_field_add_no_type: "Додайте це поле до типу робочого пакета" @@ -2108,7 +2114,7 @@ uk: label_custom_field_plural: "Індивідуальні поля" label_custom_field_default_type: "Порожній тип" label_custom_style: "Дизайн" - label_custom_style_description: "Choose how OpenProject looks to you with themes, select your default colors to use in the app and how exports look like." + label_custom_style_description: "Виберіть, як OpenProject виглядає для вас із темами, виберіть ваші кольори за замовчуванням для використання в застосунку та як виглядатимуть експорти." label_dashboard: "Панель керування" label_database_version: "Версія PostgreSQL" label_date: "Дата" @@ -2221,7 +2227,7 @@ uk: label_index_by_title: "Індекс за назвою" label_information: "Інформація" label_information_plural: "Інформація" - label_installation_guides: "Інструкції зі встановлення" + label_installation_guides: "Інструкції із встановлення" label_integer: "Ціле число" label_internal: "Власне" label_introduction_video: "Введення відео" @@ -2230,8 +2236,8 @@ uk: label_share_project_list: "Поділитися списком проєктів" label_share_work_package: "Поділитися пакетом робіт" label_show_all_registered_users: "Усі зареєстровані користувачі" - label_show_less: "Show less" - label_show_more: "Show more" + label_show_less: "Показати менше" + label_show_more: "Показати більше" label_journal: "Журнал" label_journal_diff: "Опис Порівняння" label_language: "Мова" @@ -2381,7 +2387,7 @@ uk: label_product_version: "Версія продукту" label_profile: "Профіль" label_percent_complete: "% завершення" - label_progress_tracking: "Progress tracking" + label_progress_tracking: "Відстеження прогресу" label_project: "Проєкт" label_project_activity: "Дії в проєкті" label_project_attribute_plural: "Атрибути проєкту" @@ -3206,13 +3212,13 @@ uk: setting_hours_per_day_explanation: >- Визначає, що вважати днем, якщо тривалість представлено в днях і годинах (наприклад, якщо день триває 8 годин, то 32 години – це 4 дні). setting_invitation_expiration_days: "Повідомлення про активацію закінчується" - setting_work_package_done_ratio: "Progress calculation mode" + setting_work_package_done_ratio: "Режим обчислення прогресу" setting_work_package_done_ratio_field: "На основі роботи" setting_work_package_done_ratio_field_caption_html: >- - % Complete can be freely set to any value. If you optionally enter a value for Work, Remaining work will automatically be derived. + Для % Завершення можна вільно встановити будь-яке значення. Якщо ви додатково введете значення для параметра Робота, Залишок роботи буде виведено автоматично. setting_work_package_done_ratio_status: "На основі статусу" setting_work_package_done_ratio_status_caption_html: >- - Each status has a % Complete value associated with it. Changing status will change % Complete. + Кожен статус % Завершення має пов'язане з ним значення. Зміна статусу змінить % Завершення. setting_work_package_done_ratio_explanation_html: > У режимі на основі роботи атрибут «% завершення» може мати будь-яке значення. Якщо визначено атрибут «Робота», з нього автоматично виводиться значення атрибута «Залишок роботи». У режимі на основі статусу кожен статус має пов’язане з ним значення атрибута «% завершення». У разі змінення статусу змінюється й значення атрибута «% завершення». setting_work_package_properties: "Властивості робочого пакета" @@ -3233,13 +3239,13 @@ uk: setting_password_min_length: "Мінімальна довжина" setting_password_min_adhered_rules: "Мінімальна кількість необхідних класів" setting_per_page_options: "Кількість записів на сторінку" - setting_percent_complete_on_status_closed: "% Complete when status is closed" - setting_percent_complete_on_status_closed_no_change: "No change" + setting_percent_complete_on_status_closed: "% Завершення, коли статус закрито" + setting_percent_complete_on_status_closed_no_change: "Без змін" setting_percent_complete_on_status_closed_no_change_caption_html: >- - The value of % Complete will not change even when a work package is closed. - setting_percent_complete_on_status_closed_set_100p: "Automatically set to 100%" + Значення % Завершення не зміниться, навіть якщо робочий пакет закрито. + setting_percent_complete_on_status_closed_set_100p: "Автоматично встановити на 100%" setting_percent_complete_on_status_closed_set_100p_caption: >- - A closed work package is considered complete. + Закритий робочий пакет вважається завершеним. setting_plain_text_mail: "Простий текстовий лист (без HTML)" setting_protocol: "Протокол" setting_project_gantt_query: "Подання Ґанта портфеля проєкту " @@ -3264,6 +3270,13 @@ uk: setting_sys_api_enabled: "Увімкнути веб-службу керування сховищем" setting_sys_api_description: "Веб-сервіс управління сховищем забезпечує інтеграцію та авторизацію користувача для доступу до сховищ." setting_time_format: "Час" + setting_total_percent_complete_mode: "Обчислення підсумків ієрархів «% завершення»" + setting_total_percent_complete_mode_work_weighted_average: "Зважено за роботою" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + Атрибут Загальний % завершення буде зважено за атрибутом Робота кожного пакета робіт в ієрархії. Пакети робіт без атрибута Робота ігноруватимуться. + setting_total_percent_complete_mode_simple_average: "Середнє арифметичне" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Атрибут Робота ігнорується, а Загальний % завершення дорівнюватиме середньому арифметичному значень атрибута % завершення пакетів робіт в ієрархії. setting_accessibility_mode_for_anonymous: "Увімкніть режим доступності для анонімних користувачів" setting_user_format: "Формат імені користувача" setting_user_default_timezone: "Часовий пояс користувача за замовчуванням" @@ -3814,16 +3827,16 @@ uk: close_warning: "Ігнорувати це попередження." oauth: application: - builtin: Built-in instance application - confidential: Confidential + builtin: Вбудований екземпляр застосунку + confidential: Конфіденційний singular: "Програма OAuth" plural: "Програми OAuth" named: " Програми OAuth '%{name}'" new: "Нова програма OAuth" - non_confidential: Non confidential + non_confidential: Не конфіденційний default_scopes: "(Області за умовчанням)" instructions: - enabled: "Enable this application, allowing users to perform authorization grants with it." + enabled: "Увімкнути цей застосунок, дозволяючи користувачам надання авторизації з ним." name: "Назва вашої програми. Це буде показано іншим користувачам після авторизації." redirect_uri_html: > Дозволені URL-адреси, дозволені користувачам, можна перенаправити. Один запис на рядок.
Якщо ви реєструєте настільну програму, використовуйте таку URL-адресу. @@ -3833,9 +3846,9 @@ uk: register_intro: "Якщо ви розробляєте клієнтське додаток OAuth для OpenProject, ви можете зареєструвати його, використовуючи цю форму для всіх користувачів." default_scopes: "" header: - builtin_applications: Built-in OAuth applications - other_applications: Other OAuth applications - empty_application_lists: No OAuth applications have been registered. + builtin_applications: Вбудовані застосунки OAuth + other_applications: Інші застосунки OAuth + empty_application_lists: Жодного застосунку OAuth не зареєстровано. client_id: "Ідентифікатор клієнта" client_secret_notice: > Це єдиний раз, коли ми можемо надати клієнтську таємницю, зауважте її та збережіть її в безпеці. Він повинен розглядатися як пароль і не може бути отриманий OpenProject пізніше. diff --git a/config/locales/crowdin/uz.yml b/config/locales/crowdin/uz.yml index 3dbdeef0e52f..334998397cba 100644 --- a/config/locales/crowdin/uz.yml +++ b/config/locales/crowdin/uz.yml @@ -813,7 +813,7 @@ uz: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." @@ -1414,8 +1414,8 @@ uz: failure_message: Consent failed, cannot proceed. title: User Consent decline_warning_message: You have declined to consent and have been logged out. - user_has_consented: User has consented to your configured statement at the given time. - not_yet_consented: User has not consented yet, will be requested upon next login. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Define the mail address that users can reach a data controller to perform data change or removal requests. contact_your_administrator: Please contact your administrator if you want to have your account deleted. contact_this_mail_address: Please contact %{mail_address} if you want to have your account deleted. @@ -1803,6 +1803,8 @@ uz: progress_mode_changed_to_status_based: "Progress calculation updated" status_changed: "Status '%{status_name}'" system_update: "OpenProject system update:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: by changes to predecessor %{link} work_package_parent_changed_times: by changes to parent %{link} @@ -1830,6 +1832,10 @@ uz: Progress calculation automatically adjusted with version update. totals_removed_from_childless_work_packages: >- Work and progress totals automatically removed for non-parent work packages with version update. This is a maintenance task and can be safely ignored. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Configuration guide" get_in_touch: "You have questions? Get in touch with us." @@ -3199,6 +3205,13 @@ uz: setting_sys_api_enabled: "Enable repository management web service" setting_sys_api_description: "The repository management web service provides integration and user authorization for accessing repositories." setting_time_format: "Time" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Enable accessibility mode for anonymous users" setting_user_format: "Users name format" setting_user_default_timezone: "Users default time zone" diff --git a/config/locales/crowdin/vi.yml b/config/locales/crowdin/vi.yml index 5bea90aa0b48..398353db1aa2 100644 --- a/config/locales/crowdin/vi.yml +++ b/config/locales/crowdin/vi.yml @@ -808,7 +808,7 @@ vi: blank: "không được để trống" blank_nested: "cần có thuộc tính '%{property}' được thiết lập." cannot_delete_mapping: "là bắt buộc. Không thể xóa." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "Một gói công việc không thể liên kết với một trong các nhiệm vụ con của nó." circular_dependency: "Mối quan hệ này sẽ tạo ra một sự phụ thuộc tuần hoàn." confirmation: "không khớp %{attribute}." @@ -1399,8 +1399,8 @@ vi: failure_message: Sự đồng ý không thành công, không thể tiếp tục. title: Sự đồng ý của người dùng decline_warning_message: Bạn đã từ chối đồng ý và đã đăng xuất. - user_has_consented: Người dùng đã đồng ý với tuyên bố được định cấu hình của bạn tại thời điểm nhất định. - not_yet_consented: Người dùng chưa đồng ý, sẽ được yêu cầu đồng ý khi đăng nhập lần tiếp theo. + user_has_consented: The user gave their consent to your [configured consent information text](consent_settings). + not_yet_consented: The user has not yet given their consent to your [configured consent information text](consent_settings). They will be reminded the next time they log in. contact_mail_instructions: Xác định địa chỉ email mà người dùng có thể liên hệ với người quản lý dữ liệu để thực hiện yêu cầu thay đổi hoặc xóa dữ liệu. contact_your_administrator: Vui lòng liên hệ với quản trị viên của bạn nếu bạn muốn xóa tài khoản của mình. contact_this_mail_address: Vui lòng liên hệ với %{mail_address} nếu bạn muốn xóa tài khoản của mình. @@ -1770,6 +1770,8 @@ vi: progress_mode_changed_to_status_based: "Cập nhật tính toán tiến độ" status_changed: "Trạng thái '%{status_name}'" system_update: "Cập nhật hệ thống OpenProject:" + total_percent_complete_mode_changed_to_work_weighted_average: "Calculation of % Complete totals now weighted by Work." + total_percent_complete_mode_changed_to_simple_average: "Calculation of % Complete totals now based on a simple average of only % Complete values." cause_descriptions: work_package_predecessor_changed_times: bởi các thay đổi đối với người tiền nhiệm %{link} work_package_parent_changed_times: bởi các thay đổi đối với cha %{link} @@ -1797,6 +1799,10 @@ vi: Tính toán tiến độ tự động được điều chỉnh với cập nhật phiên bản. totals_removed_from_childless_work_packages: >- Tổng số công việc và tiến độ tự động bị xóa cho các gói công việc không có cha với cập nhật phiên bản. Đây là một nhiệm vụ bảo trì và có thể được bỏ qua một cách an toàn. + total_percent_complete_mode_changed_to_work_weighted_average: >- + Child work packages without Work are ignored. + total_percent_complete_mode_changed_to_simple_average: >- + Work values of child work packages are ignored. links: configuration_guide: "Hướng dẫn cấu hình" get_in_touch: "Nếu bạn còn những câu hỏi khác ? Hãy liên lạc với chúng tôi" @@ -2086,7 +2092,7 @@ vi: label_file_plural: "Tệp" label_filter_add: "Thêm bộ lọc" label_filter: "Bộ lọc" - label_filter_plural: "Bộ lọc" + label_filter_plural: "Các bộ lọc" label_filters_toggle: "Hiển thị/ẩn bộ lọc" label_float: "Số thực" label_folder: "Thư mục" @@ -3164,6 +3170,13 @@ vi: setting_sys_api_enabled: "Kích hoạt dịch vụ quản lý kho" setting_sys_api_description: "Dịch vụ quản lý kho cung cấp tích hợp và xác thực người dùng cho việc truy cập kho." setting_time_format: "Thời gian" + setting_total_percent_complete_mode: "Calculation of % Complete hierarchy totals" + setting_total_percent_complete_mode_work_weighted_average: "Weighted by work" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + The total % Complete will be weighted against the Work of each work package in the hierarchy. Work packages without Work will be ignored. + setting_total_percent_complete_mode_simple_average: "Simple average" + setting_total_percent_complete_mode_simple_average_caption_html: >- + Work is ignored and the total % Complete will be a simple average of % Complete values of work packages in the hierarchy. setting_accessibility_mode_for_anonymous: "Kích hoạt chế độ truy cập cho người dùng ẩn danh" setting_user_format: "Định dạng tên người dùng" setting_user_default_timezone: "Time zone mặc định" diff --git a/config/locales/crowdin/zh-CN.seeders.yml b/config/locales/crowdin/zh-CN.seeders.yml index 037d46169ec8..64166d212273 100644 --- a/config/locales/crowdin/zh-CN.seeders.yml +++ b/config/locales/crowdin/zh-CN.seeders.yml @@ -81,7 +81,7 @@ zh-CN: demo-project: name: 演示项目 status_explanation: 所有任务都按计划进行。相关人员均知晓各自任务。系统已完全建立。 - description: 这是对此演示项目目标的简短摘要。 + description: 这是对此演示 Scrum 项目目标的简短摘要。 news: item_0: title: 欢迎来到您的演示项目 @@ -199,7 +199,7 @@ zh-CN: scrum-project: name: Scrum 项目 status_explanation: 所有任务都按计划进行。相关人员均知晓各自任务。系统已完全建立。 - description: 这是对此演示Scrum项目目标的简短摘要。 + description: 这是对此演示 Scrum 项目目标的简短摘要。 news: item_0: title: 欢迎来到您的 Scrum 演示项目 diff --git a/config/locales/crowdin/zh-CN.yml b/config/locales/crowdin/zh-CN.yml index 07269664d855..ecf41dfc3095 100644 --- a/config/locales/crowdin/zh-CN.yml +++ b/config/locales/crowdin/zh-CN.yml @@ -70,7 +70,7 @@ zh-CN: text: "您确定要删除当前使用的企业版令牌吗?" title: "删除令牌" replace_token: "替换您当前的支持令牌" - order: "订购本地部署的 Enterprise edition" + order: "订购本地部署版的 Enterprise edition" paste: "粘贴您企业版的支持令牌" required_for_feature: "此功能仅限具激活的企业版支持令牌的订阅者使用。" enterprise_link: "如需了解详细信息,请单击此处。" @@ -802,7 +802,7 @@ zh-CN: blank: "不能为空。" blank_nested: "需要设置属性“%{property}”。" cannot_delete_mapping: "必需项,不能删除" - is_for_all_cannot_modify: "适用于全部。不可修改。" + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "工作包无法链接到它的子任务之一。" circular_dependency: "这种关系将创建循环依赖项。" confirmation: "不匹配 %{attribute}。" @@ -1393,8 +1393,8 @@ zh-CN: failure_message: 同意失败, 无法继续。 title: 用户同意 decline_warning_message: 您已拒绝同意并已注销。 - user_has_consented: 用户已同意您在给定时间配置的语句。 - not_yet_consented: 用户尚未同意, 将在下次登录时请求。 + user_has_consented: 用户同意您的 [配置的同意信息文本](同意设置)。 + not_yet_consented: 用户尚未同意[配置的同意信息](同意设置)。他们下次登录时会被提醒。 contact_mail_instructions: 定义用户可以访问数据控制器以执行数据更改或删除请求的邮件地址。 contact_your_administrator: 如果您想删除您的帐户, 请与您的管理员联系。 contact_this_mail_address: 如果您想删除您的帐户, 请联系%{mail_address}。 @@ -1764,6 +1764,8 @@ zh-CN: progress_mode_changed_to_status_based: "更新进度计算" status_changed: "状态 '%{status_name}'" system_update: "OpenProject 系统更新:" + total_percent_complete_mode_changed_to_work_weighted_average: "现在按工作加权计算的 完成% 总数。" + total_percent_complete_mode_changed_to_simple_average: "完成% 总数的计算现在仅基于完成% 值的简单平均值。" cause_descriptions: work_package_predecessor_changed_times: 根据前置任务 %{link}的更改 work_package_parent_changed_times: 通过对父级的更改 %{link} @@ -1791,6 +1793,10 @@ zh-CN: 进度计算自动设置为基于工时的模式,并随版本更新而调整。 totals_removed_from_childless_work_packages: >- 使用 版本更新的非父工作包的工作和进度总计自动移除。 这是一个维护任务,可以安全地被忽略。 + total_percent_complete_mode_changed_to_work_weighted_average: >- + 无工时的子工作包被忽略。 + total_percent_complete_mode_changed_to_simple_average: >- + 忽略子工作包的工时值。 links: configuration_guide: "配置指南" get_in_touch: "遇到问题了?与我们联系。" @@ -2339,7 +2345,7 @@ zh-CN: label_revision_id: "修订版本 %{value}" label_revision_plural: "修订" label_roadmap: "路线图" - label_roadmap_edit: "编辑路线图 %{name}" + label_roadmap_edit: "编辑路线图%{name}" label_roadmap_due_in: "%{value} 到期" label_roadmap_no_work_packages: "该版本没有工作包。" label_roadmap_overdue: "%{value} 超时" @@ -2989,7 +2995,7 @@ zh-CN: managed: "在 OpenProject 中创建新的存储库" storage: not_available: "磁盘存储开销不可用于此存储库。" - update_timeout: "在 N 分钟内保留存储库最后所需磁盘空间的信息。由于计算存储库所需的磁盘空间可能增加系统开销,增加该值可以减少性能影响。" + update_timeout: "在 N 分钟内保留存储库最后所需的磁盘空间信息。由于计算存储库所需的磁盘空间可能增加系统开销,增加该值可以减少性能影响。" oauth_application_details: "关闭此窗口后,将无法再次访问客户端密钥值。请将这些值复制到 Nextcloud OpenProject 集成设置中:" oauth_application_details_link_text: "转到设置页面" setup_documentation_details: "如果您在配置新文件存储方面需要帮助,请查看文档:" @@ -3149,9 +3155,16 @@ zh-CN: setting_session_ttl_hint: "当设置的值低于5时,其作用类似于禁用。" setting_session_ttl_enabled: "会话过期" setting_start_of_week: "一周起始日" - setting_sys_api_enabled: "启用版本库管理 web 服务" + setting_sys_api_enabled: "启用存储库管理网页服务" setting_sys_api_description: "存储库管理网页服务提供了集成的,用户授权的存储库访问。" setting_time_format: "时间" + setting_total_percent_complete_mode: "计算 完成% 层次结构总数" + setting_total_percent_complete_mode_work_weighted_average: "按工作权重" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + 总完成%将根据层次结构中每个工作包的工时加权计算。没有工时的工作包将被忽略。 + setting_total_percent_complete_mode_simple_average: "简单平均值" + setting_total_percent_complete_mode_simple_average_caption_html: >- + 工时 将被忽略,总完成% 将是层次结构中各工作包的 完成% 值的简单平均值。 setting_accessibility_mode_for_anonymous: "为匿名用户启用辅助功能模式" setting_user_format: "用户名格式" setting_user_default_timezone: "用户默认时区" @@ -3461,7 +3474,7 @@ zh-CN: warning_user_limit_reached_admin: > 添加额外的用户将超出当前限制。请升级您的计划,以确保外部用户能够访问此实例。 warning_user_limit_reached_instructions: > - 您达到了用户限制(%{current}/%{max}活跃用户)。 请联系sales@openproject.com以升级您的Enterprise edition计划并添加其他用户。 + 您已达到用户限制(%{current}/%{max} 活跃用户)。请联系 sales@openproject.com 升级您的企业版计划以添加额外用户。 warning_protocol_mismatch_html: > warning_bar: diff --git a/config/locales/crowdin/zh-TW.yml b/config/locales/crowdin/zh-TW.yml index 80b01d80a141..6d97ad57d414 100644 --- a/config/locales/crowdin/zh-TW.yml +++ b/config/locales/crowdin/zh-TW.yml @@ -785,7 +785,7 @@ zh-TW: readonly: "唯讀" remaining_hours: "剩餘工作" remaining_time: "剩餘工作" - shared_with_users: "協作成員(共用)" + shared_with_users: "共用" schedule_manually: "手動排程" spent_hours: "耗時" spent_time: "耗時" @@ -804,7 +804,7 @@ zh-TW: blank: "不可空白" blank_nested: "需要設置屬性 '%{property}' " cannot_delete_mapping: "必需項,不能刪除" - is_for_all_cannot_modify: "全域使用。無法修改。" + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "一個工作項目不能聯結到它的一個子項目" circular_dependency: "這個關係會建立一個循環依賴" confirmation: "不吻合 %{attribute}。" @@ -1395,8 +1395,8 @@ zh-TW: failure_message: 同意失敗, 無法繼續。 title: 使用者同意個資意向書 decline_warning_message: 您已拒絕同意並已登出。 - user_has_consented: 使用者已同意您在給定時間配置的語句。 - not_yet_consented: 使用者尚未同意, 將在下次登錄時請求。 + user_has_consented: 使用者同意您的 [設定的同意資訊文字](consent_settings)。 + not_yet_consented: 使用者尚未同意您的 [設定的同意資訊文字](consent_settings)。下次登入時會提醒他們。 contact_mail_instructions: 使用者可透過系統更改或移除郵寄地址。 contact_your_administrator: 如果您想刪除您的帳戶, 請與您的管理員聯繫。 contact_this_mail_address: 如果要刪除帳戶, 請聯繫 %{mail_address}。 @@ -1766,6 +1766,8 @@ zh-TW: progress_mode_changed_to_status_based: "更新計算後的進度" status_changed: "狀態 '%{status_name}'" system_update: "OpenProject 系統更新:" + total_percent_complete_mode_changed_to_work_weighted_average: "完成百分比總計的計算現在以工作加權。" + total_percent_complete_mode_changed_to_simple_average: "完成百分比總數的計算現在僅基於完成百分比值的簡單平均值。" cause_descriptions: work_package_predecessor_changed_times: 根據前置任務 %{link} 的更改 work_package_parent_changed_times: 因上層%{link}而異動 @@ -1793,6 +1795,10 @@ zh-TW: 自動計算進度隨版本更新調整。 totals_removed_from_childless_work_packages: >- 使用 版本更新的非父工作包的工作和進度總計自動移除。 這是一個維護任務,可以安全地被忽略。 + total_percent_complete_mode_changed_to_work_weighted_average: >- + 沒有工作內容的子工作項目會被忽略。 + total_percent_complete_mode_changed_to_simple_average: >- + 子工作包的工作值會被忽略。 links: configuration_guide: "設定指南" get_in_touch: "如有任何問題,歡迎聯繫我們" @@ -2082,7 +2088,7 @@ zh-TW: label_file_plural: "檔案" label_filter_add: "新增條件" label_filter: "篩選條件" - label_filter_plural: "篩選器" + label_filter_plural: "篩選條件" label_filters_toggle: "顯示/隱藏篩選條件" label_float: "浮點數" label_folder: "資料夾" @@ -2095,7 +2101,7 @@ zh-TW: label_generate_key: "產生一個金鑰" label_git_path: ".git 目錄的路徑" label_greater_or_equal: ">=" - label_group_by: "分組依據" + label_group_by: "分類" label_group_new: "新增群組" label_group: "群組" label_group_named: "群組名稱 %{name}" @@ -2106,7 +2112,7 @@ zh-TW: label_history: "歷史" label_hierarchy_leaf: "頁面結構頁" label_home: "Home" - label_subject_or_id: "主旨或 id" + label_subject_or_id: "名稱或 id" label_calendar_subscriptions: "訂閱行事曆" label_identifier: "識別碼" label_in: "在" @@ -2149,7 +2155,7 @@ zh-TW: label_latest_revision_plural: "最新版本" label_ldap_authentication: "LDAP 認證" label_learn_more: "了解更多" - label_less_or_equal: "<=" + label_less_or_equal: "之後" label_less_than_ago: "幾天內" label_link_url: "連結(URL)" label_list: "清單" @@ -2954,7 +2960,7 @@ zh-TW: empty_repository: "版本庫已存在,但是是空的。" exists_on_filesystem: "版本庫的路徑已經存在在檔案系統中" filesystem_access_failed: "在檔案系統中存取版本庫時發生錯誤: %{message}" - not_manageable: "此版本庫的提供者不能被 OpenProject 所管理" + not_manageable: "此版本庫的提供商不能被 OpenProject 所管理" path_permission_failed: "嘗試建立以下路徑(%{path})時發生錯誤。請確保 OpenProject 可以寫入到該資料夾。" unauthorized: "你沒有被授權存取這個版本庫,或者你的憑證已經失效。" unavailable: "版本褲無法使用" @@ -3157,6 +3163,13 @@ zh-TW: setting_sys_api_enabled: "啟用版控容器管理網路服務" setting_sys_api_description: "版控容器管理網路服務提供容器存取管理和使用者認證" setting_time_format: "時間" + setting_total_percent_complete_mode: "完成百分比層級總計" + setting_total_percent_complete_mode_work_weighted_average: "工作加權" + setting_total_percent_complete_mode_work_weighted_average_caption_html: >- + 總完成百分比將根據層級架構中每個工作套件的工作量加權計算。沒有工作的工作包將被忽略。 + setting_total_percent_complete_mode_simple_average: "簡易平均" + setting_total_percent_complete_mode_simple_average_caption_html: >- + 工作會被忽略,總完成百分比將是層級結構中工作套件完成百分比值的簡單平均值。 setting_accessibility_mode_for_anonymous: "啟用匿名使用者存取模式" setting_user_format: "姓名顯示方式" setting_user_default_timezone: "使用者預設時區" @@ -3424,7 +3437,7 @@ zh-TW: active: "啟用" activate: "啟用" activate_and_reset_failed_logins: "啟用並重置失敗的登錄" - authentication_provider: "驗證提供者" + authentication_provider: "身份驗證提供商" identity_url_text: "身份驗證提供商提供的內部唯一標識符。" authentication_settings_disabled_due_to_external_authentication: > 此使用者通過外部身份檢查器提供者進行身份驗證, 因此 OpenProject 中沒有要更改的密碼。 @@ -3446,7 +3459,7 @@ zh-TW: reset_failed_logins: "重置失敗的登錄" status_user_and_brute_force: "%{user} 和 %{brute_force}" status_change: "狀態變更" - text_change_disabled_for_provider_login: "該名稱由賬戶提供者設定,因此無法更改。" + text_change_disabled_for_provider_login: "該名稱由您的登入提供商設定,因此無法變更。" text_change_disabled_for_ldap_login: "姓名和電子郵件由 LDAP 設定,因此無法變更。" unlock: "按此啟用" unlock_and_reset_failed_logins: "啟用並清除登入紀錄" @@ -3812,4 +3825,4 @@ zh-TW: description: "在 OpenProject 中集成 OmniAuth 策略提供程序以進行身份驗證。" plugin_openproject_auth_saml: name: "OmniAuth SAML / SSO單點登錄" - description: "將 OmniAuth SAML 身份提供程序添加到 OpenProject" + description: "將 OmniAuth SAML 提供商增加到 OpenProject" diff --git a/config/locales/en.yml b/config/locales/en.yml index d1f67e88e412..bafd6760b00b 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -890,7 +890,7 @@ en: blank: "can't be blank." blank_nested: "needs to have the property '%{property}' set." cannot_delete_mapping: "is required. Cannot be deleted." - is_for_all_cannot_modify: "is for all. Cannot be modified." + is_for_all_cannot_modify: "is for all projects and can therefore not be modified." cant_link_a_work_package_with_a_descendant: "A work package cannot be linked to one of its subtasks." circular_dependency: "This relation would create a circular dependency." confirmation: "doesn't match %{attribute}." diff --git a/config/locales/js-en.yml b/config/locales/js-en.yml index d1ca668b9b75..2e1ae58c07c5 100644 --- a/config/locales/js-en.yml +++ b/config/locales/js-en.yml @@ -399,16 +399,17 @@ en: learn_about: "Learn more about the new features" # Include the version to invalidate outdated translations in other locales. # Otherwise, e.g. chinese might still have the translations for 10.0 in the 12.0 release. - "14_5": + "14_6": standard: new_features_html: > - The release contains various new features and improvements, such as:
+ The release brings various features and improvements for you, e.g.
ical_sharing_modal: diff --git a/db/migrate/20240930122522_change_view_of_queries_with_timeline_to_gantt_again.rb b/db/migrate/20240930122522_change_view_of_queries_with_timeline_to_gantt_again.rb new file mode 100644 index 000000000000..dc138f712919 --- /dev/null +++ b/db/migrate/20240930122522_change_view_of_queries_with_timeline_to_gantt_again.rb @@ -0,0 +1,16 @@ +require_relative "20231201085450_change_view_of_queries_with_timeline_to_gantt" + +# Inherit from the original migration `ChangeViewOfQueriesWithTimelineToGantt` +# to avoid duplicating it. +# +# The original migration was fine, but it was applied too early: in OpenProject +# 13.2.0 the migration would already have been run and it was still possible to +# create Gantt queries inside the work packages module. Such queries were not +# migrated. +# +# This was registered as bug #56769. +# +# This migration runs the original migration again to ensure all queries +# displayed as Gantt charts are displayed in the right module. +class ChangeViewOfQueriesWithTimelineToGanttAgain < ChangeViewOfQueriesWithTimelineToGantt +end diff --git a/docs/release-notes/14-6-0/README.md b/docs/release-notes/14-6-0/README.md index 52301f797203..e08d50f6fbdf 100644 --- a/docs/release-notes/14-6-0/README.md +++ b/docs/release-notes/14-6-0/README.md @@ -8,21 +8,65 @@ release_date: 2024-09-26 # OpenProject 14.6.0 -Release date: 2024-09-26 +Release date: 2024-10-09 -We released OpenProject [OpenProject 14.6.0](https://community.openproject.org/versions/2111). -The release contains several bug fixes and we recommend updating to the newest version. -In these Release Notes, we will give an overview of important feature changes. -At the end, you will find a complete list of all changes and bug fixes. +We released OpenProject [OpenProject 14.6.0](https://community.openproject.org/versions/2111). The release contains several bug fixes and we recommend updating to the newest version. + +In these Release Notes, we will give an overview of important feature changes. At the end, you will find a complete list of all changes and bug fixes. ## Important feature changes - +### Updated progress reporting with most flexible options + +In response to valuable user feedback, OpenProject 14.6 brings important changes to progress reporting. We greatly appreciate the input from our Community, which helped shape these updates. Based on your feedback, the % Complete field is now manually editable again in work-based mode (like it has been in the versions before 14.0), removing the previous requirement to input Work or Remaining Work. This gives users more flexibility in tracking project progress. + +But we did not only revise the changes we made with 14.0, we also added new options to enhance progress tracking and make it most flexible for our users. This is why, additionally, administrators now have new settings for progress calculation and % Complete hierarchy totals: + +![Screenshot of the new admin page for progress tracking with OpenProject 14.6](progress-tracking-admin-options.png) + +If you use our progress tracking, we advise reading [this detailed article about progress reporting with OpenProject 14.6](https://www.openproject.org/blog/updates-to-progress-tracking-in-14-6-based-on-user-feedback/) from our product team. + +### Meetings: Receive an update notification with reload option + +If you have not used our Meetings module, you should consider starting it now. We updated dynamic meetings so that you now receive a notification whenever someone else made changes to the meeting you're looking at. Click on the button included in the notification to reload the page. This is a particularly great improvement for teams who work simultaneously in meetings. + +Please note that if you reload the page, any unsaved changes you have made will be lost. We therefore recommend that you save your changes before clicking the Reload button, or even save them in a different location if they are extensive. + +![Screenshot of the OpenProject meetings module, showing the notification: This page has been updated by someone else. Reload to view changes.](openproject-14-6-meetings-reload.png) + +### Enable and disable a custom field for multiple projects at once + +In OpenProject 14.6, administrators can now save time by enabling or disabling custom fields for multiple projects simultaneously. This feature streamlines the process of managing custom fields across projects, making it easier and more efficient for administrators. + +A new tab navigation has been introduced under *Administration* > *Custom Fields*, similar to the project attributes interface. This section displays a list of all projects where a specific custom field is activated. Administrators can easily add or remove projects from the list using a menu within each row, without the need for confirmation. -## Important updates and breaking changes +Additionally, users can include sub-projects when adding, which automatically selects all sub-projects within the hierarchy. Already added projects are visible but deactivated in the dropdown. - +![Screenshot showing the new administration page to add custom fields to multiple projects](open-project-14-6-custom-fields-new-highlighted.png) +Learn more about [custom fields and how to create them](../../user-guide/projects/project-settings/custom-fields/) in our user guide. + +### Use relative work package attribute macros + +In OpenProject 14.6, users can now use descriptions with embedded macros. This feature ensures consistent descriptions across work packages and eliminates the need to manually replace placeholders for each work package attribute. + +This is particularly helpful if you want to work with templates, as the copied work package automatically references its own attributes. Also, this feature will be very helpful for the [upcoming feature to generate PDFs from work package descriptions](https://community.openproject.org/wp/45896). + +Macros such as *workPackageValue:assignee* have been implemented, allowing the dynamic display of work package specific values like the assignee directly in the template. These macros support both work package and project values and labels, making it easier to generate consistent and accurate documentation. Of course, you can still reference a specific work package by including the ID (e.g. *workPackageValue:1234:assignee*). + +![Screenshot showing a work package with macros in the description](openproject-14-6-macros.png) + +See our [documentation for a list of available attributes for work packages](../../user-guide/wysiwyg/#available-attributes-for-work-packages) and take a look at [this blog article to learn more about using macros with OpenProject](https://www.openproject.org/blog/how-to-use-macros/). + +### Show empty lines in saved rich text + +Before 14.6, OpenProject's editors, such as in the work package description, did automatically delete empty lines when saved. Now, empty rows are shown in show mode, edit mode, and are not removed when saving text fields. + +### See past meetings included in the number next to the Meetings tab + +On the Meetings tab in the split screen view, the number next to the “Meetings (2)” tab should include both current and past meetings. Previously, only future meetings were counted. So if you use the Meetings module and reference work packages there, you may notice a higher number on the work package tab for meetings. +### Changes to design settings in administration +[Design settings in OpenProject administration](../../system-admin-guide/design) were split into several sections, to make navigation easier and eliminate scrolling down the page to find the correct setting. ## Bug fixes and changes @@ -91,11 +135,13 @@ At the end, you will find a complete list of all changes and bug fixes. ## Contributions -A very special thank you goes to our sponsors for this release. -Also a big thanks to our Community members for reporting bugs and helping us identify and provide fixes. -Special thanks for reporting and finding bugs go to Jan H, Joris Ceelen, Ivan Kuchin, André van Kaam, Christian Jeschke. - -Last but not least, we are very grateful for our very engaged translation contributors on Crowdin, who translated quite a few OpenProject strings! -Would you like to help out with translations yourself? -Then take a look at our translation guide and find out exactly how you can contribute. -It is very much appreciated! +A very special thank you goes to City of Cologne again for sponsoring features in project lists. Also, a big thanks to our Community members for reporting bugs and helping us identify and provide fixes. +Special thanks for reporting and finding bugs go to Jan H, Joris Ceelen, André van Kaam, and Christian Jeschke. + +Last but not least, we are very grateful for our very engaged translation contributors on Crowdin, who translated quite a few OpenProject strings! This release we would like to highlight +- [DKrukoff](https://crowdin.com/profile/dkrukoff), for translations into Russian. +- [Sara Ruela](https://crowdin.com/profile/Sara.PT), for translations into Portuguese. +- [BigSeung](https://crowdin.com/profile/BigSeung), for translations into Korean. +- [Raffaele Brevetti](https://crowdin.com/profile/rbrevetti), for translations into Italian. + +Would you like to help out with translations yourself? Then take a look at our [translation guide](../../development/translate-openproject/) and find out exactly how you can contribute. It is very much appreciated! \ No newline at end of file diff --git a/docs/release-notes/14-6-0/open-project-14-6-custom-fields-new-highlighted.png b/docs/release-notes/14-6-0/open-project-14-6-custom-fields-new-highlighted.png new file mode 100644 index 000000000000..d84d33e71146 Binary files /dev/null and b/docs/release-notes/14-6-0/open-project-14-6-custom-fields-new-highlighted.png differ diff --git a/docs/release-notes/14-6-0/openproject-14-6-macros.png b/docs/release-notes/14-6-0/openproject-14-6-macros.png new file mode 100644 index 000000000000..b1dffcc7e178 Binary files /dev/null and b/docs/release-notes/14-6-0/openproject-14-6-macros.png differ diff --git a/docs/release-notes/14-6-0/openproject-14-6-meetings-reload.png b/docs/release-notes/14-6-0/openproject-14-6-meetings-reload.png new file mode 100644 index 000000000000..dff22e512623 Binary files /dev/null and b/docs/release-notes/14-6-0/openproject-14-6-meetings-reload.png differ diff --git a/docs/release-notes/14-6-0/progress-tracking-admin-options.png b/docs/release-notes/14-6-0/progress-tracking-admin-options.png new file mode 100644 index 000000000000..660ed65be2a4 Binary files /dev/null and b/docs/release-notes/14-6-0/progress-tracking-admin-options.png differ diff --git a/docs/system-admin-guide/integrations/nextcloud/README.md b/docs/system-admin-guide/integrations/nextcloud/README.md index 9433fdf227b3..30ec4ed9a828 100644 --- a/docs/system-admin-guide/integrations/nextcloud/README.md +++ b/docs/system-admin-guide/integrations/nextcloud/README.md @@ -373,6 +373,17 @@ sudo systemctl restart apache2 If that also not work please check the [instructions for setting up pretty URLs in Nextcloud](https://docs.nextcloud.com/server/22/admin_manual/installation/source_installation.html#pretty-urls). This usually also resolves the issue of stripped `Authorization` headers. +#### Files are not encrypted when using Nextcloud server-side encryption + +> [!NOTE] +> If your Nextcloud server uses server-side encryption, the GroupFolder encryption needs to be manually enabled. +> This is relevant for automatically managed project folders, as the GroupFolder app is used in these cases. +To enable encryption for GroupFolders, run the following command on your Nextcloud server: + +```shell +occ config:app:set groupfolders enable_encryption --value="true" +``` + #### Project folders are not created or you do not have access You have setup the *Project folder* in both environments (Nextcloud and OpenProject), but you cannot see any folder named `OpenProject` in the root directory of **Files** app in Nextcloud. diff --git a/frontend/package-lock.json b/frontend/package-lock.json index e11ffd6769e6..eafd76cf0003 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -47,7 +47,7 @@ "@ngneat/content-loader": "^7.0.0", "@ngx-formly/core": "^6.1.4", "@openproject/octicons-angular": "^19.18.0", - "@openproject/primer-view-components": "^0.47.0", + "@openproject/primer-view-components": "^0.47.1", "@openproject/reactivestates": "^3.0.1", "@primer/css": "^21.3.3", "@types/hotwired__turbo": "^8.0.1", @@ -4821,9 +4821,9 @@ } }, "node_modules/@openproject/primer-view-components": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.0.tgz", - "integrity": "sha512-bJiz0tpUYIu+1a3f6KwJC5RgXB+bOVbct5v4SBP8/Grjfdk8qJiZqlY7aZqJvoHLQS5uU4v287u3hbkeUeE6Ww==", + "version": "0.47.1", + "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.1.tgz", + "integrity": "sha512-knxRfNDnm4DAEQUyxamOON9RqBh/u4/8QSjQbk2LdhcDZBPU66Xqy2dMyE5HmjJfbOHIVgYne08p05DXLH9NYQ==", "dependencies": { "@github/auto-check-element": "^5.2.0", "@github/auto-complete-element": "^3.6.2", @@ -4907,9 +4907,9 @@ }, "node_modules/@primer/view-components": { "name": "@openproject/primer-view-components", - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.0.tgz", - "integrity": "sha512-bJiz0tpUYIu+1a3f6KwJC5RgXB+bOVbct5v4SBP8/Grjfdk8qJiZqlY7aZqJvoHLQS5uU4v287u3hbkeUeE6Ww==", + "version": "0.47.1", + "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.1.tgz", + "integrity": "sha512-knxRfNDnm4DAEQUyxamOON9RqBh/u4/8QSjQbk2LdhcDZBPU66Xqy2dMyE5HmjJfbOHIVgYne08p05DXLH9NYQ==", "dependencies": { "@github/auto-check-element": "^5.2.0", "@github/auto-complete-element": "^3.6.2", @@ -25465,9 +25465,9 @@ } }, "@openproject/primer-view-components": { - "version": "0.47.0", - "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.0.tgz", - "integrity": "sha512-bJiz0tpUYIu+1a3f6KwJC5RgXB+bOVbct5v4SBP8/Grjfdk8qJiZqlY7aZqJvoHLQS5uU4v287u3hbkeUeE6Ww==", + "version": "0.47.1", + "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.1.tgz", + "integrity": "sha512-knxRfNDnm4DAEQUyxamOON9RqBh/u4/8QSjQbk2LdhcDZBPU66Xqy2dMyE5HmjJfbOHIVgYne08p05DXLH9NYQ==", "requires": { "@github/auto-check-element": "^5.2.0", "@github/auto-complete-element": "^3.6.2", @@ -25522,7 +25522,7 @@ "integrity": "sha512-mBq0F6lvAuPioW30RP1CyvSkW76UpAzZp1HM+5N/cfpwuarYVsCWYkWQlDtJqIsGYNSa1E2GgL17HzzDt4Bofg==", "requires": { "@primer/primitives": "^9.0.3", - "@primer/view-components": "npm:@openproject/primer-view-components@^0.47.0" + "@primer/view-components": "npm:@openproject/primer-view-components@^0.47.1" } }, "@primer/primitives": { @@ -25535,9 +25535,9 @@ } }, "@primer/view-components": { - "version": "npm:@openproject/primer-view-components@0.47.0", - "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.0.tgz", - "integrity": "sha512-bJiz0tpUYIu+1a3f6KwJC5RgXB+bOVbct5v4SBP8/Grjfdk8qJiZqlY7aZqJvoHLQS5uU4v287u3hbkeUeE6Ww==", + "version": "npm:@openproject/primer-view-components@0.47.1", + "resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.47.1.tgz", + "integrity": "sha512-knxRfNDnm4DAEQUyxamOON9RqBh/u4/8QSjQbk2LdhcDZBPU66Xqy2dMyE5HmjJfbOHIVgYne08p05DXLH9NYQ==", "requires": { "@github/auto-check-element": "^5.2.0", "@github/auto-complete-element": "^3.6.2", diff --git a/frontend/package.json b/frontend/package.json index 6f8167241ae2..77401dbc4767 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -99,7 +99,7 @@ "@ngneat/content-loader": "^7.0.0", "@ngx-formly/core": "^6.1.4", "@openproject/octicons-angular": "^19.18.0", - "@openproject/primer-view-components": "^0.47.0", + "@openproject/primer-view-components": "^0.47.1", "@openproject/reactivestates": "^3.0.1", "@primer/css": "^21.3.3", "@types/hotwired__turbo": "^8.0.1", @@ -176,6 +176,6 @@ "generate-typings": "tsc -d -p src/tsconfig.app.json" }, "overrides": { - "@primer/view-components": "npm:@openproject/primer-view-components@^0.47.0" + "@primer/view-components": "npm:@openproject/primer-view-components@^0.47.1" } } diff --git a/frontend/src/app/features/homescreen/blocks/new-features.component.ts b/frontend/src/app/features/homescreen/blocks/new-features.component.ts index 62ae851dbcf5..f0f27efcd798 100644 --- a/frontend/src/app/features/homescreen/blocks/new-features.component.ts +++ b/frontend/src/app/features/homescreen/blocks/new-features.component.ts @@ -33,12 +33,12 @@ import { I18nService } from 'core-app/core/i18n/i18n.service'; import { imagePath } from 'core-app/shared/helpers/images/path-helper'; // The key used in the I18n files to distinguish between versions. -const OpVersionI18n = '14_5'; +const OpVersionI18n = '14_6'; -const OpReleaseURL = 'https://www.openproject.org/docs/release-notes/14-5-0/'; +const OpReleaseURL = 'https://www.openproject.org/docs/release-notes/14-6-0/'; /** Update the teaser image to the next version */ -const featureTeaserImage = `${OpVersionI18n}_features.png`; +const featureTeaserImage = `${OpVersionI18n}_features.svg`; @Component({ template: ` diff --git a/frontend/src/assets/images/14_5_features.png b/frontend/src/assets/images/14_5_features.png deleted file mode 100644 index f8defaf793c6..000000000000 Binary files a/frontend/src/assets/images/14_5_features.png and /dev/null differ diff --git a/frontend/src/assets/images/14_6_features.svg b/frontend/src/assets/images/14_6_features.svg new file mode 100644 index 000000000000..b9ae12c679bc --- /dev/null +++ b/frontend/src/assets/images/14_6_features.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/src/global_styles/content/_tables.sass b/frontend/src/global_styles/content/_tables.sass index fc1f477de2b4..18725c164daa 100644 --- a/frontend/src/global_styles/content/_tables.sass +++ b/frontend/src/global_styles/content/_tables.sass @@ -55,8 +55,6 @@ table font-style: normal font-weight: var(--base-text-weight-bold) background-color: #EEEEEE - .hours-dec - font-size: 0.9em #workflow_form .generic-table--results-container @@ -144,8 +142,6 @@ tr td &.hours font-weight: var(--base-text-weight-bold) - .hours-dec - font-size: 0.9em .date .spot-drop-modal display: block diff --git a/frontend/src/global_styles/layout/_base.sass b/frontend/src/global_styles/layout/_base.sass index 08da9c9412eb..c6465b61d7b9 100644 --- a/frontend/src/global_styles/layout/_base.sass +++ b/frontend/src/global_styles/layout/_base.sass @@ -49,7 +49,7 @@ margin: 0 0 0 0 padding: 0 // Needed for Safari - height: calc(100vh - var(--header-height)) + height: calc(100dvh - var(--header-height)) overflow-y: auto overflow-x: hidden background-color: var(--body-background) diff --git a/frontend/src/global_styles/openproject/_variable_defaults.scss b/frontend/src/global_styles/openproject/_variable_defaults.scss index 57f165baedbe..6a6462d0a642 100644 --- a/frontend/src/global_styles/openproject/_variable_defaults.scss +++ b/frontend/src/global_styles/openproject/_variable_defaults.scss @@ -112,6 +112,7 @@ --button--active-border-color: #cacaca; --button--primary-background-color: var(--primary-button-color); --button--primary-background-hover-color: var(--primary-button-color--major1); + --button--primary-background-active-color: var(--primary-button-color--major1); --button--primary-background-disabled-color: var(--primary-button-color--minor2); --button--primary-border-color: var(--button--primary-background-color); --button--primary-border-disabled-color: var(--primary-button-color--minor2); diff --git a/frontend/src/global_styles/primer/_flash.sass b/frontend/src/global_styles/primer/_flash.sass index 73ea1438690e..491126faac0e 100644 --- a/frontend/src/global_styles/primer/_flash.sass +++ b/frontend/src/global_styles/primer/_flash.sass @@ -36,6 +36,7 @@ $op-primer-flash-toaster-width: 80% left: 10% right: 10% top: 1rem + background-color: var(--body-background) // Align multiple toasts display: flex diff --git a/frontend/src/global_styles/primer/_overrides.sass b/frontend/src/global_styles/primer/_overrides.sass index 570bc7c90340..396c4ded90bd 100644 --- a/frontend/src/global_styles/primer/_overrides.sass +++ b/frontend/src/global_styles/primer/_overrides.sass @@ -91,3 +91,7 @@ sub-header, &:hover background: var(--header-item-bg-hover-color) color: var(--header-item-font-hover-color) + +// Todo: Remove once https://github.com/primer/view_components/pull/3087 is merged +.FormControl-spacingWrapper + row-gap: var(--stack-gap-normal) diff --git a/frontend/src/stimulus/controllers/poll-for-changes.controller.ts b/frontend/src/stimulus/controllers/poll-for-changes.controller.ts index 811dc91926fd..ba6712479da3 100644 --- a/frontend/src/stimulus/controllers/poll-for-changes.controller.ts +++ b/frontend/src/stimulus/controllers/poll-for-changes.controller.ts @@ -39,9 +39,11 @@ export default class PollForChangesController extends ApplicationController { autoscrollEnabled: Boolean, }; - static targets = ['reloadButton']; + static targets = ['reloadButton', 'reference']; declare reloadButtonTarget:HTMLLinkElement; + declare referenceTarget:HTMLElement; + declare readonly hasReferenceTarget:boolean; declare referenceValue:string; declare urlValue:string; @@ -69,12 +71,20 @@ export default class PollForChangesController extends ApplicationController { clearInterval(this.interval); } + buildReference():string { + if (this.hasReferenceTarget) { + return this.referenceTarget.dataset.referenceValue as string; + } + + return this.referenceValue; + } + reloadButtonTargetConnected() { this.reloadButtonTarget.addEventListener('click', this.rememberCurrentScrollPosition.bind(this)); } triggerTurboStream() { - void fetch(`${this.urlValue}?reference=${this.referenceValue}`, { + void fetch(`${this.urlValue}?reference=${this.buildReference()}`, { headers: { Accept: 'text/vnd.turbo-stream.html', }, diff --git a/lookbook/docs/patterns/02-forms.md.erb b/lookbook/docs/patterns/02-forms.md.erb index 81a134ef375c..5008f1872a85 100644 --- a/lookbook/docs/patterns/02-forms.md.erb +++ b/lookbook/docs/patterns/02-forms.md.erb @@ -45,14 +45,6 @@ The options are: <%= embed Patterns::FormsPreview, :default, panels: %i[] %> -## Vertical spacing - -By default, form elements do not have proper vertical spacing in Primer. We recommend a 16px (`stack/gap/normal`) vertical separate between individual elements. There is an [open issue in Primer's GitHub](https://github.com/primer/view_components/issues/3042) to fix this. - -Until this is fixed at a component level, please do not manually apply form padding. - -An alternative approach is to wrap individual form elements using `Form group`. Please only use this sparingly and only when it is absolutely necessarily. - ## Technical notes ### Usage diff --git a/modules/backlogs/config/locales/crowdin/ro.yml b/modules/backlogs/config/locales/crowdin/ro.yml index c36ec0715492..974ccf5b79e6 100644 --- a/modules/backlogs/config/locales/crowdin/ro.yml +++ b/modules/backlogs/config/locales/crowdin/ro.yml @@ -28,7 +28,7 @@ ro: work_package: position: "Poziție" story_points: "Puncte" - backlogs_work_package_type: "Tip restanță" + backlogs_work_package_type: "Tipul de restante" errors: models: work_package: diff --git a/modules/backlogs/config/locales/crowdin/tr.yml b/modules/backlogs/config/locales/crowdin/tr.yml index 791ee9005f5a..32da621a8f83 100644 --- a/modules/backlogs/config/locales/crowdin/tr.yml +++ b/modules/backlogs/config/locales/crowdin/tr.yml @@ -141,7 +141,7 @@ tr: points_resolved: "puanlar çözüldü" points_to_accept: "puan kabul edilmedi" points_to_resolve: "puan çözülmedi" - project_module_backlogs: "İş listeleri" + project_module_backlogs: "Bekleyen İşler" rb_label_copy_tasks: "İş paketlerini kopyala" rb_label_copy_tasks_all: "Hepsi" rb_label_copy_tasks_none: "Hiçbiri" diff --git a/modules/backlogs/config/locales/crowdin/zh-TW.yml b/modules/backlogs/config/locales/crowdin/zh-TW.yml index bd8e8101dfc2..85de4c2f83a3 100644 --- a/modules/backlogs/config/locales/crowdin/zh-TW.yml +++ b/modules/backlogs/config/locales/crowdin/zh-TW.yml @@ -21,7 +21,7 @@ #++ zh-TW: plugin_openproject_backlogs: - name: "OpenProject代辦事項" + name: "OpenProject待辦事項" description: "此模組新增了讓敏捷團隊能夠在 Scrum 專案中使用 OpenProject 的功能。" activerecord: attributes: diff --git a/modules/bim/config/locales/crowdin/fr.yml b/modules/bim/config/locales/crowdin/fr.yml index 1be78163d4bc..9e4ab945797c 100644 --- a/modules/bim/config/locales/crowdin/fr.yml +++ b/modules/bim/config/locales/crowdin/fr.yml @@ -58,7 +58,7 @@ fr: perform_description: "Voulez-vous importer ou mettre à jour les problèmes repris ci-dessus ?" replace_with_system_user: 'Les remplacer par l''utilisateur "Système"' import_as_system_user: 'Les importer comme utilisateur "Système".' - what_to_do: "Que voulez-vous faire?" + what_to_do: "Que voulez-vous faire ?" work_package_has_newer_changes: "Obsolète ! Ce sujet n'a pas été mis à jour, car les derniers changements sur le serveur étaient plus récents que la \"ModifiedDate\" du sujet importé. Toutefois, les commentaires sur le sujet ont été importés." bcf_file_not_found: "Impossible de localiser le fichier BCF. Veuillez recommencer le processus de téléversement." export: diff --git a/modules/bim/config/locales/crowdin/ru.yml b/modules/bim/config/locales/crowdin/ru.yml index ec3734247f36..9c6dccc7c3ae 100644 --- a/modules/bim/config/locales/crowdin/ru.yml +++ b/modules/bim/config/locales/crowdin/ru.yml @@ -120,7 +120,7 @@ ru: label: 'Обработка?' pending: 'В ожидании' processing: 'В процессе' - completed: 'Выполнено' + completed: 'Завершено' error: 'Ошибка' processing_notice: processing_default: 'Следующие модели IFC по умолчанию еще обрабатываются и поэтому недоступны:' diff --git a/modules/budgets/config/locales/crowdin/cs.yml b/modules/budgets/config/locales/crowdin/cs.yml index 231267126ec3..72dd2ee8925f 100644 --- a/modules/budgets/config/locales/crowdin/cs.yml +++ b/modules/budgets/config/locales/crowdin/cs.yml @@ -27,7 +27,7 @@ cs: budget: author: "Autor" available: "Dostupné" - budget: "Rozpočet" + budget: "Plánované" budget_ratio: "Stráveno (poměr)" description: "Popis" spent: "Strávený čas" diff --git a/modules/gantt/config/locales/crowdin/cs.yml b/modules/gantt/config/locales/crowdin/cs.yml index be0845bc2fb0..21d4643a9438 100644 --- a/modules/gantt/config/locales/crowdin/cs.yml +++ b/modules/gantt/config/locales/crowdin/cs.yml @@ -1,3 +1,3 @@ #English strings go here cs: - project_module_gantt: "Ganttovi diagramy" + project_module_gantt: "Ganttovy diagramy" diff --git a/modules/github_integration/config/locales/crowdin/js-fr.yml b/modules/github_integration/config/locales/crowdin/js-fr.yml index ca8e9ba6fa6a..5feba158fe67 100644 --- a/modules/github_integration/config/locales/crowdin/js-fr.yml +++ b/modules/github_integration/config/locales/crowdin/js-fr.yml @@ -40,9 +40,9 @@ fr: empty: 'Il n''y a pas encore de demandes de pull liées. Liez une PR existante en utilisant le code OP#%{wp_id} dans la description de la PR ou créez une nouvelle PR.' github_actions: Actions pull_requests: - message: "La demande pull #%{pr_number} %{pr_link} pour %{repository_link} créée par %{github_user_link} a été %{pr_state}." - merged_message: "La demande pull #%{pr_number} %{pr_link} pour %{repository_link} a été %{pr_state} par %{github_user_link}." - referenced_message: "La demande pull #%{pr_number} %{pr_link} pour %{repository_link} créée par %{github_user_link} a référencé ce lot de travaux." + message: "La requête pull #%{pr_number} %{pr_link} pour %{repository_link} créée par %{github_user_link} a été %{pr_state}." + merged_message: "La requête pull #%{pr_number} %{pr_link} pour %{repository_link} a été %{pr_state} par %{github_user_link}." + referenced_message: "La requête pull #%{pr_number} %{pr_link} pour %{repository_link} créée par %{github_user_link} a référencé ce lot de travaux." states: opened: 'ouverte' closed: 'clôturé' diff --git a/modules/gitlab_integration/config/locales/crowdin/js-ru.yml b/modules/gitlab_integration/config/locales/crowdin/js-ru.yml index aca553b3ecd5..9c82c691e16e 100644 --- a/modules/gitlab_integration/config/locales/crowdin/js-ru.yml +++ b/modules/gitlab_integration/config/locales/crowdin/js-ru.yml @@ -47,7 +47,7 @@ ru: tab_mrs: empty: 'Запросы на слияние пока не связаны. Свяжите существующий MR, используя код OP#%{wp_id} (или PP#%{wp_id} для частных ссылок) в названии/описании MR, или создайте новый MR.' gitlab_pipelines: Пайплайны - updated_on: Обновлено на + updated_on: Обновлено work_packages: tabs: gitlab: "GitLab" diff --git a/modules/ldap_groups/config/locales/crowdin/zh-CN.yml b/modules/ldap_groups/config/locales/crowdin/zh-CN.yml index 4d0259eed6ce..d551c0a9e91e 100644 --- a/modules/ldap_groups/config/locales/crowdin/zh-CN.yml +++ b/modules/ldap_groups/config/locales/crowdin/zh-CN.yml @@ -1,7 +1,7 @@ zh-CN: plugin_openproject_ldap_groups: name: "OpenProject LDAP 组" - description: "LDAP 组成员同步。" + description: "LDAP组成员同步。" activerecord: attributes: ldap_groups/synchronized_group: diff --git a/modules/ldap_groups/config/locales/crowdin/zh-TW.yml b/modules/ldap_groups/config/locales/crowdin/zh-TW.yml index 9f9da07a50a7..d7227e6063ba 100644 --- a/modules/ldap_groups/config/locales/crowdin/zh-TW.yml +++ b/modules/ldap_groups/config/locales/crowdin/zh-TW.yml @@ -9,7 +9,7 @@ zh-TW: ldap_auth_source: 'LDAP 連線' sync_users: '同步使用者' ldap_groups/synchronized_filter: - filter_string: '簡約登入目錄制約(LDAP)篩選' + filter_string: 'LDAP篩選條件' ldap_auth_source: 'LDAP 連線' group_name_attribute: "群組名字屬性" sync_users: '同步使用者' diff --git a/modules/meeting/app/components/meetings/header_component.html.erb b/modules/meeting/app/components/meetings/header_component.html.erb index c27700bbe91c..1d327152d6a9 100644 --- a/modules/meeting/app/components/meetings/header_component.html.erb +++ b/modules/meeting/app/components/meetings/header_component.html.erb @@ -1,6 +1,5 @@ <%= helpers.content_controller "poll-for-changes", - poll_for_changes_reference_value: @meeting.changed_hash, poll_for_changes_url_value: check_for_updates_meeting_path(@meeting), poll_for_changes_interval_value: check_for_updates_interval, poll_for_changes_autoscroll_enabled_value: true @@ -8,7 +7,11 @@ component_wrapper do render(Primer::OpenProject::PageHeader.new( test_selector: "meeting-page-header", - state: @state + state: @state, + data: { + poll_for_changes_target: "reference", + reference_value: @meeting.changed_hash + } )) do |header| header.with_title do |title| title.with_editable_form(model: @meeting, diff --git a/modules/meeting/config/locales/crowdin/cs.yml b/modules/meeting/config/locales/crowdin/cs.yml index 5f30075794e2..16a54b6f65b0 100644 --- a/modules/meeting/config/locales/crowdin/cs.yml +++ b/modules/meeting/config/locales/crowdin/cs.yml @@ -139,7 +139,7 @@ cs: types: classic: "Klasické" classic_text: "Uspořádat schůzku do formátů textového programu a protokolu." - structured: "Dynamická" + structured: "Dynamický" structured_text: "Uspořádat schůzku jako seznam bodů pořadu jednání, případně je propojit s pracovním balíčkem." structured_text_copy: "Kopírování schůzky v současné době nezkopíruje související body pořadu jednání, jen podrobnosti" copied: "Zkopírováno ze schůzky #%{id}" @@ -153,7 +153,7 @@ cs: notice_meeting_updated: "This page has been updated by someone else. Reload to view changes." permission_create_meetings: "Vytvořit schůzku\n" permission_edit_meetings: "Upravit schůzku" - permission_delete_meetings: "Smazat schůzku" + permission_delete_meetings: "Odstranit schůzky" permission_view_meetings: "Zobrazit schůzky" permission_create_meeting_agendas: "Vytvořit agendy schůzek" permission_create_meeting_agendas_explanation: "Umožňuje upravovat obsah programu klasické schůzky." diff --git a/modules/meeting/config/locales/crowdin/ja.yml b/modules/meeting/config/locales/crowdin/ja.yml index 7d453158886d..6b7680037341 100644 --- a/modules/meeting/config/locales/crowdin/ja.yml +++ b/modules/meeting/config/locales/crowdin/ja.yml @@ -44,7 +44,7 @@ ja: meeting_agenda_item: title: "タイトル" author: "作成者" - duration_in_minutes: "min" + duration_in_minutes: "分" description: "注記" presenter: "Presenter" meeting_section: diff --git a/modules/meeting/config/locales/crowdin/tr.yml b/modules/meeting/config/locales/crowdin/tr.yml index 646c157ae9fb..0004117eb6df 100644 --- a/modules/meeting/config/locales/crowdin/tr.yml +++ b/modules/meeting/config/locales/crowdin/tr.yml @@ -35,7 +35,7 @@ tr: participants: "Katılımcılar" participant: one: "1 Katılımcı" - other: "%{count} Participants" + other: "%{count} Katılımcı" participants_attended: "Katılımcılar" participants_invited: "Davetliler" project: "Proje" @@ -65,16 +65,16 @@ tr: item: meeting_agenda_item: duration: - added: "set to %{value}" - added_html: "set to %{value}" - removed: "removed" - updated: "changed from %{old_value} to %{value}" - updated_html: "changed from %{old_value} to %{value}" + added: "%{value} tarihine ayarlandı" + added_html: "%{value} tarihine ayarla" + removed: "silindi" + updated: "%{old_value} tarihinden %{value} tarihine ayarlandı" + updated_html: "%{old_value} tarihinden %{value} tarihine ayarlandı" position: updated: "yeniden sıralandı" work_package: - updated: "changed from %{old_value} to %{value}" - updated_html: "changed from %{old_value} to %{value}" + updated: "%{old_value} tarihinden %{value} tarihine ayarlandı" + updated_html: "%{old_value} tarihinden %{value} tarihine ayarlandı" description_attended: "katıldı" description_invite: "davet et" events: @@ -113,17 +113,17 @@ tr: label_start_date: "Başlama tarihi" meeting: attachments: - text: "Attached files are available to all meeting participants. You can also drag and drop these into agenda item notes." + text: "Eklenen dosyalar tüm katılımcıların paylaşımına açıktır. Bu dosyaları ajandanıza sürükleyip bırakabilirsiniz." copy: - title: "Copy meeting: %{title}" + title: "Toplantıyı kopyala: %{title}" attachments: "Ekleri kopyala" - attachments_text: "Copy over all attached files to the new meeting" + attachments_text: "Tük eklenen dosyaları yeni toplantıya kopyala" agenda: "Gündemi kopyala" agenda_text: "Eski toplantının gündemini kopyalayın" email: send_emails: "Email participants" send_invitation_emails: > - Send an email invitation immediately to the participants selected above. You can also do this manually at any time later. + Yukarıda seçilen katılımcıların hepsine e-posta davetiyesi gönder. Bu işi daha sonra herhangi bir zamanda elle de gerçekleştirebilirsiniz. open_meeting_link: "Açık toplantı" invited: summary: "%{actor} size toplantı için bir davetiye gönderdi %{title}" @@ -139,24 +139,24 @@ tr: classic_text: "Toplantınızı biçimlendirilebilir bir metin gündemi ve protokolüyle düzenleyin." structured: "Dinamik" structured_text: "Toplantınızı, isteğe bağlı olarak bunları bir çalışma paketine bağlayarak, gündem maddelerinin bir listesi halinde düzenleyin." - structured_text_copy: "Copying a meeting will currently not copy the associated meeting agenda items, just the details" + structured_text_copy: "Toplantıyı kopyalamak toplantıyla ilgili ajanda maddelerini kopyalamayacaktır, sadece detaylar kopyalanacak" copied: "#%{id} numaralı toplantıdan kopyalandı" meeting_section: untitled_title: "Untitled section" delete_confirmation: "Deleting the section will also delete all of its agenda items. Are you sure you want to do this?" placeholder_title: "New section" - empty_text: "Drag items here or create a new one" + empty_text: "Maddeleri buraya sürükleyin ya da yeni bir tane oluşturun" notice_successful_notification: "Bildirim başarıyla gönderildi" notice_timezone_missing: Saat dilimi ayarlanmadı ve %{zone} kabul edildi. Saat dilimini seçmek için lütfen buraya tıklayın. - notice_meeting_updated: "This page has been updated by someone else. Reload to view changes." + notice_meeting_updated: "Bu sayfa başka biri tarafından güncellendi. Değişiklikleri görmek için yeniden yükleyin." permission_create_meetings: "Toplantı oluşturma" permission_edit_meetings: "Toplantıları düzenleme" permission_delete_meetings: "Toplantıları silme" permission_view_meetings: "Toplantıları görüntüle" permission_create_meeting_agendas: "Toplantı gündemleri oluşturun" - permission_create_meeting_agendas_explanation: "Allows editing the Classic Meeting's agenda content." + permission_create_meeting_agendas_explanation: "Klasik Toplantı modülünün ajanda içeriğinin düzenlenmesini sağlar." permission_manage_agendas: "Acentaları yönetme" - permission_manage_agendas_explanation: "Allows managing the Dynamic Meeting's agenda items." + permission_manage_agendas_explanation: "Dinamik Toplantı modülünün ajanda maddelerini yönetilmesini sağlar." permission_close_meeting_agendas: "Acenta kapat" permission_send_meeting_agendas_notification: "Acentalar için inceleme bildirimi gönder" permission_create_meeting_minutes: "Dakikaları yönet" @@ -167,60 +167,60 @@ tr: text_duration_in_hours: "Saat süresi" text_in_hours: "saatlerde" text_meeting_agenda_for_meeting: 'toplantı gündemi "%{meeting}"' - text_meeting_closing_are_you_sure: "Are you sure you want to close the meeting agenda?" + text_meeting_closing_are_you_sure: "Toplantı ajandasını kapatmak istediğinizden emin misiniz?" text_meeting_agenda_open_are_you_sure: "Bu, dakikalardaki tüm değişikliklerin üzerine yazacaktır! Devam etmek istiyor musun?" text_meeting_minutes_for_meeting: 'toplantı için dakikalar "%{meeting}"' text_notificiation_invited: "Bu posta, aşağıdaki toplantı için bir ics girişi içermektedir:" text_meeting_empty_heading: "Toplantınız boş" - text_meeting_empty_description_1: "Start by adding agenda items below. Each item can be as simple as just a title, but you can also add additional details like duration and notes." - text_meeting_empty_description_2: 'You can also add references to existing work packages. When you do, related notes will automatically be visible in the work package''s "Meetings" tab.' + text_meeting_empty_description_1: "Ajanda maddelerini aşağıya ekleyerek başlayın. Her bir madde sadece başlık içerecek kadar basit olabilir ama toplantı süresi ve notları gibi ek detaylar da ekleyebilirsiniz." + text_meeting_empty_description_2: 'Ayrıca mevcut iş parçalarına referans ekleyebilirsiniz. Bu takdirde, ilişkili notlar iş parçacığının "Toplantılar" sekmesine eklenecektir.' label_meeting_empty_action: "Gündem maddesi ekle" label_meeting_actions: "Toplantı eylemleri" label_meeting_edit_title: "Toplantı başlığını düzenle" label_meeting_delete: "Toplantıyı sil" label_meeting_created_by: "Oluşturan" label_meeting_last_updated: "Son güncelleme" - label_meeting_reload: "Reload" + label_meeting_reload: "Yeniden yükle" label_agenda_items: "Gündem maddeleri" label_agenda_items_reordered: "yeniden sıralandı" - label_agenda_item_remove: "Remove from agenda" - label_agenda_item_undisclosed_wp: "Work package #%{id} not visible" - label_agenda_item_deleted_wp: "Deleted work package reference" - label_agenda_item_actions: "Agenda items actions" + label_agenda_item_remove: "Ajandadan kaldır" + label_agenda_item_undisclosed_wp: "#%{id} numaralı iş parçası görünmez" + label_agenda_item_deleted_wp: "Silinmiş iş parçsına referans" + label_agenda_item_actions: "Ajanda maddeleri için eylemler" label_agenda_item_move_to_top: "Yukarıya taşı" label_agenda_item_move_to_bottom: "Aşağıya taşı" label_agenda_item_move_up: "Yukarı taşı" label_agenda_item_move_down: "Aşağı taşı" label_agenda_item_add_notes: "Not eklemek" - label_agenda_item_work_package: "Agenda item work package" - text_agenda_item_title: 'Agenda item "%{title}"' - text_agenda_work_package_deleted: 'Agenda item for deleted work package' - text_deleted_agenda_item: 'Deleted agenda item' + label_agenda_item_work_package: "Ajanda maddesinin iş parçası" + text_agenda_item_title: 'Ajanda maddesi %{title}"' + text_agenda_work_package_deleted: 'Silinen iş parçası için ajanda maddesi' + text_deleted_agenda_item: 'Silinen ajanda maddesi' label_initial_meeting_details: "Toplantı" - label_meeting_details: "Meeting details" - label_meeting_details_edit: "Edit meeting details" - label_meeting_state: "Meeting status" + label_meeting_details: "Toplantı detayları" + label_meeting_details_edit: "Toplantı detaylarını düzenle" + label_meeting_state: "Toplantı durumu" label_meeting_state_open: "Aç" - label_meeting_state_open_html: "Open" + label_meeting_state_open_html: "Açık" label_meeting_state_closed: "Kapalı" - label_meeting_state_closed_html: "Closed" - label_meeting_reopen_action: "Reopen meeting" - label_meeting_close_action: "Close meeting" - text_meeting_open_description: "This meeting is open. You can add/remove agenda items and edit them as you please. After the meeting is over, close it to lock it." - text_meeting_closed_description: "This meeting is closed. You cannot add/remove agenda items anymore." - label_meeting_manage_participants: "Manage participants" - label_meeting_no_participants: "No participants" - label_meeting_show_hide_participants: "Show/hide %{count} more" + label_meeting_state_closed_html: "Kapalı" + label_meeting_reopen_action: "Toplantıyı tekrar aç" + label_meeting_close_action: "Toplantıyı kapat" + text_meeting_open_description: "Bu toplantı açık. Gündem maddesi ekleyip çıkartabilir ve bu maddeleri düzenleyebilirsiniz. Toplantı bittikten sonra kilitlemek için toplantıyı kapatın." + text_meeting_closed_description: "Toplantı kapatılmış. Artık gündem maddesi ekleyip çıkartamazsınız." + label_meeting_manage_participants: "Katılımcıları yönet" + label_meeting_no_participants: "Katılımcı yok" + label_meeting_show_hide_participants: "%{count} kişi daha göster/sakla" label_meeting_show_all_participants: "Tümünü göster" - label_meeting_add_participants: "Add participants" - text_meeting_not_editable_anymore: "This meeting is not editable anymore." - text_meeting_not_present_anymore: "This meeting was deleted. Please select another meeting." - label_add_work_package_to_meeting_dialog_title: "Add work package to meeting" - label_add_work_package_to_meeting_dialog_button: "Add to meeting" + label_meeting_add_participants: "Katılımcı ekle" + text_meeting_not_editable_anymore: "Bu toplantıyı artık düzenleyemezsiniz." + text_meeting_not_present_anymore: "Toplantı silinmiş. Başka bir toplantı seçin lütfen." + label_add_work_package_to_meeting_dialog_title: "Toplantıya iş parçası ekleyin" + label_add_work_package_to_meeting_dialog_button: "Toplantıya ekle" label_meeting_selection_caption: "It's only possible to add this work package to upcoming or ongoing open meetings." - text_add_work_package_to_meeting_description: "A work package can be added to one or multiple meetings for discussion. Any notes concerning it are also visible here." - text_agenda_item_no_notes: "No notes provided" - text_agenda_item_not_editable_anymore: "This agenda item is not editable anymore." - text_work_package_has_no_upcoming_meeting_agenda_items: "This work package is not scheduled in an upcoming meeting agenda yet." - text_work_package_add_to_meeting_hint: 'Use the "Add to meeting" button to add this work package to an upcoming meeting.' - text_work_package_has_no_past_meeting_agenda_items: "This work package was not mentioned in a past meeting." + text_add_work_package_to_meeting_description: "Bir iş paketi tartışılmak üzere bir veya birden fazla toplantıya eklenebilir. Bununla ilgili tüm notlar da burada görülebilir." + text_agenda_item_no_notes: "Not verilmemiştir" + text_agenda_item_not_editable_anymore: "Bu takvim maddesi artık düzenlenemez." + text_work_package_has_no_upcoming_meeting_agenda_items: "Bu iş paketi henüz yaklaşan bir toplantı gündemine alınmamıştır." + text_work_package_add_to_meeting_hint: 'Bu iş paketini yaklaşan bir toplantıya eklemek için "Toplantıya ekle" düğmesini kullanın.' + text_work_package_has_no_past_meeting_agenda_items: "Bu iş paketinden daha önceki bir toplantıda bahsedilmemişti." diff --git a/modules/meeting/config/locales/crowdin/zh-TW.yml b/modules/meeting/config/locales/crowdin/zh-TW.yml index 8ce1a2bae59c..6b20d71eb236 100644 --- a/modules/meeting/config/locales/crowdin/zh-TW.yml +++ b/modules/meeting/config/locales/crowdin/zh-TW.yml @@ -156,7 +156,7 @@ zh-TW: permission_create_meeting_agendas_explanation: "允許編輯傳統會議的議程。" permission_manage_agendas: "管理議程" permission_manage_agendas_explanation: "允許編輯動態會議的議程項目。" - permission_close_meeting_agendas: "定案會議大綱" + permission_close_meeting_agendas: "結束會議大綱" permission_send_meeting_agendas_notification: "傳送會議大綱審閱通知" permission_create_meeting_minutes: "管理會議記錄" permission_send_meeting_minutes_notification: "傳送會議記錄審閱通知" diff --git a/modules/openid_connect/config/locales/crowdin/zh-TW.yml b/modules/openid_connect/config/locales/crowdin/zh-TW.yml index f5654923f347..d4b666ae99c4 100644 --- a/modules/openid_connect/config/locales/crowdin/zh-TW.yml +++ b/modules/openid_connect/config/locales/crowdin/zh-TW.yml @@ -1,7 +1,7 @@ zh-TW: plugin_openproject_openid_connect: name: "OpenProject OpenID 連接" - description: "新增 OmniAuth OpenID Connect 策略提供者至 OpenProject。" + description: "新增 OmniAuth OpenID 連線部署提供商至 OpenProject。" logout_warning: > 你已被登出,你嘗試送出的內容可能都會遺失。請登入。 activemodel: @@ -14,13 +14,13 @@ zh-TW: scope: 範圍 limit_self_registration: 限制自行註冊 openid_connect: - menu_title: OpenID 提供者 + menu_title: OpenID 提供商 providers: - label_add_new: 新增 OpenID 提供者 - label_edit: 編輯 OpenID 提供者:%{name} - no_results_table: 尚未定義任何提供者。 - plural: OpenID 提供者 - singular: OpenID 提供者 + label_add_new: 新增 OpenID 提供商 + label_edit: 編輯 OpenID 提供商:%{name} + no_results_table: 尚未定義任何提供商。 + plural: OpenID 提供商 + singular: OpenID 提供商 setting_instructions: azure_deprecation_warning: > 配置的 Azure 應用程序指向 Azure 中已棄用的 API 。請創建一個新的 Azure 應用程序,以確保未來的功能性。 diff --git a/modules/recaptcha/config/locales/crowdin/tr.yml b/modules/recaptcha/config/locales/crowdin/tr.yml index 9c6ef3328ad1..fcb48706ef36 100644 --- a/modules/recaptcha/config/locales/crowdin/tr.yml +++ b/modules/recaptcha/config/locales/crowdin/tr.yml @@ -9,9 +9,9 @@ tr: verify_account: "Hesabınızı doğrulayın" error_captcha: "Hesabınız doğrulanamadı. Lütfen bir yöneticiye başvurun." settings: - website_key: 'Website key (May also be called "Site key")' + website_key: 'Website anahtarı ("Site anahtarı")' response_limit: 'HCaptcha için yanıt sınırı' - response_limit_text: 'The maximum number of characters to treat the HCaptcha response as valid.' + response_limit_text: 'HCaptcha yanıtını geçerli olarak değerlendirmek için gereken maksimum karakter sayısı.' website_key_text: 'Bu etki alanı için reCAPTCHA yönetici konsolunda oluşturduğunuz web sitesi anahtarını girin.' secret_key: 'Gizli anahtar' secret_key_text: 'ReCAPTCHA yönetici konsolunda yarattığınız gizli anahtarı girin.' @@ -22,4 +22,4 @@ tr: type_hcaptcha: 'HCaptcha ' type_turnstile: 'Cloudflare Turnstile™' captcha_description_html: > - reCAPTCHA is a free service by Google that can be enabled for your OpenProject instance. If enabled, a captcha form will be rendered upon login for all users that have not verified a captcha yet.
Please see the following link for more details on reCAPTCHA and their versions, and how to create the website and secret keys: %{recaptcha_link}
HCaptcha is a Google-free alternative that you can use if you do not want to use reCAPTCHA. See this link for more information: %{hcaptcha_link}
Cloudflare Turnstile™ is another alternative that is more convenient for users while still providing the same level of security. See this link for more information: %{turnstile_link} + reCAPTCHA, OpenProject kurulumunuz için etkinleştirebileceğiniz Google tarafından sunulan ücretsiz bir hizmettir. Etkinleştirildiğinde, henüz captcha doğrulaması yapmamış tüm kullanıcılar için oturum açma sırasında bir captcha formu oluşturacaktır.
reCAPTCHA ve sürümleri ile website ve gizli anahtar oluşturma hakkında detaylı bilgi için bu bağlantıya bakabilirsiniz: %{recaptcha_link}
HCaptcha, reCAPTCHA yerine kullanabileceğiniz Google'dan bağımsız bir alternatiftir. Daha fazla bilgi için bu bağlantıya bakın: %{hcaptcha_link}
Cloudflare Turnstile™ kullanıcılar için daha kullanışlı olup da aynı güvenliği sağlayana başka bir alternatiftir. Daha fazla bilgi için bu bağlantıya bakın: %{turnstile_link} diff --git a/modules/reporting/config/locales/crowdin/es.yml b/modules/reporting/config/locales/crowdin/es.yml index bc14acc88e65..3f00d37bf8d0 100644 --- a/modules/reporting/config/locales/crowdin/es.yml +++ b/modules/reporting/config/locales/crowdin/es.yml @@ -23,7 +23,7 @@ es: plugin_openproject_reporting: name: "Informes de OpenProject" description: "Este plug-in permite crear reportes de costos personalizados con filtrado y agrupación creados por los plug-ins OpenProject Time y costes." - button_save_report_as: "Save report as..." + button_save_report_as: "Guardar informe como..." comments: "Comentario" cost_reports_title: "Tiempo y costos" label_cost_report: "Informe costo" diff --git a/modules/reporting/config/locales/crowdin/fr.yml b/modules/reporting/config/locales/crowdin/fr.yml index ce06066d9c18..056f59b49830 100644 --- a/modules/reporting/config/locales/crowdin/fr.yml +++ b/modules/reporting/config/locales/crowdin/fr.yml @@ -23,7 +23,7 @@ fr: plugin_openproject_reporting: name: "Rapports OpenProject" description: "Ce plugin permet de créer des rapports de coûts personnalisés avec filtrage et regroupement." - button_save_report_as: "Save report as..." + button_save_report_as: "Enregistrer le rapport sous..." comments: "Commentaire" cost_reports_title: "Temps et coûts" label_cost_report: "Rapport de coût" diff --git a/modules/reporting/config/locales/crowdin/it.yml b/modules/reporting/config/locales/crowdin/it.yml index e0073e2d0867..d68fba3b8275 100644 --- a/modules/reporting/config/locales/crowdin/it.yml +++ b/modules/reporting/config/locales/crowdin/it.yml @@ -23,7 +23,7 @@ it: plugin_openproject_reporting: name: "Reportistica OpenProject" description: "Questo plugin consente di creare report di costo personalizzati con filtraggio e raggruppamento creato dal plugin OpenProject Time and costs." - button_save_report_as: "Save report as..." + button_save_report_as: "Salva il report come..." comments: "Commento" cost_reports_title: "Tempi e costi" label_cost_report: "Relazione sui costi" diff --git a/modules/reporting/config/locales/crowdin/ko.yml b/modules/reporting/config/locales/crowdin/ko.yml index 9fafe2f8877b..ab4a55fcc858 100644 --- a/modules/reporting/config/locales/crowdin/ko.yml +++ b/modules/reporting/config/locales/crowdin/ko.yml @@ -23,7 +23,7 @@ ko: plugin_openproject_reporting: name: "OpenProject 보고" description: "이 플러그인을 사용하면 OpenProject 시간 및 비용 플러그인에서 생성된 필터링 및 그룹화를 사용하여 사용자 지정 비용 보고서를 생성할 수 있습니다." - button_save_report_as: "Save report as..." + button_save_report_as: "다른 이름으로 보고서로 저장..." comments: "코멘트" cost_reports_title: "시간 및 비용" label_cost_report: "비용 보고서" diff --git a/modules/reporting/config/locales/crowdin/pl.yml b/modules/reporting/config/locales/crowdin/pl.yml index 87d91e2c5917..33ea7fac3472 100644 --- a/modules/reporting/config/locales/crowdin/pl.yml +++ b/modules/reporting/config/locales/crowdin/pl.yml @@ -23,7 +23,7 @@ pl: plugin_openproject_reporting: name: "Raportowanie OpenProject" description: "Ta wtyczka umożliwia tworzenie niestandardowych raportów kosztów z filtrowaniem i grupowaniem utworzonym przez wtyczkę OpenProject Czas i koszty." - button_save_report_as: "Save report as..." + button_save_report_as: "Zapisz raport jako..." comments: "Komentarz" cost_reports_title: "Czas i koszty" label_cost_report: "Raport kosztów" diff --git a/modules/reporting/config/locales/crowdin/pt-PT.yml b/modules/reporting/config/locales/crowdin/pt-PT.yml index 859cb59a4c71..eb8aa480d16f 100644 --- a/modules/reporting/config/locales/crowdin/pt-PT.yml +++ b/modules/reporting/config/locales/crowdin/pt-PT.yml @@ -23,7 +23,7 @@ pt-PT: plugin_openproject_reporting: name: "Relatórios do OpenProject" description: "Este plugin permite criar relatórios de custos personalizados com filtragem e agrupamento criados pelo plugin OpenProject Time e custos." - button_save_report_as: "Save report as..." + button_save_report_as: "Guardar relatório como..." comments: "Comentário" cost_reports_title: "Tempo e custos" label_cost_report: "Relatório de custo" diff --git a/modules/reporting/config/locales/crowdin/ro.yml b/modules/reporting/config/locales/crowdin/ro.yml index e15e1a766442..e7c623090825 100644 --- a/modules/reporting/config/locales/crowdin/ro.yml +++ b/modules/reporting/config/locales/crowdin/ro.yml @@ -68,7 +68,7 @@ ro: label_filter: "Filtrare" label_filter_add: "Adăugare filtru" label_filter_plural: "Filtre" - label_group_by: "Grupare după" + label_group_by: "Grupează după" label_group_by_add: "Adăugați atributul Group-by" label_inactive: "Inactiv" label_no: "Nu" diff --git a/modules/reporting/config/locales/crowdin/tr.yml b/modules/reporting/config/locales/crowdin/tr.yml index c183636409a1..27927363d31f 100644 --- a/modules/reporting/config/locales/crowdin/tr.yml +++ b/modules/reporting/config/locales/crowdin/tr.yml @@ -23,7 +23,7 @@ tr: plugin_openproject_reporting: name: "OpenProject Reporting" description: "This plugin allows creating custom cost reports with filtering and grouping created by the OpenProject Time and costs plugin." - button_save_report_as: "Save report as..." + button_save_report_as: "Farklı kaydet..." comments: "Yorum" cost_reports_title: "Zaman ve maliyetler" label_cost_report: "Maliyet raporu" diff --git a/modules/reporting/config/locales/crowdin/uk.yml b/modules/reporting/config/locales/crowdin/uk.yml index 9db3f1818074..1216f353b5b3 100644 --- a/modules/reporting/config/locales/crowdin/uk.yml +++ b/modules/reporting/config/locales/crowdin/uk.yml @@ -23,7 +23,7 @@ uk: plugin_openproject_reporting: name: "Звіти OpenProject" description: "Цей плагін дає змогу створювати звіти про витрати з можливостями фільтрування й групування, створеними плагіном «Час і витрати» в OpenProject." - button_save_report_as: "Save report as..." + button_save_report_as: "Зберегти звіт як..." comments: "Коментар" cost_reports_title: "Час і витрати" label_cost_report: "Звіт про витрати" diff --git a/modules/reporting/config/locales/crowdin/zh-TW.yml b/modules/reporting/config/locales/crowdin/zh-TW.yml index 22d0c7269be0..0d72f44f944c 100644 --- a/modules/reporting/config/locales/crowdin/zh-TW.yml +++ b/modules/reporting/config/locales/crowdin/zh-TW.yml @@ -51,7 +51,7 @@ zh-TW: label_money: "現金價值" label_month_reporting: "月" label_new_report: "新建成本報表" - label_open: "進行中" + label_open: "開啟" label_operator: "操作員" label_private_report_plural: "私密成本報告" label_progress_bar_explanation: "產生報告中..." @@ -68,7 +68,7 @@ zh-TW: label_filter: "篩選條件" label_filter_add: "新增篩選條件" label_filter_plural: "篩選條件" - label_group_by: "分組依據" + label_group_by: "分類" label_group_by_add: "新增分組依據屬性" label_inactive: "«不活動»" label_no: "否" diff --git a/modules/storages/app/controllers/storages/admin/storages/project_storages_controller.rb b/modules/storages/app/controllers/storages/admin/storages/project_storages_controller.rb index f83ffe11d00b..6db8c13ab714 100644 --- a/modules/storages/app/controllers/storages/admin/storages/project_storages_controller.rb +++ b/modules/storages/app/controllers/storages/admin/storages/project_storages_controller.rb @@ -129,8 +129,7 @@ def destroy delete_service.on_success do update_flash_message_via_turbo_stream( - message: I18n.t(:notice_successful_delete), - full: true, dismiss_scheme: :hide, scheme: :success + message: I18n.t(:notice_successful_delete), scheme: :success ) update_project_list_via_turbo_stream(url_for_action: :index) end @@ -138,8 +137,7 @@ def destroy delete_service.on_failure do |failure| error = failure.errors.map(&:message).to_sentence render_error_flash_message_via_turbo_stream( - message: I18n.t("project_storages.remove_project.deletion_failure_flash", error:), - full: true, dismiss_scheme: :hide + message: I18n.t("project_storages.remove_project.deletion_failure_flash", error:) ) end @@ -151,9 +149,7 @@ def destroy def load_project_storage @project_storage = Storages::ProjectStorage.find(params[:id]) rescue ActiveRecord::RecordNotFound - update_flash_message_via_turbo_stream( - message: t(:notice_file_not_found), full: true, dismiss_scheme: :hide, scheme: :danger - ) + render_error_flash_message_via_turbo_stream(message: t(:notice_file_not_found)) update_project_list_via_turbo_stream respond_with_turbo_streams @@ -175,8 +171,7 @@ def find_projects_to_activate_for_storage respond_with_turbo_streams end rescue ActiveRecord::RecordNotFound - update_flash_message_via_turbo_stream message: t(:notice_project_not_found), full: true, dismiss_scheme: :hide, - scheme: :danger + render_error_flash_message_via_turbo_stream(message: t(:notice_project_not_found)) update_project_list_via_turbo_stream respond_with_turbo_streams @@ -214,11 +209,8 @@ def include_sub_projects? def ensure_storage_configured! return if @storage.configured? - update_flash_message_via_turbo_stream( - message: I18n.t("storages.enabled_in_projects.setup_incomplete_description"), - full: true, - dismiss_scheme: :hide, - scheme: :danger + render_error_flash_message_via_turbo_stream( + message: I18n.t("storages.enabled_in_projects.setup_incomplete_description") ) respond_with_turbo_streams false diff --git a/modules/storages/config/locales/crowdin/de.yml b/modules/storages/config/locales/crowdin/de.yml index fd124e3f8e6d..8286bcc0a574 100644 --- a/modules/storages/config/locales/crowdin/de.yml +++ b/modules/storages/config/locales/crowdin/de.yml @@ -91,8 +91,8 @@ de: rename_project_folder: 'Verwalteten Projektordner umbenennen:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Ein unerwarteter Fehler ist aufgetreten. Bitte überprüfen Sie die OpenProject Logdateien für weitere Informationen oder kontaktieren Sie einen Administrator + unauthorized: OpenProject konnte sich nicht mit dem Speicheranbieter authentifizieren. Bitte überprüfen Sie Ihre Speicherkonfiguration und dessen Zugang. models: copy_project_folders_service: conflict: Der Ordner %{destination_path} existiert bereits. Unterbrechen Sie den Prozess, um Überschreibungen zu vermeiden. @@ -226,7 +226,7 @@ de: nextcloud: Unerwarteter Inhalt im verwalteten Gruppenordner gefunden. one_drive: Unerwarteter Inhalt auf dem Laufwerk gefunden. unknown_error: Die Verbindung konnte nicht validiert werden. Es ist ein unbekannter Fehler aufgetreten. Bitte prüfen Sie die Serverprotokolle für weitere Informationen. - userless_access_denied: The configured app password is invalid. + userless_access_denied: Das konfigurierte App-Passwort ist ungültig. label_error: Fehler label_healthy: Fehlerfrei label_pending: Ausstehend diff --git a/modules/storages/config/locales/crowdin/es.yml b/modules/storages/config/locales/crowdin/es.yml index 4f0ad55c86fc..04fd5ff61caa 100644 --- a/modules/storages/config/locales/crowdin/es.yml +++ b/modules/storages/config/locales/crowdin/es.yml @@ -91,8 +91,8 @@ es: rename_project_folder: 'Cambiar el nombre de la carpeta del proyecto gestionado:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Se ha producido un error inesperado. Compruebe los registros de OpenProject para obtener más información o póngase en contacto con un administrador + unauthorized: OpenProject no pudo autenticarse con el proveedor de almacenamiento. Asegúrese de que tiene acceso al mismo. models: copy_project_folders_service: conflict: La carpeta %{destination_path} ya existe. Interrumpiendo el proceso para evitar sobreescrituras. @@ -150,7 +150,7 @@ es: unauthorized: OpenProject no pudo sincronizarse con OneDrive. Compruebe su almacenamiento y la configuración de la aplicación Azure. user_does_not_exist: "%{user} no existe en Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: No se ha podido encontrar la carpeta de destino %{folder} en %{storage_name}. storages: buttons: complete_without_setup: Completar sin usar @@ -214,7 +214,7 @@ es: client_id_wrong: El id de cliente OAuth 2 configurado no es válido. Por favor, compruebe la configuración. client_secret_wrong: El secreto de cliente OAuth 2 configurado no es válido. Por favor, compruebe la configuración. drive_id_wrong: No se ha podido encontrar el drive id configurado. Por favor, compruebe la configuración. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: No se ha podido encontrar la carpeta del grupo. group_folder_version_mismatch: La versión de la Carpeta de grupo no es compatible. Actualice su servidor Nextcloud. host_not_found: No se ha encontrado ningún servidor Nextcloud en la URL de host configurada. Compruebe la configuración. missing_dependencies: 'Falta una dependencia necesaria en el almacenamiento de archivos. Añada la siguiente dependencia: %{dependency}.' @@ -223,10 +223,10 @@ es: subtitle: Validación de conexión tenant_id_wrong: El id de directorio (tenant) configurado no es válido. Por favor, compruebe la configuración. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: Se ha encontrado contenido inesperado en la carpeta del grupo gestionado. + one_drive: Contenido inesperado encontrado dentro la unidad. unknown_error: No se ha podido validar la conexión. Se ha producido un error desconocido. Compruebe los registros del servidor para obtener más información. - userless_access_denied: The configured app password is invalid. + userless_access_denied: La contraseña configurada de la aplicación no es válida. label_error: Error label_healthy: Correcto label_pending: Pendiente diff --git a/modules/storages/config/locales/crowdin/fr.yml b/modules/storages/config/locales/crowdin/fr.yml index cb9b2113a65f..afa82e6821da 100644 --- a/modules/storages/config/locales/crowdin/fr.yml +++ b/modules/storages/config/locales/crowdin/fr.yml @@ -91,8 +91,8 @@ fr: rename_project_folder: 'Renommer le dossier du projet géré :' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Une erreur inattendue s'est produite. Veuillez consulter les journaux d'OpenProject pour obtenir plus d'informations ou contactez un administrateur + unauthorized: OpenProject n'a pas pu s'authentifier auprès du fournisseur de stockage. Veuillez vous assurer que vous y avez accès. models: copy_project_folders_service: conflict: Le dossier %{destination_path} existe déjà. Interruption du processus pour éviter les écrasements. @@ -150,7 +150,7 @@ fr: unauthorized: OpenProject n'a pas pu se synchroniser avec OneDrive. Veuillez vérifier votre espace de stockage et la configuration de l'application Azure. user_does_not_exist: "%{user} n'existe pas dans Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: Le dossier de destination %{folder} n'a pas été trouvé sur %{storage_name}. storages: buttons: complete_without_setup: Compléter sans @@ -214,7 +214,7 @@ fr: client_id_wrong: L'identifiant du client OAuth 2 configuré n'est pas valide. Veuillez vérifier la configuration. client_secret_wrong: Le secret client OAuth 2 configuré n'est pas valide. Veuillez vérifier la configuration. drive_id_wrong: L'identifiant du lecteur configuré est introuvable. Veuillez vérifier la configuration. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: Le dossier du groupe est introuvable. group_folder_version_mismatch: La version du dossier de groupe n'est pas prise en charge. Veuillez mettre à jour votre serveur Nextcloud. host_not_found: Aucun serveur Nextcloud n'a été trouvé à l'adresse configurée. Veuillez vérifier la configuration. missing_dependencies: 'Une dépendance requise est manquante dans l''espace de stockage de fichiers. Veuillez ajouter la dépendance suivante : %{dependency}.' @@ -223,10 +223,10 @@ fr: subtitle: Validation de la connexion tenant_id_wrong: L'identifiant du répertoire (locataire) configuré n'est pas valide. Veuillez vérifier la configuration. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: Contenu inattendu trouvé dans le dossier du groupe géré. + one_drive: Contenu inattendu trouvé dans le lecteur. unknown_error: La connexion n'a pas pu être validée. Une erreur inconnue s'est produite. Veuillez consulter les journaux du serveur pour en savoir plus. - userless_access_denied: The configured app password is invalid. + userless_access_denied: Le mot de passe de l'application configurée n'est pas valide. label_error: Erreur label_healthy: Sain label_pending: En attente diff --git a/modules/storages/config/locales/crowdin/it.yml b/modules/storages/config/locales/crowdin/it.yml index 754c9c34e536..16aa0020be69 100644 --- a/modules/storages/config/locales/crowdin/it.yml +++ b/modules/storages/config/locales/crowdin/it.yml @@ -91,8 +91,8 @@ it: rename_project_folder: 'Rinomina la cartella di progetto gestita:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Si è verificato un errore inatteso. Controlla i log di OpenProject per maggiori informazioni o contatta un amministratore + unauthorized: OpenProject non è riuscito ad autenticarsi con il fornitore di servizi di archiviazione. Assicurati di avervi accesso. models: copy_project_folders_service: conflict: La cartella %{destination_path} esiste già. Interrompi il processo per evitare sovrascritture. @@ -150,7 +150,7 @@ it: unauthorized: OpenProject non è riuscito a sincronizzarsi con OneDrive. Verifica la configurazione dell'archiviazione e dell'applicazione Azure. user_does_not_exist: "%{user} non esiste in Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: Impossibile trovare la cartella di destinazione %{folder} su %{storage_name}. storages: buttons: complete_without_setup: Completa senza @@ -214,7 +214,7 @@ it: client_id_wrong: L'ID del client OAuth 2 non è valido. Verifica la configurazione. client_secret_wrong: Il codice segreto del client OAuth 2 non è valido. Verifica la configurazione. drive_id_wrong: Il Drive ID non è stato trovato. Verifica la configurazione. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: Impossibile trovare la cartella del gruppo. group_folder_version_mismatch: La versione della cartella di gruppo non è supportata. Aggiorna il server Nextcloud. host_not_found: Non è stato trovato alcun server Nextcloud all'indirizzo host configurato. Controlla la configurazione. missing_dependencies: 'Manca una dipendenza necessaria per l''archiviazione dei file. Aggiungi la seguente dipendenza: %{dependency}.' @@ -223,10 +223,10 @@ it: subtitle: Verifica della connessione tenant_id_wrong: L'ID della directory non è valido. Verifica la configurazione. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: Contenuto inatteso trovato nella cartella di gruppo gestita. + one_drive: Contenuto inatteso nello spazio di archiviazione. unknown_error: Non è stato possibile verificare la connessione. Si è verificato un errore sconosciuto. Per maggiori informazioni consulta i log del server. - userless_access_denied: The configured app password is invalid. + userless_access_denied: La password dell'app configurata non è valida. label_error: Errore label_healthy: Tutto ok label_pending: In sospeso diff --git a/modules/storages/config/locales/crowdin/ko.yml b/modules/storages/config/locales/crowdin/ko.yml index 5ca55ad50b2c..23a58a37990b 100644 --- a/modules/storages/config/locales/crowdin/ko.yml +++ b/modules/storages/config/locales/crowdin/ko.yml @@ -91,8 +91,8 @@ ko: rename_project_folder: '관리되는 프로젝트 폴더의 이름 바꾸기:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: 예기치 않은 오류가 발생했습니다. OpenProject 로그에서 자세한 내용을 확인하거나 관리자에게 문의하세요 + unauthorized: OpenProject가 저장소 공급자를 인증할 수 없습니다. 액세스 권한이 있는지 확인하세요. models: copy_project_folders_service: conflict: '%{destination_path} 폴더가 이미 존재합니다. 덮어쓰기를 방지하기 위해 프로세스가 중단됩니다.' @@ -150,7 +150,7 @@ ko: unauthorized: OpenProject가 OneDrive와 동기화할 수 없습니다. 저장소 및 Azure 애플리케이션 구성을 확인하세요. user_does_not_exist: "%{user}이(가) Nextcloud에 없습니다." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: '%{storage_name}에서 대상 폴더 %{folder}을(를) 찾을 수 없습니다.' storages: buttons: complete_without_setup: 이것 없이 완료 @@ -214,7 +214,7 @@ ko: client_id_wrong: 구성된 OAuth 2 클라이언트 ID가 잘못되었습니다. 구성을 확인하세요. client_secret_wrong: 구성된 OAuth 2 클라이언트 비밀번호가 잘못되었습니다. 구성을 확인하세요. drive_id_wrong: 구성된 Drive ID를 찾을 수 없습니다. 구성을 확인하세요. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: 그룹 폴더를 찾을 수 없습니다. group_folder_version_mismatch: 그룹 폴더 버전은 지원되지 않습니다. Nextcloud 서버를 업데이트하세요. host_not_found: 구성된 호스트 URL에서 Nextcloud 서버를 찾을 수 없습니다. 구성을 확인하세요. missing_dependencies: '파일 저장소에 필수 종속성이 누락되었습니다. 다음 종속성을 추가하세요: %{dependency}.' @@ -223,10 +223,10 @@ ko: subtitle: 연결 유효성 검사 tenant_id_wrong: 구성된 디렉터리(테넌트) ID가 잘못되었습니다. 구성을 확인하세요. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: 관리되는 그룹 폴더에서 예기치 않은 콘텐츠가 발견되었습니다. + one_drive: 드라이브에서 예기치 않은 콘텐츠가 발견되었습니다. unknown_error: 연결에 대한 유효성 검사를 할 수 없습니다. 알 수 없는 오류가 발생했습니다. 자세한 내용은 서버 로그를 확인하세요. - userless_access_denied: The configured app password is invalid. + userless_access_denied: 구성된 앱 암호가 잘못되었습니다. label_error: 오류 label_healthy: 정상 label_pending: 대기 중 diff --git a/modules/storages/config/locales/crowdin/pl.yml b/modules/storages/config/locales/crowdin/pl.yml index 59f3758a5878..113ec5c035a0 100644 --- a/modules/storages/config/locales/crowdin/pl.yml +++ b/modules/storages/config/locales/crowdin/pl.yml @@ -91,8 +91,8 @@ pl: rename_project_folder: 'Zmień nazwę zarządzanego folderu projektu:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Wystąpił nieoczekiwany błąd. Sprawdź dzienniki OpenProject, aby uzyskać więcej informacji lub skontaktuj się z administratorem + unauthorized: OpenProject nie mógł uwierzytelnić się z dostawcą magazynu. Upewnij się, że masz do niego dostęp. models: copy_project_folders_service: conflict: Folder %{destination_path} już istnieje. Przerywanie procesu, aby uniknąć zastąpień. @@ -150,7 +150,7 @@ pl: unauthorized: OpenProject nie może zsynchronizować się z OneDrive. Sprawdź konfigurację magazynu i aplikacji Azure. user_does_not_exist: "Użytkownik %{user} nie istnieje w Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: Folder docelowy %{folder} nie został znaleziony w magazynie %{storage_name}. storages: buttons: complete_without_setup: Ukończ bez tego @@ -214,7 +214,7 @@ pl: client_id_wrong: Skonfigurowany identyfikator klienta OAuth 2 jest nieprawidłowy. Sprawdź konfigurację. client_secret_wrong: Skonfigurowany klucz tajny klienta OAuth 2 jest nieprawidłowy. Sprawdź konfigurację. drive_id_wrong: Nie można znaleźć skonfigurowanego Drive ID. Sprawdź konfigurację. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: Folder grupy nie został znaleziony. group_folder_version_mismatch: Wersja folderu grupy jest nieobsługiwana. Zaktualizuj swój serwer Nextcloud. host_not_found: Nie znaleziono serwera Nextcloud pod skonfigurowanym adresem URL hosta. Sprawdź konfigurację. missing_dependencies: 'Brakuje wymaganej zależności magazynu plików. Dodaj następującą zależność: %{dependency}.' @@ -223,10 +223,10 @@ pl: subtitle: Weryfikacja połączenia tenant_id_wrong: Skonfigurowany katalog (dzierżawca) jest nieprawidłowy. Sprawdź konfigurację. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: W folderze zarządzanej grupy znaleziono nieoczekiwaną zawartość. + one_drive: Na dysku znaleziono nieoczekiwaną zawartość. unknown_error: Nie można zweryfikować połączenia. Wystąpił nieznany błąd. Aby uzyskać dalsze informacje, sprawdź dzienniki serwera. - userless_access_denied: The configured app password is invalid. + userless_access_denied: Skonfigurowane hasło aplikacji jest nieprawidłowe. label_error: Błąd label_healthy: Zdrowe label_pending: Oczekujący diff --git a/modules/storages/config/locales/crowdin/pt-BR.yml b/modules/storages/config/locales/crowdin/pt-BR.yml index 34b6120d0365..2d4e432d8186 100644 --- a/modules/storages/config/locales/crowdin/pt-BR.yml +++ b/modules/storages/config/locales/crowdin/pt-BR.yml @@ -91,8 +91,8 @@ pt-BR: rename_project_folder: 'Renomear pasta do projeto gerido:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Ocorreu um erro inesperado. Verifique os registros do OpenProject para obter mais informações ou entre em contato com um administrador + unauthorized: O OpenProject não conseguiu se autenticar com o provedor de armazenamento. Verifique se você possui acesso a ele. models: copy_project_folders_service: conflict: A pasta %{destination_path} já existe. Interrompa o processo para evitar substituições. @@ -150,7 +150,7 @@ pt-BR: unauthorized: O OpenProject não pôde sincronizar com o OneDrive. Verifique o armazenamento e a configuração do aplicativo Azure. user_does_not_exist: "%{user} não existe no Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: A pasta de destino %{folder} não foi encontrada em %{storage_name}. storages: buttons: complete_without_setup: Concluir sem isso @@ -214,7 +214,7 @@ pt-BR: client_id_wrong: O ID do cliente OAuth 2 configurado é inválido. Verifique a configuração. client_secret_wrong: O segredo do cliente OAuth 2 configurado é inválido. Verifique a configuração. drive_id_wrong: O drive ID configurado não foi encontrado. Verifique a configuração. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: A pasta do grupo não pôde ser localizada. group_folder_version_mismatch: A versão da Pasta de Grupo não é suportada. Por favor, atualize seu servidor NextCloud. host_not_found: Nenhum servidor Nextcloud encontrado no URL do host configurado. Por favor, verifique a configuração. missing_dependencies: 'Está faltando uma dependência necessária do armazenamento de arquivos. Por favor, adicione a seguinte dependência: %{dependency}.' @@ -223,10 +223,10 @@ pt-BR: subtitle: Validação de conexão tenant_id_wrong: O ID do diretório (inquilino) configurado é inválido. Verifique a configuração. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: Conteúdo inesperado encontrado na pasta do grupo gerenciado. + one_drive: Conteúdo inesperado encontrado na unidade. unknown_error: A conexão não pôde ser validada. Ocorreu um erro desconhecido. Verifique os registros do servidor para obter mais informações. - userless_access_denied: The configured app password is invalid. + userless_access_denied: A senha configurada do aplicativo não é válida. label_error: Erro label_healthy: Saudável label_pending: Pendente diff --git a/modules/storages/config/locales/crowdin/pt-PT.yml b/modules/storages/config/locales/crowdin/pt-PT.yml index 58550fca9164..6c114e6ef5aa 100644 --- a/modules/storages/config/locales/crowdin/pt-PT.yml +++ b/modules/storages/config/locales/crowdin/pt-PT.yml @@ -91,8 +91,8 @@ pt-PT: rename_project_folder: 'Renomear pasta do projeto gerido:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Ocorreu um erro inesperado. Verifique os registos do OpenProject para obter mais informações ou contacte um administrador + unauthorized: Não foi possível autenticar o OpenProject com o fornecedor de armazenamento. Certifique-se de que tem acesso ao mesmo. models: copy_project_folders_service: conflict: A pasta %{destination_path} já existe. Interrompa o processo para evitar substituições. @@ -150,7 +150,7 @@ pt-PT: unauthorized: Não foi possível sincronizar o OpenProject com o OneDrive. Verifique o seu armazenamento e a configuração da aplicação do Azure. user_does_not_exist: "%{user} não existe no Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: Não foi possível encontrar a pasta de destino %{folder} em %{storage_name}. storages: buttons: complete_without_setup: Concluir sem isso @@ -214,7 +214,7 @@ pt-PT: client_id_wrong: O ID de cliente OAuth 2 configurado é inválido. Verifique a configuração. client_secret_wrong: O segredo do cliente OAuth 2 configurado é inválido. Verifique a configuração. drive_id_wrong: Não foi possível encontrar o Drive ID configurado. Verifique a configuração. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: Não foi possível encontrar a pasta do grupo. group_folder_version_mismatch: A versão da pasta de grupo não é suportada. Atualize o seu servidor do Nextcloud. host_not_found: Não foi encontrado nenhum servidor do Nextcloud no URL do anfitrião configurado. Verifique a configuração. missing_dependencies: 'Está em falta uma dependência necessária no armazenamento de ficheiros. Adicione a seguinte dependência: %{dependency}.' @@ -223,10 +223,10 @@ pt-PT: subtitle: Validação da ligação tenant_id_wrong: O ID do diretório (inquilino) configurado é inválido. Verifique a configuração. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: Conteúdo inesperado encontrado na pasta do grupo gerido. + one_drive: Conteúdo inesperado encontrado na unidade. unknown_error: Não foi possível validar a ligação. Ocorreu um erro desconhecido. Consulte os registos do servidor para obter mais informações. - userless_access_denied: The configured app password is invalid. + userless_access_denied: A palavra-passe da aplicação configurada é inválida. label_error: Erro label_healthy: Bom estado label_pending: Pendente diff --git a/modules/storages/config/locales/crowdin/ru.yml b/modules/storages/config/locales/crowdin/ru.yml index 9b65b43d321a..5a299736364b 100644 --- a/modules/storages/config/locales/crowdin/ru.yml +++ b/modules/storages/config/locales/crowdin/ru.yml @@ -91,8 +91,8 @@ ru: rename_project_folder: 'Переименовать управляемую папку проекта:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Произошла непредвиденная ошибка. Пожалуйста, проверьте журналы OpenProject для получения дополнительной информации или свяжитесь с администратором + unauthorized: OpenProject не смог аутентифицироваться у поставщика хранилища. Пожалуйста, убедитесь, что у вас есть к нему доступ. models: copy_project_folders_service: conflict: Папка %{destination_path} уже существует. Прервите процесс, чтобы избежать перезаписи. @@ -150,7 +150,7 @@ ru: unauthorized: OpenProject не удалось синхронизировать с OneDrive. Пожалуйста, проверьте конфигурацию хранилища в приложении Azure. user_does_not_exist: "%{user} не существует в Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: Папка %{folder} не найдена в хранилище %{storage_name}. storages: buttons: complete_without_setup: Обходитесь без этого @@ -214,7 +214,7 @@ ru: client_id_wrong: Настроенный идентификатор клиента OAuth 2 недействителен. Пожалуйста, проверьте конфигурацию. client_secret_wrong: Настроенный ключ клиента OAuth 2 недействителен. Пожалуйста, проверьте конфигурацию. drive_id_wrong: Настроенный идентификатор диска не найден. Пожалуйста, проверьте конфигурацию. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: Папка группы не найдена. group_folder_version_mismatch: Версия групповой папки не поддерживается. Пожалуйста, обновите ваш сервер Nextcloud. host_not_found: По настроенному адресу хоста сервер Nextcloud не найден. Пожалуйста, проверьте конфигурацию. missing_dependencies: 'Для файлового хранилища отсутствует необходимая зависимость. Пожалуйста, добавьте следующую зависимость: %{dependency}.' @@ -223,10 +223,10 @@ ru: subtitle: Проверка соединения tenant_id_wrong: Настроенный идентификатор каталога недействителен. Пожалуйста, проверьте конфигурацию. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: Неожиданное содержимое обнаружено в управляемой папке группы. + one_drive: На диске обнаружено неожидаемое содержимое. unknown_error: Соединение не удалось подтвердить. Произошла неизвестная ошибка. Пожалуйста, проверьте журналы сервера для получения дополнительной информации. - userless_access_denied: The configured app password is invalid. + userless_access_denied: Указанный пароль приложения неверен. label_error: Ошибка label_healthy: Здоровые label_pending: В ожидании @@ -286,7 +286,7 @@ ru: label_active: Активный label_add_new_storage: Добавить новое хранилище label_automatic_folder: Новая папка с автоматически управляемыми правами - label_completed: Выполнено + label_completed: Завершено label_creation_time: Время создания label_creator: Создатель label_delete_storage: Удалить хранилище diff --git a/modules/storages/config/locales/crowdin/uk.yml b/modules/storages/config/locales/crowdin/uk.yml index 0b95f3e992fa..209d6cd13cf5 100644 --- a/modules/storages/config/locales/crowdin/uk.yml +++ b/modules/storages/config/locales/crowdin/uk.yml @@ -91,8 +91,8 @@ uk: rename_project_folder: 'Перейменування папки керованого проекту:' errors: messages: - error: An unexpected error occurred. Please check OpenProject logs for more information or contact an administrator - unauthorized: OpenProject could not authenticate with the Storage Provider. Please ensure that you have access to it. + error: Сталася неочікувана помилка. Будь ласка, перевірте журнали OpenProject для отримання додаткової інформації або зверніться до адміністратора + unauthorized: OpenProject не вдалося автентифікуватись у постачальника сховища. Переконайтеся, що ви маєте до нього доступ. models: copy_project_folders_service: conflict: Папка %{destination_path} уже існує. Перериваємо процес, щоб уникнути перезапису. @@ -150,7 +150,7 @@ uk: unauthorized: Не вдалося синхронізувати OpenProject із OneDrive. Перевірте конфігурацію свого сховища й програми Azure. user_does_not_exist: "%{user} не існує в Nextcloud." upload_link_service: - not_found: The destination folder %{folder} could not be found on %{storage_name}. + not_found: Теку призначення %{folder} не вдалося знайти на %{storage_name}. storages: buttons: complete_without_setup: Завершити без налаштування @@ -214,7 +214,7 @@ uk: client_id_wrong: Налаштований ідентифікатор клієнта OAuth 2 недійсний. Перевірте конфігурацію. client_secret_wrong: Налаштований секретний ключ клієнта OAuth 2 недійсний. Перевірте конфігурацію. drive_id_wrong: Налаштований ідентифікатор Drive ID не знайдено. Перевірте конфігурацію. - group_folder_not_found: The group folder could not be found. + group_folder_not_found: Теку групи не знайдено. group_folder_version_mismatch: Версія папки групи не підтримується. Оновіть свій сервер Nextcloud. host_not_found: Сервер Nextcloud не знайдено за вказаною URL-адресою. Перевірте конфігурацію. missing_dependencies: 'Відсутня обов’язкова залежність для файлового сховища. Додайте таку залежність: %{dependency}.' @@ -223,10 +223,10 @@ uk: subtitle: Перевірка підключення tenant_id_wrong: Налаштований ідентифікатор каталогу (клієнта) недійсний. Перевірте конфігурацію. unexpected_content: - nextcloud: Unexpected content found in the managed group folder. - one_drive: Unexpected content found in the drive. + nextcloud: У теці керованої групи знайдено неочікуваний вміст. + one_drive: На диску знайдено неочікуваний вміст. unknown_error: Не вдалося перевірити підключення. Сталася невідома помилка. Щоб дізнатися більше, перегляньте журнали сервера. - userless_access_denied: The configured app password is invalid. + userless_access_denied: Налаштований пароль застосунку недійсний. label_error: Помилка label_healthy: Справність label_pending: Очікування diff --git a/modules/storages/config/locales/crowdin/zh-CN.yml b/modules/storages/config/locales/crowdin/zh-CN.yml index 36207230b8cf..8b9a3fd2db11 100644 --- a/modules/storages/config/locales/crowdin/zh-CN.yml +++ b/modules/storages/config/locales/crowdin/zh-CN.yml @@ -226,7 +226,7 @@ zh-CN: nextcloud: 在管理组文件夹中发现意外内容。 one_drive: 在驱动器中发现意外内容。 unknown_error: 连接无法验证。出现未知错误。请查看服务器日志以获取更多信息。 - userless_access_denied: The configured app password is invalid. + userless_access_denied: 已配置的应用密码无效。 label_error: 错误 label_healthy: 健康 label_pending: 待处理 diff --git a/modules/storages/config/locales/crowdin/zh-TW.yml b/modules/storages/config/locales/crowdin/zh-TW.yml index e0bf93da7be3..00de8500bfd6 100644 --- a/modules/storages/config/locales/crowdin/zh-TW.yml +++ b/modules/storages/config/locales/crowdin/zh-TW.yml @@ -8,7 +8,7 @@ zh-TW: drive: Drive ID host: 主機 name: 名稱 - provider_type: 提供者類型 + provider_type: 提供商類型 tenant: 目錄 (租戶) ID errors: messages: @@ -92,7 +92,7 @@ zh-TW: errors: messages: error: 發生意外錯誤。請檢查 OpenProject 記錄以獲得更多資訊,或聯絡管理員 - unauthorized: OpenProject 無法驗證儲存服務提供者。請確認您有存取權。 + unauthorized: OpenProject 無法驗證儲存服務提供商。請確認您有存取權。 models: copy_project_folders_service: conflict: 資料夾 %{destination_path} 已經存在。中斷程序以避免覆寫。 @@ -167,7 +167,7 @@ zh-TW: one_drive: 允許 OpenProject 使用 OAuth 連接 OneDrive/Sharepoint 存取 Azure 資料。 redirect_uri_incomplete: one_drive: 使用正確的 URI 重定向完成設定。 - confirm_replace_oauth_application: 此操作將重設目前的 OAuth 憑證。 確認後,您必須在儲存空間提供者重新輸入憑證,並且所有遠端使用者都必須再次針對 OpenProject 進行授權。 您確定要繼續嗎? + confirm_replace_oauth_application: 此操作將重設目前的 OAuth 憑證。 確認後,您必須在儲存空間提供商重新輸入憑證,並且所有遠端使用者都必須再次針對 OpenProject 進行授權。 您確定要繼續嗎? confirm_replace_oauth_client: 此操作將重設目前的 OAuth 憑證。 確認後,您必須輸入儲存提供者的新憑證,並且所有使用者都必須再次針對 %{provider_type} 進行授權。 您確定要繼續嗎? delete_warning: input_delete_confirmation: 輸入檔案儲存名稱 %{file_storage} 以確認刪除。 @@ -186,7 +186,7 @@ zh-TW: enabled_in_projects: setup_incomplete_description: 此儲存的設定不完整。請先完成設定,再於多個專案中啟用。 setup_incomplete_header: 儲存設定不完整 - error_invalid_provider_type: 請選擇有效的儲存空間提供者。 + error_invalid_provider_type: 請選擇有效的儲存空間提供商。 file_storage_view: access_management: automatic_management: 自動管理的專案文件夾 @@ -205,7 +205,7 @@ zh-TW: openproject_oauth: OpenProject 開放授權 (OAuth) project_folders: 專案資料夾 redirect_uri: 重新導向 URI - storage_provider: 儲存空間提供者 + storage_provider: 儲存空間提供商 health: checked: 上次檢查時間:%{datetime} connection_validation: @@ -226,7 +226,7 @@ zh-TW: nextcloud: 在管理的群組資料夾中發現非預期內容。 one_drive: 在儲存空間中發現預期之外內容。 unknown_error: 連線無法驗證。發生未知錯誤。請檢查伺服器日誌以瞭解進一步資訊。 - userless_access_denied: The configured app password is invalid. + userless_access_denied: 設定的應用程式密碼無效。 label_error: 錯誤 label_healthy: 健康的 label_pending: 待處理 @@ -311,7 +311,7 @@ zh-TW: label_openproject_oauth_application_id: OpenProject OAuth 用戶端 ID label_openproject_oauth_application_secret: OpenProject OAuth 用戶端秘密 label_project_folder: 專案資料夾 - label_provider: 供應商 + label_provider: 提供商 label_redirect_uri: 重新導向 URI label_show_storage_redirect_uri: 顯示重定向 URI label_status: 狀態 @@ -371,7 +371,7 @@ zh-TW: title: 成員連線狀態 permission_header_explanation: '外部存儲器上的文件權限僅適用於自動管理的項目文件夾內的文件夾和文件。請注意,並非所有存儲提供商都支持所有文件權限。更多信息請查看文件存儲權限文檔。' provider_types: - label: 提供者類型 + label: 提供商類型 nextcloud: label_oauth_client_id: Nextcloud OAuth 客户端 ID label_oauth_client_secret: Nextcloud OAuth 客户端金鑰 diff --git a/modules/team_planner/config/locales/crowdin/js-de.yml b/modules/team_planner/config/locales/crowdin/js-de.yml index 7e096497d17a..244150968545 100644 --- a/modules/team_planner/config/locales/crowdin/js-de.yml +++ b/modules/team_planner/config/locales/crowdin/js-de.yml @@ -8,7 +8,7 @@ de: create_title: 'Neuen Teamplaner erstellen' unsaved_title: 'Unbenannter Teamplaner' no_data: 'Fügen Sie zugewiesene Benutzer hinzu, um Ihren Teamplaner einzurichten.' - add_assignee: 'Assignee' + add_assignee: 'Zugewiesenen Benutzer' remove_assignee: 'Zugewiesenen Benutzer entfernen' two_weeks: '2 Wochen' one_week: '1 Woche' diff --git a/modules/team_planner/config/locales/crowdin/js-es.yml b/modules/team_planner/config/locales/crowdin/js-es.yml index a86450b8c449..ba6f2a9a5e93 100644 --- a/modules/team_planner/config/locales/crowdin/js-es.yml +++ b/modules/team_planner/config/locales/crowdin/js-es.yml @@ -8,7 +8,7 @@ es: create_title: 'Crear nuevo planificador de equipos' unsaved_title: 'Planificador de equipo sin nombre' no_data: 'Añadir asignados para configurar su planificador de equipo.' - add_assignee: 'Assignee' + add_assignee: 'Asignado a' remove_assignee: 'Eliminar asignado' two_weeks: '2 semanas' one_week: '1 semana' diff --git a/modules/team_planner/config/locales/crowdin/js-fr.yml b/modules/team_planner/config/locales/crowdin/js-fr.yml index f912c2d4b1b8..695779007b45 100644 --- a/modules/team_planner/config/locales/crowdin/js-fr.yml +++ b/modules/team_planner/config/locales/crowdin/js-fr.yml @@ -8,7 +8,7 @@ fr: create_title: 'Créer un nouveau planificateur d''équipe' unsaved_title: 'Planificateur d''équipe sans nom' no_data: 'Ajoutez des personnes pour configurer votre planificateur d''équipe.' - add_assignee: 'Assignee' + add_assignee: 'Attributaire' remove_assignee: 'Retirer l''assigné' two_weeks: '2 semaines' one_week: '1 semaine' @@ -18,7 +18,7 @@ fr: today: 'Aujourd''hui' drag_here_to_remove: 'Faites glisser ici pour supprimer le responsable et les dates de début et de fin.' cannot_drag_here: 'Impossible de supprimer le lot de travaux en raison des autorisations ou des restrictions d''édition.' - cannot_drag_to_non_working_day: 'Ce lot de travail ne peut pas démarrer/terminer sur un jour non ouvré.' + cannot_drag_to_non_working_day: 'Ce lot de travaux ne peut pas démarrer/terminer sur un jour non ouvré.' quick_add: empty_state: 'Utilisez le champ de recherche pour trouver des lots de travaux et faites-les glisser vers le planificateur pour l''assigner à quelqu''un et définir des dates de début et de fin.' search_placeholder: 'Rechercher...' diff --git a/modules/team_planner/config/locales/crowdin/js-it.yml b/modules/team_planner/config/locales/crowdin/js-it.yml index 7fbf92d620ae..71735a603d6f 100644 --- a/modules/team_planner/config/locales/crowdin/js-it.yml +++ b/modules/team_planner/config/locales/crowdin/js-it.yml @@ -8,7 +8,7 @@ it: create_title: 'Crea nuovo pianificatore di team' unsaved_title: 'Team planner senza nome' no_data: 'Aggiungi assegnatari per configurare il tuo team planner.' - add_assignee: 'Assignee' + add_assignee: 'Assegnatario' remove_assignee: 'Rimuovi assegnatario' two_weeks: '2 settimane' one_week: '1 settimana' diff --git a/modules/team_planner/config/locales/crowdin/js-ko.yml b/modules/team_planner/config/locales/crowdin/js-ko.yml index 784a6fcfa3a3..976bddc5f403 100644 --- a/modules/team_planner/config/locales/crowdin/js-ko.yml +++ b/modules/team_planner/config/locales/crowdin/js-ko.yml @@ -8,7 +8,7 @@ ko: create_title: '새로운 팀 플래너 만들기' unsaved_title: '이름 없는 팀 플래너' no_data: '담당자를 추가하여 팀 플래너를 설정하세요.' - add_assignee: 'Assignee' + add_assignee: '담당자' remove_assignee: '담당자 제거' two_weeks: '2주' one_week: '1주' diff --git a/modules/team_planner/config/locales/crowdin/js-pl.yml b/modules/team_planner/config/locales/crowdin/js-pl.yml index f29953d1622d..c09e759ff2df 100644 --- a/modules/team_planner/config/locales/crowdin/js-pl.yml +++ b/modules/team_planner/config/locales/crowdin/js-pl.yml @@ -8,7 +8,7 @@ pl: create_title: 'Utwórz nowego planistę zespołu' unsaved_title: 'Planista zespołu bez nazwy' no_data: 'Aby skonfigurować planistę zespołu, dodaj przypisane osoby.' - add_assignee: 'Assignee' + add_assignee: 'Osoba przydzielona' remove_assignee: 'Usuń osobę przypisaną' two_weeks: '2 tygodnie' one_week: '1 tydzień' diff --git a/modules/team_planner/config/locales/crowdin/js-pt-BR.yml b/modules/team_planner/config/locales/crowdin/js-pt-BR.yml index 49c654f18e4d..e5e78c3def31 100644 --- a/modules/team_planner/config/locales/crowdin/js-pt-BR.yml +++ b/modules/team_planner/config/locales/crowdin/js-pt-BR.yml @@ -8,7 +8,7 @@ pt-BR: create_title: 'Criar novo planejador de equipe' unsaved_title: 'Planejador de equipe não nomeado' no_data: 'Adicione responsáveis para configurar seu planejador de equipe.' - add_assignee: 'Assignee' + add_assignee: 'Encarregado' remove_assignee: 'Remover responsável' two_weeks: '2 semanas' one_week: '1 semana' diff --git a/modules/team_planner/config/locales/crowdin/js-pt-PT.yml b/modules/team_planner/config/locales/crowdin/js-pt-PT.yml index 0b8e1a2d2905..4f7740c4bfb4 100644 --- a/modules/team_planner/config/locales/crowdin/js-pt-PT.yml +++ b/modules/team_planner/config/locales/crowdin/js-pt-PT.yml @@ -8,7 +8,7 @@ pt-PT: create_title: 'Criar novo planeador de equipa' unsaved_title: 'Planeador de equipa sem nome' no_data: 'Adicione responsáveis para configurar o planeador da sua equipa.' - add_assignee: 'Assignee' + add_assignee: 'Pessoa atribuída' remove_assignee: 'Remover responsável' two_weeks: '2 semanas' one_week: '1 semana' diff --git a/modules/team_planner/config/locales/crowdin/js-ru.yml b/modules/team_planner/config/locales/crowdin/js-ru.yml index 1578d078f1d8..08eccdfbfad5 100644 --- a/modules/team_planner/config/locales/crowdin/js-ru.yml +++ b/modules/team_planner/config/locales/crowdin/js-ru.yml @@ -8,7 +8,7 @@ ru: create_title: 'Создать новый командный планировщик' unsaved_title: 'Безымянный планировщик команды' no_data: 'Добавьте ответственных для создания планировщика вашей команды.' - add_assignee: 'Assignee' + add_assignee: 'Назначенный' remove_assignee: 'Удалить ответственного' two_weeks: '2-недели' one_week: '1-неделя' diff --git a/modules/team_planner/config/locales/crowdin/js-uk.yml b/modules/team_planner/config/locales/crowdin/js-uk.yml index 7786aa599ee9..c12f209a90bf 100644 --- a/modules/team_planner/config/locales/crowdin/js-uk.yml +++ b/modules/team_planner/config/locales/crowdin/js-uk.yml @@ -8,7 +8,7 @@ uk: create_title: 'Створити новий командний планувальник' unsaved_title: 'Командний планувальник без назви' no_data: 'Додайте виконавців, щоб налаштувати свій командний планувальник.' - add_assignee: 'Assignee' + add_assignee: 'Виконавець' remove_assignee: 'Вилучити виконавця' two_weeks: '2 тижні' one_week: '1 тиждень' diff --git a/modules/two_factor_authentication/config/locales/crowdin/ro.yml b/modules/two_factor_authentication/config/locales/crowdin/ro.yml index 147f36ba762a..3a3b11bd3c82 100644 --- a/modules/two_factor_authentication/config/locales/crowdin/ro.yml +++ b/modules/two_factor_authentication/config/locales/crowdin/ro.yml @@ -174,7 +174,7 @@ ro: label_expiration_hint: "%{date} sau la deconectare" label_actions: "Acțiuni" label_confirmed: "Confirmat" - button_continue: "Continuaţi" + button_continue: "Continuă" button_make_default: "Marcați ca implicit" label_unverified_phone: "Telefonul mobil nu a fost încă verificat" notice_phone_number_format: "Vă rugăm să introduceți numărul în următorul format: +XX XXXXXXXX." diff --git a/modules/two_factor_authentication/config/locales/crowdin/ru.yml b/modules/two_factor_authentication/config/locales/crowdin/ru.yml index 40be76d3ce1e..2a568cdcca57 100644 --- a/modules/two_factor_authentication/config/locales/crowdin/ru.yml +++ b/modules/two_factor_authentication/config/locales/crowdin/ru.yml @@ -174,7 +174,7 @@ ru: label_expiration_hint: "%{date} или при выходе из системы" label_actions: "Действия" label_confirmed: "Подтвержден" - button_continue: "Далее" + button_continue: "Продолжить" button_make_default: "Задать по умолчанию" label_unverified_phone: "Сотовый телефон еще не подтвержден" notice_phone_number_format: "Введите номер в следующем формате: +XX XXXXXXXX." diff --git a/modules/two_factor_authentication/config/locales/crowdin/uk.yml b/modules/two_factor_authentication/config/locales/crowdin/uk.yml index 4ba3134a2e16..9d2b0d89fb37 100644 --- a/modules/two_factor_authentication/config/locales/crowdin/uk.yml +++ b/modules/two_factor_authentication/config/locales/crowdin/uk.yml @@ -115,7 +115,7 @@ uk: failed_to_delete: "Не вдалося видалити пристрій 2FA." is_default_cannot_delete: "Пристрій позначено як типовий і його не можна видалити через активну політику безпеки. Перед видаленням позначте інший пристрій як стандартний." not_existing: "Для вашого облікового запису не зареєстровано жодного пристрою 2FA." - 2fa_from_input: Введіть код, що надійшов на пристрій %{device_name}, щоб підтвердити свою особу. + 2fa_from_input: Введіть код, отриманий на пристрій %{device_name}, щоб підтвердити свою особу. 2fa_from_webauthn: Укажіть пристрій WebAuthn %{device_name}. Якщо це USB-пристрій, переконайтеся, що його підключено, і торкніться його. Потім натисніть кнопку входу. webauthn: title: "WebAuthn" diff --git a/modules/webhooks/app/workers/attachment_webhook_job.rb b/modules/webhooks/app/workers/attachment_webhook_job.rb index 97a301136d6c..f05d2e855850 100644 --- a/modules/webhooks/app/workers/attachment_webhook_job.rb +++ b/modules/webhooks/app/workers/attachment_webhook_job.rb @@ -38,10 +38,7 @@ def accepted_in_project? webhook.enabled_for_project?(project.id) end - def payload_representer - User.system.run_given do |user| - ::API::V3::Attachments::AttachmentRepresenter - .create(resource, current_user: user, embed_links: true) - end + def payload_representer_class + ::API::V3::Attachments::AttachmentRepresenter end end diff --git a/modules/webhooks/app/workers/project_webhook_job.rb b/modules/webhooks/app/workers/project_webhook_job.rb index 732563074593..b96fd7771840 100644 --- a/modules/webhooks/app/workers/project_webhook_job.rb +++ b/modules/webhooks/app/workers/project_webhook_job.rb @@ -39,10 +39,7 @@ def accepted_in_project? end end - def payload_representer - User.system.run_given do |user| - ::API::V3::Projects::ProjectRepresenter - .create(resource, current_user: user, embed_links: true) - end + def payload_representer_class + ::API::V3::Projects::ProjectRepresenter end end diff --git a/modules/webhooks/app/workers/represented_webhook_job.rb b/modules/webhooks/app/workers/represented_webhook_job.rb index 0d4ca6a21163..0903395d604a 100644 --- a/modules/webhooks/app/workers/represented_webhook_job.rb +++ b/modules/webhooks/app/workers/represented_webhook_job.rb @@ -68,14 +68,22 @@ def payload_key raise NotImplementedError end - def payload_representer + def represented_payload + User.system.run_given do |user| + payload_representer_class + .create(resource, current_user: user, embed_links: true) + .to_hash # to_hash needs to be called within the system user block + end + end + + def payload_representer_class raise NotImplementedError end def request_body { :action => event_name, - payload_key => payload_representer + payload_key => represented_payload }.to_json end end diff --git a/modules/webhooks/app/workers/time_entry_webhook_job.rb b/modules/webhooks/app/workers/time_entry_webhook_job.rb index c8c2013caddb..d9400d8da954 100644 --- a/modules/webhooks/app/workers/time_entry_webhook_job.rb +++ b/modules/webhooks/app/workers/time_entry_webhook_job.rb @@ -31,10 +31,7 @@ def payload_key :time_entry end - def payload_representer - User.system.run_given do |user| - ::API::V3::TimeEntries::TimeEntryRepresenter - .create(resource, current_user: user, embed_links: true) - end + def payload_representer_class + ::API::V3::TimeEntries::TimeEntryRepresenter end end diff --git a/modules/webhooks/app/workers/work_package_webhook_job.rb b/modules/webhooks/app/workers/work_package_webhook_job.rb index b25b01d043a1..4f9cb3928f1b 100644 --- a/modules/webhooks/app/workers/work_package_webhook_job.rb +++ b/modules/webhooks/app/workers/work_package_webhook_job.rb @@ -31,10 +31,7 @@ def payload_key :work_package end - def payload_representer - User.system.run_given do |user| - ::API::V3::WorkPackages::WorkPackageRepresenter - .create(resource, current_user: user, embed_links: true) - end + def payload_representer_class + ::API::V3::WorkPackages::WorkPackageRepresenter end end diff --git a/modules/webhooks/spec/workers/project_webhook_job_spec.rb b/modules/webhooks/spec/workers/project_webhook_job_spec.rb index 03f81354a124..3eac1560955a 100644 --- a/modules/webhooks/spec/workers/project_webhook_job_spec.rb +++ b/modules/webhooks/spec/workers/project_webhook_job_spec.rb @@ -29,7 +29,6 @@ require "spec_helper" RSpec.describe ProjectWebhookJob, :webmock, type: :job do - shared_let(:user) { create(:admin) } shared_let(:request_url) { "http://example.net/test/42" } shared_let(:project) { create(:project, name: "Foo Bar") } shared_let(:webhook) { create(:webhook, all_projects: true, url: request_url, secret: nil) } @@ -50,6 +49,10 @@ { content_type: "text/plain", x_spec: "foobar" } end + let(:expected_payload) do + {} + end + let(:stub) do stub_request(:post, stubbed_url.sub("http://", "")) .with( @@ -57,7 +60,8 @@ "action" => event, "project" => hash_including( "_type" => "Project", - "name" => "Foo Bar" + "name" => "Foo Bar", + **expected_payload ) ), headers: request_headers @@ -78,7 +82,6 @@ before do allow(Webhooks::Webhook).to receive(:find).with(webhook.id).and_return(webhook) - login_as user stub end @@ -133,7 +136,7 @@ end end - describe "triggering a projec creation" do + describe "triggering a project creation" do it_behaves_like "a project webhook call" do let(:event) { "project:created" } end @@ -146,4 +149,30 @@ let(:response_body) { "not found" } end end + + describe "triggering an update with a custom field set" do + shared_let(:custom_field) { create(:project_custom_field, :string, projects: [project]) } + shared_let(:custom_value) do + create(:custom_value, + custom_field:, + customized: project, + value: "wat") + end + + it_behaves_like "a project webhook call" do + let(:expected_payload) do + { custom_field.attribute_name(:camel_case) => "wat" } + end + + it "includes the custom field value" do + subject + + expect(stub).to have_been_requested + + log = Webhooks::Log.last + request = JSON.parse(log.request_body) + expect(request["project"][custom_field.attribute_name(:camel_case)]).to eq "wat" + end + end + end end diff --git a/modules/xls_export/config/locales/crowdin/zh-CN.yml b/modules/xls_export/config/locales/crowdin/zh-CN.yml index 31c8d3cdd710..59230e603ecf 100644 --- a/modules/xls_export/config/locales/crowdin/zh-CN.yml +++ b/modules/xls_export/config/locales/crowdin/zh-CN.yml @@ -13,4 +13,4 @@ zh-CN: xls_with_relations: "带关系的 XLS" xls_export: child_of: 此项的子项 - parent_of: 此项的父项 + parent_of: 此项的父级 diff --git a/spec/requests/statuses_spec.rb b/spec/requests/statuses_spec.rb new file mode 100644 index 000000000000..d74758cf330a --- /dev/null +++ b/spec/requests/statuses_spec.rb @@ -0,0 +1,56 @@ +# frozen_string_literal: true + +#-- copyright +# OpenProject is an open source project management software. +# Copyright (C) the OpenProject GmbH +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License version 3. +# +# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: +# Copyright (C) 2006-2013 Jean-Philippe Lang +# Copyright (C) 2010-2013 the ChiliProject Team +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# See COPYRIGHT and LICENSE files for more details. +#++ + +require "spec_helper" + +RSpec.describe "Statuses", :skip_csrf, type: :rails_request do + shared_let(:admin) { create(:admin) } + + current_user { admin } + + describe "POST /statuses" do + it "creates a new status" do + post statuses_path, params: { status: { name: "New Status" } } + + expect(Status.find_by(name: "New Status")).not_to be_nil + expect(response).to redirect_to(statuses_path) + end + + context "with empty % Complete" do + it "displays an error" do + post statuses_path, params: { status: { name: "New status", default_done_ratio: "" } } + + expect(response).to have_http_status(:success) + expect(response).to render_template("new") + expect(response.body).to include("% Complete must be between 0 and 100.") + end + end + end +end diff --git a/spec/workers/mails/mailer_job_spec.rb b/spec/workers/mails/mailer_job_spec.rb new file mode 100644 index 000000000000..d8697d8376e5 --- /dev/null +++ b/spec/workers/mails/mailer_job_spec.rb @@ -0,0 +1,101 @@ +# frozen_string_literal: true + +#-- copyright +# OpenProject is an open source project management software. +# Copyright (C) the OpenProject GmbH +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License version 3. +# +# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: +# Copyright (C) 2006-2013 Jean-Philippe Lang +# Copyright (C) 2010-2013 the ChiliProject Team +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# See COPYRIGHT and LICENSE files for more details. +#++ + +require "spec_helper" + +class MyRSpecExampleMailer < ApplicationMailer + default from: "openproject@example.com", + subject: "Welcome to OpenProject" + + def welcome_email + user = params[:user] + mail(to: user) do |format| + format.text { render plain: "Welcome!" } + format.html { render html: "

Welcome!

".html_safe } + end + end + + def welcome2(user) + mail(to: user) do |format| + format.text { render plain: "Welcome!" } + format.html { render html: "

Welcome!

".html_safe } + end + end +end + +RSpec.describe Mails::MailerJob do + subject { described_class.new } + + it "is used to send emails when calling .deliver_later on a mailer" do + user = create(:user, mail: "user@example.com") + job = MyRSpecExampleMailer.with(user:).welcome_email.deliver_later + expect(job).to be_an_instance_of(described_class) + expect(enqueued_jobs).to contain_exactly(a_hash_including("job_class" => described_class.name)) + enqueued_job = enqueued_jobs.first + + perform_enqueued_jobs + # job has been performed + expect(performed_jobs).to contain_exactly(enqueued_job) + # there are no more jobs + expect(enqueued_jobs).to be_empty + end + + it "retries sending email on StandardError" do + user = "Will raise ArgumentError because ApplicationMailer expect a User instance as recipient" + MyRSpecExampleMailer.with(user:).welcome_email.deliver_later + expect(enqueued_jobs).to contain_exactly(a_hash_including("job_class" => "Mails::MailerJob", + "executions" => 0, + "exception_executions" => {})) + + # let's execute the mailer job + job1 = enqueued_jobs.first + perform_enqueued_jobs + + # job has been performed, but has encountered an error + expect(performed_jobs).to contain_exactly(job1) + expect(job1).to include("exception_executions" => { "[StandardError]" => 1 }) + + # and it is being retried: another identical job is queued with an increased execution count + expect(enqueued_jobs).to contain_exactly(a_hash_including("job_class" => "Mails::MailerJob", + "executions" => 1, + "exception_executions" => { "[StandardError]" => 1 })) + + # we can run this retried job, it will be performed, fail again, and enqueue another retry job again + job2 = enqueued_jobs.first + perform_enqueued_jobs + expect(performed_jobs).to contain_exactly(job1, job2) + expect(job2).to include("exception_executions" => { "[StandardError]" => 2 }) + expect(enqueued_jobs).to contain_exactly(a_hash_including("job_class" => "Mails::MailerJob", + "executions" => 2, + "exception_executions" => { "[StandardError]" => 2 })) + + # and so on... + end +end