Example #1
0
 /**
  * Render price for products
  *
  * @param   Varien_Object $row
  * @return  string
  */
 public function render(Varien_Object $row)
 {
     $_data = $row->getData($this->getColumn()->getIndex());
     $_priceHtml = false;
     if ($_data) {
         $_priceHtml = $_data;
     } elseif (is_null($_data)) {
         $_product = $row->load($row->getId());
         if ($_product) {
             $_priceHtml = ITwebexperts_Payperrentals_Helper_Price::getPriceListHtml($_product, 2);
         }
     }
     if ($_priceHtml !== false) {
         return $_priceHtml;
     } else {
         return $this->getColumn()->getDefault();
     }
 }
Example #2
0
 /**
  * Renders grid column
  *
  * @param   Varien_Object $row
  * @return  string
  */
 public function render(Varien_Object $_row)
 {
     $data = $_row->getData($this->getColumn()->getIndex());
     $priceAmount = 0;
     if ($data && $_row->getTypeId() != 'reservation') {
         $priceAmount = $data;
     } elseif ($_row->hasData('reservation_price')) {
         $priceAmount = $_row->getData('reservation_price');
     } elseif (is_null($data) || $_row->getTypeId() == 'reservation') {
         $product = $_row->load($_row->getId());
         if ($product->getTypeId() != ITwebexperts_Payperrentals_Helper_Data::PRODUCT_TYPE_BUNDLE || $product->getBundlePricingtype() == ITwebexperts_Payperrentals_Model_Product_Bundlepricingtype::PRICING_BUNDLE_FORALL) {
             /** TODO move calculation to mysql join first record */
             $priceCollection = Mage::getModel('payperrentals/reservationprices')->getCollection()->addFieldToFilter('entity_id', array('eq' => $_row->getData('entity_id')));
             if (count($priceCollection)) {
                 $firstRecord = $priceCollection->getFirstItem();
                 $priceAmount = $firstRecord->getPrice();
                 $_row->setData('reservation_number', $firstRecord->getNumberof());
                 $_row->setData('price_type', $firstRecord->getPtype());
             }
         } elseif ($product->getTypeId() == ITwebexperts_Payperrentals_Helper_Data::PRODUCT_TYPE_BUNDLE) {
             $priceAmount = 0;
         }
     }
     if ($priceAmount) {
         $data = floatval($priceAmount) * $this->_getRate($_row);
         $currency_code = $this->_getCurrencyCode($_row);
         if (!$currency_code) {
             return $data;
         }
         $data = sprintf("%f", $data);
         $data = Mage::app()->getLocale()->currency($currency_code)->toCurrency($data);
         if ($_row->hasData('reservation_number') && $_row->hasData('price_type')) {
             $periodAr = Mage::getModel('payperrentals/product_periodtype')->getOptionArray($_row->getData('reservation_number'));
             $data .= '/<b>' . $_row->getData('reservation_number') . ' ' . $periodAr[$_row->getData('price_type')] . '</b>';
         }
         return $data;
     }
     return $this->getColumn()->getDefault();
 }