msOnAddToCart срабатывает только при первом добавление товара, как исправить?
Есть решение
Нужно чтобы при добавлении товара если больше опред суммы, то снижал цену товара, и стоимость корзины.
Код который тестил
4
Код который тестил
<?php
switch ($modx->event->name) {
case 'msOnAddToCart':
$res = $modx->getObject('modResource', 1);
$defaultOptPrice = (int)$res->getTVValue('opt_price__default');
$crt = $cart->get();
$modx->log(modX::LOG_LEVEL_ERROR, '
=:>' . print_r($crt));
foreach($crt as $crtItem ){
$currentGoods = $modx->getObject('modResource', (int)$crtItem['id']);
$currentGoodsOptPrice = (int)$currentGoods->getTVValue('opt_price');
if(((int)$crtItem['price'] * (int)$crtItem['count']) >= $defaultOptPrice){
$crtItem['price'] = $currentGoodsOptPrice;
}
}
$cart->set($crt);
break;
}Кстати код выше так же не меняет результат корзины.
Комментарии: 4