mspc2OnBeforeGetCoupon

05 сентября 2019, 07:00

Срабатывает перед получением промо-кода в методе mspc2Manager::getCoupon. Будет запущено, даже если такого промо-кода не существует.

Данный метод при работе компонента вызывается довольно часто, даже в момент применения промо-кода к уже оформленному заказу.

В связи с особенностью работы метода mspc2Manager::getCoupon два параметра у данного события формируются динамически.

Параметры

  • string $key — ключ, по которому запрашивается промо-код
  • int $id - динамический параметр, передаётся только если промо-код запрошен по числовому id
  • string $code - динамический параметр, передаётся только если промо-код запрошен по строковому коду

Пример

$sp = &$scriptProperties;
switch ($modx->event->name) {
    case 'mspc2OnBeforeGetCoupon':
        $key = $sp['key'];
        if (is_int($sp[$key])) {
            // Передан $id купона
        } elseif (is_string($sp[$key])) {
            // Передан $code купона
        }
        break;
}