Example #1
0
File: Cart.php Project: kingsj/core
 /**
  * Show message about wrong product amount
  *
  * @param \XLite\Model\Product $product Product to process
  * @param integer              $amount  Available amount
  *
  * @return void
  */
 protected function processInvalidAmountError(\XLite\Model\Product $product, $amount)
 {
     \XLite\Core\TopMessage::addWarning('Only ' . $amount . ' items are available for the "' . $product->getName() . '" product');
 }
Example #2
0
 /**
  * Register the change amount inventory
  *
  * @param integer              $orderId Order identificator
  * @param \XLite\Model\Product $product Product object
  * @param integer              $delta   Inventory delta changes
  *
  * @return void
  */
 public function registerChangeAmount($orderId, $product, $delta)
 {
     $inventory = $product->getInventory();
     if ($inventory->getEnabled()) {
         $this->registerEvent($orderId, static::CODE_CHANGE_AMOUNT, $this->getOrderChangeAmountDescription($orderId, $delta, $inventory), $this->getOrderChangeAmountData($orderId, $product->getName(), $inventory->getPublicAmount(), $delta));
     }
 }
Example #3
0
 /**
  * Return the icon 'alt' value
  *
  * @param \XLite\Model\Product $product Current product
  *
  * @return string
  */
 protected function getIconAlt($product)
 {
     return $product->getImage() && $product->getImage()->getAlt() ? $product->getImage()->getAlt() : $product->getName();
 }
Example #4
0
 /**
  * Generate clean URL
  *
  * @param \XLite\Model\Product $model  Product
  * @param string               $value  Value OPTIONAL
  *
  * @return void
  */
 protected function generateCleanURL(\XLite\Model\Product $model, $value = '')
 {
     if (\XLite\Core\Converter::isEmptyString($value)) {
         if (!\XLite\Core\Converter::isEmptyString($this->currentRowData['name'])) {
             // Input cleanURL value is empty, trying to get product name from current row data
             $lngCodes = array_unique(array('en', $this->importer->getLanguageCode()));
             foreach ($lngCodes as $code) {
                 if (!empty($this->currentRowData['name'][$code])) {
                     $value = $this->currentRowData['name'][$code];
                     break;
                 }
             }
         }
         if (\XLite\Core\Converter::isEmptyString($value)) {
             // Try to get value from current product name
             $value = $model->getName();
         }
     } else {
         $value = preg_replace('/\\.html$/', '', $value);
     }
     /** @var \XLite\Model\Repo\CleanURL $repo */
     $repo = \XLite\Core\Database::getRepo('XLite\\Model\\CleanURL');
     $value = $repo->generateCleanURL($model, $value);
     if (!\XLite\Core\Converter::isEmptyString($value)) {
         $this->updateCleanURL($model, $value);
     }
 }
Example #5
0
 /**
  * The product column displays the product name
  *
  * @param \XLite\Model\Product $product
  *
  * @return string
  */
 protected function preprocessProduct(\XLite\Model\Product $product)
 {
     return $product->getName();
 }
 /**
  * {@inheritDoc}
  */
 public function getName()
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'getName', array());
     return parent::getName();
 }