[msPromoCode] 1.3.3 - Кастомизация скидки товара плагином

В новой версии пакета через плагины можно кастомизировать скидку на товары, которые применены к промо-коду. Если на примерах, то через события mspcOnBeforeSetProductDiscount и mspcOnSetProductDiscount можно:
- Увеличивать/применять скидку на товар в зависимости от кол-ва единиц товара в корзине,
 - Давать скидку только на конкретную опцию товара, например на рубашку размера XXL,
 - Получить итоговую стоимость товара, за вычетом скидки, равной скидке за одну единицу, вне зависимости от кол-ва единиц данной позиции в корзине,
 - И много чего ещё, на что хватит вашей фантазии!
 
Событие mspcOnBeforeSetProductDiscount
Информация по событию доступна в документации.
Событие mspcOnSetProductDiscount
Информация по событию доступна в документации.
            
                Поблагодарить автора            
            
                 Отправить деньги            
        
        
            Комментарии: 3
                пишу плагин, чтобы разрешить скидку только на товары определенного бренда:
                    <?php
$sp = &$scriptProperties;
switch ($modx->event->name) {
    case "mspcOnBeforeSetProductDiscount":
    	if (strtolower($sp['coupon']['code']) == 'hotdays') {
	    	$product = $modx->getObject('msProduct', $sp['product']['id']);
			if ($product->get('vendor') != 9) {
	            $sp['discount'] = 0;
			}	
    	}
        break;
}
$modx->event->returnedValues = $sp;на фронте, если товар другого бренда, скидка не срабатывает, но все равно приходит сообщение, что промокод применен. А как написать, что недействителен?            
                В своём плагине ты не отменяешь промо-код, а ставишь нулевую скидку. Вот здесь почитай, как отменять действие промо-кода плагином.            
                    
                спасибо!            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.