
- MODX 3
- PHP 8.2
- miniShop3
- Vue 3


Раздел Компоненты → msBundles (Vue 3 + PrimeVue через VueTools).

Сценарии: Сценарии.
Панель: поиск, фильтр активности, фильтр контекста, счётчик, Добавить комплект.
Таблица: порядок, название с картинкой, контекст, статус, число товаров, действия.

| Действие | Как сделать |
|---|---|
| Открыть редактор | Клик по названию |
| Скопировать | Иконка копирования |
| Удалить | Иконка корзины |
| Поменять порядок | Перетащите за ручку |
Поиск с задержкой. Пустой список — экран с кнопкой создания.

Карточка появится на страницах всех товаров состава в контексте. Для другого языка: копия → смена контекста и состава.

Фиксированная цена и необязательные позиции:

Скидка процентом или суммой:


| Блок | Что показывает |
|---|---|
| Сводка | Позиции и единицы |
| Как на витрине | Цена, экономия, остатки. Пометка «Только превью» |

Итог и экономия в футере. При нехватке обязательной позиции — предупреждение. При сохранении в такой ситуации менеджер попросит подтверждение.
| Режим | Значение | Результат |
|---|---|---|
| Оригинал | — | Цена из miniShop3 |
| Фикс | сумма | Фиксированная цена |
| Скидка % | 0–100 | Процент от цены |
| Скидка суммой | сумма | Вычитается из цены |
| Бесплатно | — | 0 |
Итог = сумма строк × количество. Экономия = разница с обычными ценами. Нулевая цена — «Бесплатно».
Обязательная позиция нужна для доступности: при нехватке срабатывает msbundles_stock_behavior.
Необязательную позицию при нехватке комплект пропускает. В API могут быть warnings.
| Операция | Право |
|---|---|
| Раздел, список, просмотр | msbundles_view |
| Создание, правка, удаление, копирование, порядок | msbundles_save |
Плагин msBundles:
bundle_hash подстраиваютсяКоличество в строке должно быть кратно базовому из комплекта.
На витрине: msBundles.initialize и tplMsBundlesCartInfo в чанке. У главной строки бейдж и «Удалить комплект», у остальных количество заблокировано. У msCart нужен selector. Подробности: Вывод на сайте.