| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406 |
- {
- "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": "Налоговая ставка и значения по умолчанию"
- },
- "currency": {
- "title": "Валюта",
- "description": "Валюта и налоги по умолчанию"
- },
- "localization": {
- "title": "Локализация",
- "description": "Язык, валюта, дата и время"
- },
- "customFields": {
- "title": "Пользовательские поля",
- "description": "Определение пользовательских полей данных"
- },
- "email": {
- "title": "Эл. почта",
- "description": "Провайдер и отправка писем"
- },
- "sms": {
- "title": "SMS",
- "description": "Провайдер SMS и сообщения"
- },
- "telegram": {
- "title": "Telegram",
- "description": "Telegram bot & messaging"
- },
- "customerPortal": {
- "title": "Портал клиента",
- "description": "Портал самообслуживания клиентов"
- },
- "workshop": {
- "title": "Мастерская",
- "description": "Механики и ставки по умолчанию"
- },
- "laborPresets": {
- "title": "Пакеты работ",
- "description": "Предопределённые пакеты работ"
- },
- "maintenance": {
- "title": "Техобслуживание",
- "description": "Прогнозируемые интервалы обслуживания"
- },
- "ai": {
- "title": "ИИ",
- "description": "Провайдер ИИ и функции"
- },
- "reportSchedule": {
- "title": "Расписание отчётов",
- "description": "Автоматическая отправка отчётов"
- },
- "integrations": {
- "title": "Интеграции",
- "description": "Календари, видеозвонки и подключённые сервисы"
- },
- "webhooks": {
- "title": "Webhooks",
- "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": "Что говорят письма о счёте, предложении и отчёте"
- }
- },
- "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": "Marine",
- "marineServiceDescription": "Лодки, яхты и морские суда"
- },
- "account": {
- "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": "Введите <bold>удалить меня</bold> для подтверждения",
- "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": "Введите <bold>удалить мои данные</bold> для подтверждения",
- "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": "Введите <bold>{name}</bold> для подтверждения.",
- "deleteWorkshopSuccess": "Мастерская удалена",
- "deleteWorkshopFailed": "Не удалось удалить мастерскую",
- "deleteAccountMoved": "Хотите удалить свою учётную запись?",
- "deleteAccountMovedLink": "Это можно сделать в настройках данных."
- },
- "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": "Remove member",
- "cancelInvite": "Cancel invitation",
- "editRole": "Edit role",
- "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": "Спрашиваем один раз. Дальше номера можно вводить коротко. Позже это можно изменить в <link>настройках локализации</link>.",
- "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": "Используйте <code>{year}</code> для текущего года. Предпросмотр: <bold>{preview}</bold>",
- "quoteNumberFormat": "Формат номера предложения",
- "quoteNumberFormatHint": "Используйте <code>{year}</code> для текущего года. Предпросмотр: <bold>{preview}</bold>",
- "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": "Не удалось зафиксировать счета",
- "sectionSending": "Отправка",
- "attachPdfLabel": "Прикреплять PDF к письмам",
- "attachPdfHint": "Значение по умолчанию для каждого счёта, коммерческого предложения и осмотра, отправляемых по почте. Включено: клиент получает PDF во вложении. Выключено: он получает ссылку на документ, а счётчик просмотров показывает, когда её открыли, чтобы вы могли напомнить тем, кто ещё не посмотрел. Для отдельной отправки это можно изменить в окне общего доступа."
- },
- "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"
- },
- "fields": {
- "customer_name": "Имя клиента",
- "customer_company": "Компания клиента",
- "customer_address": "Адрес клиента",
- "customer_email": "Эл. почта клиента",
- "customer_phone": "Телефон клиента",
- "customer_tax_id": "ИНН клиента",
- "vehicle_name": "Транспортное средство",
- "vin": "VIN",
- "license_plate": "Госномер",
- "mileage": "Пробег",
- "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": "Ссылка на портал"
- },
- "presetsTitle": "Начать с расположения",
- "presetsHint": "Заменяет расположение ниже. Ничего не сохранится, пока вы не сохраните.",
- "presets": {
- "classic": {
- "name": "Классическое",
- "description": "Запчасти и работы в отдельных таблицах, данные слева друг под другом"
- },
- "letterhead": {
- "name": "Фирменный бланк",
- "description": "Контакты внизу, заголовок под адресами"
- },
- "compact": {
- "name": "Компактное",
- "description": "Без рамок, только необходимое"
- },
- "minimal": {
- "name": "Минимализм",
- "description": "Чистая типографика на белом: без рамок и полос, только линии и воздух"
- },
- "itemized": {
- "name": "По позициям",
- "description": "Один нумерованный список позиций со столбцом единицы"
- },
- "detailed": {
- "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": "Предложение",
- "inspections": "Осмотры",
- "sms": "SMS",
- "layout": "Макет"
- },
- "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": "Настройте текстовые сообщения, отправляемые клиентам. Используйте переменные, такие как <code>'{companyName}'</code>, для вставки динамических значений.",
- "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": "Цвета, шрифты, отступы и все разделы находятся в дизайнере."
- },
- "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": "Edit",
- "delete": "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": "Если включено, запчасти, выбранные со склада, также используют себестоимость + наценку по умолчанию (переопределяет цену продажи со склада).",
- "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": "Настройки ТО сохранены"
- },
- "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": "Настройки сохранены"
- },
- "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": "Импорт <bold>заменит все существующие данные</bold> содержимым файла резервной копии. Это действие необратимо.",
- "importFileHint": "Поддерживаются файлы .zip (v2) и .json (v1).",
- "uploadRestore": "Загрузить и восстановить",
- "importComplete": "Импорт завершён",
- "importCompleteMessage": "Все данные были восстановлены из файла резервной копии.",
- "importFailed": "Ошибка импорта",
- "importFromOther": "Импорт из других сервисов",
- "importFromOtherDescription": "Перенесите данные с другой платформы. Выберите сервис для начала.",
- "lubelogTitle": "Импорт из LubeLog",
- "lubelogExportSteps": "Как экспортировать данные из LubeLog:",
- "lubelogStep1": "Откройте ваш экземпляр LubeLog",
- "lubelogStep2": "Перейдите в <bold>Настройки</bold>",
- "lubelogStep3": "Нажмите <bold>Создать резервную копию</bold> для скачивания zip-файла",
- "lubelogStep4": "Загрузите скачанный zip-файл ниже",
- "lubelogAddNote": "Это <bold>добавит данные к существующим</bold> записям — ничего не будет удалено.",
- "lubelogImported": "Что будет импортировано:",
- "lubelogVehicles": "Транспортные средства",
- "lubelogServiceRecords": "Записи обслуживания с вложениями",
- "lubelogNotes": "Заметки",
- "lubelogFileHint": "Поддерживаются файлы до 200МБ.",
- "lubelogImportComplete": "Импорт LubeLog завершён",
- "cancel": "Отмена",
- "import": "Импортировать",
- "invoiceNinjaTitle": "Импорт из Invoice Ninja",
- "invoiceNinjaExportSteps": "Как экспортировать данные из Invoice Ninja:",
- "invoiceNinjaStep1": "Откройте ваш экземпляр Invoice Ninja",
- "invoiceNinjaStep2": "Перейдите в <bold>Настройки > Импорт | Экспорт</bold>",
- "invoiceNinjaStep3": "Нажмите <bold>Экспорт</bold> для скачивания zip-файла",
- "invoiceNinjaStep4": "Загрузите скачанный zip-файл ниже",
- "invoiceNinjaAddNote": "Это <bold>добавит данные к существующим</bold> записям — ничего не будет удалено.",
- "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": "Copy portal 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": "Copy webhook 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": "Failed to start checkout",
- "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})"
- },
- "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": "Каждые 4 месяца",
- "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": "Failed to save",
- "failedSend": "Failed to send",
- "failedToggle": "Failed to toggle",
- "failedDelete": "Failed to delete",
- "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": "Webhooks",
- "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": "Webhooks",
- "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": "Пример"
- },
- "logoUpload": "Загрузить логотип",
- "logoReplace": "Заменить логотип",
- "logoUploading": "Загрузка…",
- "logoFailed": "Не удалось загрузить изображение",
- "footerLogoHint": "Включите логотип в разделе «Поля», чтобы печатать его и внизу страницы.",
- "logoReset": "Использовать логотип компании",
- "logoOwn": "Печатается только в этом документе. Логотип компании не меняется.",
- "logoInherited": "Используется логотип компании. Загрузите другой, чтобы применить его только к этому документу.",
- "slogan": "Слоган",
- "sloganPlaceholderHint": "Слоган не задан, поэтому на листе показан образец, который не будет напечатан.",
- "sloganSetHint": "Слоган берётся из данных вашей компании.",
- "sloganLink": "Настройки компании",
- "paymentTerms": "Условия оплаты",
- "paymentTermsPlaceholderHint": "Условия оплаты не заданы, поэтому на листе показан образец, который не будет напечатан.",
- "paymentTermsSetHint": "Условия оплаты берутся из настроек оплаты.",
- "paymentTermsLink": "Настройки оплаты",
- "telegramQr": "Код Telegram",
- "telegramQrConnectedHint": "Печатает код, открывающий {link}, ваш подключённый бот Telegram. Появляется только на счетах, выставленных после включения блока.",
- "telegramQrPlaceholderHint": "Бот Telegram не подключён, поэтому на листе показан образец кода, который не будет напечатан.",
- "telegramQrLink": "Интеграции",
- "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": "Всегда печатается на одном и том же месте, поэтому переместить нельзя."
- },
- "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": "Тег не помещается в это поле."
- }
- }
|