Задать вопрос
@run182

Как подписаться на событие подписки на товар?

События не нашел, пробовал событие обновление товара - тоже не работает, остается вариант кастомить компонент подписки.

Обращаюсь сюда, т.к. в документации информации нет, а сообщество знает о ней больше, чем ТП Битрикса (храни ее бох).
  • Вопрос задан
  • 543 просмотра
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Инженер по тестированию
    5 месяцев
    Далее
  • Нетология
    Инженер по тестированию
    8 месяцев
    Далее
  • Stepik
    "Поколение Python": курс для начинающих
    1 неделя
    Далее
Решения вопроса 1
@run182 Автор вопроса
Рано сдался)
Событие - \Bitrix\Catalog\Subscribe::onAdd

Помогла статья https://dev.1c-bitrix.ru/learning/course/index.php.... В ней говорится про событиях ORM. Класса Subscribe конечно нет, но есть SubscribeTable. С SubscribeTable не работает, но убрав Table заработало!
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@sanshung
1С-Битрикс программист
use \Bitrix\Main\Entity;
use \Bitrix\Main\EventManager;
use \Bitrix\Main\Diag\Debug;

$eventManager = EventManager::getInstance();

$eventManager->addEventHandler(
    "catalog",
    "\Bitrix\Catalog\Subscribe::onAdd",
    ['CustomSubscribeProduct', 'OnSubscribeSubmit']
);
class CustomSubscribeProduct{
    public static function OnSubscribeSubmit(Entity\Event $event)
    {
        $result = new Entity\EventResult;
        $data = $event->getParameter("fields");
        Debug::writeToFile($data, '$data', 'OnSubscribeSubmit.txt');
    }
}


результат в OnSubscribeSubmit.txt
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы