diff --git a/dashboard/public/translation/en.json b/dashboard/public/translation/en.json index c0f211f17..67b54ffa4 100644 --- a/dashboard/public/translation/en.json +++ b/dashboard/public/translation/en.json @@ -560,8 +560,8 @@ "customRulesPlaceholder": "Custom Spamassassin Rules" }, "testMailDialog": { - "title": "Send test email for {{ domain }}", - "description": "This will send a test email from no-reply@{{ domain }} to the address below.", + "title": "Send test email", + "description": "Sends a test email from no-reply@{{ domain }} to the specified address.", "sendAction": "Send" }, "solrConfig": { diff --git a/dashboard/public/translation/ru.json b/dashboard/public/translation/ru.json index 37beec49d..8ed95d7d9 100644 --- a/dashboard/public/translation/ru.json +++ b/dashboard/public/translation/ru.json @@ -22,7 +22,7 @@ "offline": "Cloudron недоступен. Переподключение…", "rebootDialog": { "title": "Перезагрузить сервер", - "description": "Перезагружает сервер для применения обновлений или исправления непредвиденного поведения. Все приложения и сервисы будут перезапущены автоматически.", + "description": "Все приложения и сервисы будут перезапущены автоматически.

Перезагрузить сервер?", "rebootAction": "Перезагрузить сейчас" }, "logout": "Выйти", @@ -49,7 +49,8 @@ "remove": "Удалить", "edit": "Редактировать", "add": "Добавить", - "next": "Следующий" + "next": "Следующий", + "configure": "Настроить" }, "searchPlaceholder": "Поиск", "multiselect": { @@ -72,8 +73,8 @@ "searchPlaceholder": "Искать альтернативы GitHub, Dropbox, Slack, Trello, …", "installDialog": { "locationPlaceholder": "Оставьте пустым, чтобы использовать основной домен", - "userManagementNone": "Приложение использует свою систему управления пользователями. Данный параметр определяет, отображается ли это приложение на панели управления пользователя.", - "userManagementAllUsers": "Разрешить всем пользователям этого Cloudron", + "userManagementNone": "Приложение использует свою систему управления пользователями.", + "userManagementAllUsers": "Разрешить всем пользователям в этом Cloudron", "configuredForCloudronEmail": "Это приложение настроено для использования с адресом почты Cloudron.", "cloudflarePortWarning": "Для получения доступа к приложению через выбранный домен необходимо отключить Cloudflire прокси", "lastUpdated": "Был обновлён {{ date }}", @@ -86,7 +87,7 @@ "users": "Пользователи", "groups": "Группы", "manualWarning": "Вручную добавьте A (IPv4) и AAAA (IPv6) запись DNS для {{ location }}, указав публичный IP вашего сервера", - "userManagementMailbox": "Все пользователи этого Cloudron с почтовым ящиком имеют доступ.", + "userManagementMailbox": "Пользователи с почтовым ящиком могут войти с помощью адреса email и пароля Cloudron.", "portReadOnly": "Только для чтения", "ephemeralPortWarning": "Использование временных портов может привести к конфликтам." }, @@ -132,7 +133,7 @@ "bindPassword": "Привязать пароль (необязательно)", "bindUsername": "Привязать Уникальное имя (DN)/Имя пользователя (необязательно)", "title": "Подключиться к удалённому каталогу", - "noopInfo": "LDAP аутентификация не настроена.", + "noopInfo": "Внешний каталог не настроен.", "provider": "Провайдер", "server": "URL сервера", "acceptSelfSignedCert": "Принимать самоподписанный сертификат", @@ -163,10 +164,10 @@ "noGroups": "Нет доступных групп.", "usernamePlaceholder": "Необязательно. Если не указано, пользователь может выбрать во время регистрации", "displayName": "Отображаемое имя", - "primaryEmail": "Основной адрес электронной почты", - "recoveryEmail": "Электронная почта для восстановления пароля", + "primaryEmail": "Основной email", + "recoveryEmail": "Email для восстановления пароля", "activeCheckbox": "Пользователь активен", - "fallbackEmailPlaceholder": "Если не указано, будет использоваться основной почтовый ящик", + "fallbackEmailPlaceholder": "Если не указано, будет использоваться основной email", "displayNamePlaceholder": "Необязательно. Если не указано, пользователь может указать во время регистрации" }, "deleteUserDialog": { @@ -199,18 +200,20 @@ "mailmanager": "Менеджер пользователей и электронной почты" }, "invitationDialog": { - "title": "Пригласить {{ username }}", + "title": "Пригласить пользователя", "description": "Ссылка с приглашением отправлена на электронную почту {{ email }}:", "sendAction": "Отправить письмо", - "descriptionEmail": "Отправить приглашение", - "descriptionLink": "Скопировать ссылку с приглашением" + "descriptionEmail": "Отправить email приглашение", + "descriptionLink": "Ссылка-приглашение", + "context": "Пригласить пользователя \"{{ username }}\"" }, "setGhostDialog": { "description": "Установите временный пароль для доступа к приложениям и панели управления от имени данного пользователя. Такой пароль будет действовать 6 часов.", - "title": "Вотйти от имени {{ username }}", - "password": "Временный Пароль", + "title": "Вотйти от имени пользователя", + "password": "Временный пароль", "setPassword": "Установить пароль", - "generatePassword": "Сгенерировать пароль" + "generatePassword": "Сгенерировать пароль", + "context": "Войти от имени пользователя \"{{ username }}\"" }, "editUserDialog": { "title": "Редактировать пользователя", @@ -233,9 +236,9 @@ }, "exposedLdap": { "ipRestriction": { - "description": "Ограничьте доступ к серверу каталогов только для определённого круга IP-адресов и диапазонов. Строки, начинающиеся с #, будут считаться комментарием.", - "placeholder": "IP-адреса или подсети, разделённые строками", - "label": "Ограничить доступ" + "description": "Ограничьте доступ к серверу каталогов только для определённого круга IP-адресов и диапазонов", + "placeholder": "IP-адреса или подсети, разделённые строками. Строки, начинающиеся с # будут определены, как комментарии.", + "label": "Разрешённые IP-адреса и диапазоны" }, "description": "Сервер LDAP позволяет внешним приложениям аутентифицировать пользователей с использованием Каталога пользователей Cloudron.", "secret": { @@ -244,9 +247,9 @@ "url": "URL сервера" }, "cloudflarePortWarning": "Для доступа к LDAP серверу через домен панели управления проксирование Cloudflare должно быть выключено", - "enable": "Включить Сервер LDAP", + "enable": "Включить сервер LDAP", "title": "Сервер LDAP", - "enabled": "Включить Сервер LDAP" + "enabled": "Включить сервер LDAP" }, "title": "Пользователи" }, @@ -278,7 +281,7 @@ "noPasswordsPlaceholder": "Пароли приложений отсутствуют" }, "title": "Профиль", - "primaryEmail": "Главный адрес электронной почты", + "primaryEmail": "Основной email", "passwordRecoveryEmail": "Почта для восстановления пароля", "language": "Язык", "apiTokens": { @@ -291,7 +294,7 @@ "scope": "Область", "readonly": "Только для чтения", "readwrite": "Чтение и запись", - "allowedIpRangesPlaceholder": "IP адреса или подсети, разделённые запятой", + "allowedIpRangesPlaceholder": "IP адреса или подсети, через запятую", "allowedIpRanges": "Разрешённые IP адреса" }, "loginTokens": { @@ -300,7 +303,7 @@ "logoutAll": "Выйти из всех" }, "changeEmail": { - "title": "Изменить главный Email", + "title": "Изменить основной Email", "email": "Новый Email", "password": "Подтверждение паролем" }, @@ -317,7 +320,7 @@ "createApiToken": { "copyNow": "Пожалуйста, скопируйте сгенерированный API Токен. Он не будет показан снова из соображений безопасности.", "title": "Добавить API Токен", - "name": "Имя API Токена", + "name": "Имя API токена", "description": "Новый API Токен:", "access": "API доступ", "allowedIpRanges": "Разрешённые диапазоны IP" @@ -411,6 +414,9 @@ "dashboardVisibility": "Видимость в панели управления", "visibleForAllUsers": "Отображается для всех пользователей Cloudron", "visibleForSelected": "Отображается только для выбранных пользователей и групп" + }, + "dashboardVisibility": { + "description": "Настройте, кто сможет видеть это приложение в панели управления." } }, "logsActionTooltip": "Логи", @@ -446,7 +452,8 @@ "description": "Максимальный процент CPU, который может быть задействован в работе приложения" }, "devices": { - "label": "Устройства" + "label": "Устройства", + "description": "Список подключенных к приложению устройств, через запятую" } }, "storage": { @@ -527,6 +534,9 @@ "enable": "Использовать электронную почту Cloudron для получения писем", "disableDescription": "Данное приложение не использует настройки электронной почты Cloudron. Вы можете настроить её внутри приложения. Выберите данную опцию, если электронная почта домена находится на отдельном сервере.", "enableDescription": "Приложение настроено на отправку писем с использованием указанного адреса. Выберите данную, если электронная почта {{ domain }} находится на данном сервере." + }, + "configuration": { + "title": "Исходящая почта" } }, "security": { @@ -537,7 +547,8 @@ }, "robots": { "title": "Robots.txt", - "disableIndexingAction": "Отключить индексирование" + "disableIndexingAction": "Отключить индексирование", + "description": "По умолчанию, роботы могут индексировать это приложение." }, "hstsPreload": "Активировать предзагрузку HSTS (в том числе для поддоменов)" }, @@ -675,9 +686,14 @@ "days": "Дни", "hours": "Часы", "retentionPolicy": "Политика хранения", - "title": "Настроить расписание и хранение резервных копий", + "title": "Настроить расписание & политику хранения резервных копий", "enable": "Включить автоматическое резервное копирование", - "disable": "Отключить автоматическое резервное копирование" + "disable": "Отключить автоматическое резервное копирование", + "schedule": { + "context": "Настроить расписание & политику хранения локации резервных копий \"{{ name }}\"", + "title": "Расписание резервного копирования", + "description": "Установить дни и время для запуска резервного копирования. Убедитесь, что установленное расписание не пересекается с расписанием обновлений." + } }, "configureBackupStorage": { "encryptionPassword": "Пароль шифрования", @@ -692,8 +708,8 @@ "bucketName": "Имя корзины", "prefix": "Префикс", "region": "Регион", - "s3AccessKeyId": "Access Key ID", - "s3SecretAccessKey": "Secret Access Key", + "s3AccessKeyId": "Access key ID", + "s3SecretAccessKey": "Secret access key", "gcsServiceKey": "Ключ сервисного аккаунта", "format": "Формат хранилища", "memoryLimit": "Лимит памяти", @@ -708,7 +724,7 @@ "encryptionPasswordPlaceholder": "Парольная фраза, используемая для расшифровки резервных копий", "encryptionPasswordRepeat": "Повторите пароль", "server": "IP сервера или Имя хоста", - "remoteDirectory": "Удалённый Каталог", + "remoteDirectory": "Удалённый каталог", "username": "Имя пользователя", "port": "Порт", "user": "Пользователь", @@ -724,14 +740,15 @@ "preserveAttributesLabel": "Сохранить атрибуты файла", "name": "Имя", "encryptionHint": "Подсказка для пароля шифрования", - "usesEncryption": "Резервное копирование использует шифрование", + "usesEncryption": "Резервная копия зашифрована", "useForUpdates": "Сохранять резервные копии автоматических обновлений здесь", "backupContents": { "title": "Содержание резервной копии", "description": "Выберите, что вы хотите сохранить в этой локации.", "everything": "Всё", "excludeSelected": "Исключить выбранное", - "includeOnlySelected": "Включить только выбранное" + "includeOnlySelected": "Включить только выбранное", + "context": "Настроить содержимое резервной копии локации \"{{ name }}\"" }, "automaticUpdates": { "title": "Резервные копии автоматических обновлений", @@ -849,7 +866,8 @@ "rcptTo": "К" }, "changeDomainDialog": { - "description": "Данное действие перенесёт IMAP и SMTP сервер в указанное расположение." + "description": "Данное действие перенесёт IMAP и SMTP сервер в указанное расположение.", + "setAction": "Установить локацию" }, "changeMailSizeDialog": { "description": "Изменение максимального размера письма требует перезагрузки почтового сервера." @@ -943,7 +961,8 @@ "configure": { "title": "Настроить {{ name }}", "resetToDefaults": "Сбросить к стандартным настройкам", - "enableRecoveryMode": "Включить режим восстановления" + "enableRecoveryMode": "Включить режим восстановления", + "description": "Настроить службу \"{{ name }}\"" } }, "settings": { @@ -995,7 +1014,8 @@ "changes": "Изменения", "skipBackupCheckbox": "Пропустить резервное копирование", "updateAction": "Обновить", - "blockingApps": "Эти приложения блокируют обновления, потому что у них есть незавершённые действия:" + "blockingApps": "Эти приложения блокируют обновления, потому что у них есть незавершённые действия:", + "updateAvailable": "Доступен Cloudron {{ newVersion }}" }, "language": { "title": "Язык", @@ -1155,7 +1175,7 @@ }, "allCaughtUp": "Уведомления отсутствуют", "settingsDialog": { - "description": "Для выбранных событий уведомления будут отправляться на главный email." + "description": "Для выбранных событий уведомления будут отправляться на основной email." } }, "logs": { @@ -1166,7 +1186,8 @@ "terminal": { "title": "Терминал", "download": { - "download": "Скачать" + "download": "Скачать", + "title": "Скачать файл" }, "scheduler": "Планировщик/Cron", "downloadAction": "Скачать", diff --git a/dashboard/src/views/EmailDomainView.vue b/dashboard/src/views/EmailDomainView.vue index 20c07dbcc..e8f81538a 100644 --- a/dashboard/src/views/EmailDomainView.vue +++ b/dashboard/src/views/EmailDomainView.vue @@ -45,7 +45,7 @@ async function onSendTestMail() { const address = await inputDialog.value.prompt({ value: result.email, - title: t('emails.testMailDialog.title', { domain: domain.value }), + title: t('emails.testMailDialog.title'), message: t('emails.testMailDialog.description', { domain: domain.value }), confirmLabel: t('emails.testMailDialog.sendAction'), rejectLabel: t('main.dialog.cancel'),