I'm spliting the magento order separately like different vendors, I'm fallowing the Vinai Answer from previous post. But it's returning an error.
Error: Invalid method Mage_Sales_Model_Quote::removeItemByKey()
Mage_Sales_Model_Quote this class have this method but it's returning error WHY?
my code is
<?php
class Easylife_SplitOrder_Model_Type_Onepage extends Mage_Checkout_Model_Type_Onepage
{
public function saveOrder()
{
$quote = $this->getQuote();
// First build an array with the items split by vendor
$sortedItems = array();
foreach ($quote->getAllItems() as $item) {
//$vendor = $item->getProduct()->getVendor(); // <- whatever you need
$product = Mage::getModel('catalog/product')->load($item->getProductId());
//Mage::log($product->getVendor());
$vendor = $product->getVendor();
if($vendor != 0){
if (! isset($sortedItems[$vendor])) {
$sortedItems[$vendor] = $item;
//Mage::log('vendor');
}
}
//Mage::log('$vendor');
}
Mage::log('One');
foreach ($sortedItems as $vendor => $items) {
// Empty quote
foreach ($quote->getAllItems() as $item) {
$quote->removeItemByKey($item->getId());
}
foreach ($items as $item) {
$quote->addItem($item);
}
// Update totals for vendor
$quote->setTotalsCollectedFlag(false)->collectTotals();
// Delegate to parent method to place an order for each vendor
parent::saveOrder();
}
Mage::log('2');
return $this;
}
}
How can I solve this?
Thanks in advance..