From ba9922bcb8793ba3ba0af6959ee0451d9d7debcf Mon Sep 17 00:00:00 2001 From: Edouard Vanbelle Date: Fri, 5 Jun 2026 10:31:31 +0200 Subject: [PATCH] i18n: add missing translatiions --- static/js/components/mySharesList.js | 2 +- static/js/core/icons.js | 4 ++++ static/locales/ar.json | 31 ++++++++++++++++++++++++++-- static/locales/de.json | 31 ++++++++++++++++++++++++++-- static/locales/es.json | 31 ++++++++++++++++++++++++++-- static/locales/fa.json | 31 ++++++++++++++++++++++++++-- static/locales/fr.json | 10 +++++++++ static/locales/hi.json | 31 ++++++++++++++++++++++++++-- static/locales/it.json | 31 ++++++++++++++++++++++++++-- static/locales/ja.json | 31 ++++++++++++++++++++++++++-- static/locales/ko.json | 31 ++++++++++++++++++++++++++-- static/locales/nl.json | 31 ++++++++++++++++++++++++++-- static/locales/pl.json | 31 ++++++++++++++++++++++++++-- static/locales/pt.json | 31 ++++++++++++++++++++++++++-- static/locales/ru.json | 31 ++++++++++++++++++++++++++-- static/locales/zh-TW.json | 31 ++++++++++++++++++++++++++-- static/locales/zh.json | 31 ++++++++++++++++++++++++++-- static/sw.js | 2 +- 18 files changed, 422 insertions(+), 30 deletions(-) diff --git a/static/js/components/mySharesList.js b/static/js/components/mySharesList.js index 9b707434..d2a2707b 100644 --- a/static/js/components/mySharesList.js +++ b/static/js/components/mySharesList.js @@ -471,7 +471,7 @@ class MySharesList { menu.appendChild(this._menuSeparator()); menu.appendChild(this._menuExpiryRow(grant, item, rowEl, initialExpiry)); menu.appendChild(this._menuSeparator()); - const removeIcon = grant.subject_type === 'group' ? 'fas fa-user-group' : 'fas fa-user-times'; + const removeIcon = grant.subject_type === 'group' ? 'fas fa-user-group' : 'fas fa-user-xmark'; menu.appendChild( this._menuItem(removeIcon, i18n.t('myshares.removeAccess', 'Remove access'), true, async () => { menu.remove(); diff --git a/static/js/core/icons.js b/static/js/core/icons.js index 0bc61c40..241e5dc5 100644 --- a/static/js/core/icons.js +++ b/static/js/core/icons.js @@ -478,6 +478,10 @@ const OxiIcons = { 640, 'M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304l91.4 0C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7L29.7 512C13.3 512 0 498.7 0 482.3zM504 312l0-64-64 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l64 0 0-64c0-13.3 10.7-24 24-24s24 10.7 24 24l0 64 64 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-64 0 0 64c0 13.3-10.7 24-24 24s-24-10.7-24-24z' ], + 'user-xmark': [ + 576, + 'M254.1 304c98.5 0 178.3 79.8 178.3 178.3 0 16.4-13.3 29.7-29.7 29.7L46.1 512c-16.4 0-29.7-13.3-29.7-29.7 0-98.5 79.8-178.3 178.3-178.3l59.4 0zM530.3 108.1c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-33.9 33.9 33.9 33.9c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-33.9-33.9-33.9 33.9c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l33.9-33.9-33.9-33.9c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l33.9 33.9 33.9-33.9zM224.4 248a120 120 0 1 1 0-240 120 120 0 1 1 0 240z' + ], users: [ 640, 'M144 0a80 80 0 1 1 0 160A80 80 0 1 1 144 0zM512 0a80 80 0 1 1 0 160A80 80 0 1 1 512 0zM0 298.7C0 239.8 47.8 192 106.7 192l42.7 0c15.9 0 31 3.5 44.6 9.7c-1.3 7.2-1.9 14.7-1.9 22.3c0 38.2 16.8 72.5 43.3 96c-.2 0-.4 0-.7 0L21.3 320C9.6 320 0 310.4 0 298.7zM405.3 320c-.2 0-.4 0-.7 0c26.6-23.5 43.3-57.8 43.3-96c0-7.6-.7-15-1.9-22.3c13.6-6.3 28.7-9.7 44.6-9.7l42.7 0C592.2 192 640 239.8 640 298.7c0 11.8-9.6 21.3-21.3 21.3l-213.3 0zM224 224a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zM128 485.3C128 411.7 187.7 352 261.3 352l117.3 0C452.3 352 512 411.7 512 485.3c0 14.7-11.9 26.7-26.7 26.7l-330.7 0c-14.7 0-26.7-11.9-26.7-26.7z' diff --git a/static/locales/ar.json b/static/locales/ar.json index dec9df29..e19778d3 100644 --- a/static/locales/ar.json +++ b/static/locales/ar.json @@ -196,7 +196,8 @@ "shareCopied": "تم نسخ الرابط إلى الحافظة", "shareCreated": "تم إنشاء رابط المشاركة بنجاح", "shareUpdated": "تم تحديث إعدادات المشاركة بنجاح", - "shareRemoved": "تمت إزالة المشاركة بنجاح" + "shareRemoved": "تمت إزالة المشاركة بنجاح", + "inviteByEmail": "دعوة عبر البريد الإلكتروني — ستُرسل الدعوة" }, "share_dialogTitle": "رابط المشاركة", "share_linkLabel": "رابط المشاركة:", @@ -697,7 +698,23 @@ "migration_verify_passed": "اجتاز التحقق", "migration_verify_failed": "فشل التحقق", "migration_failed_blobs": "كتل فاشلة", - "testing": "جارٍ الاختبار..." + "testing": "جارٍ الاختبار...", + "smtp_disabled": "معطّل (المضيف غير مضبوط)", + "smtp_enabled": "مفعّل", + "smtp_enabled_label": "الحالة", + "smtp_intro": "يتم تكوين SMTP حصريًا عبر متغيرات البيئة (OXICLOUD_SMTP_*). تُقرأ القيم أدناه من الخادم قيد التشغيل — لتغييرها، عدّل البيئة وأعد تشغيل OxiCloud.", + "smtp_not_configured": "SMTP غير مكوَّن على هذا الخادم.", + "smtp_send_failed": "فشل الإرسال.", + "smtp_send_test": "إرسال بريد اختباري", + "smtp_sending": "جارٍ الإرسال…", + "smtp_sent": "تم إرسال البريد الاختباري.", + "smtp_server_code": "رد الخادم", + "smtp_test_intro": "يرسل رسالة تشخيصية محددة مسبقًا إلى المستلم أدناه ويُبلِّغ عن استجابة خادم SMTP لتتمكن من مطابقتها مع سجلات المرحّل الخاص بك.", + "smtp_test_missing_to": "أدخل عنوان المستلم.", + "smtp_test_title": "إرسال بريد اختباري", + "smtp_test_to": "عنوان المستلم", + "smtp_title": "البريد الصادر (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "الملف الشخصي", @@ -850,5 +867,15 @@ "delete_confirm_label": "اكتب اسم المجموعة للتأكيد:", "delete_confirm_mismatch": "اكتب اسم المجموعة كما هو للتأكيد.", "virtual_internal_name": "داخلي" + }, + "myshares": { + "copyLink": "نسخ الرابط", + "deleteLink": "حذف الرابط", + "notifyByEmail": "إشعار عبر البريد الإلكتروني", + "notifyFailed": "تعذّر إرسال الإشعار.", + "notifyGroupMembers": "إشعار أعضاء المجموعة", + "notifyRateLimited": "عدد كبير من الإشعارات لهذا المستلم — حاول لاحقًا.", + "removeAccess": "إزالة الوصول", + "resendInvitation": "إعادة إرسال بريد الدعوة" } } diff --git a/static/locales/de.json b/static/locales/de.json index f2ad3726..8b3fb33e 100644 --- a/static/locales/de.json +++ b/static/locales/de.json @@ -196,7 +196,8 @@ "shareCopied": "Link in Zwischenablage kopiert", "shareCreated": "Freigabelink erfolgreich erstellt", "shareUpdated": "Freigabeeinstellungen aktualisiert", - "shareRemoved": "Freigabe erfolgreich entfernt" + "shareRemoved": "Freigabe erfolgreich entfernt", + "inviteByEmail": "Per E-Mail einladen — Einladung wird gesendet" }, "share_dialogTitle": "Link teilen", "share_linkLabel": "Geteilter Link:", @@ -697,7 +698,23 @@ "migration_verify_passed": "Verifizierung erfolgreich", "migration_verify_failed": "Verifizierung fehlgeschlagen", "migration_failed_blobs": "Fehlgeschlagene Blobs", - "testing": "Wird getestet..." + "testing": "Wird getestet...", + "smtp_disabled": "Deaktiviert (Host nicht gesetzt)", + "smtp_enabled": "Aktiviert", + "smtp_enabled_label": "Status", + "smtp_intro": "SMTP wird ausschließlich über Umgebungsvariablen (OXICLOUD_SMTP_*) konfiguriert. Die folgenden Werte werden aus dem laufenden Server gelesen — zum Ändern bearbeiten Sie die Umgebung und starten OxiCloud neu.", + "smtp_not_configured": "SMTP ist auf diesem Server nicht konfiguriert.", + "smtp_send_failed": "Senden fehlgeschlagen.", + "smtp_send_test": "Test-E-Mail senden", + "smtp_sending": "Senden …", + "smtp_sent": "Test-E-Mail gesendet.", + "smtp_server_code": "Server antwortete", + "smtp_test_intro": "Sendet eine fest einprogrammierte Diagnosenachricht an den unten angegebenen Empfänger und meldet die Antwort des SMTP-Servers, sodass Sie sie mit Ihren Relay-Protokollen abgleichen können.", + "smtp_test_missing_to": "Geben Sie eine Empfängeradresse ein.", + "smtp_test_title": "Test-E-Mail senden", + "smtp_test_to": "Empfängeradresse", + "smtp_title": "Ausgehende E-Mail (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "Profil", @@ -850,5 +867,15 @@ "delete_confirm_label": "Tippe den Gruppennamen zur Bestätigung ein:", "delete_confirm_mismatch": "Tippe den Gruppennamen exakt zur Bestätigung ein.", "virtual_internal_name": "Intern" + }, + "myshares": { + "copyLink": "Link kopieren", + "deleteLink": "Link löschen", + "notifyByEmail": "Per E-Mail benachrichtigen", + "notifyFailed": "Benachrichtigung konnte nicht gesendet werden.", + "notifyGroupMembers": "Gruppenmitglieder benachrichtigen", + "notifyRateLimited": "Zu viele Benachrichtigungen für diesen Empfänger — versuchen Sie es später erneut.", + "removeAccess": "Zugriff entfernen", + "resendInvitation": "Einladungs-E-Mail erneut senden" } } diff --git a/static/locales/es.json b/static/locales/es.json index 7b459ab3..06b99b5b 100644 --- a/static/locales/es.json +++ b/static/locales/es.json @@ -150,7 +150,8 @@ "shareCopied": "Enlace copiado al portapapeles", "shareCreated": "Enlace compartido creado correctamente", "shareUpdated": "Configuración de compartido actualizada", - "shareRemoved": "Compartido eliminado correctamente" + "shareRemoved": "Compartido eliminado correctamente", + "inviteByEmail": "Invitar por correo — se enviará una invitación" }, "share_dialogTitle": "Compartir Enlace", "share_linkLabel": "Enlace compartido:", @@ -697,7 +698,23 @@ "migration_verify_passed": "Verificación exitosa", "migration_verify_failed": "Verificación fallida", "migration_failed_blobs": "blobs fallidos", - "testing": "Probando…" + "testing": "Probando…", + "smtp_disabled": "Desactivado (host no configurado)", + "smtp_enabled": "Activado", + "smtp_enabled_label": "Estado", + "smtp_intro": "SMTP se configura exclusivamente a través de variables de entorno (OXICLOUD_SMTP_*). Los valores siguientes se leen del servidor en ejecución — para modificarlos, edita el entorno y reinicia OxiCloud.", + "smtp_not_configured": "SMTP no está configurado en este servidor.", + "smtp_send_failed": "Fallo al enviar.", + "smtp_send_test": "Enviar correo de prueba", + "smtp_sending": "Enviando…", + "smtp_sent": "Correo de prueba enviado.", + "smtp_server_code": "Respuesta del servidor", + "smtp_test_intro": "Envía un mensaje de diagnóstico predefinido al destinatario indicado abajo e informa de la respuesta del servidor SMTP para que puedas cruzarla con los registros de tu relay.", + "smtp_test_missing_to": "Introduce una dirección de destinatario.", + "smtp_test_title": "Enviar correo de prueba", + "smtp_test_to": "Dirección del destinatario", + "smtp_title": "Correo saliente (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "Perfil", @@ -850,5 +867,15 @@ "delete_confirm_label": "Escribe el nombre del grupo para confirmar:", "delete_confirm_mismatch": "Escribe el nombre del grupo exactamente para confirmar.", "virtual_internal_name": "Interno" + }, + "myshares": { + "copyLink": "Copiar enlace", + "deleteLink": "Eliminar enlace", + "notifyByEmail": "Notificar por correo", + "notifyFailed": "No se pudo enviar la notificación.", + "notifyGroupMembers": "Notificar a los miembros del grupo", + "notifyRateLimited": "Demasiadas notificaciones para este destinatario — inténtalo más tarde.", + "removeAccess": "Quitar acceso", + "resendInvitation": "Reenviar correo de invitación" } } diff --git a/static/locales/fa.json b/static/locales/fa.json index 1e7dc968..9c385666 100644 --- a/static/locales/fa.json +++ b/static/locales/fa.json @@ -196,7 +196,8 @@ "shareCopied": "پیوند به بُریده‌دان رونوشت شد", "shareCreated": "پیوند هم‌رسانی با موفقیت ایجاد شد", "shareUpdated": "تنظیمات هم‌رسانی با موفقیت به‌روزرسانی شد", - "shareRemoved": "هم‌رسانی با موفقیت پاک شد" + "shareRemoved": "هم‌رسانی با موفقیت پاک شد", + "inviteByEmail": "دعوت از طریق ایمیل — دعوت ارسال خواهد شد" }, "share_dialogTitle": "پیوند هم‌رسانی", "share_linkLabel": "پیوند هم‌رسانی:", @@ -680,7 +681,23 @@ "migration_verify_passed": "تأیید موفق", "migration_verify_failed": "تأیید ناموفق", "migration_failed_blobs": "بلوب‌های ناموفق", - "testing": "در حال آزمایش..." + "testing": "در حال آزمایش...", + "smtp_disabled": "غیرفعال (میزبان تنظیم نشده)", + "smtp_enabled": "فعال", + "smtp_enabled_label": "وضعیت", + "smtp_intro": "SMTP فقط از طریق متغیرهای محیطی (OXICLOUD_SMTP_*) پیکربندی می‌شود. مقادیر زیر از سرور در حال اجرا خوانده می‌شوند — برای تغییر آن‌ها، محیط را ویرایش کرده و OxiCloud را راه‌اندازی مجدد کنید.", + "smtp_not_configured": "SMTP روی این سرور پیکربندی نشده است.", + "smtp_send_failed": "ارسال ناموفق.", + "smtp_send_test": "ارسال ایمیل آزمایشی", + "smtp_sending": "در حال ارسال…", + "smtp_sent": "ایمیل آزمایشی ارسال شد.", + "smtp_server_code": "پاسخ سرور", + "smtp_test_intro": "یک پیام تشخیصی از پیش تعریف‌شده را به گیرنده زیر ارسال می‌کند و پاسخ سرور SMTP را گزارش می‌دهد تا بتوانید آن را با گزارش‌های ریلی خود مطابقت دهید.", + "smtp_test_missing_to": "آدرس گیرنده را وارد کنید.", + "smtp_test_title": "ارسال ایمیل آزمایشی", + "smtp_test_to": "آدرس گیرنده", + "smtp_title": "ایمیل خروجی (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "پروفایل", @@ -850,5 +867,15 @@ "delete_confirm_label": "نام گروه را برای تأیید وارد کنید:", "delete_confirm_mismatch": "نام گروه را دقیقاً برای تأیید وارد کنید.", "virtual_internal_name": "داخلی" + }, + "myshares": { + "copyLink": "کپی پیوند", + "deleteLink": "حذف پیوند", + "notifyByEmail": "اطلاع‌رسانی از طریق ایمیل", + "notifyFailed": "ارسال اعلان ممکن نشد.", + "notifyGroupMembers": "اطلاع‌رسانی به اعضای گروه", + "notifyRateLimited": "اعلان‌های زیادی برای این گیرنده — بعداً دوباره تلاش کنید.", + "removeAccess": "حذف دسترسی", + "resendInvitation": "ارسال مجدد ایمیل دعوت" } } diff --git a/static/locales/fr.json b/static/locales/fr.json index 10b4d59e..ef1e7296 100644 --- a/static/locales/fr.json +++ b/static/locales/fr.json @@ -867,5 +867,15 @@ "delete_confirm_label": "Tapez le nom du groupe pour confirmer :", "delete_confirm_mismatch": "Tapez le nom du groupe exactement pour confirmer.", "virtual_internal_name": "Interne" + }, + "myshares": { + "copyLink": "Copier le lien", + "deleteLink": "Supprimer le lien", + "notifyByEmail": "Notifier par e-mail", + "notifyFailed": "Impossible d'envoyer la notification.", + "notifyGroupMembers": "Notifier les membres du groupe", + "notifyRateLimited": "Trop de notifications pour ce destinataire — réessayez plus tard.", + "removeAccess": "Retirer l'accès", + "resendInvitation": "Renvoyer l'e-mail d'invitation" } } diff --git a/static/locales/hi.json b/static/locales/hi.json index 32d7aee4..9e604d36 100644 --- a/static/locales/hi.json +++ b/static/locales/hi.json @@ -196,7 +196,8 @@ "shareCopied": "लिंक क्लिपबोर्ड पर कॉपी हुआ", "shareCreated": "शेयर लिंक सफलतापूर्वक बनाया गया", "shareUpdated": "शेयर सेटिंग्स सफलतापूर्वक अपडेट हुईं", - "shareRemoved": "शेयर सफलतापूर्वक हटाया गया" + "shareRemoved": "शेयर सफलतापूर्वक हटाया गया", + "inviteByEmail": "ईमेल द्वारा आमंत्रित करें — आमंत्रण भेजा जाएगा" }, "share_dialogTitle": "शेयर लिंक", "share_linkLabel": "शेयर लिंक:", @@ -697,7 +698,23 @@ "migration_verify_passed": "सत्यापन पास", "migration_verify_failed": "सत्यापन विफल", "migration_failed_blobs": "विफल ब्लॉब्स", - "testing": "परीक्षण हो रहा है..." + "testing": "परीक्षण हो रहा है...", + "smtp_disabled": "अक्षम (होस्ट सेट नहीं)", + "smtp_enabled": "सक्षम", + "smtp_enabled_label": "स्थिति", + "smtp_intro": "SMTP केवल पर्यावरण चर (OXICLOUD_SMTP_*) के माध्यम से कॉन्फ़िगर किया जाता है। नीचे दिए गए मान चल रहे सर्वर से पढ़े जाते हैं — उन्हें बदलने के लिए, पर्यावरण संपादित करें और OxiCloud को पुनः आरंभ करें।", + "smtp_not_configured": "इस सर्वर पर SMTP कॉन्फ़िगर नहीं है।", + "smtp_send_failed": "भेजना विफल।", + "smtp_send_test": "परीक्षण ईमेल भेजें", + "smtp_sending": "भेजा जा रहा है…", + "smtp_sent": "परीक्षण ईमेल भेजा गया।", + "smtp_server_code": "सर्वर का उत्तर", + "smtp_test_intro": "नीचे दिए गए प्राप्तकर्ता को एक पूर्व-निर्धारित निदान संदेश भेजता है और SMTP सर्वर का उत्तर रिपोर्ट करता है ताकि आप इसे अपने रिले लॉग्स से मिला सकें।", + "smtp_test_missing_to": "प्राप्तकर्ता पता दर्ज करें।", + "smtp_test_title": "परीक्षण ईमेल भेजें", + "smtp_test_to": "प्राप्तकर्ता का पता", + "smtp_title": "जावक ईमेल (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "प्रोफ़ाइल", @@ -850,5 +867,15 @@ "delete_confirm_label": "पुष्टि के लिए समूह का नाम लिखें:", "delete_confirm_mismatch": "पुष्टि के लिए समूह का नाम बिल्कुल वैसा ही लिखें।", "virtual_internal_name": "आंतरिक" + }, + "myshares": { + "copyLink": "लिंक कॉपी करें", + "deleteLink": "लिंक हटाएँ", + "notifyByEmail": "ईमेल से सूचित करें", + "notifyFailed": "सूचना नहीं भेजी जा सकी।", + "notifyGroupMembers": "समूह के सदस्यों को सूचित करें", + "notifyRateLimited": "इस प्राप्तकर्ता के लिए बहुत अधिक सूचनाएँ — बाद में पुनः प्रयास करें।", + "removeAccess": "पहुँच हटाएँ", + "resendInvitation": "आमंत्रण ईमेल पुनः भेजें" } } diff --git a/static/locales/it.json b/static/locales/it.json index 0348bb7f..759eb053 100644 --- a/static/locales/it.json +++ b/static/locales/it.json @@ -196,7 +196,8 @@ "shareCopied": "Link copiato negli appunti", "shareCreated": "Link di condivisione creato con successo", "shareUpdated": "Impostazioni di condivisione aggiornate con successo", - "shareRemoved": "Condivisione rimossa con successo" + "shareRemoved": "Condivisione rimossa con successo", + "inviteByEmail": "Invita via email — verrà inviato un invito" }, "share_dialogTitle": "Link di condivisione", "share_linkLabel": "Link di condivisione:", @@ -697,7 +698,23 @@ "migration_verify_passed": "Verifica superata", "migration_verify_failed": "Verifica fallita", "migration_failed_blobs": "Blob falliti", - "testing": "Test in corso..." + "testing": "Test in corso...", + "smtp_disabled": "Disabilitato (host non impostato)", + "smtp_enabled": "Abilitato", + "smtp_enabled_label": "Stato", + "smtp_intro": "SMTP è configurato esclusivamente tramite variabili d'ambiente (OXICLOUD_SMTP_*). I valori sottostanti sono letti dal server in esecuzione — per modificarli, modifica l'ambiente e riavvia OxiCloud.", + "smtp_not_configured": "SMTP non è configurato su questo server.", + "smtp_send_failed": "Invio non riuscito.", + "smtp_send_test": "Invia email di prova", + "smtp_sending": "Invio in corso…", + "smtp_sent": "Email di prova inviata.", + "smtp_server_code": "Risposta del server", + "smtp_test_intro": "Invia un messaggio diagnostico predefinito al destinatario indicato sotto e riporta la risposta del server SMTP, così puoi correlarla con i log del tuo relay.", + "smtp_test_missing_to": "Inserisci un indirizzo destinatario.", + "smtp_test_title": "Invia un'email di prova", + "smtp_test_to": "Indirizzo destinatario", + "smtp_title": "Email in uscita (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "Profilo", @@ -850,5 +867,15 @@ "delete_confirm_label": "Digita il nome del gruppo per confermare:", "delete_confirm_mismatch": "Digita esattamente il nome del gruppo per confermare.", "virtual_internal_name": "Interno" + }, + "myshares": { + "copyLink": "Copia link", + "deleteLink": "Elimina link", + "notifyByEmail": "Notifica via email", + "notifyFailed": "Impossibile inviare la notifica.", + "notifyGroupMembers": "Notifica i membri del gruppo", + "notifyRateLimited": "Troppe notifiche per questo destinatario — riprova più tardi.", + "removeAccess": "Rimuovi accesso", + "resendInvitation": "Reinvia email di invito" } } diff --git a/static/locales/ja.json b/static/locales/ja.json index 7e3951ff..7e7388c8 100644 --- a/static/locales/ja.json +++ b/static/locales/ja.json @@ -196,7 +196,8 @@ "shareCopied": "リンクがクリップボードにコピーされました", "shareCreated": "共有リンクが正常に作成されました", "shareUpdated": "共有設定が正常に更新されました", - "shareRemoved": "共有が正常に削除されました" + "shareRemoved": "共有が正常に削除されました", + "inviteByEmail": "メールで招待 — 招待を送信します" }, "share_dialogTitle": "共有リンク", "share_linkLabel": "共有リンク:", @@ -697,7 +698,23 @@ "migration_verify_passed": "検証に合格", "migration_verify_failed": "検証に失敗", "migration_failed_blobs": "失敗したブロブ", - "testing": "テスト中..." + "testing": "テスト中...", + "smtp_disabled": "無効 (ホスト未設定)", + "smtp_enabled": "有効", + "smtp_enabled_label": "ステータス", + "smtp_intro": "SMTP は環境変数 (OXICLOUD_SMTP_*) でのみ設定します。以下の値は稼働中のサーバーから読み取られます — 変更するには環境を編集して OxiCloud を再起動してください。", + "smtp_not_configured": "このサーバーでは SMTP が設定されていません。", + "smtp_send_failed": "送信に失敗しました。", + "smtp_send_test": "テストメールを送信", + "smtp_sending": "送信中…", + "smtp_sent": "テストメールを送信しました。", + "smtp_server_code": "サーバーの応答", + "smtp_test_intro": "あらかじめ定義された診断メッセージを下記の宛先に送信し、SMTP サーバーの応答を表示します。これを使ってリレーのログと突き合わせて確認できます。", + "smtp_test_missing_to": "宛先アドレスを入力してください。", + "smtp_test_title": "テストメールを送信", + "smtp_test_to": "宛先アドレス", + "smtp_title": "送信メール (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "プロフィール", @@ -850,5 +867,15 @@ "delete_confirm_label": "確認のためにグループ名を入力してください:", "delete_confirm_mismatch": "確認のためにグループ名を正確に入力してください。", "virtual_internal_name": "内部" + }, + "myshares": { + "copyLink": "リンクをコピー", + "deleteLink": "リンクを削除", + "notifyByEmail": "メールで通知", + "notifyFailed": "通知を送信できませんでした。", + "notifyGroupMembers": "グループメンバーに通知", + "notifyRateLimited": "この受信者への通知が多すぎます — しばらくしてから再試行してください。", + "removeAccess": "アクセスを削除", + "resendInvitation": "招待メールを再送信" } } diff --git a/static/locales/ko.json b/static/locales/ko.json index fd71c784..3cdee5ef 100644 --- a/static/locales/ko.json +++ b/static/locales/ko.json @@ -196,7 +196,8 @@ "shareCopied": "링크가 클립보드에 복사되었습니다", "shareCreated": "공유 링크가 성공적으로 생성되었습니다", "shareUpdated": "공유 설정이 성공적으로 업데이트되었습니다", - "shareRemoved": "공유가 성공적으로 삭제되었습니다" + "shareRemoved": "공유가 성공적으로 삭제되었습니다", + "inviteByEmail": "이메일로 초대 — 초대장이 전송됩니다" }, "share_dialogTitle": "공유 링크", "share_linkLabel": "공유 링크:", @@ -697,7 +698,23 @@ "migration_verify_passed": "확인 통과", "migration_verify_failed": "확인 실패", "migration_failed_blobs": "실패한 블롭", - "testing": "테스트 중..." + "testing": "테스트 중...", + "smtp_disabled": "비활성화됨 (호스트 미설정)", + "smtp_enabled": "활성화됨", + "smtp_enabled_label": "상태", + "smtp_intro": "SMTP는 환경 변수(OXICLOUD_SMTP_*)로만 구성됩니다. 아래 값들은 실행 중인 서버에서 읽어옵니다 — 변경하려면 환경을 수정하고 OxiCloud를 다시 시작하세요.", + "smtp_not_configured": "이 서버에는 SMTP가 구성되어 있지 않습니다.", + "smtp_send_failed": "전송 실패.", + "smtp_send_test": "테스트 이메일 보내기", + "smtp_sending": "보내는 중…", + "smtp_sent": "테스트 이메일을 보냈습니다.", + "smtp_server_code": "서버 응답", + "smtp_test_intro": "아래 수신자에게 미리 정의된 진단 메시지를 보내고 SMTP 서버의 응답을 표시합니다. 이를 통해 릴레이 로그와 대조하여 확인할 수 있습니다.", + "smtp_test_missing_to": "수신자 주소를 입력하세요.", + "smtp_test_title": "테스트 이메일 보내기", + "smtp_test_to": "수신자 주소", + "smtp_title": "발신 이메일 (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "프로필", @@ -850,5 +867,15 @@ "delete_confirm_label": "확인을 위해 그룹 이름을 입력하세요:", "delete_confirm_mismatch": "확인을 위해 그룹 이름을 정확히 입력하세요.", "virtual_internal_name": "내부" + }, + "myshares": { + "copyLink": "링크 복사", + "deleteLink": "링크 삭제", + "notifyByEmail": "이메일로 알림", + "notifyFailed": "알림을 보낼 수 없습니다.", + "notifyGroupMembers": "그룹 구성원에게 알림", + "notifyRateLimited": "이 수신자에게 알림이 너무 많습니다 — 나중에 다시 시도하세요.", + "removeAccess": "액세스 제거", + "resendInvitation": "초대 이메일 다시 보내기" } } diff --git a/static/locales/nl.json b/static/locales/nl.json index f7de5637..8a5f7f90 100644 --- a/static/locales/nl.json +++ b/static/locales/nl.json @@ -196,7 +196,8 @@ "shareCopied": "Link gekopieerd naar klembord", "shareCreated": "Deellink succesvol aangemaakt", "shareUpdated": "Deelinstellingen bijgewerkt", - "shareRemoved": "Delen verwijderd" + "shareRemoved": "Delen verwijderd", + "inviteByEmail": "Uitnodigen via e-mail — uitnodiging wordt verzonden" }, "share_dialogTitle": "Deellink", "share_linkLabel": "Deellink:", @@ -697,7 +698,23 @@ "migration_verify_passed": "Verificatie geslaagd", "migration_verify_failed": "Verificatie mislukt", "migration_failed_blobs": "Mislukte blobs", - "testing": "Bezig met testen..." + "testing": "Bezig met testen...", + "smtp_disabled": "Uitgeschakeld (host niet ingesteld)", + "smtp_enabled": "Ingeschakeld", + "smtp_enabled_label": "Status", + "smtp_intro": "SMTP wordt uitsluitend geconfigureerd via omgevingsvariabelen (OXICLOUD_SMTP_*). De onderstaande waarden worden gelezen uit de actieve server — om ze te wijzigen, bewerk de omgeving en herstart OxiCloud.", + "smtp_not_configured": "SMTP is niet geconfigureerd op deze server.", + "smtp_send_failed": "Verzenden mislukt.", + "smtp_send_test": "Test-e-mail verzenden", + "smtp_sending": "Bezig met verzenden…", + "smtp_sent": "Test-e-mail verzonden.", + "smtp_server_code": "Serverantwoord", + "smtp_test_intro": "Verzendt een vooraf gedefinieerd diagnostisch bericht naar de onderstaande ontvanger en rapporteert het antwoord van de SMTP-server, zodat je het kunt correleren met je relay-logboeken.", + "smtp_test_missing_to": "Voer een ontvangeradres in.", + "smtp_test_title": "Test-e-mail verzenden", + "smtp_test_to": "Ontvangeradres", + "smtp_title": "Uitgaande e-mail (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "Profiel", @@ -850,5 +867,15 @@ "delete_confirm_label": "Typ de groepsnaam ter bevestiging:", "delete_confirm_mismatch": "Typ de groepsnaam exact om te bevestigen.", "virtual_internal_name": "Intern" + }, + "myshares": { + "copyLink": "Link kopiëren", + "deleteLink": "Link verwijderen", + "notifyByEmail": "Per e-mail notificeren", + "notifyFailed": "Notificatie kon niet worden verzonden.", + "notifyGroupMembers": "Groepsleden notificeren", + "notifyRateLimited": "Te veel notificaties voor deze ontvanger — probeer het later opnieuw.", + "removeAccess": "Toegang verwijderen", + "resendInvitation": "Uitnodigingsmail opnieuw verzenden" } } diff --git a/static/locales/pl.json b/static/locales/pl.json index f02e6783..6ce9b41a 100644 --- a/static/locales/pl.json +++ b/static/locales/pl.json @@ -196,7 +196,8 @@ "shareCopied": "Link skopiowany do schowka", "shareCreated": "Link udostępniania utworzony pomyślnie", "shareUpdated": "Ustawienia udostępniania zaktualizowane pomyślnie", - "shareRemoved": "Udostępnienie usunięte pomyślnie" + "shareRemoved": "Udostępnienie usunięte pomyślnie", + "inviteByEmail": "Zaproś przez e-mail — zaproszenie zostanie wysłane" }, "share_dialogTitle": "Link udostępniania", "share_linkLabel": "Link udostępniania:", @@ -697,7 +698,23 @@ "migration_verify_passed": "Weryfikacja zaliczona", "migration_verify_failed": "Weryfikacja nieudana", "migration_failed_blobs": "nieudane bloby", - "testing": "Testowanie…" + "testing": "Testowanie…", + "smtp_disabled": "Wyłączone (host nieustawiony)", + "smtp_enabled": "Włączone", + "smtp_enabled_label": "Status", + "smtp_intro": "SMTP jest konfigurowany wyłącznie przez zmienne środowiskowe (OXICLOUD_SMTP_*). Poniższe wartości są odczytywane z działającego serwera — aby je zmienić, zmodyfikuj środowisko i uruchom ponownie OxiCloud.", + "smtp_not_configured": "SMTP nie jest skonfigurowany na tym serwerze.", + "smtp_send_failed": "Wysłanie nie powiodło się.", + "smtp_send_test": "Wyślij e-mail testowy", + "smtp_sending": "Wysyłanie…", + "smtp_sent": "E-mail testowy wysłany.", + "smtp_server_code": "Odpowiedź serwera", + "smtp_test_intro": "Wysyła wstępnie zdefiniowaną wiadomość diagnostyczną do podanego poniżej odbiorcy i raportuje odpowiedź serwera SMTP, abyś mógł skorelować ją z logami swojego przekaźnika.", + "smtp_test_missing_to": "Wprowadź adres odbiorcy.", + "smtp_test_title": "Wyślij e-mail testowy", + "smtp_test_to": "Adres odbiorcy", + "smtp_title": "Poczta wychodząca (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "Profil", @@ -850,5 +867,15 @@ "delete_confirm_label": "Wpisz nazwę grupy, aby potwierdzić:", "delete_confirm_mismatch": "Wpisz nazwę grupy dokładnie, aby potwierdzić.", "virtual_internal_name": "Wewnętrzni" + }, + "myshares": { + "copyLink": "Skopiuj link", + "deleteLink": "Usuń link", + "notifyByEmail": "Powiadom e-mailem", + "notifyFailed": "Nie udało się wysłać powiadomienia.", + "notifyGroupMembers": "Powiadom członków grupy", + "notifyRateLimited": "Zbyt wiele powiadomień dla tego odbiorcy — spróbuj ponownie później.", + "removeAccess": "Usuń dostęp", + "resendInvitation": "Wyślij ponownie e-mail z zaproszeniem" } } diff --git a/static/locales/pt.json b/static/locales/pt.json index 9fd032db..cba6ffa4 100644 --- a/static/locales/pt.json +++ b/static/locales/pt.json @@ -196,7 +196,8 @@ "shareCopied": "Link copiado para a área de transferência", "shareCreated": "Link de compartilhamento criado com sucesso", "shareUpdated": "Configurações de compartilhamento atualizadas", - "shareRemoved": "Compartilhamento removido com sucesso" + "shareRemoved": "Compartilhamento removido com sucesso", + "inviteByEmail": "Convidar por e-mail — o convite será enviado" }, "share_dialogTitle": "Link de compartilhamento", "share_linkLabel": "Link compartilhado:", @@ -697,7 +698,23 @@ "migration_verify_passed": "Verificação aprovada", "migration_verify_failed": "Verificação falhou", "migration_failed_blobs": "Blobs com falha", - "testing": "A testar..." + "testing": "A testar...", + "smtp_disabled": "Desativado (host não configurado)", + "smtp_enabled": "Ativado", + "smtp_enabled_label": "Estado", + "smtp_intro": "SMTP é configurado exclusivamente através de variáveis de ambiente (OXICLOUD_SMTP_*). Os valores abaixo são lidos do servidor em execução — para alterá-los, edite o ambiente e reinicie o OxiCloud.", + "smtp_not_configured": "SMTP não está configurado neste servidor.", + "smtp_send_failed": "Falha no envio.", + "smtp_send_test": "Enviar e-mail de teste", + "smtp_sending": "A enviar…", + "smtp_sent": "E-mail de teste enviado.", + "smtp_server_code": "Resposta do servidor", + "smtp_test_intro": "Envia uma mensagem de diagnóstico pré-definida para o destinatário abaixo e reporta a resposta do servidor SMTP, para que possa correlacioná-la com os registos do seu relay.", + "smtp_test_missing_to": "Introduza um endereço de destinatário.", + "smtp_test_title": "Enviar um e-mail de teste", + "smtp_test_to": "Endereço do destinatário", + "smtp_title": "E-mail de saída (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "Perfil", @@ -850,5 +867,15 @@ "delete_confirm_label": "Digite o nome do grupo para confirmar:", "delete_confirm_mismatch": "Digite o nome do grupo exatamente para confirmar.", "virtual_internal_name": "Interno" + }, + "myshares": { + "copyLink": "Copiar link", + "deleteLink": "Eliminar link", + "notifyByEmail": "Notificar por e-mail", + "notifyFailed": "Não foi possível enviar a notificação.", + "notifyGroupMembers": "Notificar membros do grupo", + "notifyRateLimited": "Demasiadas notificações para este destinatário — tente novamente mais tarde.", + "removeAccess": "Remover acesso", + "resendInvitation": "Reenviar e-mail de convite" } } diff --git a/static/locales/ru.json b/static/locales/ru.json index a5fe8d17..c6d6d802 100644 --- a/static/locales/ru.json +++ b/static/locales/ru.json @@ -196,7 +196,8 @@ "shareCopied": "Ссылка скопирована в буфер обмена", "shareCreated": "Ссылка для общего доступа успешно создана", "shareUpdated": "Настройки общего доступа успешно обновлены", - "shareRemoved": "Общий доступ успешно удалён" + "shareRemoved": "Общий доступ успешно удалён", + "inviteByEmail": "Пригласить по e-mail — приглашение будет отправлено" }, "share_dialogTitle": "Ссылка для обмена", "share_linkLabel": "Ссылка:", @@ -697,7 +698,23 @@ "migration_verify_passed": "Проверка пройдена", "migration_verify_failed": "Проверка не пройдена", "migration_failed_blobs": "Неудачные блобы", - "testing": "Тестирование..." + "testing": "Тестирование...", + "smtp_disabled": "Отключено (хост не задан)", + "smtp_enabled": "Включено", + "smtp_enabled_label": "Статус", + "smtp_intro": "SMTP настраивается исключительно через переменные окружения (OXICLOUD_SMTP_*). Значения ниже считываются с работающего сервера — чтобы изменить их, отредактируйте окружение и перезапустите OxiCloud.", + "smtp_not_configured": "SMTP не настроен на этом сервере.", + "smtp_send_failed": "Сбой отправки.", + "smtp_send_test": "Отправить тестовое письмо", + "smtp_sending": "Отправка…", + "smtp_sent": "Тестовое письмо отправлено.", + "smtp_server_code": "Ответ сервера", + "smtp_test_intro": "Отправляет заранее заданное диагностическое сообщение указанному ниже получателю и сообщает ответ SMTP-сервера, чтобы вы могли сопоставить его с журналами вашего relay.", + "smtp_test_missing_to": "Введите адрес получателя.", + "smtp_test_title": "Отправить тестовое письмо", + "smtp_test_to": "Адрес получателя", + "smtp_title": "Исходящая почта (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "Профиль", @@ -850,5 +867,15 @@ "delete_confirm_label": "Введите имя группы для подтверждения:", "delete_confirm_mismatch": "Введите имя группы точно для подтверждения.", "virtual_internal_name": "Внутренние" + }, + "myshares": { + "copyLink": "Копировать ссылку", + "deleteLink": "Удалить ссылку", + "notifyByEmail": "Уведомить по e-mail", + "notifyFailed": "Не удалось отправить уведомление.", + "notifyGroupMembers": "Уведомить участников группы", + "notifyRateLimited": "Слишком много уведомлений для этого получателя — попробуйте позже.", + "removeAccess": "Отозвать доступ", + "resendInvitation": "Отправить приглашение повторно" } } diff --git a/static/locales/zh-TW.json b/static/locales/zh-TW.json index 85dbc0bc..45516f41 100644 --- a/static/locales/zh-TW.json +++ b/static/locales/zh-TW.json @@ -196,7 +196,8 @@ "shareCopied": "連結已複製到剪貼簿", "shareCreated": "共享連結建立成功", "shareUpdated": "共享設定更新成功", - "shareRemoved": "共享已移除" + "shareRemoved": "共享已移除", + "inviteByEmail": "透過郵件邀請 — 將傳送邀請" }, "share_dialogTitle": "共享連結", "share_linkLabel": "共享連結:", @@ -680,7 +681,23 @@ "migration_verify_passed": "驗證透過", "migration_verify_failed": "驗證失敗", "migration_failed_blobs": "失敗的塊", - "testing": "正在測試..." + "testing": "正在測試...", + "smtp_disabled": "已停用(未設定主機)", + "smtp_enabled": "已啟用", + "smtp_enabled_label": "狀態", + "smtp_intro": "SMTP 僅透過環境變數(OXICLOUD_SMTP_*)設定。下方數值是從運行中的伺服器讀取的 — 如需修改,請編輯環境變數並重新啟動 OxiCloud。", + "smtp_not_configured": "此伺服器未設定 SMTP。", + "smtp_send_failed": "傳送失敗。", + "smtp_send_test": "傳送測試郵件", + "smtp_sending": "傳送中…", + "smtp_sent": "測試郵件已傳送。", + "smtp_server_code": "伺服器回應", + "smtp_test_intro": "向下方收件者傳送預設的診斷訊息,並回報 SMTP 伺服器的回應,以便您與轉發日誌進行對照。", + "smtp_test_missing_to": "請輸入收件者地址。", + "smtp_test_title": "傳送測試郵件", + "smtp_test_to": "收件者地址", + "smtp_title": "外寄郵件 (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "個人資料", @@ -850,5 +867,15 @@ "delete_confirm_label": "請輸入群組名稱以確認:", "delete_confirm_mismatch": "請準確輸入群組名稱以確認。", "virtual_internal_name": "內部" + }, + "myshares": { + "copyLink": "複製連結", + "deleteLink": "刪除連結", + "notifyByEmail": "透過郵件通知", + "notifyFailed": "無法傳送通知。", + "notifyGroupMembers": "通知群組成員", + "notifyRateLimited": "對此收件者的通知過多 — 請稍後重試。", + "removeAccess": "移除存取權限", + "resendInvitation": "重新傳送邀請郵件" } } diff --git a/static/locales/zh.json b/static/locales/zh.json index fb1de088..70323529 100644 --- a/static/locales/zh.json +++ b/static/locales/zh.json @@ -196,7 +196,8 @@ "shareCopied": "链接已复制到剪贴板", "shareCreated": "共享链接创建成功", "shareUpdated": "共享设置更新成功", - "shareRemoved": "共享已移除" + "shareRemoved": "共享已移除", + "inviteByEmail": "通过邮件邀请 — 将发送邀请" }, "share_dialogTitle": "共享链接", "share_linkLabel": "共享链接:", @@ -680,7 +681,23 @@ "migration_verify_passed": "验证通过", "migration_verify_failed": "验证失败", "migration_failed_blobs": "失败的块", - "testing": "正在测试..." + "testing": "正在测试...", + "smtp_disabled": "已禁用(未设置主机)", + "smtp_enabled": "已启用", + "smtp_enabled_label": "状态", + "smtp_intro": "SMTP 仅通过环境变量(OXICLOUD_SMTP_*)配置。以下值是从运行中的服务器读取的 — 如需修改,请编辑环境变量并重启 OxiCloud。", + "smtp_not_configured": "此服务器未配置 SMTP。", + "smtp_send_failed": "发送失败。", + "smtp_send_test": "发送测试邮件", + "smtp_sending": "发送中…", + "smtp_sent": "测试邮件已发送。", + "smtp_server_code": "服务器回复", + "smtp_test_intro": "向下方收件人发送预设的诊断消息,并报告 SMTP 服务器的响应,以便您与中继日志进行核对。", + "smtp_test_missing_to": "请输入收件人地址。", + "smtp_test_title": "发送测试邮件", + "smtp_test_to": "收件人地址", + "smtp_title": "出站邮件 (SMTP)", + "tab_smtp": "SMTP" }, "profile": { "page_title": "个人资料", @@ -850,5 +867,15 @@ "delete_confirm_label": "请输入群组名称以确认:", "delete_confirm_mismatch": "请准确输入群组名称以确认。", "virtual_internal_name": "内部" + }, + "myshares": { + "copyLink": "复制链接", + "deleteLink": "删除链接", + "notifyByEmail": "通过邮件通知", + "notifyFailed": "无法发送通知。", + "notifyGroupMembers": "通知群组成员", + "notifyRateLimited": "对此收件人的通知过多 — 请稍后重试。", + "removeAccess": "移除访问权限", + "resendInvitation": "重新发送邀请邮件" } } diff --git a/static/sw.js b/static/sw.js index 74befcaf..ec5542a3 100644 --- a/static/sw.js +++ b/static/sw.js @@ -1,6 +1,6 @@ // OxiCloud Service Worker // FIXME: generate cache name according build ? -const CACHE_NAME = 'oxicloud-cache-v25'; +const CACHE_NAME = 'oxicloud-cache-v26'; // Only cache static assets — NOT HTML files. // HTML files are served network-first so browsers always get the latest