Skip to content

feat: dispatch cart updated event and update success message for orde…#96

Merged
biz87 merged 2 commits intobetafrom
fix-issue-88
Feb 16, 2026
Merged

feat: dispatch cart updated event and update success message for orde…#96
biz87 merged 2 commits intobetafrom
fix-issue-88

Conversation

@Ibochkarev
Copy link
Copy Markdown
Member

@Ibochkarev Ibochkarev commented Feb 15, 2026

Описание

Устранена путаница с кнопкой «Очистить форму» на странице оформления заказа (Issue #88). Кнопка по смыслу очищает только поля формы, заказ и корзина не удаляются; при этом показывалось сообщение «Заказ очищен», из‑за чего казалось, что очищается весь заказ, а блок корзины до перезагрузки не обновлялся.

Изменения:

  • Сообщение после очистки формы заменено на «форма очищена»: в лексиконах en/ru ключ ms3_order_clean_success — «Order form cleared» / «Форма заказа очищена».
  • После успешного order/clean в OrderUI вызывается событие ms3:cart:updated, чтобы блок корзины обновлялся без перезагрузки страницы.

Логика API не менялась: по‑прежнему обнуляются только поля черновика и адреса, товары в заказе (корзине) остаются.

Тип изменений

  • Исправление бага (non-breaking change)
  • Новая функциональность (non-breaking change)
  • Breaking change (изменение, ломающее обратную совместимость)
  • Рефакторинг (без изменения функциональности)
  • Документация
  • Другое (опишите):

Связанные Issues

Closes #88

Как это было протестировано?

  • Ручное тестирование
  • Автоматические тесты (PHPStan, ESLint)
  • Тестирование на разных версиях PHP/MODX

Конфигурация тестирования:

  • MiniShop3: 1.4.1-beta1
  • MODX: —
  • PHP: —

Проверено: нажатие «Очистить форму» — показывается «Форма заказа очищена», поля формы сбрасываются, корзина остаётся и при подписке на ms3:cart:updated обновляется без перезагрузки.

Скриншоты (если применимо)

До После
Сообщение «Заказ очищен», корзина не обновлялась до перезагрузки Сообщение «Форма заказа очищена», корзина обновляется по событию

Чеклист

  • Код соответствует стилю проекта
  • Добавлены/обновлены комментарии в сложных местах
  • Изменения не ломают существующую функциональность
  • Лексиконы добавлены на двух языках (ru/en)
  • PHPStan проходит без новых ошибок
  • ESLint проходит без ошибок (для JS/Vue изменений)
  • Обновлён CHANGELOG.md (для значимых изменений)

Дополнительные заметки

Затронуты файлы: core/components/minishop3/lexicon/en/order.inc.php, core/components/minishop3/lexicon/ru/order.inc.php, assets/components/minishop3/js/web/ui/OrderUI.js. Бэкенд и контракт API без изменений.

@Ibochkarev Ibochkarev requested a review from biz87 February 15, 2026 16:11
@Ibochkarev Ibochkarev self-assigned this Feb 15, 2026
status_id was being nullified along with other fields, which made
the draft invisible to the system (it searches by status_id).

Co-Authored-By: Claude Opus 4.6 <[email protected]>
@biz87 biz87 merged commit 0510879 into beta Feb 16, 2026
@biz87 biz87 deleted the fix-issue-88 branch February 16, 2026 21:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Question] Оформление заказа, корзина. Очистка формы.

3 participants