Сайт оператора техосмотра
Журнал изменений продукта: новые возможности, доработки личного кабинета и публичной части сайта записи на техосмотр.
v2.0.43
PatchВерсия продукта без расхождений
Одна версия в ЛК, API и на публикаторе; понятнее статус на странице «Обновление».
Администрирование
- API /api/v1/service/version совпадает с версией в «Обновление» (version.json и params).
- «Проверить схему» выравнивает appVersion в config/params.php с version.json.
- Подсказки, если сайт новее публикатора или params отстают от version.json.
v2.0.42
PatchПроверка почты в настройках
В ЛК → Настройки → Реквизиты можно отправить тестовое письмо на указанный e-mail.
Администрирование
- Кнопка «Тест» проверяет SMTP и адрес отправителя без сброса пароля.
v2.0.41
PatchОбновление из личного кабинета
Надёжнее применение update-ZIP: почта и шаблоны писем, резервная копия config/mail.
Администрирование
- «Обновление» в ЛК подтягивает mail-local.php и шаблоны писем с публикатора.
v2.0.40
PatchПисьмо сброса пароля
Стилизованный шаблон и название ПТО вместо My Application.
Личный кабинет
- Обновлён текст и оформление письма восстановления пароля.
v2.0.38
PatchПочта при обновлении
При update.php синхронизируются адреса отправителя из дистрибутива публикатора.
Уведомления
- Обновление подставляет общий SMTP (config/mail-local.php) и senderEmail с публикатора.
v2.0.37
PatchЦентрализованная почта SaaS
Отправка с notify@sites-pm.web-dk.ru; инструкция config/MAIL.md.
Почта
- Эталон params: общий ящик notify@sites-pm.web-dk.ru, SMTP — config/mail-local.php.
- Документация: config/MAIL.md, пример mail-local.saas.example.php.
v2.0.36
PatchОтправка почты
Почта: config/mailer.php, envelope sendmail, опционально SMTP (mail-local.php).
Личный кабинет
- Исправлена отправка писем (сброс пароля, уведомления): задан DSN transport в config.
v2.0.35
PatchВосстановление пароля: отправка письма
Исправлен setFrom при сбросе пароля (email => имя отправителя).
Личный кабинет
- Исправлена ошибка RfcComplianceException при запросе ссылки на сброс пароля.
v2.0.34
PatchТелефон на главной (исправление)
Формат мобильных +7 (XXX) XXX-XX-XX; исправлена ошибка Class PhoneFormat not found в шапке.
Главная
- Компонент PhoneFormat; импорт в начале main.php.
- 89902050777 отображается как +7 (990) 205-07-77.
v2.0.33
PatchФормат телефона на главной
Мобильные номера на лендинге показываются как +7 (XXX) XXX-XX-XX.
Главная
- Шапка, подвал и карточки пунктов: 89902050777 → +7 (990) 205-07-77.
- Ссылка tel: ведёт на +79902050777.
v2.0.30
MinorВосстановление пароля
Страницы запроса и установки нового пароля на русском, в оформлении страницы входа; письма на русском.
Личный кабинет
- Страницы /request-password-reset и /reset-password в едином стиле с входом.
- Письмо со ссылкой для сброса пароля — на русском.
v2.0.21
PatchМобильная вёрстка: navbar и шаги
navbar-brand по центру по вертикали; контент карточек шагов — по центру на телефоне.
Главная
- main.css: flex-выравнивание #main-menu на max-width 767px.
- home-landing: центрирование landing-steps на max-width 639px.
v2.0.20
PatchИсправлены поля форм в тёмной теме ЛК
Починка lk-dashboard.css после блока отступов; явные стили form-control для dark theme.
Админка
- Восстановлен .lk-color-swatch::after (сломанный CSS).
- Поля ввода: background-color, placeholder, autofill в тёмной теме.
v2.0.19
PatchТарифы на главной
Карточки категорий с подсказкой и обрезкой длинного текста.
Главная
- price-category-card: колонка, shortHint, line-clamp описания, цена в подвале.
- CategoryLabels — понятные названия категорий.
v2.0.18
PatchНастройка отступов главной в ЛК
Три ползунка в «Внешний вид»: секции, заголовки, карточки.
Главная
- landing_spacing_section, landing_spacing_head, landing_spacing_cards в settings.
- Компонент LandingSpacing — CSS-переменные для home-landing.
v2.0.17
PatchШаги техосмотра — отдельная секция
landing-prose оформлен как карточка; крупная инфографика в секции «Как проходит техосмотр».
Главная
- Секция #how-it-works с воздушными шагами 01–04.
- Текст о ценах — бейдж, градиент, кнопка PDF.
v2.0.16
PatchТарифы: 1–2 карточки на всю ширину
price-category-card при одной или двух категориях растягиваются по контейнеру.
Главная
- Одна категория — 100% ширины; две — по 50% на десктопе.
v2.0.15
PatchИнфографика и ширина блока под тарифами
Четыре шага техосмотра над landing-prose; блок в 1.5 раза шире (63rem).
Главная
- Инфографика: запись → документы → осмотр → результат.
- landing-prose-wrap: max-width 63rem.
v2.0.13
PatchНовости по умолчанию на главной
Три нейтральные новости, если в админке ещё нет активных публикаций.
Главная
- NewsPlaceholders: запись, документы, режим работы.
- При появлении своих новостей подставные скрываются.
v2.0.12
PatchКарта пункта по адресу
Если код Яндекс.Карты не задан — на главной показывается виджет по адресу ПТО.
Главная
- YandexMapEmbed: автоматический iframe, если map_code пустой.
- Свой код из конструктора по-прежнему имеет приоритет.
v2.0.10
PatchТексты по умолчанию и вёрстка лендинга
price_add_info и add_info при пустых полях; центрирование тарифов и блока под ценами.
Главная
- Произвольная информация о ценах — текст о повторном техосмотре.
- Центрирование 1–2 карточек тарифов и блока landing-prose.
v2.0.0
MajorЛичный кабинет Trezo и формы
Крупное обновление интерфейса администратора и публичной части сайта.
Личный кабинет (Trezo)
- Новый дизайн ЛК: боковое меню, карточки, тёмная/светлая тема, Material Symbols.
- Дашборд, настройки сайта (вкладки: запись, SEO, дизайн, информация).
- Список и редактирование заявок, просмотр карточки заявки.
- График записи: полноэкранный режим, компактная шапка (сохранение в localStorage).
Заявки и запись
- Форма редактирования заявки: секции, слоты времени, демо-режим только просмотра.
- Исправлен выбор времени вне сетки (например 9:45) и визуальная подсветка слота.
- Корректная работа recTime при значениях с плавающей точкой в БД.
Диагностические карты (интерфейс)
- Раздел ДК в ЛК: список, просмотр, создание и редактирование в едином стиле Trezo.
- Бейджи срока действия, привязка к контрагентам и партнёрам.
- Модуль и API для внешних систем добавлены в версии 1.9.
Пользователи и контрагенты
- Стилизованные формы создания/редактирования пользователей и организаций.
- Роль API (1С): генерация access token в форме.
- Смена пароля с подтверждением.
Демо-режим
- Роль demo_admin: просмотр списков без изменения данных.
- Маскирование персональных данных в демо.
- Ограничения на пользователей, контрагентов, новости и смену пароля.
Публичная часть
- Лендинг, формы предзаписи (полная и облегчённая), страница входа.
- Кастомный hero-баннер, типографика и цветовые схемы.
- График занятости, экспорт, улучшенные слоты времени на записи.
v1.9.0
MinorДиагностические карты и API для внешних систем
Главное изменение линейки 1.9 — полноценный учёт диагностических карт в личном кабинете и приём данных из внешних систем (в т.ч. 1С) по API.
Модуль «Диагностические карты»
- Раздел в ЛК: список карт, карточка просмотра, создание и редактирование.
- Привязка к контрагентам (организациям) и партнёрам.
- Хранение данных ТС, сроков действия, статуса; загрузка PDF карты.
- Роль API (1С): access token для аутентификации при передаче карт.
API для внешних систем
- REST API v1: приём и обновление диагностических карт из внешних систем.
- Маршрут POST api/diagnostic-card — передача карты и PDF (base64).
- Идентификация по UIN карты, данные владельца и транспортного средства.
Прочее в линейке 1.9
- Доработки графика записи, форм заявок и навигации ЛК.
- Кэширование статических ресурсов по appVersion.
v1.8.0
MinorКабинет клиента
Новое
- Добавлен функционал «Кабинет клиента».
v1.7.0
MinorЦены ТО и API
Новое
- Актуализация цен на ТО в ЛК (кнопка «Заполнить цены»).
- Страница истории версий.
- API продукта, метод version.
v1.6.0
MinorУведомления
Настройки
- Настройка «Не присылать уведомление админу на email о новой записи».
v1.5.0
MinorОферта
Запись
- Включение договора-оферты при предварительной записи (согласие).