From 6be94bc08ac957f4ad7cadd21787fdc1fc3127d8 Mon Sep 17 00:00:00 2001 From: Weblate Date: Sun, 31 Jan 2021 11:19:00 +0100 Subject: [PATCH 01/10] Translated using Weblate (Dutch) Currently translated at 37.9% (513 of 1353 strings) Translation: CryptPad/App Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/nl/ --- www/common/translations/messages.nl.json | 155 ++++++++++++++++++++++- 1 file changed, 148 insertions(+), 7 deletions(-) diff --git a/www/common/translations/messages.nl.json b/www/common/translations/messages.nl.json index ca88e53ad..0989eb870 100644 --- a/www/common/translations/messages.nl.json +++ b/www/common/translations/messages.nl.json @@ -36,7 +36,7 @@ "history_restoreTitle": "Herstel de gekozen versie van het document", "history_closeTitle": "Geschiedenis sluiten", "history_loadMore": "Meer geschiedenis laden", - "history_prev": "Oudere versie", + "history_prev": "Vorige versie", "history_next": "Nieuwere versie", "historyButton": "Toon documentgeschiedenis", "historyText": "Geschiedenis", @@ -110,7 +110,7 @@ "selectTemplate": "Kies een sjabloon of druk op escape", "templateSaved": "Het sjabloon is opgeslagen!", "saveTemplateButton": "Opslaan als sjabloon", - "uploadButtonTitle": "Upload een nieuw bestand naar de huidige map", + "uploadButtonTitle": "Upload een nieuw bestand naar uw CryptDrive", "uploadFolderButton": "Uploadmap", "uploadButton": "Bestanden uploaden", "newButtonTitle": "Nieuwe werkomgeving aanmaken", @@ -202,7 +202,7 @@ "deletedError": "Deze werkomgeving is verwijderd door de eigenaar en niet meer beschikbaar.", "main_title": "CryptPad: werk samen aan documenten - geen kennis benodigd", "fc_open_ro": "Openen (alleen-lezen)", - "history_restorePrompt": "Weet u zeker dat u de bestaande documentversie wilt vervangen met de weergegeven versie?", + "history_restorePrompt": "Weet u zeker dat u de bestaande versie van het document wilt vervangen met de weergegeven versie?", "history_restoreDone": "Document hersteld", "history_version": "Versie:", "openLinkInNewTab": "Open Link in Nieuw Tabblad", @@ -334,8 +334,8 @@ "fm_openParent": "Weergeven in map", "fm_noname": "Document Zonder Title", "fm_emptyTrashDialog": "Weet u zeker dat u de prullenbak wilt legen?", - "fm_removeSeveralPermanentlyDialog": "Weet u zeker dat u deze {0} elementen voorgoed wilt verwijderen van uw CryptDrive?", - "fm_removePermanentlyDialog": "Weet u zeker dat u dit element voorgoed wilt verwijderen van uw CryptDrive?", + "fm_removeSeveralPermanentlyDialog": "Weet u zeker dat u deze {0} elementen wilt verwijderen van uw CryptDrive? De elementen zullen niet verwijderd worden voor eventuele andere gebruikers ervan.", + "fm_removePermanentlyDialog": "Weet u zeker dat u dit element wilt verwijderen van uw CryptDrive? Het zal niet verwijderd worden voor eventuele andere gebruikers ervan.", "fm_removePermanentlyNote": "Werkomgevingen in uw eigendom worden verwijderd van de server als u doorgaat.", "fm_removeSeveralDialog": "Weet u zeker dat u deze {0} elementen wilt verplaatsen naar de prullenbak?", "fm_removeDialog": "Weet u zeker dat u {0} wilt verplaatsen naar de prullenbak?", @@ -366,7 +366,7 @@ "fc_delete": "Naar prullenbak verplaatsen", "fc_delete_owned": "Verwijderen van server", "fc_restore": "Herstellen", - "fc_remove": "Verwijder uit uw CryptDrive", + "fc_remove": "Verwijderen", "fc_remove_sharedfolder": "Verwijderen", "fc_empty": "Prullenbak legen", "fc_prop": "Eigenschappen", @@ -375,5 +375,146 @@ "kanban_done": "Gedaan", "poll_comment_remove": "Verwijder dit commentaar", "profile_fieldSaved": "Nieuwe waarde opgeslagen: {0}", - "fm_morePads": "Meer" + "fm_morePads": "Meer", + "settings_pinningNotAvailable": "Vastgepinde werkomgevingen zijn alleen beschikbaar voor geregistreerde gebruikers.", + "settings_usageTitle": "Zie de hele grootte van uw vastgepinde werkomgevingen in MB", + "settings_usage": "Gebruik", + "settings_publicSigningKey": "Openbare Ondertekeningssleutel", + "settings_anonymous": "U bent niet ingelogd. Instellingen hier gelden alleen voor deze browser.", + "settings_deleted": "Uw account is nu verwijderd. Klik OK om naar de startpagina te gaan.", + "settings_deleteConfirm": "Als u op OK klikt, wordt uw account blijvend verwijderd. Weet u het zeker?", + "settings_deleteModal": "Deel de volgende informatie met uw CryptPad administrator om uw data te laten verwijderen van de server.", + "settings_deleteButton": "Uw account verwijderen", + "settings_deleteHint": "Het verwijderen van uw account is blijvend. Uw CryptDrive en lijst van werkomgevingen worden voorgoed verwijderd van de server. Uw overige werkomgevingen worden over 90 dagen verwijderd, behalve als ze door een andere gebruiker zijn opgeslagen.", + "settings_deleteTitle": "Account verwijderen", + "settings_userFeedback": "Gebruikersfeedback inschakelen", + "settings_userFeedbackHint2": "De inhoud van uw werkomgeving zal nooit gedeeld worden met de server.", + "settings_userFeedbackHint1": "CryptPad verstuurt basisfeedback naar de server, om ons te vertellen hoe we uw ervaring kunnen verbeteren. ", + "settings_userFeedbackTitle": "Feedback", + "settings_autostoreMaybe": "Handmatig (altijd vragen)", + "settings_autostoreNo": "Handmatig (nooit vragen)", + "settings_autostoreYes": "Automatisch", + "settings_autostoreHint": "Automatisch Alle geopende werkomgevingen worden automatisch opgeslagen in uw CryptDrive.
Handmatig (altijd vragen) Als u een werkomgeving nog niet hebt opgeslagen, zult u gevraagd worden of u het in uw CryptDrive wilt opslaan.
Handmatig (nooit vragen) Werkomgevingen worden niet automatisch opgeslagen in uw Cryptpad. The optie om op te slaan wordt verborgen.", + "settings_autostoreTitle": "Opslag van werkomgevingen in CryptDrive", + "settings_importDone": "Importeren voltooid", + "settings_importConfirm": "Weet u zeker dat u de recente pads van uw browser in uw geregistreerde CryptDrive wilt importeren?", + "settings_import": "Importeer", + "settings_importTitle": "Importeer in uw CryptDrive de werkomgevingen die onlangs in uw browser zijn geopend", + "settings_resetThumbnailsDone": "Alle miniatuurweergaven zijn gewist.", + "settings_resetThumbnailsDescription": "Ruim alle miniatuurweergaven op die worden opgeslagen in uw browser.", + "settings_resetThumbnailsAction": "Opruimen", + "settings_disableThumbnailsDescription": "Miniatuurweergaven worden automatisch aangemaakt en opgeslagen in uw browser als u een nieuwe werkomgeving aanmaakt. Hier kunt u deze functie uitschakelen.", + "settings_disableThumbnailsAction": "Aanmaak van miniatuurweergaven in uw CryptDrive uitschakelen", + "settings_thumbnails": "Miniatuurweergaven", + "settings_resetTipsDone": "Alle tips worden nu weer weergegeven.", + "settings_resetTipsButton": "Herstel de tips in CryptDrive", + "settings_resetTips": "Tips", + "settings_resetTipsAction": "Terugzetten", + "settings_resetError": "Onjuiste verificatietekst. Uw CryptDrive is niet geleegd.", + "settings_resetButton": "Verwijderen", + "settings_resetDone": "Uw CryptDrive is nu leeg!", + "settings_resetPrompt": "Deze actie zal alle werkomgevingen in uw CryptDrive verwijderden.
Weet u zeker dat u door wilt gaan?
Typ “I love CryptPad” om te bevestigen.", + "settings_reset": "Verwijder alle bestanden en mappen van uw CryptDrive", + "settings_resetNewTitle": "Reinig CryptDrive", + "settings_exportErrorOther": "Een fout trad op tijdens het exporteren van dit document: {0}", + "settings_exportErrorMissing": "Dit document ontbreekt in onze servers (verlopen of verwijderd door de eigenaar)", + "settings_exportErrorEmpty": "Dit document kan niet geëxporteerd worden. (Leeg of ongeldige inhoud.)", + "settings_exportErrorDescription": "De volgende documenten konden niet geëxporteerd worden:", + "settings_exportError": "Fouten weergeven", + "settings_export_done": "Uw download staat klaar!", + "settings_export_compressing": "Data aan het comprimeren...", + "settings_export_download": "Uw documenten worden gedownload en ontsleuteld...", + "settings_export_reading": "Uw CryptDrive aan het lezen...", + "settings_exportCancel": "Weet u zeker dat u de export wilt annuleren? U zult de volgende keer opnieuw moeten beginnen.", + "settings_exportWarning": "Opmerking: deze functie is nog in de bèta versie en kan nog niet optimaal werken. Daarom raden wij het aan om dit tabblad niet te verlaten.", + "settings_exportFailed": "Als het langer dan 1 minuut duurt om een werkomgeving te downloaden, zal het niet bij de export worden meegenomen. Er zal een link naar de werkomgeving die niet geëxporteerd zou zijn worden weergegeven.", + "settings_exportDescription": "Wacht a.u.b. terwijl wij uw documenten downloaden en ontsleutelen. Dit kan een paar minuten duren. Dit tabblad sluiten zal het proces onderbreken.", + "settings_exportTitle": "Exporteer uw CryptDrive", + "settings_backup2Confirm": "Dit zal alle werkomgevingen en bestanden van uw CryptDrive downloaden. Als u wilt doorgaan, kies een naam en druk OK", + "settings_backup2": "Download mijn CryptDrive", + "settings_backupHint2": "Download alle documenten van uw CryptDrive. Documenten zullen gedownload worden in bestandsformaten leesbaar voor andere programma's, indien mogelijk. Als zo een bestandsformaat niet beschikbaar is, zullen de documenten gedownload worden in het formaat dat CryptPad gebruikt.", + "settings_restore": "Herstellen", + "settings_backup": "Reservekopie", + "settings_backupHint": "Herstel alle inhoud van uw CryptDrive. Het zal niet de inhoud van uw werkomgevingen bevatten, slechts de toegangssleutels ertoe.", + "settings_backupCategory": "Reservekopie", + "settings_save": "Opslaan", + "settings_title": "Instellingen", + "settings_cat_subscription": "Abonnement", + "settings_cat_creation": "Nieuwe werkomgeving", + "settings_cat_pad": "Rich text", + "settings_cat_code": "Code", + "settings_cat_cursor": "Cursor", + "settings_cat_drive": "CryptDrive", + "settings_cat_account": "Account", + "register_emailWarning3": "Als u dit begrijpt en alsnog uw email wilt gebruiken als gebruikersnaam, klik dan OK.", + "register_emailWarning2": "U zult uw wachtwoord niet kunnen veranderen d.m.v. uw email, zoals bij veel andere diensten.", + "register_emailWarning1": "U kunt dat doen als u ervoor kiest, maar het zal niet naar onze server worden verzonden.", + "register_emailWarning0": "Het lijkt erop dat u uw emailadres als gebruikersnaam heeft ingevoerd.", + "register_alreadyRegistered": "Deze gebruiker bestaat al. Wilt u inloggen?", + "register_warning": " Waarschuwing", + "register_cancel": "Annuleren", + "register_writtenPassword": "Ik heb mijn gebruikersnaam en wachtwoord opgeschreven, ga door", + "register_header": "Registreren", + "register_whyRegister": "Waarom registreren?", + "register_mustRememberPass": "Wij kunnen uw wachtwoord niet veranderen als u het vergeet. Het is van uiterst belang dat u het onthoudt! Klik het vinkje aan om het te bevestigen.", + "register_mustAcceptTerms": "U moet akkoord gaan met de gebruikersvoorwaarden.", + "register_passwordTooShort": "Wachtwoorden moeten ten minste {0} tekenen lang zijn.", + "register_passwordsDontMatch": "Wachtwoorden komen niet overeen!", + "register_acceptTerms": "Ik ga akkoord met de gebruikersvoorwaarden", + "register_importRecent": "Importeer documenten van uw ongeregistreerde sessie", + "login_unhandledError": "Een onverwachte fout trad op :(", + "login_invalPass": "Wachtwoord vereist", + "login_invalUser": "Gebruikersnaam vereist", + "login_noSuchUser": "Ongeldige gebruikersnaam of wachtwoord. Probeer opnieuw of registreer u", + "login_orNoLogin": "of", + "login_accessDrive": "Bekijk uw CryptDrive", + "login_helloNoName": "Hallo,", + "login_hello": "Goedendag {0},", + "login_hashing": "Uw wachtwoord wordt berekend, dit kan even duren.", + "login_remember": "Blijf ingelogd", + "login_confirm": "Bevestig uw wachtwoord", + "login_password": "Wachtwoord", + "login_username": "Gebruikersnaam", + "settingsButton": "Instellingen", + "logoutButton": "Uitloggen", + "login_register": "Registreren", + "login_nologin": "Doorzoek lokale werkomgevingen", + "login_makeAPad": "Maak anoniem een werkomgeving aan", + "login_login": "Inloggen", + "fs_migration": "Uw CryptDrive wordt nu bijgewerkt tot een nieuwe versie. Daarom moet de huidige pagina herladen worden.
Herlaad deze pagina a.u.b. om hem te blijven gebruiken.", + "fo_unavailableName": "Een bestand of map met dezelfde naam bestaat al op de nieuwe locatie. Hernoem het element en probeer opnieuw.", + "fo_unableToRestore": "Het bestand kan niet in zijn oorspronkelijke locatie worden hersteld. Probeer het te verplaatsen naar een nieuwe locatie.", + "fo_moveFolderToChildError": "U kunt de map niet verplaatsen naar één van haar eigen submappen", + "fo_existingNameError": "Naam wordt al gebruikt in deze map. Kies a.u.b. een andere naam.", + "fo_moveUnsortedError": "U kunt geen map verplaatsen naar een lijst van sjablonen", + "fc_sizeInKilobytes": "Grootte in kilobytes", + "fm_moveNestedSF": "U kunt geen gedeelde map plaatsen in een andere map die ook gedeeld is. De map {0} is niet verplaatst.", + "fm_restoreDrive": "Uw drive wordt teruggedraaid naar een eerdere staat. Vermijd wijzigingen in uw drive totdat dit proces is voltooid, voor de best resultaten.", + "fm_burnThisDrive": "Weet u zeker dat u alles wilt verwijderen wat CryptPad heeft opgeslagen in uw browser?
Dit zal uw CryptDrive en de geschiedenis daarvan verwijderen uit uw browser, maar uw werkomgevingen zullen nog steeds in onze (versleutelde) server staan.", + "fm_renamedPad": "U hebt deze werkomgeving een naam gegeven. De gedeelde titel is:
{0}", + "fm_viewGridButton": "Roosterweergave", + "fm_viewListButton": "Lijstweergave", + "fm_alert_anonymous": "Goedendag, momenteel gebruikt u CryptPad anoniem. Dat is geen probleem, maar uw werkomgevingen kunnen verwijderd worden na een inactieve periode. Wij hebben gevorderde functies uitgeschakeld voor anonieme gebruikers, om te benadrukken dat het een onveilige manier is om bestanden op te slaan. U kunt meer lezen over waarom wij dit doen en waarom u echt beter kunt registreren of inloggen.", + "fm_alert_backupUrl": "Reserve kopie voor deze drive.
Het wordt dringend aanbevolen om het geheim te houden.
U kunt het gebruiken om alle bestanden terug te winnen, indien de opslag van uw browser gewist is.
Iedereen met deze link kan alle bestanden in uw CryptDrive wijzigen of verwijderen.
", + "fm_info_owned": "U bent de eigenaar van de werkomgevingen die hier zijn weergegeven. Dit betekent dat u ze voorgoed van de server kunt verwijderen. Als u dat doet, zijn ze niet meer toegankelijk voor andere gebruikers.", + "fm_info_sharedFolder": "Dit is een gedeelde map. U bent niet ingelogd, dus u kunt de inhoud alleen lezen. U kunt zich
registreren of inloggen om het in uw CryptDrive te importeren en het te wijzigen.", + "fm_info_anonymous": "U bent niet ingelogd, dus uw documenten zullen verlopen na {0} dagen. Ze kunnen ook verdwijnen als uw browsergeschiedenis gewist wordt.
Registreren (geen persoonlijke gegevens vereist) of Inloggen om ze voor altijd in uw drive op te slaan. Lees meer over geregistreerde accounts.", + "fm_info_allFiles": "Bevat alle bestanden van \"Documenten\", \"Ongesorteerd\" en \"Prullenbak\". U kunt hier geen bestanden verplaatsen of verwijderen.", + "fm_info_trash": "Leeg uw prullenbak om opslagruimte vrij te maken in uw CryptDrive.", + "fm_info_recent": "Deze werkomgevingen zijn onlangs geopend of gewijzigd door u of door mensen met wie u samenwerkt.", + "fm_info_template": "Dit bevat alle werkomgevingen die zijn opgeslagen als sjablonen en die je kunt gebruiken voor een nieuwe werkomgeving.", + "fm_info_unsorted": "Dit bevat alle bezochte bestanden die nog niet naar \"Documenten\" of \"Prullenbak\" verplaatst zijn.", + "fm_info_root": "Maak hier zoveel mappen aan als u wilt, om uw bestanden te ordenen.", + "fm_categoryError": "Kan de geselecteerde categorie niet openen. De hoofdmap wordt weergegeven.", + "fm_selectError": "Kan het bedoelde element niet selecteren. Als het probleem aanhoudt, probeer dan de pagina te herladen.", + "fm_contextMenuError": "Kan het context menu voor dat element niet openen. Als het probleem aanhoudt, probeer dan de pagina te herladen.", + "fm_creation": "Aanmaak", + "fm_lastAccess": "Laatste toegang", + "fm_ownedPadsName": "Eigendom", + "debug_getGraphText": "Dit is de DOT-code om een grafiek van de geschiedenis van dit document te genereren:", + "debug_getGraph": "Krijg de code om een grafiek van de geschiedenis van dit document te genereren", + "poll_descriptionHint": "Beschrijf uw enquête en gebruik de ✓ (publiceer) knop als u klaar bent.\nDe beschrijving kan met markdown-syntax geschreven worden en u kunt media elementen integreren van uw CryptDrive.\nIedereen met de link kan de beschrijving veranderen, maar dit raden wij af.", + "poll_wizardDescription": "Maak automatisch een aantal opties aan, door een willekeurig aantal data en tijden in te voeren", + "poll_subtitle": "Zero Knowledge onvertraagd inplannen", + "poll_title": "Zero Knowledge Datumprikker" } From 10b97784c038afb3e0914fb8bc49f416f1af2319 Mon Sep 17 00:00:00 2001 From: Weblate Date: Sat, 6 Feb 2021 14:18:38 +0100 Subject: [PATCH 02/10] Translated using Weblate (Russian) Currently translated at 59.3% (803 of 1353 strings) Translation: CryptPad/App Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/ru/ Translated using Weblate (Russian) Currently translated at 58.9% (797 of 1353 strings) Translation: CryptPad/App Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/ru/ --- www/common/translations/messages.ru.json | 208 ++++++++++++++++++++++- 1 file changed, 205 insertions(+), 3 deletions(-) diff --git a/www/common/translations/messages.ru.json b/www/common/translations/messages.ru.json index 283423ecc..b9877e7bc 100644 --- a/www/common/translations/messages.ru.json +++ b/www/common/translations/messages.ru.json @@ -510,8 +510,8 @@ "download_resourceNotAvailable": "Запрошенный ресурс был недоступен... Нажмите Esc для продолжения.", "upload_size": "Размер", "upload_name": "Имя файла", - "upload_pending": "Ожидают", - "upload_tooLargeBrief": "Фаил слишком большой", + "upload_pending": "Ожидайте", + "upload_tooLargeBrief": "Размер файла превышает лимит в {0}МБ", "upload_notEnoughSpaceBrief": "Недостаточно места", "upload_notEnoughSpace": "Недостаточно места для этого файла на вашем CryptDrive.", "upload_type": "Тип", @@ -622,5 +622,207 @@ "share_linkEdit": "Изменить", "share_linkCategory": "Ссылка", "properties_changePasswordButton": "Отправить", - "password_show": "Показать" + "password_show": "Показать", + "history_restoreDriveDone": "CryptDrive восстановлен", + "infobar_versionHash": "У вас открыта предыдущая версия данного документа ({0}).", + "snaphot_title": "Снимок", + "snapshots_button": "Снимки", + "snapshots_new": "Новый снимок", + "snapshots_placeholder": "Заголовок снимка", + "snapshots_open": "Открыть", + "snapshots_restore": "Восстановить", + "snapshots_close": "Закрыть", + "oo_deletedVersion": "Данной версии больше нет в истории.", + "snapshots_delete": "Удалить", + "oo_version": "Версия: ", + "snapshots_ooPickVersion": "Выберите версию перед созданием снимка", + "snapshot_error_exists": "Снимок этой версии уже существует", + "snapshots_notFound": "Данного снимка больше не существует, потому что история документа была удалена.", + "snapshots_cantMake": "Невозможно создать снимок. Потеряно соединение.", + "admin_registrationTitle": "Закрыть регистрацию", + "admin_registrationButton": "Закрыть", + "admin_registrationAllow": "Открыть", + "admin_defaultlimitTitle": "Лимит хранилища (МБ)", + "admin_setlimitButton": "Задать лимит", + "admin_limit": "Текущий лимит: {0}", + "admin_invalKey": "Неверный публичный ключ", + "admin_invalLimit": "Неверное значение лимита", + "admin_cat_quota": "Хранилище пользователя", + "team_exportButton": "Скачать", + "admin_limitUser": "Публичный ключ пользователя", + "fm_deletedFolder": "Удалить папку", + "access_destroyPad": "Уничтожить документ или папку безвозвратно", + "fm_shareFolderPassword": "Защитите папку паролем (опционально)", + "loading_state_0": "Построение интерфейса", + "loading_state_1": "Загрузка хранилища", + "loading_state_2": "Обновление содержимого", + "loading_state_3": "Загрузка общих папок", + "documentID": "Идентификатор документа", + "unableToDisplay": "Не могу открыть документ. Пожалуйста, нажмите Esc для обновления страницы. Если проблема сохранится, пожалуйста, обратитесь в поддержку.", + "admin_archiveTitle": "Архивирование документов", + "admin_archiveButton": "Архивировать", + "admin_unarchiveTitle": "Восстановить документы", + "admin_unarchiveHint": "Восстановить ранее архивированный документ", + "admin_unarchiveButton": "Восстановить", + "admin_archiveInput": "URL документа", + "admin_archiveInval": "Неверный документ", + "admin_archiveInput2": "Пароль документа", + "restoredFromServer": "Документ восстановлен", + "archivedFromServer": "Документ архивирован", + "allowNotifications": "Разрешить уведомления", + "fileTableHeader": "Скачивание и загрузка", + "download_zip": "Создание ZIP файла...", + "Offline": "Не в сети", + "mediatag_saveButton": "Сохранить", + "pad_mediatagShare": "Поделиться файлом", + "pad_mediatagOpen": "Открыть файл", + "mediatag_notReady": "Пожалуйста, закончите скачивание", + "mediatag_loadButton": "Добавить вложение", + "admin_support_premium": "Приоритетные обращения:", + "admin_support_normal": "Обращения без ответов:", + "admin_support_answered": "Обращения с ответами:", + "admin_support_closed": "Закрытые обращения:", + "admin_support_open": "Показать", + "admin_support_collapse": "Свернуть", + "admin_support_first": "Создано: ", + "admin_support_last": "Обновлено: ", + "home_privacy_title": "Конфиденциальность по умолчанию", + "home_host_title": "Об этом сервере", + "home_support_title": "Поддержите CryptPad", + "register_notes_title": "Важные заметки", + "whatis_apps": "Полный пакет приложений", + "whatis_model": "Бизнес модель", + "whatis_xwiki": "Разработано в XWiki", + "settings_cacheCheckbox": "Включить кэш на этом устройстве", + "docs_link": "Документация", + "creation_helperText": "Открыть в документации", + "creation_expiresIn": "Истекает через", + "settings_cacheTitle": "Кэш", + "settings_cacheButton": "Очистить кэш", + "header_homeTitle": "Домашняя страница CryptPad", + "four04_pageNotFound": "Запрашиваемая страница не найдена.", + "tos_title": "Пользовательское соглашение CryptPad", + "features_f_subscribe_note": "Для покупки необходим зарегистрированный аккаунт", + "features_f_subscribe": "Купить", + "features_f_supporter_note": "Помогите CryptPad достичь финансовой устойчивости и показать, что программное обеспечение защищающее конфиденциальность и спонсированное пользователями должно быть нормой", + "features_f_supporter": "Поддержите конфиденциальность", + "features_f_support_note": "Приоритетная поддержка от команды администраторов по почте и встроенной системе обращений", + "features_f_support": "Приоритетная поддержка", + "features_f_storage2_note": "От 5ГБ до 50ГБ в зависимости от плана, ограничение {0}МБ на размер загружаемого файла", + "features_f_storage2": "Расширенный размер хранилища", + "features_f_reg_note": "С дополнительными возможностями", + "features_f_reg": "Все функции зарегистрированного пользователя", + "features_f_register": "Бесплатная регистрация", + "features_f_storage1_note": "Документы хранимые в вашем CryptDrive не удаляются при отсутствии активности", + "features_f_storage1": "Личное хранилище ({0})", + "features_f_file1_note": "Храните любые файлы в вашем CryptDrive: картинки, документы PDF, видео и другие. Делитесь ими с вашими контактами или вкладывайте их внутрь документов. (до {0} МБ)", + "features_f_file1": "Загрузка файлов и предоставление доступа другим", + "features_f_social_note": "Добавление контактов для безопасной совместной работы, создание профиля, точечная настройка доступа", + "features_f_social": "Общение", + "features_f_devices_note": "Доступ в ваш аккаунт CryptDrive из любого места", + "features_f_devices": "Ваши вкладки на всех устройствах", + "features_f_cryptdrive1_note": "Папки, общие папки, шаблоны, тэги", + "features_f_cryptdrive1": "Полная функциональность CryptDrive", + "features_f_anon_note": "С дополнительными функциями", + "features_anon": "Анонимный пользователь", + "features_f_anon": "Все функции анонимного пользователя", + "features_f_storage0_note": "Документы удаляются после {0} дней бездействия", + "features_f_storage0": "Ограниченное время хранения", + "features_f_cryptdrive0": "Ограниченный доступ в CryptDrive", + "features_f_file0_note": "Просмотр и скачивание документов, которыми поделились другие пользователи", + "features_f_core_note": "Правка, Импорт и Экспорт, История, Список пользователей, Чат", + "features_f_core": "Общие функции", + "features_f_apps": "Доступ ко всем приложениям", + "features_notes": "Заметки", + "features_premium": "Премиум", + "features_registered": "Зарегистрированный пользователь", + "features_feature": "Функция", + "features_title": "Функции", + "features": "Функции", + "policy_ads": "Реклама", + "policy_links": "Ссылки на другие сайты", + "policy_whatwetell": "Какую информацию о вас мы передаем другим", + "policy_howweuse": "Как мы используем информацию о вас", + "policy_whatweknow": "Что мы знаем о вас", + "policy_title": "Политика конфиденциальности CryptPad", + "whatis_drive": "Порядок с Cryptdrive", + "whatis_collaboration": "Конфиденциальное взаимодействие", + "whatis_title": "Что такое CryptPad?", + "topbar_whatIsCryptpad": "Что такое CryptPad", + "blog": "Блог", + "contact": "Контакты", + "home_product": "CryptPad это конфиденциальная альтернатива популярным офисным инструментам и облачным сервисам. Вся информация, хранимая в CryptPad, шифруется до отправки на сервер, и никто (даже мы) не сможет получить доступ к ней, пока вы не предоставите ключ для расшифровки.", + "privacy": "Политика конфиденциальности", + "footer_aboutUs": "О нас", + "footer_contact": "Контакты", + "footer_applications": "Приложения", + "main_footerText": "С помощью CryptPad вы можете быстро создать совместные документы для ведения заметок и записи идей.", + "about_core": "Основные разработчики", + "home_ngi": "Победитель NGI Award", + "home_host_agpl": "CryptPad распространяется в соответствии с условиями лицензии AGPL3", + "home_host": "Это независимый общественный сервер CryptPad.", + "mdToolbar_toc": "Содержание", + "mdToolbar_code": "Код", + "mdToolbar_check": "Список задач", + "mdToolbar_list": "Маркированный список", + "mdToolbar_nlist": "Нумерованный список", + "mdToolbar_quote": "Цитата", + "mdToolbar_link": "Ссылка", + "mdToolbar_heading": "Заголовок", + "mdToolbar_strikethrough": "Зачеркнутый", + "mdToolbar_italic": "Курсив", + "mdToolbar_bold": "Жирный", + "mdToolbar_tutorial": "https://www.markdowntutorial.com/", + "mdToolbar_help": "Помощь", + "mdToolbar_defaultText": "Введите текст", + "mdToolbar_button": "Показать или скрыть панель Markdown", + "pad_hideToolbar": "Спрятать панель инструментов", + "pad_showToolbar": "Показать панель инструментов", + "todo_removeTaskTitle": "Удалить задачу из списка", + "todo_markAsIncompleteTitle": "Пометить как не выполненное", + "todo_markAsCompleteTitle": "Пометить как выполненное", + "todo_newTodoNameTitle": "Добавить эту задачу в список", + "download_dl": "Скачать", + "download_step2": "Расшифровка", + "download_step1": "Скачивание", + "download_mt_button": "Скачать", + "download_button": "Расшифровать и скачать", + "upload_up": "Загрузка", + "upload_mustLogin": "Войдите в аккаунт для загрузки файла", + "upload_progress": "Прогресс", + "upload_cancelled": "Отменено", + "upload_choose": "Выберите файл", + "upload_tooLarge": "Размер файла превышает максимальный размер, установленный для вашего аккаунта.", + "upload_success": "Ваш файл ({0}) успешно загружен и добавлен в ваше хранилище.", + "upload_uploadPending": "У вас уже есть активная загрузка. Отменить ее и загрузить новый файл?", + "upload_serverError": "Ошибка на сервере: не получается загрузить файл.", + "uploadFolder_modal_forceSave": "Сохраните файлы в ваш CryptDrive", + "uploadFolder_modal_owner": "Владелец файлов", + "uploadFolder_modal_filesPassword": "Пароль файла", + "uploadFolder_modal_title": "Настройки загрузки папки", + "upload_modal_owner": "Владелец файла", + "upload_modal_filename": "Имя файла (расширение {0} добавлено автоматически)", + "upload_modal_title": "Настройки загрузки файла", + "upload_title": "Загрузка файла", + "settings_cursorShowLabel": "Показать курсоры", + "settings_cursorShowHint": "Вы можете выбрать отображение курсоров других пользователей в совместных документах.", + "settings_cursorShowTitle": "Показать положение курсора пользователя", + "settings_cursorShareLabel": "Поделиться положением", + "settings_cursorShareHint": "Вы можете разрешить другим пользователям видеть положение вашего курсора в совместных документах.", + "settings_cursorColorHint": "Изменение цвета курсора пользователя, отображаемого в совместных документах.", + "settings_changePasswordNewPasswordSameAsOld": "Ваш новый пароль должен отличаться от текущего.", + "settings_changePasswordPending": "Ваш пароль обновляется. Пожалуйста, не закрывайте и не обновляйте страницу, пока процесс не завершится.", + "settings_ownDriveHint": "Старые аккаунты не обладают последними функциями по техническим причинам. Бесплатное обновление их установит и подготовит ваш CryptDrive для будущих обновлений.", + "settings_ownDriveButton": "Обновление аккаунта", + "settings_ownDriveConfirm": "Обновление вашего аккаунта может занять время. Вам потребуется заново войти в ваш аккаунт на всех устройствах. Вы уверены?", + "settings_ownDrivePending": "Ваш аккаунт обновляется. Пожалуйста, не закрывайте и не обновляйте страницу пока процесс не закончится.", + "settings_changePasswordHint": "Изменение пароля от аккаунта. Введите ваш текущий пароль и подтвердите новый пароль, введя его дважды.
Мы не сможем сбросить ваш пароль, если вы его забудете, будьте осторожны!", + "settings_changePasswordNewConfirm": "Подтвердите новый пароль", + "fm_alert_backupUrl": "Резервная ссылка для этого хранилища.
Настоятельно рекомендуемхранить ее в секрете.
С помощью нее вы сможете восстановить все ваши файлы в случае очистки памяти вашего браузера.
Любой с этой ссылкой сможет изменять или удалять файлы в вашем хранилище.
", + "policy_whatwetell_p1": "Мы не предоставляем собранную информацию третьим лицам за исключением случаев, когда мы обязаны сделать это по законодательству.", + "policy_howweuse_p2": "Информация о вашем браузере (настольная или мобильная операционная система) помогает нам приоритизировать развитие функционала. Наша команда разработчиков маленькая и, принимая решения об улучшениях, мы стараемся охватить наибольшее число пользователей.", + "policy_howweuse_p1": "Данная информация помогает нам принимать решения о продвижении CryptPad и оценивать успешность наших действий. Информация о вашем местоположении помогает нам понять необходимость больших усилий для поддержки других языков.", + "policy_whatweknow_p2": "Мы используем Kibana, чтобы получше узнать наших пользователей. С помощью Kibana мы определяем как вы узнали о CryptPad: по прямой ссылке, через поисковый сервис или по ссылке на стороннем сайте как Reddit или Twitter.", + "policy_whatweknow_p1": "Так как приложение размещено в Интернете, CryptPad имеет доступ ко всем метаданным протокола HTTP. Это включает ваш IP адрес и различные HTTP заголовки, которые могут быть использованы для идентификации вашего браузера. Информацию, которую раскрывает ваш браузер, вы можете найти на сайте WhatIsMyBrowser.com.", + "terms": "Пользовательское соглашение" } From b43fa15d4ae3295b97831dab8f071392e555a870 Mon Sep 17 00:00:00 2001 From: Weblate Date: Sat, 6 Feb 2021 14:18:38 +0100 Subject: [PATCH 03/10] Translated using Weblate (German) Currently translated at 100.0% (1353 of 1353 strings) Translation: CryptPad/App Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/de/ --- www/common/translations/messages.de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/www/common/translations/messages.de.json b/www/common/translations/messages.de.json index 084249f5c..f49bbf697 100644 --- a/www/common/translations/messages.de.json +++ b/www/common/translations/messages.de.json @@ -1366,7 +1366,7 @@ "whatis_xwiki_info": "

CryptPad wird bei XWiki entwickelt, einem Unternehmen mit Sitz in Paris, Frankreich, das seit über 15 Jahren Open-Source-Software entwickelt. Wir haben umfangreiche Erfahrung in der Entwicklung von kollaborativer Software zur Organisation von Informationen. Unsere Erfolgsbilanz zeigt, dass wir uns der langfristigen Entwicklung und Wartung von CryptPad verpflichtet fühlen.

", "docs_link": "Dokumentation", "home_support": "

Das Entwicklerteam profitiert in keiner Weise von Daten der Nutzer. Dies ist Teil einer Vision für Online-Dienste, die die Privatsphäre respektieren. Im Gegensatz zu den großen Plattformen, die vorgeben, \"kostenlos\" zu sein, während sie mit persönlichen Daten Profit machen, möchten wir ein nachhaltiges Modell aufbauen, das freiwillig von den Nutzern finanziert wird.

Du kannst das Projekt unterstützen, indem du eine einmalige oder regelmäßige Spende über Open Collective machst. Unser Budget ist transparent und wird regelmäßig aktualisiert. Es gibt auch mehrere nicht-finanzielle Möglichkeiten, sich zu beteiligen.

", - "home_privacy_text": "CryptPad wurde entwickelt, um Zusammenarbeit zu ermöglichen und gleichzeitig die Daten zu schützen. Alle Inhalte werden in deinem Browser verschlüsselt und entschlüsselt. Das bedeutet, dass Dokumente, Chats und Dateien außerhalb der Sitzung, in du angemeldet sind, nicht lesbar sind. Selbst die Administratoren des Dienstes haben keinen Zugriff auf deine Daten.", + "home_privacy_text": "CryptPad wurde entwickelt, um Zusammenarbeit zu ermöglichen und gleichzeitig die Daten zu schützen. Alle Inhalte werden in deinem Browser verschlüsselt und entschlüsselt. Das bedeutet, dass Dokumente, Chats und Dateien außerhalb der Sitzung, in der du angemeldet bist, nicht lesbar sind. Selbst die Administratoren des Dienstes haben keinen Zugriff auf deine Daten.", "home_privacy_title": "Eingebauter Datenschutz", "home_opensource_title": "Open Source", "whatis_model_info": "

CryptPad wird seit 2016 durch französische und europäische Forschungsgelder wie BPI France, NLNet Foundation, NGI Trust, Mozilla Open Source Support sowie durch Spenden und Abonnements auf cryptpad.fr unterstützt. Wir glauben, dass öffentliche Gelder öffentlichen Code finanzieren sollten, daher ist der Dienst vollständig Open Source. Das bedeutet, dass jeder die Software nutzen, hosten und modifizieren kann.

CryptPad profitiert nicht von Benutzerdaten. Dies ist Teil einer Vision für Online-Dienste, die die Privatsphäre respektieren. Im Gegensatz zu den großen Plattformen, die vorgeben, \"kostenlos\" zu sein, während sie mit persönlichen Daten Profit machen, möchte CryptPad ein nachhaltiges Modell aufbauen, das freiwillig von den Nutzern finanziert wird.

Wir bieten die Funktionalität von CryptPad kostenlos an, weil wir glauben, dass jeder persönliche Privatsphäre verdient, nicht nur Menschen mit einem hohen Einkommen. Wenn du in der Lage bist, das Projekt zu unterstützen, trägst du zu neuen Funktionen, Verbesserungen und Wartung bei, die allen Nutzern zugute kommen.

Nachdem nun die Machbarkeit des Projekts festgestellt wurde, ist das nächste Ziel, es durch die Finanzierung durch die Nutzer finanziell nachhaltig zu machen. Wenn du CryptPad unterstützen möchtest und dabei helfen möchtest, es zu einer nachhaltigen Alternative zu den großen Plattformen zu machen, ziehe bitte eine einmalige oder regelmäßige Spende in Betracht.

", From 2756e1f2cd2160df26dd3ccc16ff6f9542213a79 Mon Sep 17 00:00:00 2001 From: yflory Date: Mon, 8 Feb 2021 11:06:32 +0100 Subject: [PATCH 04/10] Fix Kanban issues --- www/kanban/inner.js | 6 +++--- www/kanban/jkanban_cp.js | 5 ++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/www/kanban/inner.js b/www/kanban/inner.js index 2432c9d8a..b45a01c60 100644 --- a/www/kanban/inner.js +++ b/www/kanban/inner.js @@ -635,7 +635,7 @@ define([ gutter: '5px', widthBoard: '300px', buttonContent: '❌', - readOnly: framework.isReadOnly(), + readOnly: framework.isReadOnly() || framework.isLocked(), tagsAnd: _tagsAnd, refresh: function () { onRedraw.fire(); @@ -869,7 +869,7 @@ define([ var addBoardDefault = document.getElementById('kanban-addboard'); $(addBoardDefault).attr('title', Messages.kanban_addBoard); addBoardDefault.addEventListener('click', function () { - if (framework.isReadOnly()) { return; } + if (framework.isReadOnly() || framework.isLocked()) { return; } /*var counter = 1; // Get the new board id @@ -1051,7 +1051,7 @@ define([ mkHelpMenu(framework); } - if (framework.isReadOnly()) { + if (framework.isReadOnly() || framework.isLocked()) { $container.addClass('cp-app-readonly'); } else { framework.setFileImporter({}, function (content /*, file */) { diff --git a/www/kanban/jkanban_cp.js b/www/kanban/jkanban_cp.js index 2a3c6991b..b5285de27 100644 --- a/www/kanban/jkanban_cp.js +++ b/www/kanban/jkanban_cp.js @@ -458,13 +458,12 @@ define([ this.moveItem = function (source, eid, board, pos) { var boards = self.options.boards; var same = -1; - console.error(source, eid, board, pos); if (source && boards.data[source]) { // Remove from this board only var l = boards.data[source].item; - var idx = l.indexOf(eid); + var idx = l.indexOf(Number(eid)); if (idx !== -1) { l.splice(idx, 1); } - if (source === board) { same = idx; } + if (boards.data[source] === board) { same = idx; } } else { // Remove the item from all its board var from = findItem(eid); From 69c6b6fcfd00f7760cf626b65d61958b15b7c0a7 Mon Sep 17 00:00:00 2001 From: yflory Date: Mon, 8 Feb 2021 11:40:52 +0100 Subject: [PATCH 05/10] Fix PCS --- www/common/common-ui-elements.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/www/common/common-ui-elements.js b/www/common/common-ui-elements.js index 3a514eae7..3998f3d41 100644 --- a/www/common/common-ui-elements.js +++ b/www/common/common-ui-elements.js @@ -2107,11 +2107,13 @@ define([ var privateData = metadataMgr.getPrivateData(); if (privateData.offline) { - metadataMgr.onChange(function () { + var onChange = function () { var privateData = metadataMgr.getPrivateData(); if (privateData.offline) { return; } UIElements.getPadCreationScreen(common, cfg, appCfg, cb); - }); + metadataMgr.off('change', onChange); + }; + metadataMgr.onChange(onChange); return; } From 840946ce57a0fb991917ef2753ff97edb681d024 Mon Sep 17 00:00:00 2001 From: yflory Date: Mon, 8 Feb 2021 12:22:04 +0100 Subject: [PATCH 06/10] Refresh admin panel stats --- www/admin/inner.js | 88 +++++++++++++++++++++++++++++++++------------- 1 file changed, 63 insertions(+), 25 deletions(-) diff --git a/www/admin/inner.js b/www/admin/inner.js index 8ea6cfe17..da2d69a1c 100644 --- a/www/admin/inner.js +++ b/www/admin/inner.js @@ -53,6 +53,7 @@ define([ 'cp-admin-getlimits', ], 'stats': [ + 'cp-admin-refresh-stats', 'cp-admin-active-sessions', 'cp-admin-active-pads', 'cp-admin-open-files', @@ -466,49 +467,86 @@ define([ return $div; }; + var onRefreshStats = Util.mkEvent(); + + create['refresh-stats'] = function () { + var key = 'refresh-stats'; + var $div = $('
', {'class': 'cp-admin-' + key + ' cp-sidebarlayout-element'}); + var $btn = $(h('button.btn.btn-primary', Messages.oo_refresh)); + $btn.click(function () { + onRefreshStats.fire(); + }); + $div.append($btn); + return $div; + }; + create['active-sessions'] = function () { var key = 'active-sessions'; var $div = makeBlock(key); - sFrameChan.query('Q_ADMIN_RPC', { - cmd: 'ACTIVE_SESSIONS', - }, function (e, data) { - var total = data[0]; - var ips = data[1]; - $div.append(h('pre', total + ' (' + ips + ')')); - }); + var onRefresh = function () { + $div.find('pre').remove(); + sFrameChan.query('Q_ADMIN_RPC', { + cmd: 'ACTIVE_SESSIONS', + }, function (e, data) { + var total = data[0]; + var ips = data[1]; + $div.find('pre').remove(); + $div.append(h('pre', total + ' (' + ips + ')')); + }); + }; + onRefresh(); + onRefreshStats.reg(onRefresh); return $div; }; create['active-pads'] = function () { var key = 'active-pads'; var $div = makeBlock(key); - sFrameChan.query('Q_ADMIN_RPC', { - cmd: 'ACTIVE_PADS', - }, function (e, data) { - console.log(e, data); - $div.append(h('pre', String(data))); - }); + var onRefresh = function () { + $div.find('pre').remove(); + sFrameChan.query('Q_ADMIN_RPC', { + cmd: 'ACTIVE_PADS', + }, function (e, data) { + console.log(e, data); + $div.find('pre').remove(); + $div.append(h('pre', String(data))); + }); + }; + onRefresh(); + onRefreshStats.reg(onRefresh); return $div; }; create['open-files'] = function () { var key = 'open-files'; var $div = makeBlock(key); - sFrameChan.query('Q_ADMIN_RPC', { - cmd: 'GET_FILE_DESCRIPTOR_COUNT', - }, function (e, data) { - console.log(e, data); - $div.append(h('pre', String(data))); - }); + var onRefresh = function () { + $div.find('pre').remove(); + sFrameChan.query('Q_ADMIN_RPC', { + cmd: 'GET_FILE_DESCRIPTOR_COUNT', + }, function (e, data) { + console.log(e, data); + $div.find('pre').remove(); + $div.append(h('pre', String(data))); + }); + }; + onRefresh(); + onRefreshStats.reg(onRefresh); return $div; }; create['registered'] = function () { var key = 'registered'; var $div = makeBlock(key); - sFrameChan.query('Q_ADMIN_RPC', { - cmd: 'REGISTERED_USERS', - }, function (e, data) { - console.log(e, data); - $div.append(h('pre', String(data))); - }); + var onRefresh = function () { + $div.find('pre').remove(); + sFrameChan.query('Q_ADMIN_RPC', { + cmd: 'REGISTERED_USERS', + }, function (e, data) { + console.log(e, data); + $div.find('pre').remove(); + $div.append(h('pre', String(data))); + }); + }; + onRefresh(); + onRefreshStats.reg(onRefresh); return $div; }; create['disk-usage'] = function () { From e083f1c255fd2f59a39b472fcbb74938607d9527 Mon Sep 17 00:00:00 2001 From: yflory Date: Mon, 8 Feb 2021 12:43:04 +0100 Subject: [PATCH 07/10] Add admin form to check a user quota usage from their public key --- www/admin/inner.js | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/www/admin/inner.js b/www/admin/inner.js index da2d69a1c..1f8aa3e4e 100644 --- a/www/admin/inner.js +++ b/www/admin/inner.js @@ -51,6 +51,7 @@ define([ 'cp-admin-defaultlimit', 'cp-admin-setlimit', 'cp-admin-getlimits', + 'cp-admin-getquota', ], 'stats': [ 'cp-admin-refresh-stats', @@ -467,6 +468,43 @@ define([ return $div; }; + create['getquota'] = function () { + var key = 'getquota'; + var $div = makeBlock(key, true); + + var input = h('input#cp-admin-getquota', { + type: 'text' + }); + var $input = $(input); + + var $button = $div.find('button'); + $button.before(h('div.cp-admin-setlimit-form', [ + input, + ])); + + $button.click(function () { + var val = $input.val(); + if (!val || !val.trim()) { return; } + var key = Keys.canonicalize(val); + if (!key) { return; } + $input.val(''); + sFrameChan.query('Q_ADMIN_RPC', { + cmd: 'GET_USER_TOTAL_SIZE', + data: key + }, function (e, obj) { + if (e || (obj && obj.error)) { + console.error(e || obj.error); + return void UI.warn(Messages.error); + } + var size = Array.isArray(obj) && obj[0]; + if (typeof(size) !== "number") { return; } + UI.alert(Util.getPrettySize(size, Messages)); + }); + }); + + return $div; + }; + var onRefreshStats = Util.mkEvent(); create['refresh-stats'] = function () { From 8cb6c258f3de175a121f6cafde701e280508094e Mon Sep 17 00:00:00 2001 From: ansuz Date: Mon, 8 Feb 2021 18:40:31 +0530 Subject: [PATCH 08/10] remove dead code --- customize.dist/template.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/customize.dist/template.js b/customize.dist/template.js index 427dafd00..7721339f3 100644 --- a/customize.dist/template.js +++ b/customize.dist/template.js @@ -52,8 +52,6 @@ $(function () { } else if (/^\/($|^\/index\.html$)/.test(pathname)) { // TODO use different top bar require([ '/customize/main.js', ], function () {}); - } else if (/invite/.test(pathname)) { - require([ '/invite/main.js'], function () {}); } else { require([ '/customize/main.js', ], function () {}); } From 8b59e11dbec581d42a5de31a882f0f71056a922c Mon Sep 17 00:00:00 2001 From: Weblate Date: Mon, 8 Feb 2021 14:22:43 +0100 Subject: [PATCH 09/10] Translated using Weblate (English) Currently translated at 100.0% (1353 of 1353 strings) Translation: CryptPad/App Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/ --- www/common/translations/messages.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/www/common/translations/messages.json b/www/common/translations/messages.json index dd166c079..01690c318 100644 --- a/www/common/translations/messages.json +++ b/www/common/translations/messages.json @@ -1362,7 +1362,7 @@ "home_support": "

The development team does not profit from user data in any way. This is part of a vision for online services that respect privacy. Unlike the big platforms that pretend to be \"free\" while making profits from personal information, we aim to build a sustainable model funded willingly by users.

You can support the project by making a one-time or recurring donation through our Open Collective. Our budget is transparent and updates are published regularly. There are also a number of non-financial ways to contribute.

", "register_notes_title": "Important notes", "register_notes": "
  • Your password is the secret key that encrypts all of your documents. If you lose it there is no way we can recover your data.
  • If you are using a shared computer, remember to log out when you are done. Only closing the browser window leaves your account exposed.
  • To keep the documents you created and/or stored without being logged in, tick \"Import documents from your anonymous session\".
", - "register_warning_note": "Due to the encrypted nature of CrytpPad, the service administrators will not be able to recover data in case you forget your username and/or password. Please save them in a safe place.", + "register_warning_note": "Due to the encrypted nature of CryptPad, the service administrators will not be able to recover data in case you forget your username and/or password. Please save them in a safe place.", "whatis_collaboration_info": "

CryptPad is built to enable collaboration. It synchronizes changes to documents in real time. Because all data is encrypted, the service and its administrators have no way of seeing the content being edited and stored.

", "whatis_apps": "A full suite of applications", "whatis_apps_info": "

CryptPad provides a full-fledged office suite with all the tools necessary for productive collaboration. Applications include: Rich Text, Spreadsheets, Code/Markdown, Kanban, Slides, Whiteboard and Polls.

The applications are complemented by a set of collaboration features such as chat, contacts, color by author (code/markdown), and comments with mentions (rich text).

", From a9f6d6d491f16b00caaf1d55e98444c26e2c6ebb Mon Sep 17 00:00:00 2001 From: ansuz Date: Mon, 8 Feb 2021 19:08:46 +0530 Subject: [PATCH 10/10] construct the registration warning as a DOM object instead of parsing concatenated strings --- www/register/main.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/www/register/main.js b/www/register/main.js index 95849e193..3c77d0f53 100644 --- a/www/register/main.js +++ b/www/register/main.js @@ -10,9 +10,10 @@ define([ '/common/common-constants.js', '/common/common-feedback.js', '/common/outer/local-store.js', + '/common/hyperscript.js', 'css!/bower_components/components-font-awesome/css/font-awesome.min.css', -], function ($, Login, Cryptpad, Test, Cred, UI, Util, Realtime, Constants, Feedback, LocalStore) { +], function ($, Login, Cryptpad, Test, Cred, UI, Util, Realtime, Constants, Feedback, LocalStore, h) { var Messages = Cryptpad.Messages; $(function () { @@ -100,7 +101,12 @@ define([ } setTimeout(function () { - UI.confirm("

" + Messages.register_warning + "

" + Messages.register_warning_note, + var span = h('span', [ + UI.setHTML(h('h2'), Messages.register_warning), // TODO remove the icon from this translation string and pass it separately + Messages.register_warning_note + ]); + + UI.confirm(span, function (yes) { if (!yes) { return; } @@ -124,7 +130,7 @@ define([ done: function ($dialog) { $dialog.find('> div').addClass('half'); }, - }, true); + }); }, 150); };