{
"title": "Настройки",
"subtitle": "Управление мастерской, счетами и предпочтениями",
"nav": {
"categories": {
"general": "Общие",
"billing": "Счета и документы",
"communications": "Коммуникации",
"workshop": "Мастерская",
"integrations": "Приложения и API",
"system": "Система"
},
"items": {
"company": {
"title": "Компания",
"description": "Данные компании и брендинг"
},
"subscription": {
"title": "Подписка",
"description": "Тариф и оплата"
},
"account": {
"title": "Аккаунт",
"description": "Имя, эл. почта и пароль"
},
"team": {
"title": "Команда",
"description": "Участники и роли"
},
"invoice": {
"title": "Счета и предложения",
"description": "Настройки счетов, макет и пользовательские поля"
},
"templates": {
"title": "Шаблоны",
"description": "Визуальный стиль, цвета и шрифты"
},
"payment": {
"title": "Оплата",
"description": "Условия оплаты и счета"
},
"tax": {
"title": "Налог",
"description": "Налоговая ставка и значения по умолчанию"
},
"warranty": {
"title": "Гарантия",
"description": "Гарантия по умолчанию в предложениях и счетах"
},
"currency": {
"title": "Валюта",
"description": "Валюта и налоги по умолчанию"
},
"localization": {
"title": "Локализация",
"description": "Язык, валюта, дата и время"
},
"customFields": {
"title": "Пользовательские поля",
"description": "Определение пользовательских полей данных"
},
"email": {
"title": "Эл. почта",
"description": "Провайдер и отправка писем"
},
"sms": {
"title": "SMS",
"description": "Провайдер SMS и сообщения"
},
"telegram": {
"title": "Telegram",
"description": "Бот Telegram и сообщения"
},
"customerPortal": {
"title": "Портал клиента",
"description": "Портал самообслуживания клиентов"
},
"workshop": {
"title": "Мастерская",
"description": "Механики и ставки по умолчанию"
},
"laborPresets": {
"title": "Пакеты работ",
"description": "Предопределённые пакеты работ"
},
"maintenance": {
"title": "Техобслуживание",
"description": "Прогнозируемые интервалы обслуживания"
},
"ai": {
"title": "ИИ",
"description": "Провайдер ИИ и функции"
},
"reportSchedule": {
"title": "Расписание отчётов",
"description": "Автоматическая отправка отчётов"
},
"integrations": {
"title": "Интеграции",
"description": "Календари, видеозвонки и подключённые сервисы"
},
"webhooks": {
"title": "Вебхуки",
"description": "Уведомления о событиях в реальном времени"
},
"appearance": {
"title": "Внешний вид",
"description": "Тема и отображение"
},
"data": {
"title": "Данные",
"description": "Экспорт и импорт резервных копий"
},
"install": {
"title": "Установить приложение",
"description": "Добавьте Torqvoice на это устройство"
},
"license": {
"title": "Лицензия",
"description": "White-label лицензия"
},
"about": {
"title": "О программе",
"description": "Версия и информация"
},
"alerts": {
"title": "Оповещения",
"description": "Уведомления, когда пора заказывать детали"
},
"support": {
"title": "Поддержка",
"description": "Связаться с поддержкой и настроить кнопку"
},
"tireHotel": {
"title": "Шинный отель",
"description": "Сезонное хранение шин"
},
"inspectionReminders": {
"title": "Напоминания о техосмотре",
"description": "Ссылка на запись, длительность и срок"
},
"emailTemplates": {
"title": "Шаблоны писем",
"description": "Что говорят письма о счёте, предложении и отчёте"
},
"workOrderStatuses": {
"title": "Статусы заказ-нарядов",
"description": "Ваши этапы и кого уведомлять"
}
},
"pro": "PRO",
"new": "Новое"
},
"readOnly": {
"banner": "У вас есть доступ только для просмотра настроек. Обратитесь к администратору для внесения изменений."
},
"featureLocked": {
"requiresPro": "Требуется подписка",
"upgradePlan": "Посмотреть тарифы",
"activateLicense": "Активировать лицензию",
"requiresLicense": "Требуется white-label лицензия",
"previewHint": "Это предварительный просмотр. Всё на этой странице открывается по подписке."
},
"company": {
"logoTitle": "Логотип компании",
"logoAlt": "Логотип компании",
"upload": "Загрузить",
"remove": "Удалить",
"logoHint": "JPG, PNG, WebP, SVG — макс. 2МБ",
"uploadingLogo": "Загрузка логотипа...",
"logoUpdated": "Логотип обновлён",
"failedUploadLogo": "Не удалось загрузить логотип",
"detailsTitle": "Данные компании",
"shopName": "Название компании / мастерской",
"shopNamePlaceholder": "Автосервис Ивана",
"orgNumber": "Номер организации",
"orgNumberPlaceholder": "123 456 789",
"orgNumberLabel": "Название номера организации",
"orgNumberLabelPlaceholder": "Номер организации",
"orgNumberLabelHint": "Печатается рядом с номером в счетах и предложениях. Оставьте пустым, чтобы использовать стандартное название на вашем языке, или укажите, как он называется у вас, например ИНН, ОГРН или УНП.",
"phone": "Телефон",
"phonePlaceholder": "+7 (999) 123-45-67",
"email": "Эл. почта",
"emailPlaceholder": "service@example.com",
"address": "Адрес",
"slogan": "Слоган",
"sloganPlaceholder": "Обслуживание и ремонт любых марок",
"sloganHint": "Одна строка под названием на счетах и предложениях.",
"addressPlaceholder": "ул. Главная, 123\nОфис 100\nМосква, 123456",
"saveCompany": "Сохранить данные компании",
"addNewCompany": "Добавить новую компанию",
"companyName": "Название компании",
"companyNamePlaceholder": "напр. Автосервис Ивана",
"cancel": "Отмена",
"createCompany": "Создать компанию",
"settingsSaved": "Настройки компании сохранены",
"failedSave": "Не удалось сохранить настройки",
"companyCreated": "Компания успешно создана",
"serviceType": "Тип Услуги",
"serviceTypeDescription": "Выберите тип услуг, которые предоставляет ваша мастерская. Это изменит названия полей во всём приложении.",
"automotive": "Автомобильный",
"automotiveDescription": "Легковые автомобили, грузовики и другие транспортные средства",
"marineService": "Морской",
"marineServiceDescription": "Лодки, яхты и морские суда"
},
"account": {
"devicesTitle": "Устройства с входом",
"devicesDescription": "Все браузеры и телефоны с открытой сессией в вашем аккаунте.",
"thisDevice": "Это устройство",
"signedInAt": "Вход {date}",
"lastActiveAt": "Последняя активность {date}",
"signOutDevice": "Выйти",
"signOutOthers": "Выйти на других устройствах",
"deviceSignedOut": "Устройство отключено",
"othersSignedOut": "Другие устройства отключены",
"failedSignOutDevice": "Не удалось отключить это устройство",
"profileTitle": "Профиль",
"profileDescription": "Обновите своё отображаемое имя и адрес эл. почты.",
"emailVerified": "Подтверждено",
"emailNotVerified": "Не подтверждено",
"sendVerificationEmail": "Отправить письмо для подтверждения",
"verificationEmailSent": "Письмо для подтверждения отправлено. Проверьте входящие.",
"verificationEmailFailed": "Не удалось отправить письмо для подтверждения",
"resendCooldown": "Повторная отправка через {seconds}с",
"emailChangeSent": "Ссылка для подтверждения отправлена на новый адрес эл. почты. Адрес будет обновлён после перехода по ссылке.",
"name": "Имя",
"namePlaceholder": "Ваше имя",
"emailLabel": "Эл. почта",
"emailPlaceholder": "Ваша эл. почта",
"saveProfile": "Сохранить профиль",
"profileUpdated": "Профиль обновлён",
"failedUpdateProfile": "Не удалось обновить профиль",
"failedUpdateEmail": "Не удалось обновить эл. почту",
"changePasswordTitle": "Изменить пароль",
"changePasswordDescription": "Введите текущий пароль и выберите новый.",
"currentPassword": "Текущий пароль",
"newPassword": "Новый пароль",
"confirmNewPassword": "Подтвердите новый пароль",
"changePassword": "Изменить пароль",
"passwordChanged": "Пароль изменён",
"passwordsNoMatch": "Пароли не совпадают",
"passwordMinLength": "Пароль должен содержать не менее 8 символов",
"failedChangePassword": "Не удалось изменить пароль",
"twoFactorTitle": "Двухфакторная аутентификация",
"twoFactorEnabled": "Двухфакторная аутентификация включена",
"twoFactorDisablePrompt": "Введите пароль для отключения двухфакторной аутентификации.",
"twoFactorEnablePrompt": "Добавьте дополнительный уровень безопасности, включив двухфакторную аутентификацию через приложение-аутентификатор.",
"password": "Пароль",
"enterPassword": "Введите пароль",
"disable2FA": "Отключить 2FA",
"enable2FA": "Включить 2FA",
"twoFactorDisabled": "Двухфакторная аутентификация отключена",
"failedEnable2FA": "Не удалось включить 2FA",
"failedDisable2FA": "Не удалось отключить 2FA",
"enterPasswordError": "Пожалуйста, введите пароль",
"setupDialogTitle": "Включить двухфакторную аутентификацию",
"setupDialogDescription": "Введите пароль, чтобы начать настройку 2FA с приложением-аутентификатором.",
"continue": "Продолжить",
"scanQRTitle": "Сканируйте QR-код",
"scanQRDescription": "Сканируйте этот QR-код приложением-аутентификатором (Google Authenticator, Authy и др.)",
"verifyCodeTitle": "Подтвердите код",
"verifyCodeDescription": "Введите 6-значный код из приложения-аутентификатора для проверки настройки.",
"authCode": "Код аутентификации",
"authCodePlaceholder": "000000",
"back": "Назад",
"verify": "Подтвердить",
"enterCodeError": "Пожалуйста, введите код из приложения-аутентификатора",
"invalidCode": "Неверный код. Попробуйте снова.",
"verificationFailed": "Проверка не удалась",
"backupCodesTitle": "Сохраните резервные коды",
"backupCodesDescription": "Сохраните эти коды в надёжном месте. Вы сможете использовать их для входа, если потеряете доступ к приложению-аутентификатору. Каждый код можно использовать только один раз.",
"copyCodes": "Копировать коды",
"copied": "Скопировано",
"backupCodesCopied": "Резервные коды скопированы в буфер обмена",
"savedBackupCodes": "Я сохранил резервные коды",
"twoFactorEnabledSuccess": "Двухфакторная аутентификация включена",
"dangerZone": "Опасная зона",
"deleteContentTitle": "Удалить данные",
"deleteContentDescription": "Выборочное удаление данных организации: транспортные средства, клиенты, предложения или склад. Ваш аккаунт и настройки останутся нетронутыми.",
"deleteContentButton": "Удалить данные",
"deleteAccountTitle": "Удалить аккаунт",
"deleteAccountDescription": "Безвозвратно удалить ваш аккаунт и все связанные данные, включая транспортные средства, записи обслуживания, заказ-наряды, счета, клиентов, файлы и платежи. Это действие необратимо.",
"deleteAccountButton": "Удалить аккаунт",
"deleteAccountDialogTitle": "Удалить аккаунт",
"deleteAccountDialogDescription": "Это навсегда удалит ваш аккаунт и все связанные с ним данные. Это действие необратимо. Все транспортные средства, записи обслуживания, заказ-наряды, предложения, клиенты, файлы и история платежей будут безвозвратно удалены.",
"deleteAccountConfirmPhrase": "удалить меня",
"deleteAccountConfirmPrompt": "Введите удалить меня для подтверждения",
"permanentlyDelete": "Удалить навсегда",
"deleting": "Удаление...",
"failedDeleteAccount": "Не удалось удалить аккаунт",
"deleteContentDialogTitle": "Удалить данные",
"deleteContentDialogDescription": "Выберите данные, которые вы хотите безвозвратно удалить. Это действие необратимо.",
"contentVehicles": "Транспортные средства",
"contentVehiclesDescription": "Все транспортные средства и их записи обслуживания, заметки, напоминания, журналы топлива и периодические счета",
"contentCustomers": "Клиенты",
"contentCustomersDescription": "Все записи клиентов. Транспортные средства, привязанные к удалённым клиентам, будут отвязаны.",
"contentQuotes": "Предложения",
"contentQuotesDescription": "Все предложения и их позиции",
"contentInventory": "Склад",
"contentInventoryDescription": "Все складские запчасти и их изображения",
"contentInspections": "Осмотры",
"contentInspectionsDescription": "Все осмотры транспортных средств и их результаты",
"contentTechnicians": "Механики",
"contentTechniciansDescription": "Все профили механиков. Связанные записи будут отвязаны.",
"contentInspectionTemplates": "Чек-листы осмотров",
"contentInspectionTemplatesDescription": "Все чек-листы осмотров и их разделы. Сначала удалите осмотры.",
"contentNotifications": "Уведомления",
"contentNotificationsDescription": "Все системные уведомления",
"contentSmsMessages": "SMS-сообщения",
"contentSmsMessagesDescription": "Все отправленные и полученные SMS-сообщения",
"contentCustomFields": "Пользовательские поля",
"contentCustomFieldsDescription": "Все определения пользовательских полей и их значения",
"deleteContentConfirmPhrase": "удалить мои данные",
"deleteContentConfirmPrompt": "Введите удалить мои данные для подтверждения",
"deleteSelected": "Удалить {count} выбранных",
"contentDeleted": "Выбранные данные были безвозвратно удалены",
"failedDeleteContent": "Не удалось удалить данные",
"passkey": {
"title": "Ключи доступа",
"description": "Входите с помощью биометрии или ключа безопасности вместо пароля.",
"noPasskeys": "Ключи доступа ещё не зарегистрированы.",
"unnamed": "Безымянный ключ доступа",
"singleDevice": "Только на этом устройстве",
"multiDevice": "Синхронизирован между устройствами",
"register": "Зарегистрировать ключ доступа",
"registering": "Регистрация...",
"registerSuccess": "Ключ доступа успешно зарегистрирован",
"registerFailed": "Не удалось зарегистрировать ключ доступа",
"delete": "Удалить",
"deleteSuccess": "Ключ доступа удалён",
"deleteFailed": "Не удалось удалить ключ доступа",
"rename": "Переименовать ключ доступа",
"renameFailed": "Не удалось переименовать ключ доступа",
"nameLabel": "Название",
"namePlaceholder": "напр. MacBook Pro, iPhone",
"cancel": "Отмена",
"save": "Сохранить",
"confirmDeleteTitle": "Удалить ключ доступа",
"confirmDelete": "Вы уверены, что хотите удалить этот ключ доступа? Вы больше не сможете входить с его помощью."
},
"cancel": "Отмена",
"deleteWorkshopTitle": "Удалить мастерскую",
"deleteWorkshopDescription": "Безвозвратно удалить эту мастерскую и все её данные: клиентов, автомобили, заказ-наряды, счета, склад и загруженные файлы. Участники команды потеряют доступ. Это нельзя отменить.",
"deleteWorkshopButton": "Удалить мастерскую",
"deleteWorkshopDialogTitle": "Удалить эту мастерскую?",
"deleteWorkshopDialogDescription": "Это безвозвратно удалит мастерскую и всё её содержимое. Это действие нельзя отменить.",
"deleteWorkshopConfirmPrompt": "Введите {name} для подтверждения.",
"deleteWorkshopSuccess": "Мастерская удалена",
"deleteWorkshopFailed": "Не удалось удалить мастерскую",
"deleteAccountMoved": "Хотите удалить свою учётную запись?",
"deleteAccountMovedLink": "Это можно сделать в настройках данных.",
"signatureTitle": "Подпись",
"signatureDescription": "Печатается на счетах, сметах и сертификатах, которые вы выставляете для этой мастерской.",
"signatureDraw": "Нарисовать",
"signatureUpload": "Загрузить",
"signatureDrawHint": "Распишитесь здесь",
"signatureUploadHint": "Выберите фото или скан вашей подписи",
"signatureDrawTip": "Используйте палец, стилус или мышь.",
"signatureUploadTip": "Распишитесь на белой бумаге и сфотографируйте. Бумага удаляется, остаются только чернила.",
"signatureChooseFile": "Выбрать изображение",
"signatureClear": "Очистить",
"signatureSave": "Сохранить подпись",
"signatureCancel": "Отмена",
"signatureReplace": "Заменить",
"signatureRemove": "Удалить",
"signatureSaved": "Подпись сохранена",
"signatureRemoved": "Подпись удалена. Уже выставленные документы сохраняют свою.",
"signatureSaveFailed": "Не удалось сохранить подпись",
"signatureEmpty": "Сначала нарисуйте или загрузите подпись",
"signatureNotImage": "Этот файл не является изображением",
"signatureNoInk": "На изображении не найдена подпись. Попробуйте ручку потемнее на белой бумаге.",
"signatureCanvasLabel": "Поле для подписи",
"signatureDesignerHint": "Она появляется там, где в дизайне включён раздел «Подпись». Включите его в дизайнере документов."
},
"team": {
"title": "Команда",
"noOrgDescription": "Создайте команду для совместной работы с другими пользователями.",
"orgDescription": "Управляйте участниками организации и их ролями.",
"createOrg": "Создать организацию",
"createOrgDescription": "Создайте организацию, чтобы приглашать участников команды. Вы станете владельцем.",
"orgName": "Название организации",
"orgNamePlaceholder": "Моя мастерская",
"create": "Создать",
"orgCreated": "Организация создана",
"failedCreateOrg": "Не удалось создать организацию",
"memberCount": "{count} участник",
"memberCountPlural": "{count} участников",
"admin": "Администратор",
"member": "Участник",
"inviteByEmail": "Пригласить по эл. почте",
"inviteEmailPlaceholder": "user@example.com",
"invite": "Пригласить",
"invited": "Участник успешно приглашён.",
"userNotFoundTitle": "Пользователь не найден",
"userNotFoundDescription": "Аккаунт для \"{email}\" не найден. Отправить приглашение для регистрации и присоединения к команде?",
"sendInvitation": "Отправить приглашение",
"invitationSentTitle": "Приглашение отправлено",
"invitationSentDescription": "Приглашение отправлено на {email}.",
"failedInvite": "Не удалось пригласить участника",
"failedSendInvitation": "Не удалось отправить приглашение",
"pendingInvitations": "Ожидающие приглашения",
"invitedAs": "Приглашён как {role}",
"resendInvitation": "Отправить приглашение повторно",
"invitationResent": "Приглашение повторно отправлено на {email}",
"failedResendInvitation": "Не удалось повторно отправить приглашение",
"expires": "Истекает {date}",
"pending": "Ожидает",
"cancelInvitation": "Отменить приглашение",
"cancelInvitationDescription": "Отменить приглашение для {email}? Ссылка перестанет действовать.",
"invitationCancelled": "Приглашение отменено",
"failedCancelInvitation": "Не удалось отменить приглашение",
"customRoles": "Пользовательские роли",
"newRole": "Новая роль",
"roleName": "Название роли",
"roleNamePlaceholder": "напр. Механик",
"fullAdminAccess": "Полный доступ администратора (обходит все проверки разрешений)",
"permissions": "Разрешения",
"createRole": "Создать роль",
"updateRole": "Обновить роль",
"roleCreated": "Роль создана",
"roleUpdated": "Роль обновлена",
"failedSaveRole": "Не удалось сохранить роль",
"deleteRole": "Удалить роль",
"deleteRoleDescription": "Удалить роль \"{name}\"? Участники с этой ролью потеряют свои пользовательские разрешения.",
"roleDeleted": "Роль удалена",
"failedDeleteRole": "Не удалось удалить роль",
"fullAccess": "Полный доступ",
"permissionCount": "{count} разрешение",
"permissionCountPlural": "{count} разрешений",
"noCustomRoles": "Пользовательских ролей пока нет. Создайте одну для настройки детальных разрешений участников команды.",
"presetAll": "Все",
"presetViewOnly": "Только просмотр",
"presetWriteAll": "Чтение и запись",
"presetNone": "Нет",
"builtInRoles": "Встроенные роли",
"ownerLabel": "Владелец",
"ownerDescription": "Полный доступ. Может управлять участниками, изменять роли и удалять организацию.",
"adminLabel": "Администратор",
"adminDescription": "Может приглашать/удалять участников и управлять общими данными.",
"memberLabel": "Участник",
"memberDescription": "Права определяются назначенной ролью. Без роли участник ничего не может делать.",
"roleAssigned": "Роль обновлена",
"failedAssignRole": "Не удалось обновить роль",
"removeMemberTitle": "Удалить участника",
"removeMemberDescription": "Удалить {name} из команды? Доступ к общим данным будет потерян.",
"removeButton": "Удалить",
"memberRemoved": "Участник удалён",
"failedRemoveMember": "Не удалось удалить участника",
"memberRoleUpdated": "Роль участника обновлена",
"failedUpdateRole": "Не удалось обновить роль",
"removeMember": "Удалить участника",
"cancelInvite": "Отменить приглашение",
"editRole": "Изменить роль",
"technician": "Механик",
"technicianHint": "Может получать заказы и пользоваться приложением механика",
"technicianFailed": "Не удалось изменить",
"setupApp": "Настроить приложение",
"setupAppTitle": "Настройка приложения механика",
"setupAppInstruction": "Попросите {name} сделать это на телефоне:",
"setupAppOrType": "Или продиктуйте этот код:",
"setupAppExpiry": "Действует один раз, истекает через {time}.",
"setupAppExpired": "Код истёк. Закройте и начните заново.",
"setupAppDone": "Готово",
"setupAppFailed": "Не удалось создать код настройки",
"setupPageTitle": "Настройка приложения механика",
"setupPageBody": "Откройте Torqvoice Tech на этом телефоне, нажмите «Отсканировать код настройки» и снова наведите на тот же код.",
"setupPageCode": "Или введите этот код в приложении",
"setupPageOpenApp": "Открыть Torqvoice Tech",
"setupPageExpiry": "Код действует один раз и истекает через десять минут после создания мастерской.",
"setupAppStep1": "Установить Torqvoice Tech",
"setupAppStep2": "Открыть его и нажать «Отсканировать код настройки»",
"setupAppStep3": "Навести телефон на этот код",
"setupAppNotCamera": "Обычная камера телефона не подойдёт. Сканировать нужно в приложении Torqvoice Tech.",
"addTechnician": "Добавить механика",
"addTechnicianHint": "Для механика, который стоит у стойки. Без почты и без ожидания.",
"technicianName": "Имя",
"technicianNamePlaceholder": "Полное имя",
"technicianPhone": "Номер телефона",
"technicianPhonePlaceholder": "Телефон, который у него с собой",
"addTechnicianSubmit": "Создать",
"addTechnicianNote": "Дальше он входит по этому номеру. Пароль запоминать не нужно, и на первом экране приложения ничего вводить не придётся.",
"addTechnicianDone": "{name} создан. Покажите ему код.",
"addTechnicianFailed": "Не удалось создать механика",
"setupAppCopyLink": "Скопировать ссылку для отправки",
"setupAppCopied": "Скопировано",
"revokeTechnicianTitle": "Выйти из приложения за него?",
"revokeTechnicianBody": "{name} сразу теряет доступ на телефоне, и все коды перестают работать. Выполненная работа и часы остаются как есть.",
"revokeTechnicianConfirm": "Выйти",
"addPerson": "Добавить",
"addPersonTitle": "Добавить человека в мастерскую",
"addPersonWho": "Этих двоих настраивают по-разному, поэтому начните с того, кто это.",
"choiceTechnician": "Механик",
"choiceTechnicianHint": "Работает с машинами и пользуется Torqvoice на телефоне. Проще всего, пока он рядом с вами, и занимает около минуты.",
"choiceMember": "Кто-то в офисе",
"choiceMemberHint": "Принимает машины, заказывает запчасти и выставляет счета, на компьютере. Вы отправляете письмо, а он сам выбирает пароль.",
"stepLabelWho": "Кто",
"stepLabelDetails": "Данные",
"stepLabelPhone": "Его телефон",
"techDetailsTitle": "Имя и номер телефона",
"techDetailsBlurb": "По этому номеру он и будет входить, поэтому укажите телефон, который он действительно носит. Пароля, который можно забыть, здесь нет.",
"techHandoffTitle": "Теперь перенесите на его телефон",
"techHandoffBlurb": "Этот код связывает его телефон с вашей мастерской. Он действует один раз и только десять минут, поэтому сделайте это, пока он здесь.",
"memberDetailsTitle": "Его адрес почты",
"memberDetailsBlurb": "Ему придёт письмо со ссылкой. Открыв её, он выберет свой пароль и появится в списке выше.",
"roleHint": "Администраторы могут менять настройки и добавлять людей. Остальные делают повседневную работу.",
"stepBack": "Назад",
"stepHandoffDone": "Он отсканировал",
"stepDoneTitle": "{name} готов",
"stepDoneBody": "Он может открыть приложение и увидеть свои заказы. В следующий раз он войдёт просто по номеру телефона, без кода.",
"stepInvitedTitle": "Приглашение отправлено на {email}",
"stepInvitedBody": "Он появится в списке, как только откроет письмо и примет приглашение. Ссылка действует семь дней.",
"stepDoneAnother": "Добавить ещё",
"clashTitle": "У {name} уже есть этот номер",
"clashBlurb": "Два человека не могут делить один номер, ведь по нему они и входят. Какой это случай?",
"clashSamePerson": "Это {name}",
"clashSamePersonHint": "Тот же человек вернулся или имя написано иначе. Его заказы и часы остаются при нём, а введённое имя заменит старое.",
"clashTakeover": "Нет, это {name}",
"clashTakeoverHint": "Другой человек, у которого теперь этот номер. {name} сохраняет всё сделанное, но больше не сможет войти, а новый номер вы дадите позже.",
"clashDifferentNumber": "Ни то ни другое, изменю номер",
"workshopCountry": "В какой стране ваша мастерская?",
"workshopCountryPlaceholder": "Выберите страну",
"workshopCountryHint": "Спрашиваем один раз. Дальше номера можно вводить коротко. Позже это можно изменить в настройках локализации.",
"phonePreview": "Сохранится как",
"stepScannedTitle": "{name} вошёл",
"countrySearch": "Поиск страны",
"countryNoMatch": "Ничего не найдено",
"choiceStandalone": "Только имя на доске",
"choiceStandaloneHint": "Ученик, подрядчик, любой, кого вы ставите в план, но кто не входит в систему. Без телефона, без почты, без учётной записи. Дать её можно позже.",
"standaloneDetailsTitle": "Имя и цвет",
"standaloneDetailsBlurb": "Это всё, что нужно. Человек появляется на доске и в заказах, и входить ему некуда.",
"boardColour": "Цвет на доске",
"stepStandaloneTitle": "{name} на доске",
"stepStandaloneBody": "Его сразу можно ставить в план и назначать на заказы. Если однажды понадобится приложение, добавьте ему номер отсюда.",
"boardOnly": "Только на доске",
"boardOnlyHint": "Их ставят в план и назначают на заказы, но они не входят в систему. Дайте им номер, когда понадобится приложение.",
"boardOnlyNoAccount": "Нет учётной записи",
"giveApp": "Дать приложение",
"giveAppTitle": "Дать {name} приложение",
"giveAppBlurb": "Не хватает только номера телефона. По нему он и будет входить.",
"giveAppKeepsHistory": "Всё, что уже записано на этого человека, остаётся на месте.",
"giveAppSubmit": "Создать учётную запись",
"role": "Роль",
"inviteMemberHint": "Ему придёт письмо, и он выберет пароль сам.",
"removeBoardOnlyTitle": "Убрать {name} с доски?",
"removeBoardOnlyBody": "{name} больше не появляется на рабочей доске, и его нельзя назначать на заказ-наряды. Уже записанная работа и отмеченные часы остаются ровно такими же.",
"removeBoardOnlyDone": "{name} убран с доски",
"noRole": "Без роли",
"worksOnJobs": "Работает с машинами",
"createDefaultRoles": "Создать стандартные роли",
"defaultRolesCreated": "Стандартные роли созданы",
"noRolesYet": "В этой мастерской пока нет ролей, поэтому дать нечего, кроме роли администратора. Создайте стандартные и настройте права позже.",
"noRoleDescription": "Никаких прав. Такой человек может войти, но каждый экран будет ему отказывать, пока вы не назначите роль ниже.",
"cannotUseApp": "Его роль не позволяет работать с заказ-нарядами. Сначала назначьте роль механика или роль с теми же правами.",
"revokeTechnicianDone": "{name} вышел из приложения",
"noAccessTitle": "Доступа пока нет",
"noAccessBody": "Ваша учётная запись относится к {workshop}, но ей ещё не назначена роль, поэтому открыть здесь нечего. Попросите владельца или администратора мастерской назначить вам роль.",
"setupPageInstall": "Загрузить в Google Play"
},
"invoice": {
"title": "Счета и предложения",
"description": "Настройте параметры счетов, макет и пользовательские поля.",
"numberingTitle": "Нумерация и сроки",
"numberingDescription": "Как нумеруются счета и предложения, когда наступает срок оплаты счетов и как долго действуют предложения.",
"documentsTitle": "Документы",
"documentsDescription": "Что сопровождает каждый счёт и предложение.",
"tabs": {
"general": "Общие",
"layout": "Макет",
"customFields": "Пользовательские поля"
},
"invoiceNumberFormat": "Формат номера счёта",
"invoiceNumberFormatHint": "Используйте {year} для текущего года. Предпросмотр: {preview}",
"quoteNumberFormat": "Формат номера предложения",
"quoteNumberFormatHint": "Используйте {year} для текущего года. Предпросмотр: {preview}",
"quoteValidDays": "Срок действия предложения (дни)",
"quoteValidDaysHint": "Новые предложения получают дату действия через указанное число дней. 0 отключает.",
"sectionInvoices": "Счета",
"sectionQuotes": "Предложения",
"nextInvoiceNumber": "Следующий номер счёта",
"nextInvoiceNumberPlaceholder": "напр. 94",
"nextInvoiceNumberHint": "Следующий счёт будет использовать этот номер (напр. {example})",
"dueDays": "Срок оплаты (дни)",
"dueDaysHint": "Количество дней до наступления срока оплаты счёта",
"visibilityTitle": "Видимость на счёте",
"companyLogo": "Логотип компании",
"companyLogoHint": "Отображать логотип компании в заголовке счёта",
"companyName": "Название компании",
"companyNameHint": "Отображать название компании в заголовке счёта",
"bankAccount": "Банковский счёт",
"bankAccountHint": "Показывать банковский счёт / IBAN на счёте",
"organizationNumber": "Номер организации",
"organizationNumberHint": "Показывать номер организации в заголовке счёта",
"customFooter": "Пользовательский подвал счёта",
"footerPlaceholder": "Спасибо за выбор нашего сервиса!",
"footerHint": "Этот текст отображается внизу каждого счёта",
"saveInvoice": "Сохранить настройки счёта",
"saved": "Настройки счёта сохранены",
"layoutDescription": "Настройте порядок и видимость разделов в счетах и предложениях.",
"layoutSaved": "Макет успешно сохранён",
"preview": "Предпросмотр",
"layoutDocInvoice": "Счёт",
"layoutDocQuote": "Предложение",
"saveLayout": "Сохранить макет",
"resetLayout": "Сбросить по умолчанию",
"layoutColorsHint": "Цвета, шрифты и стиль бланка находятся в Шаблонах.",
"goToTemplates": "Открыть шаблоны",
"lockTitle": "Блокировка завершённых документов",
"lockDescription": "Запрещает изменять счёт или предложение после того, как он закрыт.",
"lockWhatItDoes": "Блокируются: запчасти, работы, количество, цены, скидка, налог, номер документа и дата. Удаление документа также запрещено.",
"lockWhatItAllows": "Продолжает работать: внесение оплат, онлайн-оплата картой, смена статуса, отправка и повторная отправка, вложения и внутренние заметки. Заблокированный счёт всегда можно оплатить.",
"lockUnlockNote": "Владельцы и администраторы могут разблокировать отдельный документ на его странице, если что-то действительно нужно исправить. Каждая разблокировка записывается в журнал аудита.",
"lockDetailsShow": "Что делает блокировка",
"lockDetailsHide": "Скрыть",
"lockInvoicesLabel": "Блокировать счета",
"lockTriggerSent": "После отправки счёта",
"lockTriggerPaid": "После полной оплаты счёта",
"lockTriggerSentHint": "Блокирует, как только счёт отправлен по почте или создана ссылка для доступа. Счета, отправленные до включения, не затрагиваются.",
"lockTriggerPaidHint": "Блокирует после погашения всей суммы или отметки об оплате вручную. Частично оплаченный счёт остаётся редактируемым.",
"lockQuotesLabel": "Блокировать предложения",
"quoteLockTriggerSent": "После отправки предложения",
"quoteLockTriggerAccepted": "После принятия предложения",
"quoteLockTriggerSentHint": "Блокирует, как только предложение уходит клиенту. Выбирайте, только если вы никогда не пересматриваете предложение в ходе переговоров.",
"quoteLockTriggerAcceptedHint": "Блокирует после принятия предложения клиентом или его преобразования в заказ. Отправленные предложения остаются редактируемыми.",
"freezeTitle": "Счета до появления блокировки",
"freezeBody": "{count, plural, one {# счёт дошёл} few {# счёта дошли} many {# счетов дошли} other {# счёта дошли}} до клиента раньше, чем эта версия могла зафиксировать содержимое счёта. Они по-прежнему печатаются с текущими реквизитами, логотипом и дизайном, поэтому сегодняшнее изменение затронет и их. Фиксация сохранит каждый таким, каким он печатается сейчас.",
"freezeNone": "Каждый счёт, дошедший до клиента, зафиксирован таким, каким был отправлен.",
"freezeButton": "Зафиксировать с текущим дизайном",
"freezeConfirmTitle": "Зафиксировать {count, plural, one {# счёт} few {# счёта} many {# счетов} other {# счёта}}?",
"freezeConfirmBody": "Каждый сохранит дизайн, логотип, реквизиты мастерской, клиента, автомобиль и замечания, с которыми печатается сейчас. Отменить нельзя; счета останутся редактируемыми или заблокированными для правки ровно как сегодня.",
"freezeProgress": "Зафиксировано {done} из {total}",
"freezeDone": "Зафиксировано {count, plural, one {# счёт} few {# счёта} many {# счетов} other {# счёта}}",
"freezeFailed": "Не удалось зафиксировать счета",
"reapplyTitle": "Дизайн уже отправленных счетов",
"reapplyDescription": "Примените дизайн, который вы используете сегодня, к счетам, привязанным к более старому.",
"reapplyBody": "{count, plural, one {# счёт привязан} few {# счёта привязаны} many {# счетов привязаны} other {# счёта привязаны}} к дизайну, с которым был отправлен, поэтому новый дизайн попадает только на счета, отправленные с этого момента. Повторное применение положит сегодняшний дизайн на все. Меняется только внешний вид: данные сервиса, клиент, условия оплаты и суммы каждого счёта остаются как есть.",
"reapplyWarning": "Это нельзя отменить. Дизайн, который счёт использовал раньше, не сохраняется.",
"reapplyButton": "Применить текущий дизайн заново",
"reapplyConfirmTitle": "Применить дизайн заново к {count, plural, one {# счёту} few {# счетам} many {# счетам} other {# счетам}}?",
"reapplyConfirmBody": "Каждый счёт, уже ушедший клиенту, перейдёт на дизайн, который используется сейчас. Меняется только внешний вид: данные, условия и суммы каждого счёта остаются как есть. Это нельзя отменить, и прежний дизайн восстановить не получится.",
"reapplyProgress": "Обновлено {done} из {total}",
"reapplyDone": "{count, plural, one {# счёт теперь использует} few {# счёта теперь используют} many {# счетов теперь используют} other {# счёта теперь используют}} текущий дизайн",
"reapplyFailed": "Не удалось применить дизайн заново",
"sectionSending": "Отправка",
"attachPdfLabel": "Прикреплять PDF к письмам",
"attachPdfHint": "Значение по умолчанию для каждого счёта, коммерческого предложения и осмотра, отправляемых по почте. Включено: клиент получает PDF во вложении. Выключено: он получает ссылку на документ, а счётчик просмотров показывает, когда её открыли, чтобы вы могли напомнить тем, кто ещё не посмотрел. Для отдельной отправки это можно изменить в окне общего доступа.",
"shopFee": {
"title": "Сбор мастерской",
"description": "Сбор за расходные материалы мастерской, например ветошь, очистители, смазки и утилизацию, добавляемый отдельной строкой в каждый новый заказ-наряд и смету.",
"enabled": "Взимать сбор мастерской",
"enabledHint": "Новые заказ-наряды и сметы получают сбор отдельной строкой. Его можно удалить из отдельной работы. Существующие работы не меняются.",
"defaultLabel": "Расходные материалы",
"label": "Название в счёте",
"appliesTo": "Применяется к",
"appliesToBoth": "Заказ-нарядам и сметам",
"appliesToWorkOrders": "Только заказ-нарядам",
"appliesToQuotes": "Только сметам",
"mode": "Способ расчёта",
"modeFlat": "Фиксированная сумма",
"modePercent": "Процент",
"amount": "Сумма",
"amountHint": "Одна и та же сумма в каждой работе. Её можно изменить в отдельной работе.",
"percent": "Процент (%)",
"base": "Процент от",
"baseLabor": "Работы",
"baseLaborParts": "Работы и запчастей",
"cap": "Максимальный сбор",
"capHint": "Сбор никогда не превышает эту сумму. Оставьте пустым, чтобы не ограничивать.",
"capPlaceholder": "Без ограничения"
}
},
"layoutEditor": {
"helpText": "Перетаскивайте для изменения порядка. Используйте переключатель ширины для размещения разделов бок о бок. Последовательные разделы половинной ширины (Л/П) будут отображаться в два столбца.",
"addField": "Добавить поле",
"custom": "пользоват.",
"full": "Полная",
"boxed": "Рамка",
"plain": "Без рамки",
"boxedHint": "Печатается в рамке",
"plainHint": "Печатается без рамки",
"L": "Л",
"R": "П",
"left": "левая",
"right": "правая",
"halfWidthHint": "Половина ширины ({column}) — нажмите для полной ширины",
"fullWidthHint": "Полная ширина — нажмите для половины ширины (левая)",
"sections": {
"header": "Заголовок",
"slogan": "Слоган",
"customer": "Клиент",
"vehicle": "Транспортное средство",
"service": "Обслуживание",
"document_title": "Заголовок документа",
"items_table": "Таблица позиций",
"parts_table": "Таблица запчастей",
"labor_table": "Таблица работ",
"totals": "Итоги",
"notes": "Заметки",
"attached_documents": "Прикреплённые документы",
"diagnostic_notes": "Диагностические заметки",
"findings": "Наблюдения",
"warranty": "Гарантия",
"bank_account": "Банковский счёт",
"footer": "Подвал",
"general": "Общие",
"telegram_qr": "QR Telegram",
"result": "Результат",
"test_details": "Данные проверки",
"defects": "Дефекты",
"results_table": "Все результаты",
"inspection_photos": "Фото",
"signature": "Подпись",
"job_details": "Детали заказа",
"job_qr": "Открыть на телефоне",
"concerns": "Обращения клиента",
"job_description": "Запрошенные работы",
"work_checklist": "Чек-лист работ",
"condition_map": "Состояние автомобиля"
},
"fields": {
"customer_name": "Имя клиента",
"customer_company": "Компания клиента",
"customer_address": "Адрес клиента",
"customer_email": "Эл. почта клиента",
"customer_phone": "Телефон клиента",
"customer_tax_id": "ИНН клиента",
"vehicle_name": "Транспортное средство",
"vin": "VIN",
"license_plate": "Госномер",
"mileage": "Пробег",
"hsn_tsn": "HSN/TSN",
"service_title": "Название обслуживания",
"service_type": "Тип обслуживания",
"tech_name": "Механик",
"logo": "Логотип",
"company_name": "Название компании",
"company_slogan": "Слоган",
"company_address": "Адрес",
"company_phone": "Телефон",
"company_email": "Эл. почта",
"company_org_number": "Номер организации",
"bank_account": "Банковский счёт",
"footer_note": "Примечание в подвале",
"org_number": "Номер организации",
"payment_terms": "Условия оплаты",
"due_date": "Срок оплаты",
"title": "Заголовок",
"invoice_number": "№ счёта",
"customer_number": "№ клиента",
"date": "Дата",
"portal_link": "Ссылка на портал",
"test_date": "Дата проверки",
"test_location": "Место проверки",
"inspector": "Инспектор",
"certificate_number": "Номер сертификата",
"vehicle_category": "Категория ТС",
"odometer": "Пробег",
"next_test_due": "Следующая проверка",
"defect_notes": "Примечания",
"defect_photos": "Фото",
"passed_checks": "Пройденные пункты",
"not_applicable_checks": "Неприменимые пункты",
"check_notes": "Столбец примечаний",
"result_detail": "Пояснение",
"result_summary": "Количество по оценкам",
"combined_table": "Одна таблица для всех разделов",
"inspector_line": "Строка подписи",
"inspector_name": "Имя подписавшего",
"date_line": "Строка даты",
"signature_image": "Подпись",
"status": "Статус",
"technician": "Механик",
"scheduled": "Запланировано",
"promised": "Обещано",
"work_bay": "Пост",
"customer_line": "Строка подписи клиента",
"legend": "Легенда",
"previous_marks": "Прежние отметки",
"blank_sheet": "Пустой лист для заполнения от руки"
},
"presetsTitle": "Начать с расположения",
"presetsHint": "Заменяет расположение ниже. Ничего не сохранится, пока вы не сохраните.",
"presets": {
"classic": {
"name": "Классическое",
"description": "Запчасти и работы в отдельных таблицах, данные слева друг под другом"
},
"letterhead": {
"name": "Фирменный бланк",
"description": "Контакты внизу, заголовок под адресами"
},
"compact": {
"name": "Компактное",
"description": "Без рамок, только необходимое"
},
"minimal": {
"name": "Минимализм",
"description": "Чистая типографика на белом: без рамок и полос, только линии и воздух"
},
"itemized": {
"name": "По позициям",
"description": "Один нумерованный список позиций со столбцом единицы"
},
"detailed": {
"name": "Подробное",
"description": "Заголовок сверху, автомобиль отдельно, обе таблицы и все блоки"
},
"certificate-regulator": {
"name": "Нормативный",
"description": "Строгий, без полосы, с засечками: каждый пункт с оценкой и примечанием, фото, строка для подписи"
},
"certificate-standard": {
"name": "Стандартный",
"description": "Вердикт под заголовком, автомобиль и проверка рядом, каждый дефект с примечанием и фото, затем непройденные пункты по разделам"
},
"certificate-customer": {
"name": "Отчёт для клиента",
"description": "Лист с полосой, крупный вердикт по центру, дефекты с фото, общие фотографии и короткая таблица непройденных пунктов"
},
"certificate-compact": {
"name": "Компактный",
"description": "Одна страница для автопарка: мелкий шрифт, вердикт рядом с заголовком, все результаты без примечаний, фото, строка для подписи"
},
"work-order-standard": {
"name": "Стандартный",
"description": "Более полная копия для стойки в вашем цвете: клиент и автомобиль целиком, услуга, замечания и гарантия рядом с работами и ценами"
},
"work-order-job-sheet": {
"name": "Рабочий лист",
"description": "Для доски: крупный госномер, факты о заказе, работы как поля для отметки, код для открытия на телефоне и никаких цен"
},
"work-order-compact": {
"name": "Компактный",
"description": "Чёрным по белому, одна страница: имя и телефон клиента, автомобиль, заказ, работы с ценами и обе подписи. То, что печатает каждый заказ-наряд, пока вы не сохраните дизайн"
}
},
"style": {
"documentTitle": "Весь лист",
"documentHint": "размер, отступы, акцент, полосы",
"textColor": "Текст",
"labelColor": "Заголовок",
"backgroundColor": "Заливка",
"borderColor": "Рамка",
"fontSize": "Размер",
"rowPadding": "Высота строки",
"margin": "Поля",
"accentColor": "Акцент",
"stripeColor": "Полоса",
"stripes": "Полосы",
"fontFamily": "Шрифт",
"fontInherit": "Наследовать"
}
},
"templates": {
"title": "Шаблоны",
"invoiceDescription": "Настройте внешний вид PDF-счетов и предложений.",
"inspectionsDescription": "Чек-листы, по которым ваши механики проводят осмотр.",
"smsDescription": "Настройте SMS-сообщения, отправляемые клиентам.",
"tabs": {
"invoice": "Счёт",
"quotation": "Предложение",
"workOrders": "Заказ-наряд",
"certificates": "Сертификат осмотра",
"layout": "Макет",
"conditionMap": "Карта состояния",
"inspections": "Чек-листы"
},
"sections": {
"documents": "Документы",
"checklists": "Чек-листы",
"messages": "Сообщения"
},
"presets": "Предустановки шаблонов",
"primaryColor": "Основной цвет",
"colors": "Цвета",
"textColor": "Текст",
"textColorHint": "Цвет заголовков и основного текста",
"companyTextColor": "Название компании",
"companyTextColorHint": "Цвет названия на фирменном бланке",
"frameBorderColor": "Линия рамки",
"frameBorderColorHint": "Линия там, где рамка встречается с бумагой",
"frameShadow": "Тень рамки",
"frameShadowOn": "С тенью",
"frameShadowOff": "Без тени",
"backgroundColor": "Фон",
"backgroundColorClear": "Сбросить",
"backgroundColorHint": "Оставьте пустым для белой бумаги. Светлый оттенок печатается как тонированный лист.",
"fontAndLayout": "Шрифт и макет",
"fontFamily": "Семейство шрифтов",
"helveticaDefault": "Helvetica (по умолчанию)",
"timesRoman": "Times Roman",
"courier": "Courier",
"headerStyle": "Стиль заголовка",
"logoSize": "Размер логотипа",
"standard": "Стандартный",
"compact": "Компактный",
"modern": "Современный",
"framed": "В рамке",
"letterheadMark": "Фирменный бланк",
"letterheadLogo": "Логотип",
"letterheadCompanyName": "Название компании",
"preview": "Предпросмотр {name}",
"billTo": "Плательщик",
"preparedFor": "Подготовлено для",
"vehicle": "Транспортное средство",
"part": "Запчасть",
"qty": "Кол-во",
"price": "Цена",
"total": "Итого",
"labor": "Работа",
"hours": "Часы",
"rate": "Ставка",
"subtotal": "Подитог",
"tax": "Налог ({rate}%)",
"previewService": "Обслуживание",
"previewNotes": "Заметки",
"previewDiagnosticNotes": "Диагностические заметки",
"previewDue": "Срок: {date}",
"previewAdditionalInfo": "Дополнительная информация",
"previewThankYou": "Спасибо за выбор нашего сервиса",
"saveInvoiceTemplate": "Сохранить шаблон счёта",
"saveQuotationTemplate": "Сохранить шаблон предложения",
"invoiceTemplateSaved": "Настройки шаблона счёта сохранены",
"quotationTemplateSaved": "Настройки шаблона предложения сохранены",
"failedSave": "Не удалось сохранить настройки",
"smsTemplates": "Шаблоны SMS-сообщений",
"smsTemplatesDescription": "Настройте текстовые сообщения, отправляемые клиентам. Используйте переменные, такие как '{companyName}', для вставки динамических значений.",
"reset": "Сбросить",
"invoiceReady": "Счёт готов",
"invoiceReadyDescription": "Отправляется при предоставлении счёта клиенту.",
"quoteReady": "Предложение готово",
"quoteReadyDescription": "Отправляется при предоставлении предложения клиенту.",
"inspectionReady": "Осмотр готов",
"inspectionReadyDescription": "Отправляется при предоставлении отчёта осмотра клиенту.",
"statusInProgress": "Статус: В работе",
"statusInProgressDescription": "Отправляется при изменении статуса заказ-наряда на «В работе».",
"statusWaitingParts": "Статус: Ожидание запчастей",
"statusWaitingPartsDescription": "Отправляется при изменении статуса заказ-наряда на «Ожидание запчастей».",
"statusReady": "Статус: Готово к выдаче",
"statusReadyDescription": "Отправляется при изменении статуса заказ-наряда на «Готово».",
"statusCompleted": "Статус: Завершено",
"statusCompletedDescription": "Отправляется при изменении статуса заказ-наряда на «Завершено».",
"paymentReceived": "Оплата получена",
"paymentReceivedDescription": "Отправляется при записи оплаты по счёту.",
"saveSmsTemplates": "Сохранить шаблоны SMS",
"smsTemplateSaved": "Настройки шаблонов SMS сохранены",
"layoutTitle": "Макет счёта",
"layoutDescription": "Настройте порядок и видимость разделов в счетах и предложениях.",
"layoutSaved": "Макет успешно сохранён",
"layoutDocInvoice": "Счёт",
"layoutDocQuote": "Предложение",
"smsDefaults": {
"invoiceReady": "Ваш счёт готов. Просмотрите его здесь: {share_link}",
"quoteReady": "Ваше предложение готово для рассмотрения. Просмотрите его здесь: {share_link}",
"inspectionReady": "Отчёт осмотра вашего транспортного средства готов. Просмотрите его здесь: {share_link}",
"statusInProgress": "Начаты работы над вашим транспортным средством. Мы будем держать вас в курсе.",
"statusWaitingParts": "Ваше транспортное средство ожидает запчасти. Мы сообщим, когда работа возобновится.",
"statusReady": "Ваше транспортное средство готово к выдаче!",
"statusCompleted": "Обслуживание завершено. Спасибо за выбор нашего сервиса!",
"paymentReceived": "Получена оплата {amount} по счёту {invoice_number}. Спасибо!"
},
"colorPresets": {
"amber": "Янтарный",
"blue": "Синий",
"emerald": "Изумрудный",
"red": "Красный",
"purple": "Фиолетовый",
"slate": "Серый",
"rose": "Розовый",
"indigo": "Индиго"
},
"goToLayout": "Расположение и разделы",
"openDesigner": "Открыть дизайнер",
"designerIntro": "Выберите отправную точку и откройте дизайнер, чтобы изменить всё.",
"designerHint": "Цвета, шрифты, отступы и все разделы находятся в дизайнере.",
"certificatesDescription": "Оформите сертификат, который печатает и отправляет завершённый осмотр.",
"workOrdersDescription": "Оформите лист, который печатает заказ-наряд: то, что подписывает клиент, и то, что механик снимает с доски.",
"conditionMapDescription": "Типы отметок, которые техники ставят на карте состояния: названия, формы и цвета."
},
"payment": {
"readMore": "Подробнее",
"detailsTitle": "Платёжные реквизиты",
"detailsDescription": "Банковский счёт и условия оплаты, отображаемые на счетах.",
"bankAccount": "Банковский счёт (IBAN)",
"bankAccountPlaceholder": "RU12 3456 7890 1234 5678 9012 3456",
"bankAccountHint": "Номер вашего банковского счёта или IBAN для получения платежей",
"paymentTerms": "Условия оплаты",
"paymentTermsPlaceholder": "14 дней",
"paymentTermsHint": "Текст условий оплаты, отображаемый на счетах (напр. «14 дней», «По получении»)",
"onlinePayments": "Онлайн-платежи",
"onlinePaymentsDescription": "Позвольте клиентам оплачивать счета по ссылке, которую вы им отправляете. Stripe, Vipps и PayPal подключаются в разделе Интеграции и могут работать одновременно.",
"onlinePaymentsHint": "Когда клиент платит, провайдер сообщает Torqvoice, и счёт сам отмечается оплаченным. На странице каждого провайдера показан нужный ему URL уведомлений.",
"offered": "В ссылках на счета",
"paused": "Подключено, не предлагается",
"termsOfSale": "Условия продажи",
"termsOfSaleDescription": "То, с чем клиент соглашается при онлайн-оплате. Vipps требует опубликованных условий; счёт в любом случае ссылается на них.",
"termsOfSaleText": "Текст условий",
"externalTermsUrl": "Внешний URL условий (необязательно)",
"externalTermsUrlHint": "Ссылка на внешнюю страницу с вашими условиями. Если указана, счёт будет ссылаться на неё вместо встроенной страницы условий.",
"publicTermsUrl": "Публичный URL условий",
"publicTermsUrlHint": "Предоставьте этот URL в Vipps или разместите на своём сайте.",
"savePayment": "Сохранить настройки оплаты",
"saved": "Настройки оплаты сохранены"
},
"tax": {
"title": "Налог",
"description": "Настройте налоговую ставку, применяемую к счетам, коммерческим предложениям и заказам на работу.",
"modeLabel": "Режим налога",
"modeHint": "Выберите, вводятся ли цены позиций с уже включённым налогом (с НДС) или без налога (без НДС). Существующие записи сохраняют режим, с которым они были созданы.",
"modeExclusive": "Без НДС",
"modeInclusive": "С НДС",
"modeExclusiveExample": "Пример: 100 + {rate}% налога = 100 + налог сверху.",
"modeInclusiveExample": "Пример: 100 уже включает {rate}% налога — налоговая часть рассчитывается в обратном порядке.",
"lineItemsInclTaxLabel": "Показывать цены строк с налогом в счетах и предложениях",
"lineItemsInclTaxHint": "Меняет только то, что печатается в счетах и предложениях, включая их PDF и копии, которые клиенты открывают по ссылке. Вкл.: каждая строка запчастей и работ и промежуточный итог показываются с налогом, а строка налога указывает, сколько из этого налог. Выкл.: цены без налога, налог добавляется внизу. Заказ-наряды и вводимые вами цены не меняются.",
"labelLabel": "Метка налога",
"labelHint": "Пользовательское название, отображаемое в счетах и коммерческих предложениях (напр. НДС, VAT). Оставьте пустым для локализованного значения по умолчанию.",
"labelPlaceholder": "НДС",
"splitLabel": "Разделить налог на несколько ставок",
"splitHint": "Для регионов, где в одном счёте начисляется больше одного налога, например GST и QST в Квебеке или CGST и SGST в Индии. Каждый налог печатается отдельной строкой со своим регистрационным номером, а в налоговом отчёте они учитываются раздельно.",
"splitIncomplete": "Перед сохранением укажите название и ставку для каждого налога.",
"presetLabel": "Начать с шаблона",
"presetPlaceholder": "Выберите регион",
"presets": {
"caQc": "Квебек, Канада (GST + QST)",
"caBc": "Британская Колумбия, Канада (GST + PST)",
"caSk": "Саскачеван, Канада (GST + PST)",
"caMb": "Манитоба, Канада (GST + RST)",
"inIntra": "Индия, один штат (CGST + SGST по 18%)"
},
"componentName": "Название",
"componentNamePlaceholder": "GST",
"componentRate": "Ставка",
"componentRegistration": "Регистрационный номер",
"componentRegistrationPlaceholder": "123456789 RT0001",
"componentRemove": "Удалить этот налог",
"registrationHint": "Печатается в счетах под реквизитами вашей компании. Оставьте пустым для налога, по которому вы не зарегистрированы.",
"addComponent": "Добавить налог",
"combinedRate": "Суммарная ставка",
"combinedRateHint": "Новые заказы и коммерческие предложения облагаются суммой указанных выше ставок.",
"convertInclusiveLabel": "Преобразовать существующие записи в режим с НДС",
"convertInclusiveHint": "Увеличивает каждую цену позиции на ставку налога, чтобы цены включали налог. Итоги для клиента остаются прежними. Подходит: {serviceRecords} заказов, {quotes} коммерческих предложений.",
"convertInclusiveButton": "Преобразовать в режим с НДС",
"convertInclusiveConfirmTitle": "Преобразовать существующие записи в режим с НДС?",
"convertInclusiveConfirmDescription": "Это перепишет цены позиций в {serviceRecords} заказах и {quotes} коммерческих предложениях, чтобы они включали налог. Итоги для клиента не изменятся, но напечатанные цены на старых счетах будут отображаться выше. Это действие нельзя отменить.",
"convertInclusiveConfirmLabel": "Преобразовать записи",
"convertInclusiveSuccess": "Преобразовано {serviceRecords} заказов и {quotes} коммерческих предложений в режим с НДС.",
"convertInclusiveFailed": "Не удалось преобразовать записи в режим с НДС",
"convertInclusiveNoRecords": "Нет записей в режиме без НДС для преобразования.",
"convertExclusiveLabel": "Преобразовать существующие записи в режим без НДС",
"convertExclusiveHint": "Уменьшает каждую цену позиции на ставку налога, чтобы цены показывали суммы без налога. Итоги для клиента остаются прежними. Подходит: {serviceRecords} заказов, {quotes} коммерческих предложений.",
"convertExclusiveButton": "Преобразовать в режим без НДС",
"convertExclusiveConfirmTitle": "Преобразовать существующие записи в режим без НДС?",
"convertExclusiveConfirmDescription": "Это перепишет цены позиций в {serviceRecords} заказах и {quotes} коммерческих предложениях, чтобы они показывали суммы без налога. Итоги для клиента не изменятся, но напечатанные цены на старых счетах будут отображаться ниже. Это действие нельзя отменить.",
"convertExclusiveConfirmLabel": "Преобразовать записи",
"convertExclusiveSuccess": "Преобразовано {serviceRecords} заказов и {quotes} коммерческих предложений в режим без НДС.",
"convertExclusiveFailed": "Не удалось преобразовать записи в режим без НДС",
"convertExclusiveNoRecords": "Нет записей в режиме с НДС для преобразования."
},
"currency": {
"title": "Валюта и налоги",
"description": "Валюта и налоговая ставка по умолчанию, используемые в счетах и записях обслуживания.",
"currencyLabel": "Валюта",
"searchCurrency": "Поиск валюты...",
"noCurrencyFound": "Валюта не найдена.",
"previewLabel": "Предпросмотр: {value}",
"enableTax": "Включить налог",
"enableTaxHint": "Показывать расчёт налога на счетах и записях обслуживания",
"defaultTaxRate": "Ставка налога по умолчанию (%)",
"defaultTaxRateHint": "Автоматически заполняется при создании новых записей обслуживания",
"applyTaxToExistingLabel": "Применить налог к существующим записям",
"applyTaxToExistingHint": "Применяет налоговую ставку по умолчанию к существующим заказам на работу и коммерческим предложениям без установленной ставки. Подходит: {serviceRecords} заказов, {quotes} предложений.",
"applyTaxToExistingButton": "Применить налог к существующим записям",
"applyTaxConfirmTitle": "Применить налог к существующим записям?",
"applyTaxConfirmDescription": "Это установит налоговую ставку {rate}% для {serviceRecords} заказов на работу и {quotes} коммерческих предложений, у которых сейчас нет ставки, и пересчитает их суммы. Записи с пользовательской ставкой не будут изменены. Это действие нельзя отменить.",
"applyTaxConfirmLabel": "Применить налог",
"applyTaxSuccess": "Обновлено {serviceRecords} заказов на работу и {quotes} коммерческих предложений.",
"applyTaxFailed": "Не удалось применить налог к существующим записям",
"applyTaxNoRecords": "Нет записей, требующих налоговой ставки по умолчанию.",
"saveSettings": "Сохранить настройки",
"saved": "Настройки сохранены",
"currencies": {
"USD": "Доллар США",
"EUR": "Евро",
"GBP": "Британский фунт",
"NOK": "Норвежская крона",
"SEK": "Шведская крона",
"DKK": "Датская крона",
"CHF": "Швейцарский франк",
"CAD": "Канадский доллар",
"AUD": "Австралийский доллар",
"NZD": "Новозеландский доллар",
"JPY": "Японская иена",
"CNY": "Китайский юань",
"INR": "Индийская рупия",
"BRL": "Бразильский реал",
"MXN": "Мексиканское песо",
"PLN": "Польский злотый",
"CZK": "Чешская крона",
"HUF": "Венгерский форинт",
"TRY": "Турецкая лира",
"ZAR": "Южноафриканский рэнд",
"KRW": "Южнокорейская вона",
"SGD": "Сингапурский доллар",
"HKD": "Гонконгский доллар",
"THB": "Тайский бат",
"ISK": "Исландская крона",
"RON": "Румынский лей",
"ILS": "Израильский шекель",
"PHP": "Филиппинское песо",
"IDR": "Индонезийская рупия",
"MYR": "Малайзийский ринггит",
"LKR": "Шри-ланкийская рупия",
"AED": "Дирхам ОАЭ",
"SAR": "Саудовский риял",
"RUB": "Российский рубль",
"TWD": "Тайваньский доллар",
"VND": "Вьетнамский донг",
"PKR": "Пакистанская рупия",
"BDT": "Бангладешская така",
"NPR": "Непальская рупия",
"BGN": "Болгарский лев",
"UAH": "Украинская гривна",
"CLP": "Чилийское песо",
"COP": "Колумбийское песо",
"ARS": "Аргентинское песо",
"PEN": "Перуанский соль",
"EGP": "Египетский фунт",
"NGN": "Нигерийская найра",
"KES": "Кенийский шиллинг",
"MAD": "Марокканский дирхам",
"DZD": "Алжирский динар",
"GHS": "Ганский седи",
"QAR": "Катарский риал",
"KWD": "Кувейтский динар",
"BHD": "Бахрейнский динар",
"OMR": "Оманский риал",
"JOD": "Иорданский динар"
},
"formatTitle": "Формат валюты",
"formatSymbolName": "Символ",
"formatCodeName": "Код",
"formatSymbolLabel": "Символ: {value}",
"formatCodeLabel": "Код: {value}"
},
"localization": {
"languageTitle": "Язык",
"languageDescription": "Выберите язык приложения.",
"language": "Язык",
"forceCustomerLocale": "Применять этот язык на страницах для клиентов",
"forceCustomerLocaleHint": "Когда включено, портал клиента и общие счета, предложения и инспекции отображаются на языке вашей мастерской, независимо от настроек браузера посетителя. Когда отключено, клиентские страницы используют язык браузера посетителя.",
"defaultCountryCode": "Код страны по умолчанию",
"defaultCountryCodeHint": "Используется, когда клиенты входят в портал через SMS — добавляется к номерам телефонов без кода страны (вашего или клиента). Формат: + и цифры, например +7.",
"defaultCountryCodeInvalid": "Введите корректный код страны, например +7, 7 или 007.",
"saved": "Настройки локализации сохранены",
"saveSettings": "Сохранить настройки"
},
"customFields": {
"title": "Пользовательские поля",
"description": "Определите пользовательские поля, которые отображаются в записях обслуживания и предложениях.",
"addField": "Добавить поле",
"filterAll": "Все",
"serviceRecord": "Запись обслуживания",
"quote": "Предложение",
"emptyState": "Пользовательских полей пока нет. Нажмите «Добавить поле», чтобы создать.",
"required": "Обязательное",
"inactive": "Неактивное",
"editField": "Редактировать поле",
"newField": "Новое пользовательское поле",
"label": "Название",
"labelPlaceholder": "напр. Срок гарантии",
"fieldName": "Имя поля (ID)",
"fieldNamePlaceholder": "srok_garantii",
"fieldNameHint": "Только строчные буквы, цифры и символы подчёркивания.",
"fieldType": "Тип поля",
"entityType": "Тип объекта",
"fieldTypes": {
"text": "Текст",
"number": "Число",
"date": "Дата",
"select": "Выбор (выпадающий список)",
"checkbox": "Флажок",
"textarea": "Текстовая область"
},
"optionsLabel": "Варианты (через запятую)",
"optionsPlaceholder": "Вариант 1, Вариант 2, Вариант 3",
"active": "Активное",
"cancel": "Отмена",
"update": "Обновить",
"create": "Создать",
"deleteTitle": "Удалить пользовательское поле",
"deleteDescription": "Это навсегда удалит \"{label}\" и все сохранённые значения. Это действие необратимо.",
"fieldCreated": "Пользовательское поле создано",
"fieldUpdated": "Пользовательское поле обновлено",
"fieldDeleted": "Пользовательское поле удалено",
"failedSave": "Не удалось сохранить поле",
"failedDelete": "Не удалось удалить",
"edit": "Редактировать",
"delete": "Удалить",
"unassigned": "Не назначено",
"defaultValue": "Значение по умолчанию",
"defaultValueHint": "Автоматически подставляется в новые записи и печатается, пока значение не введено.",
"defaultValueNone": "Нет",
"defaultValueCheckedHint": "Отмечено по умолчанию",
"placement": "Расположение в документе",
"placementHidden": "Не печатается",
"placementHint": "В каком разделе счёта или сметы печатается это поле. В дизайнере его можно включить и в других разделах.",
"failedSavePlacement": "Не удалось сохранить расположение поля"
},
"workshop": {
"title": "Настройки мастерской",
"description": "Значения по умолчанию при создании новых записей обслуживания.",
"defaultTechnician": "Механик по умолчанию",
"technicianPlaceholder": "Поиск механика...",
"failedCreateTech": "Не удалось создать механика",
"creating": "Создание...",
"createTechnician": "Создать \"{name}\"",
"newTechPlaceholder": "Имя механика",
"addTech": "Добавить",
"addNewTech": "+ Добавить нового",
"defaultLaborRate": "Ставка за работу по умолчанию (в час)",
"laborRatePlaceholder": "75.00",
"partsMarkupTitle": "Наценка на запчасти",
"partsMarkupDescription": "Наценка к закупочной цене при добавлении запчастей. Только внутреннее. Клиент никогда не видит себестоимость или наценку, только итоговую цену.",
"defaultMarkupPercent": "Наценка по умолчанию %",
"defaultMarkupPercentHint": "Новые вручную добавленные запчасти заполняются этой наценкой. Оставьте 0, чтобы вводить цены вручную.",
"markupAppliesToInventory": "Применить наценку к запчастям со склада",
"markupAppliesToInventoryHint": "Если включено, запчасти, выбранные со склада, также используют себестоимость + наценку по умолчанию (переопределяет цену продажи со склада).",
"typeKeyTitle": "Немецкий код типа (HSN/TSN)",
"typeKeyEnabled": "Указывать HSN/TSN у автомобилей",
"typeKeyHint": "Добавляет к автомобилям код производителя и код типа из немецкого свидетельства о регистрации (поля 2.1 и 2.2). Он отображается у автомобиля, в заказ-наряде и во всех печатных документах, а поиск находит автомобили по нему. После отключения он снова скрывается, введённые значения сохраняются.",
"unitsTitle": "Единицы измерения",
"unitsDescription": "Выберите между метрической (км, литры) и имперской (мили, галлоны) системой.",
"unitSystem": "Система единиц",
"metric": "Метрическая (км, литры)",
"imperial": "Имперская (мили, галлоны)",
"distanceLabel": "Расстояние",
"volumeLabel": "Объём",
"kilometers": "километры (км)",
"liters": "литры (л)",
"miles": "мили (mi)",
"gallons": "галлоны (gal)",
"defaultStockUnit": "Единица склада по умолчанию",
"defaultStockUnitHint": "Подставляется для новых складских позиций. У каждой позиции может быть своя единица.",
"saveWorkshop": "Сохранить настройки мастерской",
"saved": "Настройки мастерской сохранены",
"assignDialogTitle": "Назначить на существующие заказы?",
"assignDialogDescription": "Хотите назначить {name} на все заказы, у которых нет назначенного техника?",
"assignDialogConfirm": "Да, назначить",
"assignDialogSkip": "Нет, пропустить",
"assignedUnassigned": "{count, plural, =0 {Не найдено заказов без техника} one {Назначен 1 заказ} other {Назначено # заказов}}",
"assignFailed": "Не удалось назначить заказы",
"noTechnician": "Нет",
"weekStartDay": "Первый день недели",
"workDayStart": "Начало рабочего дня",
"workDayEnd": "Конец рабочего дня",
"titleTemplateTitle": "Название заказ-наряда",
"titleTemplateDescription": "Как называется новый заказ-наряд, пока никто не ввёл название. Соберите его из тегов ниже; каждый заказ открывается с заполненными тегами, а название по-прежнему можно изменить в самом заказе.",
"titleTemplate": "Шаблон названия",
"titleTemplatePlaceholder": "Оставьте пустым, чтобы каждый заказ начинался как \"New Service Record\"",
"titleTemplateHint": "Нажмите на тег, чтобы добавить его. Тег без содержимого, например автомобиль без номера, опускается вместе с разделителем.",
"titleTemplatePreview": "Пример: {title}",
"titleTemplateUnknown": "Неизвестные теги опускаются: {tags}",
"titleTemplateTags": {
"order_number": "Номер заказа",
"license_plate": "Госномер",
"customer_name": "Имя клиента",
"vehicle": "Автомобиль (год, марка, модель)",
"make": "Марка",
"model": "Модель",
"year": "Год",
"vin": "VIN",
"technician": "Техник",
"date": "Дата"
},
"weekDays": {
"0": "Воскресенье",
"1": "Понедельник",
"2": "Вторник",
"3": "Среда",
"4": "Четверг",
"5": "Пятница",
"6": "Суббота"
}
},
"maintenance": {
"title": "Прогнозируемое ТО",
"description": "Прогнозирование текущего пробега каждого транспортного средства на основе истории обслуживания и выявление транспортных средств, которым требуется или скоро потребуется обслуживание.",
"enablePredicted": "Включить прогнозируемое ТО",
"enablePredictedHint": "Показывать прогнозы в деталях транспортного средства и на панели управления",
"serviceInterval": "Интервал обслуживания ({unit})",
"serviceIntervalHint": "Расстояние между рекомендуемыми обслуживаниями",
"approachingThreshold": "Порог приближения ({unit})",
"approachingThresholdHint": "Показывать предупреждение при приближении к следующему обслуживанию на это расстояние",
"saveMaintenance": "Сохранить настройки ТО",
"saved": "Настройки ТО сохранены"
},
"warranty": {
"title": "Гарантия",
"description": "Укажите, что ваши предложения и счета сообщают о гарантии. Каждый новый документ начинается с этих значений, и вы по-прежнему можете изменить их в каждом документе.",
"designHint": "Печатается в разделе «Гарантия» дизайна ваших счетов и предложений. Если вы скрыли этот раздел в «Шаблонах», включите его снова. В дизайне «Компактный» этого раздела нет.",
"defaultStatus": "Новые предложения и заказ-наряды сообщают",
"status": {
"none": "Ничего",
"included": "Гарантия предоставляется",
"not_included": "Без гарантии"
},
"statusHint": {
"none": "Гарантия не упоминается, пока кто-нибудь не заполнит её в документе.",
"included": "Новые документы создаются со сроком и условиями, указанными ниже.",
"not_included": "Новые документы сообщают клиенту, что гарантия мастерской не предоставляется."
},
"includedTitle": "Когда гарантия предоставляется",
"includedHint": "Срок и условия, которые получает документ, когда в нём предлагается гарантия.",
"months": "Срок (месяцев)",
"mileage": "Лимит пробега ({unit})",
"mileageHint": "Оставьте пустым, если лимита пробега нет.",
"terms": "Условия гарантии",
"termsPlaceholder": "напр. 12 месяцев на запчасти и работы. На изнашиваемые детали гарантия не распространяется.",
"termsHint": "Печатается под гарантией в предложениях и счетах.",
"notIncludedTitle": "Когда гарантия не предоставляется",
"notIncludedHint": "Что читает клиент, когда в документе указано, что гарантия не предоставляется.",
"notIncludedText": "Заявление",
"notIncludedPlaceholder": "напр. Мастерская не даёт гарантию на запчасти, предоставленные клиентом. Ваши законные права не затрагиваются.",
"legalHint": "Речь идёт о собственной гарантии вашей мастерской. Во многих странах, включая ЕС и Великобританию, у клиентов есть также установленные законом гарантийные права, которые нельзя исключить. Оставьте поле пустым, и в документе будет указано, что законные права не затрагиваются.",
"applyTitle": "Применять эти значения по умолчанию к",
"applyToQuotes": "Новым предложениям",
"applyToQuotesHint": "Клиент видит гарантию до того, как примет предложение.",
"applyToWorkOrders": "Новым заказ-нарядам",
"applyToWorkOrdersHint": "Печатается в счёте. Заказ-наряд, созданный из предложения, сохраняет то, что было указано в предложении.",
"save": "Сохранить настройки гарантии",
"saved": "Настройки гарантии сохранены",
"saveFailed": "Не удалось сохранить настройки гарантии"
},
"appearance": {
"title": "Внешний вид",
"description": "Настройте внешний вид Torqvoice.",
"themeLabel": "Тема",
"themeHint": "Выберите цветовую схему приложения. Выбор сохраняется на этом устройстве.",
"themes": {
"light": "Светлая",
"dark": "Тёмная",
"graphite": "Графит",
"ocean": "Океан",
"forest": "Лес",
"midnight": "Полночь",
"carbon": "Карбон",
"system": "Системная"
},
"dateTimeTitle": "Дата и время",
"dateTimeDescription": "Настройте отображение даты и времени в приложении.",
"dateFormat": "Формат даты",
"timeFormat": "Формат времени",
"time12h": "12-часовой (2:30 PM)",
"time24h": "24-часовой (14:30)",
"timezone": "Часовой пояс",
"timezoneAuto": "Автоопределение (браузер)",
"searchTimezone": "Поиск часового пояса...",
"noTimezoneFound": "Часовой пояс не найден.",
"timezoneHint": "При автоопределении каждый пользователь видит даты в часовом поясе своего браузера.",
"previewLabel": "Предпросмотр",
"dateLabel": "Дата",
"dateTimeLabel": "Дата и время",
"saveSettings": "Сохранить настройки",
"saved": "Настройки сохранены",
"fontLabel": "Шрифт",
"fontHint": "Выберите шрифты приложения. Выбор сохраняется на этом устройстве.",
"fontSampleHeading": "Заказ-наряд",
"fontSampleText": "Заменить катушку зажигания и свечи",
"fonts": {
"default": {
"name": "По умолчанию",
"description": "Geist, чистый и нейтральный."
},
"workshop": {
"name": "Мастерская",
"description": "IBM Plex с узкими заглавными заголовками, как в рабочей карточке."
},
"precise": {
"name": "Точный",
"description": "Inter и JetBrains Mono. Для экранов, полных таблиц и цифр."
},
"legible": {
"name": "Разборчивый",
"description": "Atkinson Hyperlegible. 0 и O, 1 и l никогда не похожи друг на друга; легко читается с другого конца мастерской."
}
}
},
"data": {
"title": "Управление данными",
"description": "Перенесите данные из старой системы, скачайте резервную копию всего или восстановите её.",
"exportTitle": "Экспорт данных",
"exportDescription": "Скачайте данные в виде zip-файла. Выберите категории для включения в резервную копию.",
"includeInBackup": "Включить в резервную копию:",
"selectAll": "Выбрать всё",
"deselectAll": "Снять выделение",
"optSettings": "Настройки",
"optSettingsDesc": "Информация о мастерской, настройки счетов, платёжные провайдеры",
"optCustomers": "Клиенты",
"optCustomersDesc": "Записи клиентов и контактная информация",
"optVehicles": "Транспортные средства и записи обслуживания",
"optVehiclesDesc": "Транспортные средства, заметки, журналы топлива, напоминания, записи обслуживания",
"optQuotes": "Предложения",
"optQuotesDesc": "Предложения с запчастями и работами",
"optInventory": "Склад",
"optInventoryDesc": "Складские запчасти и уровни запасов",
"optTechnicians": "Механики",
"optTechniciansDesc": "Профили механиков и назначения на доску работ",
"optInspections": "Осмотры",
"optInspectionsDesc": "Чек-листы осмотров, осмотры и результаты",
"optAuditLogs": "Журналы аудита",
"optAuditLogsDesc": "История активности и изменений",
"optSmsMessages": "Сообщения",
"optSmsMessagesDesc": "Отправленные и полученные SMS, WhatsApp и Telegram",
"optScheduledMessages": "Запланированные сообщения",
"optScheduledMessagesDesc": "Сообщения в очереди и повторяющиеся, ожидающие отправки",
"optNotifications": "Уведомления",
"optNotificationsDesc": "Системные уведомления",
"optCustomFields": "Пользовательские поля",
"optCustomFieldsDesc": "Определения пользовательских полей и их значения",
"optFiles": "Загруженные файлы",
"optFilesDesc": "Изображения, вложения к обслуживаниям, логотип",
"filesWarning": "Включает загруженные файлы — резервная копия может быть большой",
"downloadBackup": "Скачать резервную копию",
"exportComplete": "Экспорт завершён",
"exportCompleteMessage": "Файл резервной копии был загружен.",
"exportFailed": "Ошибка экспорта",
"exportFailedMessage": "Не удалось экспортировать данные. Попробуйте снова.",
"importTitle": "Импорт данных",
"importWarning": "Импорт заменит все существующие данные содержимым файла резервной копии. Это действие необратимо.",
"importFileHint": "Поддерживаются файлы .zip (v2) и .json (v1).",
"uploadRestore": "Загрузить и восстановить",
"importComplete": "Импорт завершён",
"importCompleteMessage": "Все данные были восстановлены из файла резервной копии.",
"importFailed": "Ошибка импорта",
"importFromOther": "Импорт из других сервисов",
"importFromOtherDescription": "Перенесите данные с другой платформы. Выберите сервис для начала.",
"lubelogTitle": "Импорт из LubeLog",
"lubelogExportSteps": "Как экспортировать данные из LubeLog:",
"lubelogStep1": "Откройте ваш экземпляр LubeLog",
"lubelogStep2": "Перейдите в Настройки",
"lubelogStep3": "Нажмите Создать резервную копию для скачивания zip-файла",
"lubelogStep4": "Загрузите скачанный zip-файл ниже",
"lubelogAddNote": "Это добавит данные к существующим записям — ничего не будет удалено.",
"lubelogImported": "Что будет импортировано:",
"lubelogVehicles": "Транспортные средства",
"lubelogServiceRecords": "Записи обслуживания с вложениями",
"lubelogNotes": "Заметки",
"lubelogFileHint": "Поддерживаются файлы до 200МБ.",
"lubelogImportComplete": "Импорт LubeLog завершён",
"cancel": "Отмена",
"import": "Импортировать",
"invoiceNinjaTitle": "Импорт из Invoice Ninja",
"invoiceNinjaExportSteps": "Как экспортировать данные из Invoice Ninja:",
"invoiceNinjaStep1": "Откройте ваш экземпляр Invoice Ninja",
"invoiceNinjaStep2": "Перейдите в Настройки > Импорт | Экспорт",
"invoiceNinjaStep3": "Нажмите Экспорт для скачивания zip-файла",
"invoiceNinjaStep4": "Загрузите скачанный zip-файл ниже",
"invoiceNinjaAddNote": "Это добавит данные к существующим записям — ничего не будет удалено.",
"invoiceNinjaImported": "Что будет импортировано:",
"invoiceNinjaCustomers": "Клиенты",
"invoiceNinjaProducts": "Товары (склад)",
"invoiceNinjaInvoices": "Счета как записи обслуживания (запчасти и работы)",
"invoiceNinjaDocuments": "Документы и вложения",
"invoiceNinjaPayments": "Платежи",
"invoiceNinjaFileHint": "Загрузите zip-экспорт Invoice Ninja. Поддерживаются файлы до 200МБ.",
"invoiceNinjaImportComplete": "Импорт Invoice Ninja завершён",
"backupStatus": {
"title": "Защита данных",
"description": "Мы серьёзно относимся к вашим данным. Все данные вашей организации, включая клиентов, автомобили, заказ-наряды, счета и загруженные файлы, автоматически резервируются каждый час. Резервные копии защищаются шифрованием AES-256 до того, как покинут нашу инфраструктуру, и хранятся в отдельном надёжном месте, поэтому никакая внешняя сторона не может их прочитать.",
"lastBackup": "Последняя резервная копия:",
"supportPrompt": "Если у вас есть вопросы о защите ваших данных,",
"supportAction": "свяжитесь с нашей службой поддержки."
},
"optTireHotel": "Шинный отель",
"optTireHotelDesc": "Комплекты на хранении, полки, подготовка и договоры хранения",
"optWorkshopConfig": "Настройки мастерской",
"optWorkshopConfigDesc": "Шаблоны работ, роли, вебхуки и запланированные отчёты",
"importHubDescription": "Выберите, где сейчас находятся ваши данные. Импорт из таблиц и приложений добавляется к имеющимся данным и может быть отменён; восстановление резервной копии заменяет всё.",
"sourceSpreadsheet": "Таблица или CSV",
"sourceSpreadsheetDesc": "Экспорт из любой системы для автосервиса, бухгалтерской программы, Google Контактов, Outlook или Excel. Вы подтверждаете сопоставление столбцов и видите пробный запуск до записи данных.",
"sourceLubelogDesc": "Автомобили, записи об обслуживании и заметки из резервной копии LubeLog.",
"sourceInvoiceNinjaDesc": "Клиенты, товары, счета и платежи из экспорта Invoice Ninja.",
"sourceBackup": "Резервная копия Torqvoice",
"sourceBackupDesc": "Файл .zip или .json, скачанный с этой страницы. Восстановление заменяет всё в этой мастерской.",
"restore": "Восстановить",
"restoreTitle": "Восстановить резервную копию"
},
"license": {
"title": "White-Label лицензия",
"description": "Активируйте white-label лицензию для удаления брендинга Torqvoice со счетов и из приложения.",
"purchaseWhiteLabel": "Купить White-Label",
"status": "Статус:",
"active": "Активна",
"inactive": "Неактивна",
"lastChecked": "Последняя проверка: {date}",
"enterLicenseKey": "Введите лицензионный ключ",
"validate": "Проверить",
"validated": "Лицензия успешно подтверждена",
"invalid": "Недействительный лицензионный ключ",
"failedValidate": "Не удалось проверить лицензию",
"keyHint": "Каждый лицензионный ключ привязан к этой организации и не может быть использован в нескольких организациях.",
"expired": "Истекла",
"unverified": "Не проверена",
"expiresOn": "Истекает: {date}",
"unreachable": "Не удалось связаться с torqvoice.com. Лицензия, сохранённая на этом сервере, не изменилась.",
"unverifiedHint": "Этот сервер уже {days} дн. не может подтвердить лицензию на torqvoice.com. Через {max} дн. без успешной проверки брендинг Torqvoice возвращается.",
"rejected": "torqvoice.com не принял этот ключ: {reason}",
"signedHint": "Проверка подписывается torqvoice.com и повторяется ежедневно, поэтому серверу нужен исходящий доступ к torqvoice.com."
},
"about": {
"title": "О Torqvoice",
"description": "Torqvoice — это комплексное решение для управления обслуживанием транспортных средств. Ведение истории обслуживания, ремонтов и многое другое.",
"version": "Версия",
"website": "Веб-сайт",
"documentation": "Документация",
"changelog": "Журнал изменений"
},
"portal": {
"title": "Портал клиента",
"description": "Позвольте клиентам входить в систему и просматривать свои транспортные средства, счета, предложения и осмотры. Клиенты также могут отправлять заявки на обслуживание.",
"enablePortal": "Включить портал клиента",
"enablePortalHint": "Клиенты с адресом эл. почты могут войти по волшебной ссылке",
"enabled": "Портал клиента включён",
"disabled": "Портал клиента отключён",
"failedUpdate": "Не удалось обновить настройку",
"customSlug": "Пользовательский адрес портала",
"save": "Сохранить",
"slugSaved": "Адрес портала сохранён",
"slugRemoved": "Адрес портала удалён",
"failedUpdateSlug": "Не удалось обновить адрес",
"slugHint": "Строчные буквы, цифры, дефисы и символы подчёркивания. 3-48 символов. Оставьте пустым для использования URL по умолчанию.",
"portalUrl": "URL портала",
"urlCopied": "URL портала скопирован",
"shareHint": "Поделитесь этой ссылкой с клиентами, чтобы они могли войти в свой портал.",
"serviceRequestAlertsHint": "Заявки на обслуживание из портала всегда появляются в колокольчике уведомлений. Вы также можете получать их по электронной почте.",
"serviceRequestAlertsLink": "Настройки уведомлений →",
"descriptionLabel": "О вашей мастерской",
"descriptionPlaceholder": "Расскажите клиентам о своей мастерской, услугах и о том, что делает вас уникальными.",
"descriptionHint": "Отображается посетителям в верхней части главной страницы портала.",
"hoursLabel": "Часы работы",
"hoursPlaceholder": "Пн-Пт: 8:00-17:00\nСб: 9:00-13:00\nВс: Выходной",
"hoursHint": "Свободный текст. Используйте переносы строк, чтобы перечислить каждый день отдельно.",
"contentSaved": "Содержимое портала сохранено",
"background": {
"title": "Фон портала",
"description": "Выберите внешний вид главной страницы клиентского портала.",
"typeNone": "Нет",
"typeTemplate": "Шаблон",
"typeImage": "Своё изображение",
"chooseTemplate": "Выберите шаблон",
"uploadLabel": "Фоновое изображение",
"upload": "Загрузить изображение",
"replace": "Заменить изображение",
"remove": "Удалить",
"uploadHint": "JPG, PNG или WebP. Макс. 8 МБ. Рекомендуется минимум 1600×900.",
"uploading": "Загрузка фона…",
"uploaded": "Фон обновлён",
"uploadFailed": "Не удалось загрузить фон",
"templateNames": {
"default": "Сдержанный",
"sunrise": "Рассвет",
"ocean": "Океан",
"forest": "Лес",
"slate": "Сланец",
"sand": "Песок"
}
},
"copyUrl": "Копировать URL портала"
},
"email": {
"title": "Провайдер эл. почты",
"description": "Настройте провайдера эл. почты вашей организации для отправки счетов и предложений. Если не настроен, будет использоваться провайдер платформы по умолчанию.",
"useCustomLabel": "Использовать собственного провайдера эл. почты",
"useCustomHint": "Включите для настройки собственного провайдера вместо провайдера платформы по умолчанию",
"platformDefaultInfo": "Ваша организация использует провайдера эл. почты платформы по умолчанию. Счета и предложения будут отправляться через настройки платформы.",
"smtpHost": "SMTP-сервер",
"smtpHostPlaceholder": "smtp.example.com",
"smtpPort": "Порт SMTP",
"smtpPortPlaceholder": "587",
"username": "Имя пользователя",
"usernamePlaceholder": "user@example.com",
"password": "Пароль",
"fromEmail": "Адрес отправителя",
"fromEmailPlaceholder": "noreply@example.com",
"fromEmailDomainPlaceholder": "noreply@yourdomain.com",
"fromName": "Имя отправителя",
"fromNamePlaceholder": "Ваша мастерская",
"tlsConnection": "TLS-подключение (порт 465)",
"tlsConnectionHint": "Включите для неявного TLS. Отключите для STARTTLS (порт 587/25).",
"verifyTlsCerts": "Проверять сертификаты TLS",
"verifyTlsCertsHint": "Отключите для разрешения самоподписанных сертификатов (не рекомендуется для продакшена)",
"requireTlsUpgrade": "Требовать обновление до TLS",
"requireTlsUpgradeHint": "Принудительное обновление TLS на STARTTLS-соединениях",
"apiKey": "Ключ API",
"apiKeyHintResend": "Получите ключ API на",
"serverToken": "Токен сервера",
"serverTokenHintPostmark": "Получите токен сервера на",
"apiKeyHintMailgun": "Получите ключ API на",
"domain": "Домен",
"domainPlaceholder": "mg.yourdomain.com",
"region": "Регион",
"apiKeyHintSendGrid": "Получите ключ API на",
"accessKeyId": "ID ключа доступа",
"secretAccessKey": "Секретный ключ доступа",
"awsRegion": "Регион AWS",
"awsRegionPlaceholder": "us-east-1",
"awsRegionHint": "Регион AWS, в котором настроен SES (напр. us-east-1, eu-west-1)",
"sendTestEmail": "Отправить тестовое письмо",
"testEmailHint": "Сначала сохраните настройки, затем отправьте тестовое письмо на ваш аккаунт",
"saveSettings": "Сохранить настройки",
"savedDefault": "Настройки почты сохранены — используется провайдер платформы по умолчанию",
"saved": "Настройки почты сохранены",
"failedSave": "Не удалось сохранить настройки",
"testSentTo": "Тестовое письмо отправлено на {email}",
"testFailed": "Тест отправки почты не удался"
},
"sms": {
"title": "Провайдер SMS",
"description": "Настройте провайдера SMS для двустороннего обмена сообщениями с клиентами. Каждая организация использует собственного SMS-провайдера и номер телефона.",
"enableLabel": "Включить SMS-сообщения",
"enableHint": "Отправляйте и получайте SMS-сообщения с клиентами",
"disabledInfo": "SMS-сообщения отключены. Включите для отправки и получения текстовых сообщений с клиентами.",
"phoneNumber": "Номер телефона",
"phoneNumberPlaceholder": "+79991234567",
"phoneNumberHint": "Ваш номер телефона с поддержкой SMS в формате E.164 (напр. +79991234567)",
"accountSid": "SID аккаунта",
"authToken": "Токен авторизации",
"apiKey": "Ключ API",
"apiSecret": "Секрет API",
"webhookUrl": "URL вебхука",
"webhookUrlHint": "Настройте этот URL в панели управления {provider} для получения входящих SMS.",
"webhookCopied": "URL вебхука скопирован",
"testPhoneNumber": "Тестовый номер телефона",
"testPhonePlaceholder": "+79999876543",
"sendTestSms": "Отправить тестовое SMS",
"testSmsHint": "Сначала сохраните настройки, затем введите номер получателя для отправки тестового SMS",
"enterTestPhone": "Введите номер телефона для отправки тестового SMS",
"saveSettings": "Сохранить настройки",
"savedDisabled": "Настройки SMS сохранены — SMS отключены",
"saved": "Настройки SMS сохранены",
"failedSave": "Не удалось сохранить настройки",
"testSentTo": "Тестовое SMS отправлено на {phone}",
"testFailed": "Тест SMS не удался",
"copyWebhookUrl": "Копировать URL вебхука"
},
"subscription": {
"title": "Тарифный план",
"description": "Текущий тариф подписки Torqvoice вашей организации и доступные функции.",
"currentPlan": "Текущий тариф",
"planFree": "Бесплатный",
"planPro": "Torq Pro",
"planEnterprise": "Корпоративный",
"price": "{price}/{interval}",
"perYear": "год",
"perMonth": "мес",
"statusActive": "Активна",
"statusCanceling": "Отменяется",
"statusPastDue": "Просрочена",
"statusCanceled": "Отменена",
"billingPeriod": "Период оплаты",
"billingPeriodDates": "{start} — {end}",
"nextRenewal": "Следующее продление",
"cancelingWarning": "Ваша подписка будет отменена {date}. После этого вы будете переведены на бесплатный тариф.",
"pastDueWarning": "Ваш платёж просрочен. Обновите способ оплаты, чтобы избежать прерывания сервиса.",
"featuresTitle": "Функции тарифа",
"featuresDescription": "Что включено в ваш текущий тариф.",
"featureCustomers": "Клиенты",
"featureTeamMembers": "Участники команды",
"featureSmtp": "Пользовательская почта (SMTP)",
"featureApi": "Доступ к API",
"featurePayments": "Онлайн-платежи",
"featureCustomFields": "Пользовательские поля",
"featureSms": "SMS-сообщения",
"featureCustomerPortal": "Портал клиента",
"featureCustomTemplates": "Пользовательские шаблоны",
"featureBrandingRemoved": "Брендинг удалён",
"usageOf": "{used} / {limit}",
"usageUnlimited": "{used} / Без ограничений",
"included": "Включено",
"notIncluded": "Не включено",
"manageTitle": "Управление подпиской",
"manageBilling": "Управление оплатой",
"manageBillingDescription": "Обновите способ оплаты, просмотрите счета и управляйте платёжными реквизитами.",
"cancelSubscription": "Отменить подписку",
"resumeSubscription": "Возобновить подписку",
"cancelDialogTitle": "Отменить подписку",
"cancelDialogDescription": "Ваша подписка останется активной до {date}. После этого вы будете переведены на бесплатный тариф.",
"cancelDialogConfirm": "Да, отменить",
"cancelDialogCancel": "Сохранить подписку",
"cancelSuccess": "Подписка будет отменена в конце периода оплаты",
"cancelError": "Не удалось отменить подписку",
"resumeSuccess": "Подписка успешно возобновлена",
"resumeError": "Не удалось возобновить подписку",
"billingPortalError": "Не удалось открыть платёжный портал",
"checkoutError": "Не удалось начать оформление оплаты",
"upgradeTitle": "Обновить тариф",
"upgradeDescription": "Разблокируйте больше функций, обновив тариф.",
"upgradeToProDescription": "Обновитесь для неограниченных клиентов, участников команды, отчётов, SMTP, доступа к API и многого другого.",
"upgradeToEnterpriseDescription": "Нужно более 5 участников команды? Обновитесь до корпоративного тарифа для 50 пользователей.",
"upgradeToPro": "Обновить до Pro — $99/год",
"upgradeToEnterprise": "Корпоративный — $140/год",
"upgradeDialogTitle": "Обновить до корпоративного тарифа",
"upgradeDialogDescription": "Ваш текущий тариф Pro будет обновлён до корпоративного. Вам будет начислена только пропорциональная разница за оставшийся период оплаты.",
"upgradeConfirm": "Подтвердить обновление",
"upgradeCalculating": "Расчёт пропорциональной суммы...",
"upgradeAmountDue": "К оплате сейчас",
"upgradeSuccess": "Успешно обновлено до корпоративного тарифа!",
"upgradeError": "Не удалось обновить подписку",
"demoBadge": "Демо",
"demoExpiresIn": "Истекает через {days, plural, =0 {меньше дня} one {# день} other {# дней}} ({date})",
"checkoutOnTorqvoice": "Для завершения покупки вы будете перенаправлены на torqvoice.com. Счета и квитанции доступны там в вашем аккаунте.",
"purchaseSuccess": "Спасибо! Ваш план теперь активен.",
"purchaseActivating": "Платёж получен. Ваш план активируется, страница обновится через мгновение.",
"accountOnTorqvoice": "Счета и квитанции находятся на torqvoice.com, куда вы входите с этой учётной записью.",
"openTorqvoiceAccount": "Открыть учётную запись на torqvoice.com"
},
"ai": {
"title": "ИИ-ассистент",
"readMore": "Подробнее",
"description": "Настройте ИИ для автоматического создания описаний обслуживания и обобщения истории транспортных средств.",
"enableLabel": "Включить ИИ",
"enableHint": "Используйте функции ИИ по всему приложению",
"disabledInfo": "Включите ИИ для использования таких функций, как автоматическое создание описаний обслуживания и обобщение истории транспортных средств.",
"provider": "Провайдер ИИ",
"apiKey": "Ключ API",
"apiKeyHint": "Ваш ключ API {provider}. Хранится в безопасности и никогда не передаётся.",
"model": "Модель",
"testConnection": "Проверить подключение",
"testSuccess": "Подключение к ИИ успешно!",
"testFailed": "Подключение не удалось. Проверьте ключ API и модель.",
"saved": "Настройки ИИ сохранены",
"failedSave": "Не удалось сохранить настройки ИИ",
"saveSettings": "Сохранить настройки",
"featuresTitle": "Включённые функции ИИ:",
"featureServiceNotes": "Автоматическое создание профессиональных описаний обслуживания из запчастей и работ",
"featureHistorySummary": "Обобщение истории обслуживания транспортного средства одним нажатием",
"cost": {
"high": "Высокая стоимость",
"medium": "Средняя",
"low": "Низкая стоимость"
}
},
"reportSchedule": {
"title": "Расписание отчётов",
"description": "Автоматически создавайте и отправляйте отчёты в формате PDF по электронной почте по расписанию.",
"schedule": "Расписание",
"name": "Название расписания",
"namePlaceholder": "Напр. Еженедельный бизнес-отчёт",
"frequency": "Частота",
"daily": "Ежедневно",
"weekly": "Еженедельно",
"biweekly": "Каждые 2 недели",
"monthly": "Ежемесячно",
"bimonthly": "Каждые 2 месяца",
"quarterly": "Каждые 3 месяца",
"semiannually": "Каждые 6 месяцев",
"yearly": "Ежегодно",
"dateRangeLabel": "Период",
"dateRanges": {
"last1d": "Последний день",
"last7d": "Последние 7 дней",
"last14d": "Последние 14 дней",
"last30d": "Последние 30 дней",
"last60d": "Последние 60 дней",
"last90d": "Последние 90 дней",
"last6m": "Последние 6 месяцев",
"last12m": "Последние 12 месяцев",
"ytd": "С начала года",
"allTime": "За всё время"
},
"sections": "Разделы отчёта",
"sectionsDescription": "Выберите разделы для включения в запланированный отчёт.",
"sectionsIncluded": "Включённые разделы",
"selectAll": "Выбрать все",
"clearAll": "Снять все",
"recipients": "Получатели",
"recipientsDescription": "Выберите участников команды, которые будут получать отчёт по электронной почте.",
"recipientsCount": "Получатели",
"endDate": "Дата окончания",
"endDateDescription": "Необязательно остановить расписание после этой даты.",
"enabled": "Включено",
"disabled": "Отключено",
"nextRun": "Следующий запуск",
"lastRun": "Последний запуск",
"runCount": "Отправлено отчётов",
"save": "Сохранить расписание",
"create": "Создать расписание",
"delete": "Удалить расписание",
"created": "Расписание отчётов создано",
"updated": "Расписание отчётов обновлено",
"deleted": "Расписание отчётов удалено",
"toggledOn": "Расписание отчётов включено",
"toggledOff": "Расписание отчётов отключено",
"failedSave": "Не удалось сохранить",
"failedSend": "Не удалось отправить",
"failedToggle": "Не удалось переключить",
"failedDelete": "Не удалось удалить",
"noMembers": "Участники команды не найдены",
"addRecipient": "Добавить получателя...",
"searchMembers": "Поиск участников...",
"sendNow": "Отправить сейчас",
"sentNow": "Отчёт успешно отправлен",
"newSchedule": "Новое расписание",
"editSchedule": "Редактировать расписание",
"edit": "Редактировать",
"cancel": "Отмена",
"sent": "отправлено",
"emptyTitle": "Нет запланированных отчётов",
"emptyDescription": "Создайте расписание для автоматической генерации и отправки отчётов вашей команде.",
"sectionLabels": {
"revenue": "Доходы",
"tax": "Налоги",
"pastDue": "Просроченные счета",
"services": "Услуги",
"customers": "Клиенты",
"technicians": "Техники",
"parts": "Использование запчастей",
"jobAnalytics": "Аналитика заказов",
"retention": "Удержание клиентов",
"inventory": "Склад"
}
},
"webhooks": {
"title": "Вебхуки",
"subtitle": "Отправляйте уведомления о событиях в реальном времени в ваши собственные системы по HTTPS. Каждое событие подписывается HMAC-SHA256, чтобы вы могли проверить подлинность.",
"create": "Добавить webhook",
"createTitle": "Добавить webhook",
"editTitle": "Изменить webhook",
"createDescription": "Webhooks отправляются как JSON методом POST. Неудачные доставки повторяются с экспоненциальной задержкой до 5 раз.",
"name": "Название",
"namePlaceholder": "напр. Синхронизация бухгалтерии",
"url": "URL конечной точки",
"urlHint": "Должен начинаться с http:// или https://. Настоятельно рекомендуем HTTPS.",
"description": "Описание (необязательно)",
"events": "События",
"eventsHint": "Выберите, какие события активируют этот webhook.",
"subscribeToAll": "Все события",
"selectAtLeastOneEvent": "Выберите хотя бы одно событие",
"groups": {
"customers": "Клиенты",
"vehicles": "Автомобили",
"services": "Наряды",
"quotes": "Сметы",
"payments": "Платежи",
"inspections": "Осмотры",
"inventory": "Склад",
"findings": "Замечания"
},
"save": "Сохранить",
"cancel": "Отмена",
"delete": "Удалить",
"rotate": "Обновить",
"done": "Готово",
"paused": "Приостановлен",
"statusOk": "OK",
"statusFailing": "{count, plural, one {# недавняя ошибка} few {# недавние ошибки} many {# недавних ошибок} other {# недавних ошибок}}",
"lastDelivery": "Последняя доставка {when}",
"totalDeliveries": "{count, plural, one {# доставка} few {# доставки} many {# доставок} other {# доставок}}",
"toggleAria": "Включить или отключить этот webhook",
"deliveries": "Доставки",
"sendTest": "Отправить тест",
"testSent": "Тестовое событие отправлено",
"testFailed": "Не удалось отправить тестовое событие",
"rotateSecret": "Обновить ключ подписи",
"confirmRotateTitle": "Обновить ключ подписи?",
"confirmRotateDescription": "Текущий ключ перестанет работать немедленно. Обновите вашу конечную точку новым ключом.",
"secretRotated": "Ключ обновлён",
"secretRotatedDescription": "Сохраните этот ключ сейчас — его нельзя будет восстановить позже.",
"confirmDeleteTitle": "Удалить webhook?",
"confirmDeleteDescription": "«{name}» немедленно перестанет получать события. Это нельзя отменить.",
"secretShownOnceTitle": "Webhook «{name}» создан",
"secretShownOnceDescription": "Скопируйте этот ключ подписи сейчас. Он не будет показан снова.",
"secretCopyHint": "Используйте этот ключ для проверки заголовка X-Torqvoice-Signature в каждом запросе.",
"deliveriesTitle": "Доставки — {name}",
"deliveriesDescription": "Последние 50 попыток. Неудачные события автоматически повторяются с экспоненциальной задержкой.",
"deliveriesEmpty": "Доставок ещё нет. Отправьте тестовое событие, чтобы попробовать.",
"attempt": "Попытка {n}/{max}",
"nextRetry": "Следующая попытка {when}",
"retryQueued": "Повтор в очереди",
"retryFailed": "Повтор не удался",
"saveFailed": "Не удалось сохранить",
"deleteFailed": "Не удалось удалить",
"toggleFailed": "Не удалось переключить",
"rotateFailed": "Не удалось обновить",
"created": "Webhook создан",
"updated": "Webhook обновлён",
"deleted": "Webhook удалён",
"emptyTitle": "Webhooks пока нет",
"emptyDescription": "Добавьте webhook, чтобы отправлять события в ваши системы — синхронизация бухгалтерии, кастомные панели, Zapier, всё, что говорит на HTTP.",
"helpTitle": "Проверка подписей webhook",
"helpIntro": "Каждая доставка содержит подпись HMAC-SHA256, чтобы вы могли подтвердить, что запрос пришёл от Torqvoice.",
"helpHeadersTitle": "Заголовки, отправляемые с каждым запросом",
"helpVerify": "Соберите подписанную строку как `[timestamp].[body]` и сравните с безопасной по времени проверкой:",
"tabWebhooks": "Вебхуки",
"tabReference": "Справочник событий",
"autoDisabled": "Автоприостановлен",
"autoDisabledBanner": "Этот webhook был автоматически приостановлен после 20 последовательных ошибок. Включите его снова, чтобы возобновить доставку.",
"reEnable": "Включить снова",
"resumed": "Webhook возобновлён",
"copyUrl": "Скопировать URL",
"refresh": "Обновить",
"noMatches": "Нет доставок, соответствующих этому фильтру.",
"retry": "Повторить",
"viewPayload": "Просмотреть payload",
"payloadCopied": "Payload скопирован",
"loadingPayload": "Загрузка payload…",
"requestPayload": "Payload запроса",
"response": "Ответ",
"close": "Закрыть",
"samplePayload": "Пример конверта",
"referenceTitle": "Справочник событий",
"referenceIntro": "Каждая доставка следует этой форме конверта. Нажмите на событие, чтобы увидеть пример payload, который получит ваша конечная точка.",
"filter": {
"all": "Все",
"success": "Успешно",
"failed": "Не удалось",
"retrying": "Повтор",
"pending": "Ожидает"
}
},
"alerts": {
"title": "Оповещения",
"description": "Выберите, о каких событиях и каким способом вас уведомлять.",
"serviceRequest": {
"title": "Уведомления о заявках на обслуживание",
"description": "Заявки, отправленные через клиентский портал, всегда появляются в колокольчике уведомлений. Включите, чтобы получать их также по электронной почте.",
"email": "Уведомление по электронной почте",
"emailHint": "По умолчанию выключено. Одно письмо на заявку, отправляется сразу после ее отправки клиентом.",
"recipients": "Отправлять на",
"recipientsHint": "Оставьте пустым, чтобы уведомлять всех владельцев и администраторов. Несколько адресов разделяйте запятыми.",
"invalidRecipients": "Неверный адрес: {list}",
"emailSetupHint": "Уведомления отправляются через настроенного почтового провайдера.",
"emailSetupLink": "Настройки почты →",
"save": "Сохранить настройки уведомлений",
"saved": "Настройки уведомлений о заявках сохранены"
},
"lowStock": {
"title": "Оповещения о низком запасе",
"description": "Предупреждает, когда деталь достигает точки заказа. Деталь считается заканчивающейся, когда количество падает до или ниже \"Мин. кол-во\", либо значения по умолчанию ниже, если оно не задано. Каждая деталь сообщается один раз за спад и молчит до пополнения.",
"enable": "Включить оповещения о низком запасе",
"enableHint": "По умолчанию выключено. Отслеживаются только детали с заданной точкой заказа.",
"inApp": "Уведомление в приложении",
"inAppHint": "Одно сгруппированное уведомление в колокольчике, а не по одному на деталь.",
"email": "Сводка по эл. почте",
"emailHint": "Одно письмо со списком всех деталей, запас которых только что упал.",
"emailInterval": "Минимум часов между письмами",
"emailIntervalHint": "Не более одной сводки за столько часов. 0 снимает ограничение.",
"save": "Сохранить оповещения",
"saved": "Оповещения о низком запасе сохранены",
"defaultThreshold": "Точка заказа по умолчанию",
"defaultThresholdHint": "Применяется только к деталям без собственной точки заказа. Собственный \"Мин. кол-во\" детали — задаётся при её редактировании — всегда имеет приоритет. Оставьте 0, чтобы отслеживать только настроенные вручную детали.",
"checkNow": "Проверить сейчас",
"checkDisabled": "Оповещения выключены.",
"checkNothingNew": "Ничего нового — все детали с низким запасом уже отмечены.",
"checkAlerted": "Сообщено о {count} новых деталях с низким запасом",
"checkFailed": "Ошибка проверки",
"configurePerPart": "Задайте мин. количество детали на странице склада →",
"readMore": "Подробнее"
},
"technicianStatus": {
"title": "Приложение механика Torqvoice (Android/iOS)",
"description": "Уведомление, когда механик меняет заказ со своего телефона.",
"inApp": "Уведомлять приёмку",
"inAppHint": "Уведомление, когда заказ завершён, ожидает запчасти или снова взят в работу.",
"save": "Сохранить",
"saved": "Настройки уведомлений сохранены",
"saveFailed": "Не удалось сохранить настройки"
}
},
"support": {
"title": "Поддержка",
"description": "Обратитесь в службу поддержки Torqvoice, не покидая приложение. В запрос попадут ваша организация и страница, на которой вы находились.",
"showButton": "Показывать кнопку поддержки",
"showButtonHint": "Перетаскиваемая кнопка на каждой странице этого устройства. Когда она скрыта, вернуть её можно небольшой вкладкой у правого края.",
"contactTitle": "Связаться с поддержкой",
"contactHint": "Открыть форму поддержки сразу.",
"contactAction": "Открыть форму"
},
"install": {
"title": "Установить Torqvoice",
"description": "Установите Torqvoice на это устройство, чтобы открывать его с главного экрана — во весь экран и без адресной строки. Это то же приложение и те же данные.",
"installed": "Torqvoice установлен на этом устройстве.",
"iosHint": "В Safari нажмите «Поделиться», затем «На экран «Домой»».",
"unavailable": "Этот браузер не предложил установку. Откройте меню браузера и найдите «Установить приложение» или «На экран «Домой»».",
"bannerHidden": "Баннер установки скрыт на этом устройстве.",
"showBanner": "Показать баннер снова"
},
"tireHotel": {
"title": "Шинный отель",
"description": "Храните сезонные шины клиентов и всегда знайте, где лежит каждый комплект.",
"cardTitle": "Хранение шин",
"enable": "Включить шинный отель",
"enableHint": "Добавляет хранение шин в меню. Отключение позже скроет раздел, ничего не удаляя.",
"defaultCapacity": "Шин на полке по умолчанию",
"defaultCapacityHint": "Подставляется при создании новых полок. Можно изменить для каждой полки.",
"warnPercent": "Предупреждать при заполнении (%)",
"warnPercentHint": "Помечает обзор склада, когда занята эта доля общей вместимости.",
"treadTitle": "Пороги замены",
"treadHint": "Законодательные минимумы различаются по странам, поэтому задайте пороги своего рынка. Протектор ниже порога помечается под замену.",
"summerLimit": "Летний порог ({unit})",
"winterLimit": "Зимний порог ({unit})",
"unitMm": "mm",
"unit32nds": "1/32\"",
"setupHint": "Далее настройте полки.",
"setupLink": "Открыть структуру склада",
"save": "Сохранить настройки шинного отеля",
"saved": "Настройки шинного отеля сохранены",
"billingTitle": "Оплата хранения",
"billingHint": "Подставляется в строку хранения при выставлении счёта за комплект. Можно изменить в счёте.",
"seasonalPrice": "Цена хранения по умолчанию",
"prepTitle": "Цены на подготовку",
"prepHint": "Сколько стоит каждый вид подготовки. Пустое поле означает, что она никогда не выставляется, как нужно мастерским, у которых мойка входит в хранение. Те, у которых есть цена, попадают в смету и заказ сами.",
"prepNotCharged": "не выставляется"
},
"designer": {
"invoice": "Счёт",
"quote": "Предложение",
"eyebrow": "Конструктор документов",
"galleryTitle": "Начните с шаблона",
"galleryHint": "Выберите отправную точку. В конструкторе можно изменить всё.",
"yourDesigns": "Ваши макеты",
"autoRuleHint": "Продажи без автомобиля печатаются с отмеченным для них дизайном, если продажа или её клиент не выбрали другой.",
"useForPartsSale": "Использовать для продаж только запчастей",
"usedForPartsSale": "Используется для продаж только запчастей",
"autoRule": {
"parts_sale": "Продажа только запчастей"
},
"autoRuleSaved": "Обновлено, когда используется «{name}»",
"couldNotSaveRule": "Не удалось обновить правило",
"templates": "Шаблоны",
"inUse": "Используется",
"savedOn": "Сохранено {date}",
"deleteDesignTitle": "Удалить макет",
"deleteDesignBody": "Удалить макет «{name}»? Счёт и предложение сохранят применённое оформление; исчезнет только сохранённая копия.",
"delete": "Удалить",
"deleteDesign": "Удалить этот макет",
"continueCurrent": "Продолжить с текущей компоновкой",
"backToSettings": "Назад к настройкам",
"useInvoiceDesign": "Взять макет счёта",
"copiedToQuote": "Макет счёта скопирован в предложение",
"rulers": "Линейки",
"saveDesign": "Сохранить макет",
"saveDesignHint": "Сохраните именованную копию этого макета, чтобы вернуться к ней из галереи шаблонов",
"reset": "Сбросить",
"save": "Сохранить",
"saving": "Сохранение…",
"saved": "Сохранено",
"couldNotSave": "Не удалось сохранить",
"couldNotSaveDesigns": "Не удалось сохранить ваши макеты",
"designUpdated": "Макет «{name}» обновлён",
"designSaved": "Сохранено как «{name}»",
"defaultDesignName": "Мой макет: {doc}",
"documentStyling": "Оформление документа",
"sections": "Разделы",
"sectionEmpty": "пусто",
"sectionEmptyHint": "Показывается, но с текущими данными печатать в нём нечего.",
"sectionShownHint": "Виден на листе. Нажмите, чтобы скрыть.",
"sectionHiddenHint": "Скрыт с листа. Нажмите, чтобы показать.",
"railHint": "Перетащите раздел на страницу: отпустите между блоками, чтобы изменить порядок, на карточку, чтобы встать рядом с ней, или в любое другое место, чтобы разместить свободно. Страница освободит место вокруг него.",
"returnToFlow": "Вернуть раздел «{section}» в поток",
"saveDialogTitle": "Сохранить этот макет",
"saveDialogBody": "Сохраняет именованную копию текущей компоновки и оформления. Вы найдёте её в разделе «Ваши макеты» галереи шаблонов.",
"designNamePlaceholder": "Название макета",
"nameExists": "Макет с таким названием уже есть; сохранение обновит его.",
"updateDesign": "Обновить макет",
"cancel": "Отмена",
"insertHere": "Вставить здесь",
"dropLeftColumn": "Левая колонка",
"dropRightColumn": "Правая колонка",
"freePosition": "Свободное место",
"sectionSettings": "Настройки раздела",
"panelStyle": "Стиль панели",
"variant": {
"accent": "Акцент",
"panel": "Панель",
"outline": "Контур",
"lines": "Линии",
"hint": "Акцент подкрашивает карточку основным цветом. Панель приводит её к виду остальных карточек с деталями. Контур рисует только рамку, а Линии печатают без рамки.",
"classic": "Классический",
"box": "Рамка",
"totalsHint": "Классический печатает простые строки с линией над итогом. Рамка обрамляет их. Панель и Акцент помещают их на карточку."
},
"alignment": "Выравнивание",
"alignCenter": "По центру",
"itemsTableHint": "Единый нумерованный список всех строк заказа: сначала работы, затем запчасти, вместо отдельных таблиц.",
"discardChanges": "Отменить изменения",
"tablesExclusiveHint": "Лист печатает один вариант: единый нумерованный список или отдельные таблицы запчастей и работ. Включение одного выключает другой.",
"innerPadding": "Внутренний отступ",
"totalsWidth": "Ширина",
"totalsWidthHint": "Пусто — блок занимает всю строку. Значение в пунктах вешает его справа; в колонке он занимает её ширину.",
"placement": "Размещение",
"visible": "Виден",
"columnFull": "Вся ширина",
"columnLeft": "Слева",
"columnRight": "Справа",
"drawBox": "Рисовать рамку",
"showHeading": "Показывать заголовок",
"spacing": "Отступы",
"placedByHand": "Этот раздел размещён вручную, поэтому отступы потока его не двигают.",
"placedByHandFramed": "Бланк в рамке лежит на полосе; перетащите его, чтобы сдвинуть.",
"placedByHandDrag": "Перетащите его или верните в поток, чтобы отступы заработали.",
"marginTop": "Сверху",
"marginBottom": "Снизу",
"marginLeft": "Слева",
"marginRight": "Справа",
"spacingHint": "Пункты пустого места, которое раздел держит вокруг себя в потоке.",
"logo": "Логотип",
"size": "Размер",
"logoHint": "Отключите логотип в разделе «Поля», чтобы вместо него печаталось название компании.",
"fields": "Поля",
"removeField": "Убрать из этого раздела",
"yourCustomFields": "Ваши свои поля",
"appearance": "Внешний вид",
"details": "Реквизиты",
"text": "Текст",
"companyName": "Название компании",
"heading": "Заголовок",
"fill": "Заливка",
"border": "Рамка",
"lineWidth": "Толщина линии",
"borderWidth": "Толщина рамки",
"outerBorder": "Внешняя рамка",
"rowBanding": "Чередование строк",
"likeSheet": "Как на листе",
"on": "Вкл.",
"off": "Выкл.",
"font": "Шрифт",
"inherit": "Наследовать",
"auto": "авто",
"sectionDragHint": "Перетащите этот раздел в списке или на странице, чтобы сдвинуть его. После размещения вручную стрелки двигают его на один пункт, с Shift на десять, а Escape отменяет перетаскивание.",
"document": "Документ",
"documentSubtitle": "Применяется ко всему листу",
"headerStyleTitle": "Стиль шапки",
"headerStyle": {
"standard": {
"name": "Обычная",
"desc": "Название и реквизиты на белом, линия снизу"
},
"compact": {
"name": "Компактная",
"desc": "Узкая шапка, плотные строки"
},
"modern": {
"name": "Современная",
"desc": "Цветная полоса во всю ширину"
},
"framed": {
"name": "В рамке",
"desc": "Полоса сверху и планка по левому краю"
}
},
"colors": "Цвета",
"primary": "Основной",
"background": "Фон",
"accent": "Акцент",
"frame": "Рамка",
"rail": "Планка",
"leftEdge": "Левый край",
"rightEdge": "Правый край",
"frameLine": "Линия рамки",
"cornerRadius": "Скругление углов",
"shadow": "Тень",
"shadowThin": "Тонкая",
"shadowNormal": "Обычная",
"shadowWide": "Широкая",
"typography": "Типографика",
"baseSize": "Базовый размер",
"page": "Страница",
"margins": "Поля страницы",
"rowHeight": "Высота строки",
"band": "Полоса",
"sample": {
"itemLabor": "Замена передних тормозов",
"itemDisc": "Тормозной диск, передний",
"itemPads": "Комплект колодок, передняя ось",
"itemConsumables": "Расходные материалы",
"unitPcs": "шт.",
"unitSet": "компл.",
"unitEach": "x",
"findingPads": "Задние колодки на 15 %",
"findingPadsNote": "Заменить в течение 5 000 км",
"findingOilWeep": "Небольшое запотевание масла у клапанной крышки",
"notes": "Спасибо, что выбрали нашу мастерскую. Если появятся вопросы, свяжитесь с нами.",
"warranty": "Гарантия 12 месяцев на детали и работу.",
"serviceTitle": "Годовое ТО и тормоза",
"serviceType": "Ремонт",
"companyName": "Ваша мастерская",
"slogan": "Качественный сервис, которому можно доверять",
"paymentTerms": "Оплата в течение 14 дней",
"footerNote": "Благодарим за обращение",
"value": "Пример",
"testLocation": "ул. Портовая 12, Спрингфилд",
"certificateNotes": "Шины близки к допустимому пределу; до следующей проверки их, вероятно, придётся заменить.",
"checkBrakeHoses": "Тормозные шланги",
"checkBrakeHosesNote": "Небольшая потёртость левого переднего шланга, наружный слой цел.",
"sectionBrakes": "Тормозная система",
"checkBrakePedal": "Педаль рабочего тормоза",
"checkBrakeFluid": "Тормозная жидкость",
"sectionLighting": "Световые приборы",
"checkHeadlamps": "Состояние фар",
"checkFogLamp": "Задний противотуманный фонарь",
"photoFront": "Спереди",
"photoOdometer": "Одометр",
"concernNoise": "Скрежет спереди при торможении",
"concernNoiseDetail": "Передние колодки и диски изношены; заменены",
"concernWarningLight": "Индикатор на панели горит с прошлой недели",
"workRequested": "Заменить передние колодки и диски, сбросить индикатор ТО и провести тест-драйв.",
"checklistTestDrive": "Тест-драйв",
"markScratch": "Царапина от ключа вдоль двери, 20 см",
"markDent": "Вмятина под ручкой, краска цела",
"markChip": "Сколы в нижней части бампера",
"viewTop": "Сверху",
"viewLeft": "Левая сторона",
"viewRight": "Правая сторона",
"viewFront": "Спереди",
"viewRear": "Сзади",
"panelLeftRearDoor": "Левая задняя дверь",
"panelLeftFrontDoor": "Левая передняя дверь",
"panelFrontBumper": "Передний бампер",
"kindScratch": "Царапина",
"kindDent": "Вмятина",
"kindChip": "Скол",
"severityMinor": "Небольшое",
"severityMajor": "Серьёзное",
"markPrevious": "зафиксировано ранее"
},
"logoUpload": "Загрузить логотип",
"logoReplace": "Заменить логотип",
"logoUploading": "Загрузка…",
"logoFailed": "Не удалось загрузить изображение",
"footerLogoHint": "Включите логотип в разделе «Поля», чтобы печатать его и внизу страницы.",
"logoReset": "Использовать логотип компании",
"logoOwn": "Печатается только в этом документе. Логотип компании не меняется.",
"logoInherited": "Используется логотип компании. Загрузите другой, чтобы применить его только к этому документу.",
"slogan": "Слоган",
"sloganPlaceholderHint": "Слоган не задан, поэтому на листе показан образец, который не будет напечатан.",
"sloganSetHint": "Слоган берётся из данных вашей компании.",
"sloganLink": "Настройки компании",
"paymentTerms": "Условия оплаты",
"paymentTermsPlaceholderHint": "Условия оплаты не заданы, поэтому на листе показан образец, который не будет напечатан.",
"paymentTermsSetHint": "Условия оплаты берутся из настроек оплаты.",
"paymentTermsLink": "Настройки оплаты",
"telegramQr": "Код Telegram",
"telegramQrConnectedHint": "Печатает код, открывающий {link}, ваш подключённый бот Telegram. Появляется только на счетах, выставленных после включения блока.",
"telegramQrPlaceholderHint": "Бот Telegram не подключён, поэтому на листе показан образец кода, который не будет напечатан.",
"telegramQrLink": "Интеграции",
"signatureWhose": "Чья подпись",
"signatureOwnHint": "Каждый документ печатается с подписью того, кто его выставил: кто открыл заказ-наряд, составил смету или провёл осмотр. На листе показана ваша.",
"signaturePlaceholderHint": "Каждый документ печатается с подписью того, кто его выставил: кто открыл заказ-наряд, составил смету или провёл осмотр. Вы ещё не сохранили подпись, поэтому на листе показан образец.",
"signatureLink": "Задать свою подпись",
"titleText": "Текст заголовка",
"titleTextHint": "Как называется этот документ. Если оставить пустым, печатается его собственное название на языке читателя.",
"orgNumberLabel": "Название номера организации",
"orgNumberLabelHint": "Печатается рядом с номером организации в счетах и предложениях. Оставьте пустым, чтобы использовать стандартное название на вашем языке, или укажите, как он называется у вас, например ИНН, ОГРН или УНП. Общее значение с настройками компании.",
"placeholder": "Образец",
"leaveTitle": "Выйти без сохранения?",
"leaveBody": "Изменения в этом оформлении не сохранены и будут потеряны.",
"leaveConfirm": "Выйти",
"boldField": "Жирный",
"deleteDesignDrafts": "{count, plural, one {# черновик счёта} few {# черновика счетов} many {# черновиков счетов} other {# черновика счетов}} с этим дизайном вернутся к дизайну по умолчанию.",
"deleteDesignCustomers": "{count, plural, one {# клиент} few {# клиента} many {# клиентов} other {# клиента}} с этим дизайном вернутся к дизайну по умолчанию.",
"setDefault": "Сделать основным",
"defaultSet": "«{name}» теперь используется",
"couldNotSetDefault": "Не удалось установить дизайн по умолчанию",
"fieldFixedSlot": "Всегда печатается на одном и том же месте, поэтому переместить нельзя.",
"certificate": "Сертификат осмотра",
"resultWidthHint": "Пусто — на всю строку. Укажите пункты, чтобы сузить полосу; она встанет со стороны, заданной выравниванием, а в колонке займёт её ширину.",
"work_order": "Заказ-наряд",
"conditionMapDrawing": "Рисунок",
"conditionMapViews": "Виды",
"conditionMapViewsAll": "Все пять",
"conditionMapViewsTop": "Только сверху",
"conditionMapViewsSides": "Только бока",
"conditionMapWidthHint": "Пусто занимает всю строку. Укажите пункты, чтобы уменьшить рисунок; он встанет по выравниванию, а легенда сохранит полную ширину."
},
"preview": {
"title": "Обслуживание тормозов и замена масла",
"serviceType": "Техобслуживание",
"findingPads": "Задние тормозные колодки изношены до 15 %",
"findingPadsNote": "Рекомендуем заменить в течение 8 000 км",
"findingOilLeak": "Небольшая течь масла по прокладке клапанной крышки",
"invoiceNotes": "Передние тормозные колодки заменены. Масло и фильтр заменены на синтетику 5W-30. Следующее ТО рекомендуем на 80 000 км.",
"quoteNotes": "Рекомендуем заменить передние тормозные колодки. Замена масла и фильтра на синтетику 5W-30.",
"partBrakePads": "Тормозные колодки (передние)",
"partOilFilter": "Масляный фильтр",
"partSyntheticOil": "Синтетическое масло 5W-30",
"laborBrakeReplacement": "Замена тормозов",
"laborOilChange": "Замена масла"
},
"inspectionReminders": {
"title": "Напоминания о техосмотре и запись",
"description": "Как работает ссылка на запись в напоминании. Задаётся один раз; используют все кампании.",
"duration": "Длительность техосмотра (мин.)",
"durationHint": "Сколько техосмотр занимает пост. Ссылка записывает на интервалы такой длины.",
"leadDays": "Самая ранняя запись (дней)",
"leadDaysHint": "1 означает, что первое предложенное время — завтра, никогда не сегодня.",
"horizonWeeks": "Насколько вперёд (недель)",
"horizonHint": "Клиенты могут выбрать любое свободное время в течение этих недель.",
"reserve": "Оставить свободным для пришедших без записи",
"reserveHint": "Посты или мастера, которые ссылка никогда не занимает. 0 разрешает все свободные.",
"linkValidDays": "Ссылка действует (дней)",
"linkValidHint": "Не менее {min}. Ссылки также действуют до недели после срока, смотря что позже.",
"bookingMode": "Что создаёт запись",
"bookingModeDirect": "Запланированный заказ на доске",
"bookingModeRequest": "Запрос, который офис сначала подтверждает",
"bookingModeHint": "Прямая запись — то, ради чего стоит нажимать ссылку. Выберите запрос, если хотите подтверждать каждую.",
"phone": "Телефон в сообщениях",
"phoneHint": "Показывается как альтернатива ссылке. По умолчанию — телефон мастерской.",
"save": "Сохранить",
"saved": "Настройки сохранены",
"saveFailed": "Не удалось сохранить",
"timeZoneDetected": "Часовой пояс стоит на автоматическом в разделе Локализация, поэтому сервер использует {zone} — пояс, последним увиденный в браузере, сохранившем настройки. Выберите пояс мастерской явно, чтобы время записи никогда не зависело от того, кто сохранил последним.",
"timeZoneExplicit": "Время записи и часы работы читаются в поясе {zone}.",
"timeZoneChange": "Изменить в Локализации"
},
"emailTemplates": {
"title": "Шаблоны писем",
"description": "Что говорят письма, которые отправляет ваша мастерская, и как они выглядят. У каждого вида письма есть встроенный шаблон; создайте свой, чтобы изменить текст, цвета и блоки, из которых оно состоит.",
"lockedDescription": "Оформляйте письма, которые отправляет ваша мастерская: меняйте текст, добавляйте или убирайте блоки и подбирайте цвета под свой бренд.",
"groups": {
"documents": "Документы",
"messages": "Сообщения",
"portal": "Портал клиента",
"team": "Команда"
},
"kinds": {
"invoice_sent": {
"name": "Счёт отправлен",
"description": "Отправляется, когда счёт уходит клиенту по почте, с вложенным PDF или ссылкой для просмотра."
},
"quote_sent": {
"name": "Предложение отправлено",
"description": "Отправляется, когда предложение уходит клиенту по почте."
},
"inspection_sent": {
"name": "Отчёт об осмотре отправлен",
"description": "Отправляется, когда отчёт об осмотре уходит клиенту по почте."
},
"message": {
"name": "Сообщение клиенту",
"description": "Сообщение клиенту: уведомление из заказа, отчёт о статусе, приглашение на видеозвонок или запланированное напоминание."
},
"portal_signin": {
"name": "Вход в портал",
"description": "Ссылка для входа, которую клиент запрашивает на портале клиента."
},
"team_invitation": {
"name": "Приглашение в команду",
"description": "Отправляется коллеге, которого вы приглашаете в мастерскую, со ссылкой для создания аккаунта."
}
},
"blocks": {
"header": "Шапка",
"heading": "Заголовок",
"paragraph": "Абзац",
"callout": "Выноска",
"button": "Кнопка",
"document_summary": "Сводка документа",
"attachment_note": "Примечание о вложении",
"image": "Изображение",
"divider": "Разделитель",
"spacer": "Отступ",
"contact_footer": "Подвал с контактами"
},
"blockNotes": {
"header": "Ваш логотип или название мастерской, если логотипа нет или он выключен. Загрузите логотип и задайте его размер здесь; цвета и шрифты находятся в разделе Тема и оформление.",
"contact_footer": "Название, адрес, телефон и почта вашей мастерской из настроек раздела Компания. Заполните их там, чтобы изменить то, что печатается здесь.",
"divider": "Тонкая линия между двумя блоками. Пропускается, если бы она открывала или закрывала письмо.",
"callout": "Выделенная панель с цветной кромкой. Подходит для самых важных слов, например для самого сообщения.",
"attachment_note": "Печатается только тогда, когда к письму приложен PDF.",
"button": "Ссылка обычно является тегом, например ссылкой для просмотра. Кнопка, у ссылки которой нет значения, в письмо не попадает.",
"document_summary": "Панель с ключевыми цифрами документа. Строки, в которых нечего показать, пропускаются.",
"image": "При загрузке изображения сжимаются и уменьшаются для письма. Изображения, которые больше не используются, удаляются при сохранении шаблона.",
"summaryUnused": "У этого вида письма нет документа, поэтому сводка ничего не печатает."
},
"tagGroups": {
"workshop": "Мастерская",
"customer": "Клиент",
"vehicle": "Автомобиль",
"document": "Документ",
"message": "Сообщение",
"portal": "Портал",
"team": "Команда"
},
"tags": {
"workshop_name": {
"label": "Название мастерской",
"description": "Название вашей мастерской."
},
"workshop_phone": {
"label": "Телефон мастерской",
"description": "Номер телефона из настроек раздела Компания."
},
"workshop_email": {
"label": "Почта мастерской",
"description": "Адрес электронной почты из настроек раздела Компания."
},
"workshop_address": {
"label": "Адрес мастерской",
"description": "Адрес из настроек раздела Компания, на стольких строках, сколько в нём есть."
},
"current_user": {
"label": "Имя отправителя",
"description": "Имя человека, который отправляет письмо."
},
"customer_name": {
"label": "Имя клиента",
"description": "Имя клиента, которому уходит письмо."
},
"vehicle": {
"label": "Автомобиль",
"description": "Год, марка и модель автомобиля."
},
"plate": {
"label": "Госномер",
"description": "Регистрационный номер автомобиля."
},
"mileage": {
"label": "Пробег",
"description": "Пробег, записанный у автомобиля."
},
"document_number": {
"label": "Номер документа",
"description": "Номер счёта или предложения."
},
"document_title": {
"label": "Название документа",
"description": "Название работы или документа."
},
"total": {
"label": "Итого",
"description": "Итоговая сумма документа в его валюте."
},
"balance_due": {
"label": "К оплате",
"description": "Сколько ещё причитается по документу после оплат."
},
"due_date": {
"label": "Срок оплаты",
"description": "Дата, к которой нужно оплатить."
},
"share_link": {
"label": "Ссылка для просмотра",
"description": "Ссылка, по которой клиент может открыть документ онлайн."
},
"message": {
"label": "Сообщение",
"description": "Сообщение, написанное для этого письма, или примечание, добавленное к документу."
},
"signin_link": {
"label": "Ссылка для входа",
"description": "Ссылка, которая выполняет вход клиента в портал. Она быстро истекает."
},
"portal_link": {
"label": "Ссылка на портал",
"description": "Ссылка на портал клиента."
},
"invite_link": {
"label": "Ссылка приглашения",
"description": "Ссылка, которая создаёт аккаунт и добавляет в команду. Перестаёт работать по истечении приглашения."
},
"role": {
"label": "Роль",
"description": "Роль, в которой приглашён человек."
},
"invite_expires": {
"label": "Срок действия",
"description": "Последний день, когда работает ссылка приглашения."
}
},
"headerRule": "Линия под шапкой",
"headerRuleHint": "Тонкая линия между логотипом или названием мастерской и остальным письмом.",
"optionalTag": "Не у каждого письма есть значение для этого тега. Когда он пуст, слова вокруг него приводятся в порядок.",
"summaryRows": {
"reference": "Номер",
"vehicle": "Автомобиль",
"total": "Итого",
"balance": "К оплате",
"due": "Срок оплаты"
},
"builtIn": "Встроенный",
"inUse": "Используется",
"useBuiltIn": "Использовать встроенный",
"setDefault": "Сделать основным",
"defaultSet": "Теперь отправляется с «{name}»",
"couldNotSetDefault": "Не удалось сменить используемый шаблон",
"updatedOn": "Обновлено {date}",
"delete": "Удалить",
"deleteTitle": "Удалить шаблон",
"deleteConfirm": "Удалить шаблон «{name}»? Если он используется, письма вернутся к встроенному шаблону.",
"deleteTemplate": "Удалить этот шаблон",
"deleted": "Удалён «{name}»",
"couldNotDelete": "Не удалось удалить шаблон",
"backToSettings": "Назад к настройкам",
"unsaved": "(не сохранено)",
"save": "Сохранить",
"saving": "Сохранение…",
"savedState": "Сохранено",
"saved": "Сохранён «{name}»",
"couldNotSave": "Не удалось сохранить",
"saveAsNew": "Сохранить как новый",
"discard": "Отменить изменения",
"sendTest": "Отправить тест",
"cancel": "Отмена",
"problems": "{count, plural, one {# проблема} few {# проблемы} many {# проблем} other {# проблемы}}",
"unknownTags": "Этих тегов нет для этого вида письма: {tags}",
"missingTags": "Это письмо должно содержать {tags}",
"subjectRequired": "Тема не может быть пустой",
"invalidTemplate": "Какой-то текст слишком длинный, или в поле указано недопустимое значение.",
"leaveTitle": "Выйти без сохранения?",
"leaveBody": "Ваши изменения в этом шаблоне не сохранены. Они будут потеряны.",
"leaveConfirm": "Выйти",
"subjectAndTheme": "Тема и оформление",
"settingsSubtitle": "Применяется ко всему письму",
"blocksTitle": "Блоки",
"addBlock": "Добавить блок",
"removeBlock": "Убрать блок",
"removeBlockLast": "Последний блок нельзя убрать",
"blockEmpty": "пусто",
"blockEmptyHint": "Показывается, но печатать в нём пока нечего.",
"blockShownHint": "Виден в письме. Нажмите, чтобы скрыть.",
"blockHiddenHint": "Скрыт из письма. Нажмите, чтобы показать.",
"railHint": "Перетащите блок за ручку, чтобы переместить его. Линия показывает, куда он встанет. Нажмите на блок, чтобы отредактировать его текст справа.",
"resizeHint": "Перетащите, чтобы изменить размер панели. Двойной щелчок сбрасывает размер.",
"desktop": "Компьютер",
"mobile": "Телефон",
"htmlView": "HTML",
"textView": "Обычный текст",
"desktopTooltip": "Предпросмотр в ширине компьютера",
"mobileTooltip": "Предпросмотр в ширине телефона",
"htmlViewTooltip": "Показать HTML-письмо",
"previewWidth": "Ширина предпросмотра",
"previewView": "Вид предпросмотра",
"textViewTooltip": "Показать текстовую версию",
"inboxNow": "Сейчас",
"inboxNoSender": "Ваша мастерская",
"inboxNoSubject": "(без темы)",
"subject": "Тема",
"text": "Текст",
"buttonLabel": "Текст кнопки",
"buttonHref": "Ссылка",
"spacerHeight": "Высота",
"tagsTitle": "Теги",
"tagsHint": "Нажмите на тег, чтобы вставить его в позицию курсора в поле, в котором вы печатали последним.",
"theme": {
"colors": "Цвета",
"primaryColor": "Основной",
"textColor": "Текст",
"mutedColor": "Приглушённый текст",
"backgroundColor": "Фон",
"panelColor": "Панели",
"invalidColor": "Один из цветов не является корректным hex-значением",
"hexLabel": "{label} в формате hex",
"typography": "Типографика",
"font": "Шрифт",
"fontHint": "Только шрифты, которые уже есть в каждом почтовом клиенте. Веб-шрифты большинство из них не загружает.",
"fonts": {
"system": "Системный",
"arial": "Arial",
"georgia": "Georgia",
"verdana": "Verdana",
"trebuchet": "Trebuchet MS",
"courier": "Courier New"
},
"lineSpacing": "Межстрочный интервал",
"lineSpacings": {
"compact": "Плотный",
"normal": "Обычный",
"relaxed": "Свободный"
},
"paragraphSpacing": "Интервал между абзацами",
"paragraphSpacings": {
"tight": "Узкий",
"normal": "Обычный",
"loose": "Широкий"
},
"spacingHint": "Межстрочный интервал — высота каждой строки; интервал между абзацами — расстояние между абзацами и между текстовыми блоками. Enter начинает новый абзац, Shift+Enter — новую строку внутри него.",
"shapes": "Формы",
"buttonRadius": "Углы кнопки",
"topBar": "Цветная полоса сверху",
"topBarHint": "Тонкая полоса в вашем основном цвете вдоль верхнего края письма.",
"showLogo": "Показывать логотип",
"showLogoHint": "При выключенном логотипе шапка печатает вместо него название мастерской."
},
"nameDialog": {
"title": "Сохранить этот шаблон",
"body": "Дайте шаблону название, по которому вы найдёте его в галерее. Сохранение также делает его шаблоном, с которым отправляется этот вид письма.",
"placeholder": "Название шаблона",
"nameExists": "Шаблон с таким названием уже есть. Выберите другое название.",
"save": "Сохранить шаблон",
"update": "Обновить шаблон"
},
"testDialog": {
"title": "Отправить тестовое письмо",
"body": "Письмо отправляется с примерными данными, чтобы вы увидели его в настоящем почтовом клиенте.",
"placeholder": "Адрес электронной почты",
"send": "Отправить",
"sending": "Отправка…",
"sentTitle": "Тестовое письмо отправлено",
"sentBody": "Проверьте почтовый ящик {email}. Письмо может идти около минуты.",
"failedTitle": "Не удалось отправить тестовое письмо",
"failedBody": "Проверьте почтового провайдера в разделе Провайдеры и попробуйте снова."
},
"toolbar": {
"bold": "Жирный",
"italic": "Курсив",
"underline": "Подчёркнутый",
"strike": "Зачёркнутый",
"link": "Ссылка",
"linkUrl": "Адрес ссылки",
"linkPlaceholder": "https://... или {share_link}",
"linkHint": "Веб-адрес или тег, например {share_link}, который заполняется при отправке письма.",
"linkApply": "Применить",
"linkRemove": "Убрать ссылку",
"bulletList": "Маркированный список",
"orderedList": "Нумерованный список",
"align": {
"left": "По левому краю",
"center": "По центру",
"right": "По правому краю"
},
"size": {
"label": "Размер текста",
"default": "Размер по умолчанию",
"small": "Мелкий",
"normal": "Обычный",
"large": "Крупный",
"extraLarge": "Очень крупный"
},
"color": {
"label": "Цвет текста",
"text": "Цвет текста темы",
"muted": "Приглушённый цвет темы",
"primary": "Основной цвет темы",
"default": "По умолчанию",
"hex": "Hex-цвет",
"apply": "Применить"
},
"clear": "Очистить форматирование"
},
"logo": {
"title": "Логотип",
"empty": "Логотип не загружен. Шапка печатает название мастерской.",
"upload": "Загрузить логотип",
"replace": "Заменить логотип",
"remove": "Убрать",
"uploading": "Загрузка…",
"width": "Ширина логотипа",
"hint": "Не зависит от логотипа компании. При загрузке обрезается и подготавливается для письма. PNG, JPEG или WebP до 4 МБ.",
"position": "Положение",
"tooLarge": "Изображение должно быть меньше 4 МБ",
"uploadFailed": "Не удалось загрузить логотип"
},
"image": {
"empty": "Изображение не загружено. Блок ничего не печатает, пока его нет.",
"upload": "Загрузить изображение",
"replace": "Заменить изображение",
"remove": "Убрать",
"uploading": "Загрузка…",
"alt": "Описание",
"altHint": "Зачитывается читателям, которые не видят изображение, и показывается, пока оно загружается. PNG, JPEG или WebP до 10 МБ.",
"width": "Ширина",
"widthHint": "600 px соответствует полной ширине письма. Более узкие изображения размещаются так, как указано в поле Положение.",
"link": "Ссылка",
"linkHint": "Необязательно. Открывается при нажатии на изображение; здесь подойдёт и тег, например ссылка для просмотра.",
"tooLarge": "Изображение должно быть меньше 10 МБ",
"uploadFailed": "Не удалось загрузить изображение"
},
"dragHandle": "Перетащите, чтобы изменить порядок",
"dragHandleKeyboard": "Перетащите этот блок или переместите его клавишами со стрелками",
"tagDoesNotFit": "Тег не помещается в это поле."
},
"workOrderStatuses": {
"title": "Статусы заказ-нарядов",
"description": "Ваши собственные названия шагов, через которые проходит работа. Каждый относится к одной из трёх стадий и появляется в меню этой стадии в каждом заказ-наряде.",
"cardTitle": "Стадии и статусы",
"suggestionsLabel": "Быстрое добавление",
"suggestions": {
"readyForPickup": {
"name": "Готов к выдаче",
"message": "Здравствуйте, {customer_name}! Ваш {vehicle} готов к выдаче. {company_name}"
},
"waitingForCustomer": {
"name": "Ожидание клиента"
},
"waitingForApproval": {
"name": "Ожидание согласования",
"message": "Здравствуйте, {customer_name}! Нам нужно ваше согласие, прежде чем продолжить работы с {vehicle}. Свяжитесь с нами. {company_name}"
}
},
"stageHints": {
"pending": "До начала работ. Заказ считается открытым.",
"in-progress": "Пока идут работы с автомобилем. Заказ считается открытым.",
"completed": "Работа выполнена. Клиент может увидеть и оплатить счёт, а заказ исчезает из списка механика."
},
"add": "Добавить статус",
"builtIn": "Встроенный",
"asksToNotify": "Предлагает уведомить",
"notifyHint": "Когда заказ получает этот статус, предлагается отправить клиенту сообщение. Ничего не отправляется без вашего подтверждения.",
"moveUp": "Выше",
"moveDown": "Ниже",
"edit": "Изменить",
"remove": "Удалить",
"empty": "Здесь пока нет ваших статусов.",
"removeTitle": "Удалить {name}?",
"removeBody": "Он исчезнет из меню. Заказы, у которых он есть, продолжат его показывать.",
"addTitle": "Новый статус",
"editTitle": "Изменить статус",
"dialogBody": "Статус — это название с цветом. Стадия, к которой он относится, определяет, как обрабатывается заказ.",
"name": "Название",
"namePlaceholder": "Готов к выдаче",
"stage": "Стадия",
"color": "Цвет",
"notify": "Предлагать уведомить клиента",
"message": "Сообщение",
"tokens": "Вставить:",
"cancel": "Отмена",
"save": "Сохранить",
"saved": "Статус сохранён",
"failed": "Не удалось сохранить статус",
"messageEmptyHint": "Если оставить поле пустым, будет отправлен текст выше.",
"useSuggested": "Изменить этот текст"
},
"markTypes": {
"title": "Типы отметок",
"description": "Переименуйте или перекрасьте встроенные типы, скройте неиспользуемые и добавьте свои. У каждого типа есть форма и цвет, поэтому он различим и на чёрно-белой распечатке.",
"cardTitle": "Типы",
"add": "Добавить тип",
"addTitle": "Новый тип отметки",
"editTitle": "Изменить тип отметки",
"dialogBody": "Название своими словами, форма и цвет. Заливка означает серьёзную отметку.",
"previewHint": "Незначительная и серьёзная",
"name": "Название",
"namePlaceholder": "напр., Царапина о бордюр",
"shape": "Форма",
"color": "Цвет",
"customColor": "Цвет hex",
"colorInvalid": "Введите цвет шестью hex-символами, например #2563eb",
"hidden": "Скрыт в выборе",
"hiddenHint": "Отметки этого типа по-прежнему показываются и печатаются.",
"hiddenBadge": "Скрыт",
"builtin": "Встроенный",
"show": "Показывать в выборе",
"hide": "Скрыть из выбора",
"edit": "Изменить",
"moveUp": "Выше",
"moveDown": "Ниже",
"restore": "Вернуть",
"restoreTitle": "Вернуть «{name}»?",
"restoreBody": "Тип получит название, форму и цвет, с которыми поставляется приложение.",
"remove": "Удалить",
"removeTitle": "Удалить «{name}»?",
"removeBody": "Удалить можно только тип, который не использует ни одна отметка. Если такие отметки есть, скройте его.",
"save": "Сохранить",
"cancel": "Отмена",
"saved": "Сохранено",
"failed": "Не удалось сохранить",
"shapes": {
"circle": "Круг",
"diamond": "Ромб",
"triangle": "Треугольник",
"square": "Квадрат",
"cross": "Крест",
"hex": "Шестиугольник"
}
}
}