Skip to content

fix(vue): вкладки групп опций в карточке товара#188

Merged
biz87 merged 3 commits intobetafrom
fix/gh-185-product-option-tabs
Apr 12, 2026
Merged

fix(vue): вкладки групп опций в карточке товара#188
biz87 merged 3 commits intobetafrom
fix/gh-185-product-option-tabs

Conversation

@Ibochkarev
Copy link
Copy Markdown
Member

@Ibochkarev Ibochkarev commented Apr 6, 2026

Описание

Во Vue-менеджере опции товара группировались по несуществующему полю category, из‑за чего все поля попадали в одну вертикальную вкладку. Группировка переведена на modcategory_id из option_fields, сбор панелей через Map, нормализация id и пропуск строк без key.

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

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

Связанные Issues

Closes #185

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

Ручная проверка: карточка товара во Vue-менеджере, вкладка опций — несколько групп (modCategory) отображаются отдельными вертикальными вкладками. ESLint для изменённого файла не запускался в рамках PR.

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

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

  • MiniShop3: ветка PR
  • MODX: по окружению ревьюера
  • PHP: по окружению ревьюера

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

До После

Чеклист

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

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

Заголовок вкладки для группы берётся из category_name первой опции в группе (как и ранее при корректной группировке по id).

Vue manager used non-existent option.category, so all options merged into
one vertical tab. Use modcategory_id from option_fields (msOption) instead.

Fixes #185
Replace nested scan with Map for O(n) grouping; name modCategoryId/panel clearly.

Fixes #185
- Skip entries without key before getExtField.
- Coerce modcategory_id with Number() so Map keys stay stable (string vs number JSON).

Refs #185
@Ibochkarev Ibochkarev changed the title fix(vue): вкладки групп опций в карточке товара (#185) fix(vue): вкладки групп опций в карточке товара Apr 6, 2026
@Ibochkarev Ibochkarev marked this pull request as ready for review April 6, 2026 03:56
@Ibochkarev Ibochkarev requested a review from biz87 April 6, 2026 03:57
@biz87 biz87 merged commit cf0a155 into beta Apr 12, 2026
@Ibochkarev Ibochkarev deleted the fix/gh-185-product-option-tabs branch April 13, 2026 01:31
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.

[Bug] Некорректное отображение групп опций в товаре

2 participants