public function validate(Varien_Object $object) { // for optimization if we no conditions if (!$this->getConditions()) { return true; } $origProduct = null; if ($object->getHasChildren() && $object->getProductType() == 'configurable') { //remember original product $origProduct = $object->getProduct(); $origSku = $object->getSku(); foreach ($object->getChildren() as $child) { // only one itereation. $categoryIds = array_merge($child->getProduct()->getCategoryIds(), $origProduct->getCategoryIds()); $categoryIds = array_unique($categoryIds); $object->setProduct($child->getProduct()); $object->setSku($child->getSku()); $object->getProduct()->setCategoryIds($categoryIds); } } $result = @Mage_Rule_Model_Condition_Combine::validate($object); if ($origProduct) { // restore original product $object->setProduct($origProduct); $object->setSku($origSku); } return $result; }
public function getItemHtml(Varien_Object $item) { if ($item->getOrderItem()) { $type = $item->getOrderItem()->getProductType(); } else { $type = $item->getProductType(); } return $this->getItemRenderer($type)->setItem($item)->toHtml(); }
/** * Renders quantity as integer * * @param Varien_Object $row * @return int|string */ public function _getValue(Varien_Object $row) { if ($row->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) { return ''; } $quantity = parent::_getValue($row); if ($row->getIsQtyDecimal()) { return sprintf("%01.4f", $quantity); } else { return intval($quantity); } }
public function getColumnHtml(Varien_Object $item, $column, $field = null) { $orderId = $this->getRequest()->getParam('order_id'); if ($item->getOrderItem()) { $block = $this->getColumnRenderer($column, $item->getOrderItem()->getProductType()); } else { $block = $this->getColumnRenderer($column, $item->getProductType()); } if ($block) { $block->setItem($item); if (!is_null($field)) { $block->setField($field); } if ($column == 'qty') { $html = $block->toHtml(); $allDropships = Mage::getModel('inventorydropship/inventorydropship')->getCollection()->addFieldToFilter('order_id', $orderId)->addFieldToFilter('status', array('in' => array('3', '4', '6'))); $allDropshipIds = array(); foreach ($allDropships as $dropship) { $allDropshipIds[] = $dropship->getId(); } $dropshipProductNumber = 0; $dropshipProducts = Mage::getModel('inventorydropship/inventorydropship_product')->getCollection()->addFieldToFilter('dropship_id', array('in' => $allDropshipIds))->addFieldToFilter('item_id', $item->getOrderItemId()); foreach ($dropshipProducts as $dropshipProduct) { $dropshipProductNumber += $dropshipProduct->getQtyApprove(); } if ($dropshipProductNumber > 0) { $addMoreHtml = '<table cellspacing="0" class="qty-table"><tbody><tr><td>'; $addMoreHtml .= Mage::helper('inventorydropship')->__('Dropship'); $addMoreHtml .= '</td><td><strong>' . $dropshipProductNumber . '</strong></td></tr></tbody></table>'; $html .= $addMoreHtml; } return $html; } else { return $block->toHtml(); } } return ' '; }
/** * Retrieve rendered column html content * * @param Varien_Object $item * @param string $column the column key * @param string $field the custom item field * @return string */ public function getColumnHtml(Varien_Object $item, $column, $field = null) { if ($item->getOrderItem()) { $block = $this->getColumnRenderer($column, $item->getOrderItem()->getProductType()); } else { $block = $this->getColumnRenderer($column, $item->getProductType()); } if ($block) { $block->setItem($item); if (!is_null($field)) { $block->setField($field); } return $block->toHtml(); } return ' '; }
/** * @see Mage_Sales_Block_Items_Abstract::_getItemType() * Return product type for quote/order item * * @param Varien_Object * @return string */ protected function _getItemType(Varien_Object $item) { if ($item->getOrderItem()) { $type = $item->getOrderItem()->getProductType(); } elseif ($item instanceof Mage_Sales_Model_Quote_Address_Item) { $type = $item->getQuoteItem()->getProductType(); } else { $type = $item->getProductType(); } return $type; }
/** * Draw Item process * * @param Varien_Object $item * @param Zend_Pdf_Page $page * @param Mage_Sales_Model_Order $order * @return Zend_Pdf_Page */ protected function _drawItem(Varien_Object $item, Zend_Pdf_Page $page, Mage_Sales_Model_Order $order) { $type = $item->getProductType(); $renderer = $this->_getRenderer($type); $renderer->setOrder($order); $renderer->setItem($item); $renderer->setPdf($this); $renderer->setPage($page); $renderer->setRenderedModel($this); $renderer->draw(); return $renderer->getPage(); }
/** * Get item row html * * @param Varien_Object $item * @return string */ public function getItemHtml(Varien_Object $item) { if ($item->getOrderItem()) { $type = $item->getOrderItem()->getProductType(); } elseif ($item instanceof Mage_Sales_Model_Quote_Address_Item) { $type = $item->getQuoteItem()->getProductType(); } else { $type = $item->getProductType(); } $block = $this->getItemRenderer($type)->setItem($item); $this->_prepareItem($block); return $block->toHtml(); }