Что я хочу сделать, получить объект корзины и сохранить его в новой переменной, пройтись по ним, изменить их цену, а затем я хочу пересчитать налог на новую сумму.
как добиться этого за наименьшее количество шагов.
это код, который я сделал, но понятно, что налоги не пересчитываются, так как я не смог этого сделать:
$items=$address ;// add is of type Mage_Sales_Model_Quote_Address $address
foreach ($items->getQuote()->getAllVisibleItems() as $item){
if ($items->getParentItem()) {
continue;
}
try{
if ($item){
$qty = $item->getTotalQty();
$total = $item->getCalculationPrice()*$qty*2;
$baseTotal = $item->getBaseCalculationPrice()*$qty*2;
$item->setRowTotal(Mage::app()->getStore()->roundPrice($total));
$item->setBaseRowTotal(Mage::app()->getStore()->roundPrice($baseTotal));
$item->save();
}
}catch (Exception $e){
}
}
$baseTax = ($items->getTaxBeforeDiscount() ? $items->getTaxBeforeDiscount() : ($items->getTaxAmount() ? $items->getTaxAmount() : 0));
$tax = ($items->getBaseTaxBeforeDiscount() ? $items->getBaseTaxBeforeDiscount() : ($items->getBaseTaxAmount() ? $items->getBaseTaxAmount() : 0));