<%= 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) %> |
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.