Техническое задание: Интеграция Cloudinary с поддержкой HEIC, лимитов 15Мб и тотальным WebPПроект: Доска объявлений на движке Tamaranga v2.Цель: Перевести логику загрузки, обработки и отображения пользовательских фото на облачный сервис Cloudinary. Это необходимо для разгрузки сервера, поддержки формата HEIC с iPhone, обхода старых лимитов движка и ускорения сайта за счет формата WebP [ссылка]. Доработки выполняются локально во фронтенде и шаблонах темизации, без вмешательства в ядро бэкенда.1. Требования к загрузке и валидации (Фронтенд)Замена UI: Заменить стандартный загрузчик Tamaranga на официальный JavaScript-виджет Cloudinary Upload Widget.Функционал виджета: Внутри виджета должны быть активны: индикатор загрузки (loader), предпросмотр (preview) выбранных фото и адаптивный инструмент обрезки/кадрирования (cropper), полностью управляемый пальцами на смартфонах.Валидация файлов (Ограничения): Настроить жесткие лимиты прямо внутри виджета:Минимальное разрешение исходного фото: 600px по меньшей стороне.Максимальное разрешение исходного фото: 8000px.Максимальный вес файла: 15 Мб.При нарушении лимитов виджет должен выводить пользователю понятную ошибку на русском языке.2. Оптимизация хранения в облакеIncoming Transformation: Настроить в личном кабинете Cloudinary автоматическое сжатие оригиналов при входящем потоке. Все загружаемые файлы (включая тяжелые фото до 15 Мб и формат HEIC) должны на стороне облака автоматически оптимизироваться и масштабироваться до максимального рабочего разрешения 1920px (размер original/zoom), чтобы экономить дисковое пространство на бесплатном тарифе.3. Тотальный перевод в WebP и новая сетка превьюВ шаблонах вывода объявлений (на главной, в категориях, на странице самого объявления) заменить генерацию старых локальных картинок на динамические URL-ссылки Cloudinary.Все изображения должны генерироваться на лету с обязательным использованием флага f_auto (автоматический перевод в WebP/AVIF для современных браузеров) и флага q_auto (автоматическое умное сжатие качества без видимой потери четкости) [ссылка].Новые размеры превью (вместо старых s98/m180):s200 (маленькое превью): ссылка вида .../w_200,h_200,c_fill,f_auto,q_auto/... (строгий квадрат 200х200px с обрезкой по центру).m640 (среднее превью): ссылка вида .../w_640,c_limit,f_auto,q_auto/... (пропорциональное уменьшение до 640px по ширине).view1280 (основное фото): ссылка вида .../w_1280,c_limit,f_auto,q_auto/....zoom1920 (увеличение): ссылка вида .../w_1920,c_limit,f_auto,q_auto/....original1920 (оригинал): ссылка вида .../w_1920,c_limit,f_auto,q_auto/....4. Интеграция с бэкендом Tamaranga v2Полученные от Cloudinary текстовые URL-ссылки на загруженные изображения должны передаваться в стандартные поля формы Tamaranga, которые движок уже умеет принимать.Реализовать подмену так, чтобы бэкенд записывал в базу данных только текстовый путь (строку URL).Обратная совместимость: Старые объявления, загруженные до этой доработки, не должны сломаться. Они продолжают отображать старые локальные превью из папок сервера
По улучшению чёткости (Retina и Премиум):К ссылкам вывода всех изображений на сайте добавить параметр dpr_auto, чтобы на экранах Retina (iPhone, современные смартфоны и ноутбуки) превью автоматически отображались в повышенной чёткости [ссылка].Для Премиум-объявлений и основной списка обьявлений ( поиск обьявлений) и галлереи внутри карточки товара использовать максимальный режим качества q_auto:best [ссылка], а также применить фильтр адаптивного улучшения резкости e_sharpen:50, чтобы выделить их визуально на фоне обычного списка.Для стандартных объявлений в списке оставить базовый режим q_auto (или q_auto:good) [ссылка]».