Здравствуйте. Мой плагин должен отслеживать изменения в списках товара. То есть мне нужно сесть на хуки добавления товара в список, удаления товара из списка. Однако хук добавления products_add_sets.after срабатывает только тогда, когда товар добавляется через правое меню "Организовать" - "Добавить в список". Если же товары добавить другим способом - мышкой передвинуть на имя списка слева - хук не вызывается. Я проследил по коду, при этом вызывается:
shop/lib/actions/product/shopProductAddToList.controller.php
в нём (строка 78) метод shopSetProductsModel.add(product_id, set_id)
код его в файле shop/lib/model/shopSetProducts.model.php
и там идёт уже подготовка и запись данных в базу. Никаких хуков по дороге нет.
Также не нашел хуков при удалении товара из списка.
Не могли бы Вы добавить эти хуки для данных действий?
4 комментария
Мы выпустили обновление Shop-Script, в котором добавили новые хуки для разработчиков плагинов. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если возникнут трудности при использовании новых хуков.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!
Здравствуйте, Михаил. Спасибо за обновления.
Однако нету хуков удаления товара из списка. То есть добавление товара в список теперь можно хорошо отслеживать, а удаление из списка - никак. Хорошо бы в контроллер shopProdExcludeFromSetsController прописать соответствующий хук. Прямо по аналогии с зеркальным контроллером добавления shopProdAddToSetsController - в нём всё есть.
Передал ваше сообщение разработчикам.
Если хотите отслеживать статусы своих обращений, создавайте отдельные на форуме для каждого обращения.
Мы выпустили обновление Shop-Script, в котором добавили хуки products_remove_sets.before и products_remove_sets.after, срабатывающие перед и после исключения товаров из списков. Обновление можно установить в «Инсталлере».
Сообщите нам, если возникнут трудности при использовании новых хуков для разработки плагинов с нужной вам функциональностью.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!