Добрый день.
В магазине есть возможность задавать размеры товара и от этого зависит его цена.
Для занесения в корзину правильной цены я слегка изменил процессор
/core/billing/processors/mgr/orders/products/create:
public function beforeSet(){
...
// Устанавливаем значение цены и валюты
// В дальнейшем в этом месте можно будет вклиниться с переопределением цен
$this->object->fromArray(array(
'price' => $this->getPrice($product),
'currency_id' => $product->get('sm_currency'),
));
return parent::beforeSet();
}
protected function getPrice($product){
return 1;
//в рабочей версии предполагается на основании определенных данных
// сформировать и вернуть цену. для теста пока возвращаю 1.
}
Проблема в том, что почему-то в корзину все равно попадает цена sm_price. Как такое может быть? Может, я что-то упустил?