mirror of
https://github.com/UNITRONIX/BetterDesk.git
synced 2026-09-10 17:45:42 +00:00
fc1ded710e
Temporary opaque links give guests a minimal Web Remote UI for selected devices only, without Console inventory or add-any-ID paths. Also fix mesh_share desktop tunnel auth for unauthenticated guests.
552 lines
28 KiB
JavaScript
552 lines
28 KiB
JavaScript
/**
|
||
* One-shot: ensure guest_access keys exist in all locales with translations.
|
||
* Run from repo root: node scripts/patch-guest-access-i18n.js
|
||
*/
|
||
const fs = require('fs');
|
||
const path = require('path');
|
||
|
||
const dir = path.join(__dirname, '..', 'lang');
|
||
const en = JSON.parse(fs.readFileSync(path.join(dir, 'en.json'), 'utf8')).guest_access;
|
||
|
||
const T = {
|
||
pl: {
|
||
title: 'Gość — Remote',
|
||
subtitle: 'Tymczasowy dostęp — tylko udostępnione urządzenia',
|
||
menu: 'Link gościnny',
|
||
create_title: 'Utwórz link gościnny',
|
||
create_hint: 'Czasowy link RdClient. Odbiorca łączy się tylko z wybranymi urządzeniami — bez logowania do Console i bez pełnej listy.',
|
||
devices: 'Urządzenia',
|
||
ttl: 'Ważny przez (minuty)',
|
||
label: 'Etykieta (opcjonalnie)',
|
||
view_only: 'Tylko podgląd',
|
||
url: 'URL do udostępnienia',
|
||
create: 'Utwórz link',
|
||
created: 'Utworzono link gościnny',
|
||
invalid_title: 'Nieprawidłowy link gościnny',
|
||
missing_token: 'Brak tokenu w linku gościnnym.',
|
||
expired: 'Link gościnny jest nieprawidłowy lub wygasł.',
|
||
device_denied: 'Link nie zezwala na to urządzenie albo wygasł.',
|
||
empty: 'Brak urządzeń na tym linku.',
|
||
expires: 'Wygasa',
|
||
back_to_list: 'Wróć do listy gościa',
|
||
},
|
||
de: {
|
||
title: 'Gast-Remote',
|
||
subtitle: 'Zeitlich begrenzter Zugriff — nur freigegebene Geräte',
|
||
menu: 'Gastzugriff-Link',
|
||
create_title: 'Gastzugriff-Link erstellen',
|
||
create_hint: 'Zeitlich begrenzter RdClient-Link. Empfänger verbinden sich nur mit den ausgewählten Geräten — kein Console-Login, keine volle Geräteliste.',
|
||
devices: 'Geräte',
|
||
ttl: 'Gültig für (Minuten)',
|
||
label: 'Bezeichnung (optional)',
|
||
view_only: 'Nur Ansicht',
|
||
url: 'Freigabe-URL',
|
||
create: 'Link erstellen',
|
||
created: 'Gastlink erstellt',
|
||
invalid_title: 'Ungültiger Gastlink',
|
||
missing_token: 'Diesem Gastlink fehlt ein Token.',
|
||
expired: 'Dieser Gastlink ist ungültig oder abgelaufen.',
|
||
device_denied: 'Dieser Gastlink ist ungültig, abgelaufen oder erlaubt dieses Gerät nicht.',
|
||
empty: 'Keine Geräte auf diesem Gastlink.',
|
||
expires: 'Läuft ab',
|
||
back_to_list: 'Zurück zur Gästeliste',
|
||
},
|
||
fr: {
|
||
title: 'Remote invité',
|
||
subtitle: 'Accès temporaire — uniquement les appareils partagés',
|
||
menu: "Lien d'accès invité",
|
||
create_title: "Créer un lien d'accès invité",
|
||
create_hint: 'Lien RdClient à durée limitée. Le destinataire ne peut se connecter qu’aux appareils sélectionnés — sans compte Console ni inventaire complet.',
|
||
devices: 'Appareils',
|
||
ttl: 'Valide pendant (minutes)',
|
||
label: 'Libellé (optionnel)',
|
||
view_only: 'Lecture seule',
|
||
url: 'URL de partage',
|
||
create: 'Créer le lien',
|
||
created: 'Lien invité créé',
|
||
invalid_title: 'Lien invité invalide',
|
||
missing_token: 'Ce lien invité n’a pas de jeton.',
|
||
expired: 'Ce lien invité est invalide ou expiré.',
|
||
device_denied: 'Ce lien invité est invalide, expiré ou n’autorise pas cet appareil.',
|
||
empty: 'Aucun appareil sur ce lien invité.',
|
||
expires: 'Expire',
|
||
back_to_list: 'Retour à la liste invitée',
|
||
},
|
||
es: {
|
||
title: 'Remoto de invitado',
|
||
subtitle: 'Acceso temporal — solo los dispositivos compartidos',
|
||
menu: 'Enlace de acceso de invitado',
|
||
create_title: 'Crear enlace de acceso de invitado',
|
||
create_hint: 'Enlace RdClient con tiempo limitado. El destinatario solo puede conectar a los dispositivos seleccionados — sin inicio de sesión en Console ni lista completa.',
|
||
devices: 'Dispositivos',
|
||
ttl: 'Válido durante (minutos)',
|
||
label: 'Etiqueta (opcional)',
|
||
view_only: 'Solo ver',
|
||
url: 'URL para compartir',
|
||
create: 'Crear enlace',
|
||
created: 'Enlace de invitado creado',
|
||
invalid_title: 'Enlace de invitado no válido',
|
||
missing_token: 'A este enlace de invitado le falta el token.',
|
||
expired: 'Este enlace de invitado no es válido o ha caducado.',
|
||
device_denied: 'Este enlace no es válido, ha caducado o no permite este dispositivo.',
|
||
empty: 'No hay dispositivos en este enlace.',
|
||
expires: 'Caduca',
|
||
back_to_list: 'Volver a la lista de invitado',
|
||
},
|
||
it: {
|
||
title: 'Remote ospite',
|
||
subtitle: 'Accesso temporaneo — solo i dispositivi condivisi',
|
||
menu: 'Link accesso ospite',
|
||
create_title: 'Crea link accesso ospite',
|
||
create_hint: 'Link RdClient a tempo limitato. Il destinatario può collegarsi solo ai dispositivi selezionati — senza login Console né elenco completo.',
|
||
devices: 'Dispositivi',
|
||
ttl: 'Valido per (minuti)',
|
||
label: 'Etichetta (opzionale)',
|
||
view_only: 'Solo visualizzazione',
|
||
url: 'URL di condivisione',
|
||
create: 'Crea link',
|
||
created: 'Link ospite creato',
|
||
invalid_title: 'Link ospite non valido',
|
||
missing_token: 'A questo link ospite manca il token.',
|
||
expired: 'Questo link ospite non è valido o è scaduto.',
|
||
device_denied: 'Questo link non è valido, è scaduto o non consente questo dispositivo.',
|
||
empty: 'Nessun dispositivo su questo link.',
|
||
expires: 'Scade',
|
||
back_to_list: "Torna all'elenco ospite",
|
||
},
|
||
pt: {
|
||
title: 'Remoto convidado',
|
||
subtitle: 'Acesso temporário — apenas os dispositivos partilhados',
|
||
menu: 'Ligação de acesso de convidado',
|
||
create_title: 'Criar ligação de acesso de convidado',
|
||
create_hint: 'Ligação RdClient com tempo limitado. O destinatário só pode ligar-se aos dispositivos selecionados — sem login na Console nem lista completa.',
|
||
devices: 'Dispositivos',
|
||
ttl: 'Válido por (minutos)',
|
||
label: 'Etiqueta (opcional)',
|
||
view_only: 'Apenas visualização',
|
||
url: 'URL de partilha',
|
||
create: 'Criar ligação',
|
||
created: 'Ligação de convidado criada',
|
||
invalid_title: 'Ligação de convidado inválida',
|
||
missing_token: 'Esta ligação de convidado não tem token.',
|
||
expired: 'Esta ligação de convidado é inválida ou expirou.',
|
||
device_denied: 'Esta ligação é inválida, expirou ou não permite este dispositivo.',
|
||
empty: 'Nenhum dispositivo nesta ligação.',
|
||
expires: 'Expira',
|
||
back_to_list: 'Voltar à lista de convidado',
|
||
},
|
||
nl: {
|
||
title: 'Gast-remote',
|
||
subtitle: 'Tijdelijke toegang — alleen gedeelde apparaten',
|
||
menu: 'Gasttoegangslink',
|
||
create_title: 'Gasttoegangslink maken',
|
||
create_hint: 'Tijdbegrensde RdClient-link. Ontvangers verbinden alleen met geselecteerde apparaten — geen Console-login, geen volledige lijst.',
|
||
devices: 'Apparaten',
|
||
ttl: 'Geldig voor (minuten)',
|
||
label: 'Label (optioneel)',
|
||
view_only: 'Alleen bekijken',
|
||
url: 'Deel-URL',
|
||
create: 'Link maken',
|
||
created: 'Gastlink gemaakt',
|
||
invalid_title: 'Ongeldige gastlink',
|
||
missing_token: 'Deze gastlink mist een token.',
|
||
expired: 'Deze gastlink is ongeldig of verlopen.',
|
||
device_denied: 'Deze gastlink is ongeldig, verlopen of staat dit apparaat niet toe.',
|
||
empty: 'Geen apparaten op deze gastlink.',
|
||
expires: 'Verloopt',
|
||
back_to_list: 'Terug naar gastenlijst',
|
||
},
|
||
cs: {
|
||
title: 'Hostitelský remote',
|
||
subtitle: 'Dočasný přístup — pouze sdílená zařízení',
|
||
menu: 'Odkaz pro hosta',
|
||
create_title: 'Vytvořit odkaz pro hosta',
|
||
create_hint: 'Časově omezený odkaz RdClient. Příjemce se připojí jen k vybraným zařízením — bez přihlášení do Console a bez úplného seznamu.',
|
||
devices: 'Zařízení',
|
||
ttl: 'Platnost (minuty)',
|
||
label: 'Štítek (volitelně)',
|
||
view_only: 'Jen prohlížení',
|
||
url: 'URL ke sdílení',
|
||
create: 'Vytvořit odkaz',
|
||
created: 'Odkaz pro hosta vytvořen',
|
||
invalid_title: 'Neplatný odkaz pro hosta',
|
||
missing_token: 'Tomuto odkazu chybí token.',
|
||
expired: 'Tento odkaz je neplatný nebo vypršel.',
|
||
device_denied: 'Odkaz je neplatný, vypršel nebo nepovoluje toto zařízení.',
|
||
empty: 'Na tomto odkazu nejsou žádná zařízení.',
|
||
expires: 'Vyprší',
|
||
back_to_list: 'Zpět na seznam hosta',
|
||
},
|
||
ja: {
|
||
title: 'ゲストリモート',
|
||
subtitle: '一時アクセス — 共有された端末のみ',
|
||
menu: 'ゲストアクセスリンク',
|
||
create_title: 'ゲストアクセスリンクを作成',
|
||
create_hint: '有効期限付きの RdClient リンク。受信者は選択した端末にのみ接続できます(Console ログインや全端末一覧はありません)。',
|
||
devices: '端末',
|
||
ttl: '有効時間(分)',
|
||
label: 'ラベル(任意)',
|
||
view_only: '表示のみ',
|
||
url: '共有 URL',
|
||
create: 'リンクを作成',
|
||
created: 'ゲストリンクを作成しました',
|
||
invalid_title: '無効なゲストリンク',
|
||
missing_token: 'このゲストリンクにはトークンがありません。',
|
||
expired: 'このゲストリンクは無効か期限切れです。',
|
||
device_denied: 'このリンクは無効・期限切れ、またはこの端末を許可していません。',
|
||
empty: 'このゲストリンクに端末がありません。',
|
||
expires: '期限',
|
||
back_to_list: 'ゲスト一覧に戻る',
|
||
},
|
||
ko: {
|
||
title: '게스트 원격',
|
||
subtitle: '임시 접근 — 공유된 장치만',
|
||
menu: '게스트 액세스 링크',
|
||
create_title: '게스트 액세스 링크 만들기',
|
||
create_hint: '시간 제한 RdClient 링크. 수신자는 선택한 장치에만 연결할 수 있습니다 — Console 로그인 및 전체 목록 없음.',
|
||
devices: '장치',
|
||
ttl: '유효 시간(분)',
|
||
label: '라벨(선택)',
|
||
view_only: '보기 전용',
|
||
url: '공유 URL',
|
||
create: '링크 만들기',
|
||
created: '게스트 링크가 생성됨',
|
||
invalid_title: '잘못된 게스트 링크',
|
||
missing_token: '이 게스트 링크에 토큰이 없습니다.',
|
||
expired: '이 게스트 링크가 잘못되었거나 만료되었습니다.',
|
||
device_denied: '이 링크가 잘못되었거나 만료되었거나 이 장치를 허용하지 않습니다.',
|
||
empty: '이 게스트 링크에 장치가 없습니다.',
|
||
expires: '만료',
|
||
back_to_list: '게스트 목록으로',
|
||
},
|
||
zh: {
|
||
title: '访客远程',
|
||
subtitle: '临时访问 — 仅限共享的设备',
|
||
menu: '访客访问链接',
|
||
create_title: '创建访客访问链接',
|
||
create_hint: '限时 RdClient 链接。接收者只能连接所选设备 — 无需 Console 登录,也无完整设备列表。',
|
||
devices: '设备',
|
||
ttl: '有效期(分钟)',
|
||
label: '标签(可选)',
|
||
view_only: '仅查看',
|
||
url: '分享 URL',
|
||
create: '创建链接',
|
||
created: '已创建访客链接',
|
||
invalid_title: '无效的访客链接',
|
||
missing_token: '此访客链接缺少令牌。',
|
||
expired: '此访客链接无效或已过期。',
|
||
device_denied: '此链接无效、已过期或不允许此设备。',
|
||
empty: '此访客链接上没有设备。',
|
||
expires: '过期时间',
|
||
back_to_list: '返回访客列表',
|
||
},
|
||
'zh-TW': {
|
||
title: '訪客遠端',
|
||
subtitle: '暫時存取 — 僅限共用的裝置',
|
||
menu: '訪客存取連結',
|
||
create_title: '建立訪客存取連結',
|
||
create_hint: '限時 RdClient 連結。收件者只能連線到所選裝置 — 無需 Console 登入,也無完整裝置清單。',
|
||
devices: '裝置',
|
||
ttl: '有效時間(分鐘)',
|
||
label: '標籤(選填)',
|
||
view_only: '僅檢視',
|
||
url: '分享 URL',
|
||
create: '建立連結',
|
||
created: '已建立訪客連結',
|
||
invalid_title: '無效的訪客連結',
|
||
missing_token: '此訪客連結缺少權杖。',
|
||
expired: '此訪客連結無效或已過期。',
|
||
device_denied: '此連結無效、已過期或不允許此裝置。',
|
||
empty: '此訪客連結上沒有裝置。',
|
||
expires: '到期',
|
||
back_to_list: '返回訪客清單',
|
||
},
|
||
uk: {
|
||
title: 'Гостьовий Remote',
|
||
subtitle: 'Тимчасовий доступ — лише спільні пристрої',
|
||
menu: 'Посилання гостьового доступу',
|
||
create_title: 'Створити посилання гостьового доступу',
|
||
create_hint: 'Тимчасове посилання RdClient. Отримувач може підключатися лише до вибраних пристроїв — без входу в Console і без повного списку.',
|
||
devices: 'Пристрої',
|
||
ttl: 'Дійсне (хвилини)',
|
||
label: 'Мітка (необов’язково)',
|
||
view_only: 'Лише перегляд',
|
||
url: 'URL для спільного доступу',
|
||
create: 'Створити посилання',
|
||
created: 'Гостьове посилання створено',
|
||
invalid_title: 'Недійсне гостьове посилання',
|
||
missing_token: 'У цьому гостьовому посиланні немає токена.',
|
||
expired: 'Це гостьове посилання недійсне або прострочене.',
|
||
device_denied: 'Посилання недійсне, прострочене або не дозволяє цей пристрій.',
|
||
empty: 'На цьому посиланні немає пристроїв.',
|
||
expires: 'Закінчується',
|
||
back_to_list: 'Назад до списку гостя',
|
||
},
|
||
tr: {
|
||
title: 'Misafir Remote',
|
||
subtitle: 'Geçici erişim — yalnızca paylaşılan cihazlar',
|
||
menu: 'Misafir erişim bağlantısı',
|
||
create_title: 'Misafir erişim bağlantısı oluştur',
|
||
create_hint: 'Süreli RdClient bağlantısı. Alıcı yalnızca seçilen cihazlara bağlanabilir — Console girişi ve tam liste yok.',
|
||
devices: 'Cihazlar',
|
||
ttl: 'Geçerlilik (dakika)',
|
||
label: 'Etiket (isteğe bağlı)',
|
||
view_only: 'Yalnızca görüntüleme',
|
||
url: 'Paylaşım URL’si',
|
||
create: 'Bağlantı oluştur',
|
||
created: 'Misafir bağlantısı oluşturuldu',
|
||
invalid_title: 'Geçersiz misafir bağlantısı',
|
||
missing_token: 'Bu misafir bağlantısında jeton yok.',
|
||
expired: 'Bu misafir bağlantısı geçersiz veya süresi dolmuş.',
|
||
device_denied: 'Bu bağlantı geçersiz, süresi dolmuş veya bu cihaza izin vermiyor.',
|
||
empty: 'Bu misafir bağlantısında cihaz yok.',
|
||
expires: 'Bitiş',
|
||
back_to_list: 'Misafir listesine dön',
|
||
},
|
||
vi: {
|
||
title: 'Remote khách',
|
||
subtitle: 'Truy cập tạm thời — chỉ thiết bị được chia sẻ',
|
||
menu: 'Liên kết truy cập khách',
|
||
create_title: 'Tạo liên kết truy cập khách',
|
||
create_hint: 'Liên kết RdClient có thời hạn. Người nhận chỉ kết nối được các thiết bị đã chọn — không đăng nhập Console, không danh sách đầy đủ.',
|
||
devices: 'Thiết bị',
|
||
ttl: 'Có hiệu lực (phút)',
|
||
label: 'Nhãn (tuỳ chọn)',
|
||
view_only: 'Chỉ xem',
|
||
url: 'URL chia sẻ',
|
||
create: 'Tạo liên kết',
|
||
created: 'Đã tạo liên kết khách',
|
||
invalid_title: 'Liên kết khách không hợp lệ',
|
||
missing_token: 'Liên kết khách thiếu token.',
|
||
expired: 'Liên kết khách không hợp lệ hoặc đã hết hạn.',
|
||
device_denied: 'Liên kết không hợp lệ, hết hạn hoặc không cho phép thiết bị này.',
|
||
empty: 'Không có thiết bị trên liên kết này.',
|
||
expires: 'Hết hạn',
|
||
back_to_list: 'Quay lại danh sách khách',
|
||
},
|
||
th: {
|
||
title: 'รีโมตผู้เยี่ยมชม',
|
||
subtitle: 'การเข้าถึงชั่วคราว — เฉพาะอุปกรณ์ที่แชร์',
|
||
menu: 'ลิงก์เข้าถึงผู้เยี่ยมชม',
|
||
create_title: 'สร้างลิงก์เข้าถึงผู้เยี่ยมชม',
|
||
create_hint: 'ลิงก์ RdClient แบบจำกัดเวลา ผู้รับเชื่อมต่อได้เฉพาะอุปกรณ์ที่เลือก — ไม่ต้องเข้าสู่ระบบ Console และไม่มีรายการทั้งหมด',
|
||
devices: 'อุปกรณ์',
|
||
ttl: 'มีผล (นาที)',
|
||
label: 'ป้ายชื่อ (ไม่บังคับ)',
|
||
view_only: 'ดูอย่างเดียว',
|
||
url: 'URL สำหรับแชร์',
|
||
create: 'สร้างลิงก์',
|
||
created: 'สร้างลิงก์ผู้เยี่ยมชมแล้ว',
|
||
invalid_title: 'ลิงก์ผู้เยี่ยมชมไม่ถูกต้อง',
|
||
missing_token: 'ลิงก์นี้ไม่มีโทเค็น',
|
||
expired: 'ลิงก์นี้ไม่ถูกต้องหรือหมดอายุ',
|
||
device_denied: 'ลิงก์ไม่ถูกต้อง หมดอายุ หรือไม่อนุญาตอุปกรณ์นี้',
|
||
empty: 'ไม่มีอุปกรณ์ในลิงก์นี้',
|
||
expires: 'หมดอายุ',
|
||
back_to_list: 'กลับไปรายการผู้เยี่ยมชม',
|
||
},
|
||
hi: {
|
||
title: 'गेस्ट रिमोट',
|
||
subtitle: 'अस्थायी पहुँच — केवल साझा डिवाइस',
|
||
menu: 'गेस्ट एक्सेस लिंक',
|
||
create_title: 'गेस्ट एक्सेस लिंक बनाएँ',
|
||
create_hint: 'समय-सीमित RdClient लिंक। प्राप्तकर्ता केवल चयनित डिवाइस से कनेक्ट कर सकते हैं — Console लॉगिन या पूरी सूची नहीं।',
|
||
devices: 'डिवाइस',
|
||
ttl: 'वैधता (मिनट)',
|
||
label: 'लेबल (वैकल्पिक)',
|
||
view_only: 'केवल देखें',
|
||
url: 'शेयर URL',
|
||
create: 'लिंक बनाएँ',
|
||
created: 'गेस्ट लिंक बनाया गया',
|
||
invalid_title: 'अमान्य गेस्ट लिंक',
|
||
missing_token: 'इस गेस्ट लिंक में टोकन नहीं है।',
|
||
expired: 'यह गेस्ट लिंक अमान्य या समाप्त है।',
|
||
device_denied: 'यह लिंक अमान्य/समाप्त है या इस डिवाइस की अनुमति नहीं देता।',
|
||
empty: 'इस गेस्ट लिंक पर कोई डिवाइस नहीं।',
|
||
expires: 'समाप्ति',
|
||
back_to_list: 'गेस्ट सूची पर वापस',
|
||
},
|
||
id: {
|
||
title: 'Remote tamu',
|
||
subtitle: 'Akses sementara — hanya perangkat yang dibagikan',
|
||
menu: 'Tautan akses tamu',
|
||
create_title: 'Buat tautan akses tamu',
|
||
create_hint: 'Tautan RdClient berbatas waktu. Penerima hanya dapat terhubung ke perangkat yang dipilih — tanpa login Console atau daftar lengkap.',
|
||
devices: 'Perangkat',
|
||
ttl: 'Berlaku (menit)',
|
||
label: 'Label (opsional)',
|
||
view_only: 'Hanya lihat',
|
||
url: 'URL berbagi',
|
||
create: 'Buat tautan',
|
||
created: 'Tautan tamu dibuat',
|
||
invalid_title: 'Tautan tamu tidak valid',
|
||
missing_token: 'Tautan tamu ini tidak memiliki token.',
|
||
expired: 'Tautan tamu ini tidak valid atau kedaluwarsa.',
|
||
device_denied: 'Tautan tidak valid, kedaluwarsa, atau tidak mengizinkan perangkat ini.',
|
||
empty: 'Tidak ada perangkat pada tautan ini.',
|
||
expires: 'Kedaluwarsa',
|
||
back_to_list: 'Kembali ke daftar tamu',
|
||
},
|
||
ro: {
|
||
title: 'Remote oaspete',
|
||
subtitle: 'Acces temporar — doar dispozitivele partajate',
|
||
menu: 'Link acces oaspete',
|
||
create_title: 'Creează link acces oaspete',
|
||
create_hint: 'Link RdClient cu durată limitată. Destinatarul se poate conecta doar la dispozitivele selectate — fără login Console și fără lista completă.',
|
||
devices: 'Dispozitive',
|
||
ttl: 'Valabil (minute)',
|
||
label: 'Etichetă (opțional)',
|
||
view_only: 'Doar vizualizare',
|
||
url: 'URL de partajare',
|
||
create: 'Creează link',
|
||
created: 'Link oaspete creat',
|
||
invalid_title: 'Link oaspete invalid',
|
||
missing_token: 'Acestui link oaspete îi lipsește tokenul.',
|
||
expired: 'Acest link oaspete este invalid sau a expirat.',
|
||
device_denied: 'Linkul este invalid, a expirat sau nu permite acest dispozitiv.',
|
||
empty: 'Niciun dispozitiv pe acest link.',
|
||
expires: 'Expiră',
|
||
back_to_list: 'Înapoi la lista oaspete',
|
||
},
|
||
hu: {
|
||
title: 'Vendég remote',
|
||
subtitle: 'Ideiglenes hozzáférés — csak a megosztott eszközök',
|
||
menu: 'Vendég hozzáférési link',
|
||
create_title: 'Vendég hozzáférési link létrehozása',
|
||
create_hint: 'Időkorlátos RdClient link. A címzett csak a kiválasztott eszközökhöz csatlakozhat — Console bejelentkezés és teljes lista nélkül.',
|
||
devices: 'Eszközök',
|
||
ttl: 'Érvényesség (perc)',
|
||
label: 'Címke (opcionális)',
|
||
view_only: 'Csak megtekintés',
|
||
url: 'Megosztási URL',
|
||
create: 'Link létrehozása',
|
||
created: 'Vendéglink létrehozva',
|
||
invalid_title: 'Érvénytelen vendéglink',
|
||
missing_token: 'Ehhez a vendéglinkhez hiányzik a token.',
|
||
expired: 'Ez a vendéglink érvénytelen vagy lejárt.',
|
||
device_denied: 'A link érvénytelen, lejárt, vagy nem engedi ezt az eszközt.',
|
||
empty: 'Nincs eszköz ezen a vendéglinken.',
|
||
expires: 'Lejár',
|
||
back_to_list: 'Vissza a vendéglistához',
|
||
},
|
||
fi: {
|
||
title: 'Vieras-remote',
|
||
subtitle: 'Tilapäinen pääsy — vain jaetut laitteet',
|
||
menu: 'Vieraspääsylinkki',
|
||
create_title: 'Luo vieraspääsylinkki',
|
||
create_hint: 'Aikarajoitettu RdClient-linkki. Vastaanottaja voi yhdistää vain valittuihin laitteisiin — ei Console-kirjautumista eikä täyttä listaa.',
|
||
devices: 'Laitteet',
|
||
ttl: 'Voimassa (minuuttia)',
|
||
label: 'Nimike (valinnainen)',
|
||
view_only: 'Vain katselu',
|
||
url: 'Jakamis-URL',
|
||
create: 'Luo linkki',
|
||
created: 'Vieraslinkki luotu',
|
||
invalid_title: 'Virheellinen vieraslinkki',
|
||
missing_token: 'Tästä vieraslinkistä puuttuu token.',
|
||
expired: 'Tämä vieraslinkki on virheellinen tai vanhentunut.',
|
||
device_denied: 'Linkki on virheellinen, vanhentunut tai ei salli tätä laitetta.',
|
||
empty: 'Tällä vieraslinkillä ei ole laitteita.',
|
||
expires: 'Vanhenee',
|
||
back_to_list: 'Takaisin vieraslistaan',
|
||
},
|
||
sv: {
|
||
title: 'Gästremote',
|
||
subtitle: 'Tillfällig åtkomst — endast delade enheter',
|
||
menu: 'Gäståtkomstlänk',
|
||
create_title: 'Skapa gäståtkomstlänk',
|
||
create_hint: 'Tidsbegränsad RdClient-länk. Mottagaren kan bara ansluta till valda enheter — ingen Console-inloggning och ingen full lista.',
|
||
devices: 'Enheter',
|
||
ttl: 'Giltig i (minuter)',
|
||
label: 'Etikett (valfritt)',
|
||
view_only: 'Endast visa',
|
||
url: 'Delnings-URL',
|
||
create: 'Skapa länk',
|
||
created: 'Gästlänk skapad',
|
||
invalid_title: 'Ogiltig gästlänk',
|
||
missing_token: 'Denna gästlänk saknar token.',
|
||
expired: 'Denna gästlänk är ogiltig eller har gått ut.',
|
||
device_denied: 'Länken är ogiltig, har gått ut eller tillåter inte denna enhet.',
|
||
empty: 'Inga enheter på denna gästlänk.',
|
||
expires: 'Går ut',
|
||
back_to_list: 'Tillbaka till gästlistan',
|
||
},
|
||
da: {
|
||
title: 'Gæste-remote',
|
||
subtitle: 'Midlertidig adgang — kun delte enheder',
|
||
menu: 'Gæsteadgangslink',
|
||
create_title: 'Opret gæsteadgangslink',
|
||
create_hint: 'Tidsbegrænset RdClient-link. Modtageren kan kun oprette forbindelse til valgte enheder — ingen Console-login og ingen fuld liste.',
|
||
devices: 'Enheder',
|
||
ttl: 'Gyldig i (minutter)',
|
||
label: 'Etiket (valgfrit)',
|
||
view_only: 'Kun visning',
|
||
url: 'Delings-URL',
|
||
create: 'Opret link',
|
||
created: 'Gæstelink oprettet',
|
||
invalid_title: 'Ugyldigt gæstelink',
|
||
missing_token: 'Dette gæstelink mangler et token.',
|
||
expired: 'Dette gæstelink er ugyldigt eller udløbet.',
|
||
device_denied: 'Linket er ugyldigt, udløbet eller tillader ikke denne enhed.',
|
||
empty: 'Ingen enheder på dette gæstelink.',
|
||
expires: 'Udløber',
|
||
back_to_list: 'Tilbage til gæstelisten',
|
||
},
|
||
nb: {
|
||
title: 'Gjest-remote',
|
||
subtitle: 'Midlertidig tilgang — kun delte enheter',
|
||
menu: 'Gjestetilgangslenke',
|
||
create_title: 'Opprett gjestetilgangslenke',
|
||
create_hint: 'Tidsbegrenset RdClient-lenke. Mottakeren kan bare koble til valgte enheter — ingen Console-pålogging og ingen full liste.',
|
||
devices: 'Enheter',
|
||
ttl: 'Gyldig i (minutter)',
|
||
label: 'Etikett (valgfritt)',
|
||
view_only: 'Kun visning',
|
||
url: 'Delings-URL',
|
||
create: 'Opprett lenke',
|
||
created: 'Gjestelenke opprettet',
|
||
invalid_title: 'Ugyldig gjestelenke',
|
||
missing_token: 'Denne gjestelenken mangler token.',
|
||
expired: 'Denne gjestelenken er ugyldig eller utløpt.',
|
||
device_denied: 'Lenken er ugyldig, utløpt eller tillater ikke denne enheten.',
|
||
empty: 'Ingen enheter på denne gjestelenken.',
|
||
expires: 'Utløper',
|
||
back_to_list: 'Tilbake til gjestelisten',
|
||
},
|
||
ar: {
|
||
title: 'التحكم عن بُعد للضيف',
|
||
subtitle: 'وصول مؤقت — الأجهزة المشتركة فقط',
|
||
menu: 'رابط وصول الضيف',
|
||
create_title: 'إنشاء رابط وصول الضيف',
|
||
create_hint: 'رابط RdClient محدود زمنياً. يمكن للمستلم الاتصال بالأجهزة المحددة فقط — بدون تسجيل دخول Console أو قائمة كاملة.',
|
||
devices: 'الأجهزة',
|
||
ttl: 'صالح لمدة (دقائق)',
|
||
label: 'تسمية (اختياري)',
|
||
view_only: 'عرض فقط',
|
||
url: 'رابط المشاركة',
|
||
create: 'إنشاء الرابط',
|
||
created: 'تم إنشاء رابط الضيف',
|
||
invalid_title: 'رابط ضيف غير صالح',
|
||
missing_token: 'رابط الضيف هذا يفتقد الرمز.',
|
||
expired: 'رابط الضيف هذا غير صالح أو منتهٍ.',
|
||
device_denied: 'الرابط غير صالح أو منتهٍ أو لا يسمح بهذا الجهاز.',
|
||
empty: 'لا توجد أجهزة على رابط الضيف هذا.',
|
||
expires: 'ينتهي',
|
||
back_to_list: 'العودة إلى قائمة الضيف',
|
||
},
|
||
};
|
||
|
||
for (const file of fs.readdirSync(dir).filter((f) => f.endsWith('.json'))) {
|
||
if (file === 'en.json') continue;
|
||
const code = file.replace(/\.json$/, '');
|
||
const p = path.join(dir, file);
|
||
const data = JSON.parse(fs.readFileSync(p, 'utf8'));
|
||
data.guest_access = Object.assign({}, en, T[code] || {});
|
||
// ensure every en key present
|
||
for (const k of Object.keys(en)) {
|
||
if (!data.guest_access[k]) data.guest_access[k] = en[k];
|
||
}
|
||
fs.writeFileSync(p, JSON.stringify(data, null, 4) + '\n');
|
||
console.log('updated', file);
|
||
}
|