Техническое задание: Исправление работы корзины на Yii Framework

Суть проблемы

В интернет-магазине, построенном на Yii Framework, критически неисправна функциональность корзины покупок. У большинства посетителей сайта не работают базовые операции:

  • Изменение количества товаров (увеличение/уменьшение через кнопки)
  • Удаление позиций из корзины
  • Ручной ввод количества в поле
  • Автоматический пересчет суммы позиции и итоговой суммы заказа

При этом добавление товара в корзину со страницы товара работает корректно. По неподтвержденным данным, у небольшой части пользователей функционал продолжает работать, что вызывает подозрения на проблемы с кэшированием или ассетами.

Задачи для исполнителя

1. Диагностика

  • Проанализировать работу клиентского JavaScript-скрипта (/assets/…/js/shop-basket.js), который отвечает за обработку событий в корзине.
  • Изучить backend-обработчик маршрута /{section}/basket-update на стороне Yii.
  • Определить, почему события не срабатывают или запросы возвращают некорректные данные.
  • Учесть факторы кэширования, сборки ассетов и возможные конфликты версий скриптов.

2. Исправление

  • Устранить выявленные ошибки в логике работы скрипта и backend-обработчика.
  • Обеспечить стабильную работу функций изменения количества (кнопки +/-), ручного ввода и удаления товаров для всех пользователей.
  • Гарантировать корректный пересчет и отображение всех сумм (позиции, итог) после любого действия в корзине.
  • Добиться кросс-браузерной совместимости решения.

3. Отчетность

  • Предоставить описание выявленной причины неисправности.
  • Приложить список всех внесенных правок в код (как frontend, так и backend).

Исходные данные

Основная логика корзины реализована в JS-файле shop-basket.js. На событие window.onload в нем навешиваются обработчики на элементы с классами .product__quantity_minus, .product__quantity_plus, .product__quantity_input (событие change) и .product__delete. Эти обработчики выполняют AJAX-запрос ($.get) по адресу /{section}/basket-update с параметром action (increment, decrement, update, delete) и обновляют интерфейс на основе ответа.

Приложение для просмотра южнокорейского ТВ в реальном времени

Требуется найти и установить приложение для Android, которое позволяет смотреть южнокорейские телеканалы в прямом эфире через интернет. Основное условие - приложение должно работать без региональных ограничений.

Новогодняя фотосессия с элементами нейросетевой обработки в разных локациях

Ищу фотографа для креативной новогодней фотосессии с возможностью обработки с помощью нейросетей. Съемка планируется в разных стилизованных локациях. Обязательно наличие портфолио с реальными работами.