Описание функции
Перевести пользовательские сообщения об ошибках/успехе в CategoryProductsController и CategoryProductActionPermissions на лексикон minishop3:default (ru + en).
Проблема, которую решает
Vue Manager показывает error.message из API в toast (CategoryProductsGrid.vue). Сейчас контроллер отдаёт захардкоженный английский (Category ID is required, Product not found, Access denied. Required permission: …), при cultureKey = ru UI остаётся на английском.
Предлагаемое решение
$this->modx->lexicon->load('minishop3:default') в контроллере (или helper как в OrdersController).
- Ключи вида
ms3_err_category_id_required, ms3_err_product_nf, ms3_err_category_products_no_updates в lexicon/en/default.inc.php и lexicon/ru/default.inc.php.
- Обновить smoke-тесты (
CategoryProductActionPermissionsTest, CategoryProductsControllerScopeTest), где сравнивается точный текст.
Альтернативные варианты
- Локализовать только на фронте по code/status — хуже для API consumers.
Примеры использования
Toast при bulk delete без category id: «Не указан ID категории» вместо Category ID is required.
Дополнительный контекст
Затронутые файлы: CategoryProductsController.php, CategoryProductActionPermissions.php, lexicon default ru/en.
Описание функции
Перевести пользовательские сообщения об ошибках/успехе в
CategoryProductsControllerиCategoryProductActionPermissionsна лексиконminishop3:default(ru + en).Проблема, которую решает
Vue Manager показывает
error.messageиз API в toast (CategoryProductsGrid.vue). Сейчас контроллер отдаёт захардкоженный английский (Category ID is required,Product not found,Access denied. Required permission: …), приcultureKey = ruUI остаётся на английском.Предлагаемое решение
$this->modx->lexicon->load('minishop3:default')в контроллере (или helper как вOrdersController).ms3_err_category_id_required,ms3_err_product_nf,ms3_err_category_products_no_updatesвlexicon/en/default.inc.phpиlexicon/ru/default.inc.php.CategoryProductActionPermissionsTest,CategoryProductsControllerScopeTest), где сравнивается точный текст.Альтернативные варианты
Примеры использования
Toast при bulk delete без category id: «Не указан ID категории» вместо
Category ID is required.Дополнительный контекст
Затронутые файлы:
CategoryProductsController.php,CategoryProductActionPermissions.php, lexicon default ru/en.