Skip to content

fix(vue): удаление из грида настроек без двойного confirm - #631

Merged
biz87 merged 3 commits into
betafrom
fix/issue-630-grid-delete-confirm
Sep 7, 2026
Merged

fix(vue): удаление из грида настроек без двойного confirm#631
biz87 merged 3 commits into
betafrom
fix/issue-630-grid-delete-confirm

Conversation

@Ibochkarev

Copy link
Copy Markdown
Member

Описание

Удаление строки через колонку «Действия» в гридах Настроек (доставки, оплаты, статусы, производители, связи) не работало: конфиг из БД задаёт confirm: true для delete, useActions показывал первый диалог, а handler (deleteDelivery и др.) открывал второй confirm.require() — DELETE не выполнялся.

Правка выравнивает паттерн с CustomersGrid / OrdersGrid: один confirm в ActionsColumn / useActions, handler только выполняет DELETE.

Closes #630

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

  • Исправление бага (non-breaking change)

Связанные Issues

Closes #630

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

cd vueManager
npm run lint:ci          # exit 0
npm test                 # exit 0, 34 tests
node --test tests/settingsGridDeleteHandlers.test.js tests/settingsConfirmGroups.test.js
  • Ручное тестирование
  • Автоматические тесты
  • Тестирование на разных версиях PHP/MODX

Конфигурация: ветка fix/issue-630-grid-delete-confirm, Node 18+

Чеклист

  • Код соответствует стилю проекта
  • Изменения не ломают существующую функциональность
  • Лексиконы — не требуются
  • PHPStan — PHP не затронут
  • ESLint (npm run lint:ci)

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

  • Общий хелпер vueManager/src/utils/gridDeleteAction.js (gridDeleteAction, applyDeleteConfirmDefaults).
  • Затронуты: DeliveriesGrid, PaymentsGrid, StatusesGrid, VendorsGrid, LinksGrid.
  • Массовое удаление через useSelection без изменений.

Row delete handlers no longer call confirm.require after ActionsColumn
already confirmed via API grid config (confirm: true). Shared
gridDeleteAction helper aligns deliveries, payments, statuses, vendors,
and links with CustomersGrid pattern.

Closes #630
@Ibochkarev Ibochkarev added the bug Something isn't working label Aug 22, 2026
@Ibochkarev
Ibochkarev requested a review from biz87 August 22, 2026 16:36
@AgelxNash AgelxNash mentioned this pull request Sep 6, 2026
16 tasks
AgelxNash pushed a commit to AgelxNash/MiniShop3 that referenced this pull request Sep 6, 2026
Conflict resolution: PR 640 supersedes merged modx-pro#621 rework (same author, same
intent) — took PR side for 36 files; manually preserved modx-pro#631 useConfirm grids,
modx-pro#623 datefield dialog styles, modx-pro#643 gallery bits, modx-pro#605 order entry; ProductData
sections rebuilt on groupProductDataSections (keeps modx-pro#611/modx-pro#620 sort_order) under
PR 640 Panel layout.
@AgelxNash

Copy link
Copy Markdown

Этот PR включён в тестовую интеграционную сборку всех открытых PR MiniShop3: AgelxNash/MiniShop3, ветка integration/open-prs-20260906 (28/28 открытых).

Сборка нужна, чтобы проверить совместимость взаимозависимых серий PR до их мержа — при последовательном слиянии они конфликтуют друг с другом. Это не ревью и не конкурирующий PR: авторство сохранено (1 PR = 1 коммит с исходным автором), ветка пересобирается по мере обновления PR.

Как вошёл в сборку: Слился чисто. (useConfirm-механика из этого PR сохранена в гридах при последующем #640.)

@AgelxNash

Copy link
Copy Markdown

Привет! Просто пожелание: удачи с этим PR 🚀 Работа нужная — пусть рассмотрят и смержат как можно скорее. Успехов!

@biz87
biz87 merged commit dd12b27 into beta Sep 7, 2026
3 checks passed
@biz87
biz87 deleted the fix/issue-630-grid-delete-confirm branch September 7, 2026 09:43
Ibochkarev added a commit that referenced this pull request Sep 8, 2026
Keep barrel PrimeVue imports from the theme PR and drop unused
useConfirm — delete flows already use gridDeleteAction from #631.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Не удаляется способ доставки через «Действия» в гриде (двойной confirm)

3 participants