Skip to content

6.9.0 — кабинет, админка, Mini App и CloudPayments

Choose a tag to compare

@VerTusOffical VerTusOffical released this 29 Oct 20:41
0fcc138

6.9.0 — кабинет, админка, Mini App и CloudPayments

Обновлены клиентский кабинет и админка. Новый кабинет доступен на сайте и в Telegram Mini App. Администратор может настроить его оформление и опубликовать изменения из редактора.

Клиентский кабинет

  • Новая навигация: на компьютере меню сворачивается в иконки и раскрывается при наведении, на телефоне открывается кнопкой меню.
  • Более компактные карточки подписок. В них собраны срок действия, трафик, устройства, продление, подключение, копирование ссылки и QR-код.
  • Подпискам можно задавать собственные названия.
  • Обновлены тарифы и оформление покупки. При смене срока цена меняется плавно.
  • Переработаны баланс и история операций, профиль, рефералы и подарки. История доступна отдельным разделом.
  • Обновлены список обращений, переписка с поддержкой и окно чата. Исправлены отступы, поля ввода и расположение кнопок.
  • Приведены к общему виду вход, регистрация, восстановление пароля и первоначальная настройка аккаунта.
  • Добавлены вход и регистрация через Telegram: переход в бота, ожидание подтверждения, отмена и повторный запуск после истечения ссылки. Сохраняются проверки блокировки аккаунта и двухфакторной защиты.
  • Способ оплаты ЮKassa подписан «Карта/СБП (Юкасса)».
  • Светлый, тёмный и системный режимы и цветовой акцент задаёт администратор. Старые личные настройки клиента больше не переопределяют оформление сервиса.
  • Исправлены мобильная компоновка, выравнивание иконок с текстом и открытие настроек. Ошибка загрузки подписки отделена от состояния «подписок нет».

Telegram Mini App

  • В настройках оформления появился вариант «Новый кабинет». Он использует тот же интерфейс и опубликованное оформление, что и обновлённый веб-кабинет.
  • Сохранены варианты Stealth и Aurora. Выбранный вариант можно отдельно включить для обычного браузера.
  • Старое значение Classic остаётся совместимым с обновлённым стандартным кабинетом. Обновление не сбрасывает выбранный администратором вариант.

Админка

  • Новый интерфейс в стиле клиентского кабинета: боковое меню, заголовки, таблицы, формы и мобильная навигация.
  • Прежнее оформление доступно в выборе темы как Old classic.
  • Страницы загружаются по мере открытия. Сокращены лишние перерисовки и работа скрытых элементов.
  • Браузерные подтверждения и запросы ввода заменены окнами внутри панели.
  • Исправлены съехавшие кнопки и вкладки, расположение списков активности клиентов, текстов бота и email-шаблонов.
  • Исправлены фон заголовков в настройках, недостающие иконки и окно глобального поиска.
  • Поиск открывается по ⌘K на Mac и Ctrl+K на Windows/Linux. Подсказка учитывает устройство; сочетание работает и при русской раскладке.

Редактор оформления кабинета

  • Шесть готовых пресетов, настройка цветов, шрифтов, размеров, отступов, скруглений, кнопок и карточек.
  • Предпросмотр для компьютера и телефона, проверка контраста, импорт и экспорт настроек.
  • Черновик сохраняется отдельно от опубликованного оформления. Изменения появляются у клиентов после публикации.
  • История последних 12 публикаций с восстановлением предыдущего варианта через черновик.
  • Защита от перезаписи изменений другого администратора. Публичный API не раскрывает черновики.
  • Редактор доступен администратору. Он меняет оформление готовых компонентов; свободной перестановки и создания страниц в этой версии нет.

Telegram-бот

  • В главном меню появилась кнопка «Продлить подписку». Название, порядок и видимость настраиваются в админке. Если продлевать нечего, кнопка скрыта. (#250)

  • Одна подходящая подписка сразу открывает продление; несколько — выбор подписки. Истёкшие подписки остаются доступными для продления.

  • При отключённых мультиподписках бот больше не предлагает купить дополнительную подписку. Исправление применяется к тарифам с одним и несколькими сроками. (#249)

  • При продлении сохраняется ID выбранной подписки, проверка кулдауна и выбор сохранения или удаления дополнительных устройств.

  • При одной доступной подписке кнопка подключения сразу открывает её страницу. Истёкший триал больше не создаёт лишний экран выбора. При нескольких действующих подписках выбор сохраняется.

  • В настройках бота добавлено переключение между Long Polling и Webhook со статусом Telegram и процесса бота. Переключение сохраняет очередь сообщений. (#248)

  • Главному меню бота требуется меньше запросов к API: профиль, подписки и триалы загружаются вместе. Подписки запрашиваются параллельно; загруженные изображения кратковременно переиспользуются по Telegram file_id.

  • Запросы webhook проверяются по секрету. Ошибки доставки не маскируются успешным ответом; повторные доставки объединяются в работающем процессе. Порядок событий одного пользователя сохраняется.

Обновление интерфейса без ручной перезагрузки

  • На безопасных страницах предложение обновления запускает отсчёт после 7 секунд бездействия. Перед перезагрузкой остаётся ещё 5 секунд. (#247)
  • Незавершённый ввод, открытое окно, оформление оплаты и страницы настроек блокируют автоматическую перезагрузку. Проверка учитывает React-поля, чекбоксы, списки и текстовые редакторы даже после потери фокуса.
  • При ручном обновлении с изменённой формой панель запрашивает подтверждение. Обновление можно отложить на 10 минут.
  • Исправлено зависание обновления в WebView, когда браузер не сообщает о смене Service Worker.

CloudPayments

  • Оплата картой в кабинете, Mini App и боте; отдельное согласие на регулярные списания для VPN-тарифов.
  • Настраиваемый платный триал: первый платёж, число дней, тариф после триала и льготный срок при отказе карты. (#251)
  • Автоматическое изменение суммы при смене цены тарифа и покупке дополнительных устройств. Доплата за устройство рассчитывается за оставшийся срок.
  • Отмена через профиль и CloudPayments. Пробный доступ прекращается после отмены; обычный оплаченный срок сохраняется.
  • Проверка подписей уведомлений, защита от повторного зачисления и выдачи, очередь обработки с восстановлением после сбоев VPN-сервера.
  • Возврат на карту из админки, учёт полных и частичных возвратов, отмена денежных реферальных начислений. Выданный доступ после возврата проверяется отдельно.
  • Настройки подключения и состояние обработки в админке. CloudPayments выключен по умолчанию; перед рабочими списаниями нужен тест своего терминала по инструкции.

Обновление

Перед обновлением создайте и скачайте резервную копию. Обновляйте API, бот и frontend вместе по инструкции. В релиз входят миграции для пользовательского названия подписки и учёта CloudPayments; существующие записи не удаляются. Перенос клиентов в другую базу не требуется.

После обновления проверьте вход, загрузку подписок, настройки оформления и меню бота. При подключении CloudPayments отдельно проверьте тестовую оплату, автосписание и отмену. Реальный эквайринг без реквизитов терминала не проверялся.

Webhook выключен по умолчанию. Порядок подключения и проверки — в инструкции.