Repository navigation
2.7.5 — Свои логотипы платёжных способов
Добавлено
- Смена логотипа платёжки в том же окне, где редактируются её название, описание и методы оплаты: Тарифы → Способы оплаты → карандаш.
- Загрузка изображения файлом PNG, JPG или WebP до 2 МБ, либо установка HTTPS-ссылки с предпросмотром.
- Кнопка корзины скрывает логотип, кнопка «Стандартный» возвращает исходный логотип платёжной системы.
- Логотипы настраиваются независимо для каждой платёжки и её копий; отображаются при выборе и оформлении оплаты, включая подарки и дополнительные пакеты.
Поведение
- «Готово» применяет изменения в черновик тарифов; затем нужно сохранить настройки. «Отмена» оставляет прежний логотип.
- Загруженные файлы находятся в постоянном хранилище uploads и сохраняются при обновлении бота.
- Загрузка доступна владельцу и администраторам с правом редактирования тарифов. Бот проверяет формат, размер и размеры изображения; небезопасные ссылки не сохраняются.
- Внешние изображения загружает браузер. Если свой логотип недоступен, в оплате показывается стандартный.
Проверено
- Тесты Go: загрузка и выдача файлов, права доступа, валидация ссылок, сохранение и независимость копий.
- Все 302 проверки JavaScript и сборка админки.
- Предпросмотр, скрытие и восстановление логотипа на экранах 390 и 1280 px, в кабинете и полной админке.
Основной бот на VPS не обновлялся.
Исправлено: обновление с локальными настройками
- Кнопка обновления больше не блокирует установку только из-за локальных изменений
docker-compose.yamlиCaddyfile. Обычная командаbash ./update.shиспользует ту же обработку настроек. - Перед обновлением сохраняются закрытые резервные копии в
.git/link-bot-update-backups/. Неконфликтующие изменения объединяются с новой версией; Compose проверяется до применения, синтаксис Caddyfile проверяется через работающий Caddy. - При конфликте или ошибке проверки рабочие файлы остаются на месте, перезапуск бота не начинается. Если Git не смог выполнить fast-forward, локальные настройки возвращаются из резервной копии.
.envи незарегистрированные пользовательские файлы сохраняются. Изменения исходников и подготовленные правки Git требуют ручной проверки.- После ручного обновления сервис Mini App перезапускается с новым кодом. Если установка запущена из самого сервиса, он не прерывает свою задачу.
Для подключения исправления к ранее установленной версии один раз выполните обычное обновление:
cd /opt/Link-Bot && bash ./update.shДальше обновление доступно через Mini App с сохранением локальных настроек. Новый тег и релиз не создавались: исправление входит в 2.7.5.
Проверено: тесты Go, сборка сервиса для Linux и 10 сценариев с настоящими временными Git-репозиториями — объединение настроек, конфликты, отказ проверок, сохранение файлов, повторный запуск и перезапуск сервиса. Docker и systemd в этих сценариях заменены тестовыми командами; на основном VPS исправление не устанавливалось.
Исправление загрузки фонов
- Исправлена загрузка файлов больше 2 МБ в Docker-образе бота: обработка больше не требует системной временной папки. Поддерживаемые изображения, GIF и видео загружаются напрямую в пределах прежнего лимита 50 МБ.
- Ошибки чтения и повреждённого запроса больше не маскируются сообщением о превышении 50 МБ. Для фактического превышения размера возвращается отдельная ошибка.
- Если ссылка ведёт на HTML-страницу сервиса обмена, вместо файла, показывается объяснение о необходимости прямой ссылки на изображение или видео.
Проверено: воспроизведение исходной ошибки без системной временной папки; WebM 3 733 315 байт, MP4 24 381 533 байта, GIF и PNG больше 2 МБ; граница 50 МБ, превышение лимита, повреждённые и дублирующиеся части запроса; тесты пакетов cmd, internal, utils и translations; сборка приложения для Linux/amd64.
Исправление опубликовано в текущем релизе 2.7.5, без нового тега и релиза. Для установки выполните обычное обновление:
cd /opt/Link-Bot && bash ./update.sh