Using Magento 1.8v.
In my customization when customer adding products to cart. Some products qty should not be changeable(i.e qty is fixed) and some other products qty available to change .
Example :
cat1
products
cat2
subcat
subcat
For Example: cat1 products allowed for qty change so when adding to shopping cart it will be 1 and remaining category should not allowed so it is stock item value .
Im trying below code in this class Mage/Checkout/Model/Cart.php but throwing error
$categoryIds=$this->getProduct()->getCategoryIds($productid);
foreach($categoryIds as $categoryId)
$category = Mage::getModel('catalog/category')->load($categoryId);
if ($category->getName() == 'cat1')
$minimumQty = $product->getStockItem()->getMinSaleQty();
else if($category->getName() == 'cat2')
minimumQty=stock_item->loadByProduct($product)->getQty();
How do i get category name ?
I have tried to recreate your issue on my local installation.
I have done as follows
In file app\design\frontend\base\default\template\checkout\cart\item\default.phtml
in td containing input box for the product i added following code :
<?php
$categoryIds = $this->getProduct()->getCategoryIds($_item->getId());
foreach($categoryIds as $categoryId) {
$category = Mage::getModel('catalog/category')->load($categoryId);
if($category->getId()=='3') {
$minimumQty = $this->getProduct()->getStockItem()->getMinSaleQty();
} else {
$minimumQty = $this->getQty();
}
}
?>
<input name="cart[<?php echo $_item->getId() ?>][qty]" value="<?php echo $minimumQty ?>" size="4" title="<?php echo $this->__('Qty') ?>" class="input-text qty" maxlength="12" />
my category Is is 3, when i run the file, it correctly displays 3 which is the minimum quantity to add to shopping cart for this product.
Although i was wondering as magento already give an error message on this occurance i.e
Some of the products cannot be ordered in requested quantity.
above of the cart and
- The minimum quantity allowed for purchase is 3.
below product name
why do you need to do this ?