123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Catalog\Pricing\Render;
- use Magento\Catalog\Model\Product;
- use Magento\Framework\Json\Helper\Data;
- use Magento\Framework\Math\Random;
- use Magento\Framework\Pricing\Price\PriceInterface;
- use Magento\Framework\Pricing\Render\PriceBox as PriceBoxRender;
- use Magento\Framework\Pricing\Render\RendererPool;
- use Magento\Framework\View\Element\Template\Context;
- /**
- * Default catalog price box render
- *
- * @method string getPriceElementIdPrefix()
- * @method string getIdSuffix()
- */
- class PriceBox extends PriceBoxRender
- {
- /**
- * @var \Magento\Framework\Json\Helper\Data
- */
- protected $jsonHelper;
- /**
- * @var \Magento\Framework\Math\Random
- */
- protected $mathRandom;
- /**
- * @param Context $context
- * @param Product $saleableItem
- * @param PriceInterface $price
- * @param RendererPool $rendererPool
- * @param Data $jsonHelper
- * @param Random $mathRandom
- * @param array $data
- * @SuppressWarnings(PHPMD.UnusedFormalParameter)
- */
- public function __construct(
- Context $context,
- Product $saleableItem,
- PriceInterface $price,
- RendererPool $rendererPool,
- Data $jsonHelper,
- Random $mathRandom,
- array $data = []
- ) {
- $this->jsonHelper = $jsonHelper;
- $this->mathRandom = $mathRandom;
- parent::__construct($context, $saleableItem, $price, $rendererPool);
- }
- /**
- * Encode the mixed $valueToEncode into the JSON format
- *
- * @param mixed $valueToEncode
- * @return string
- */
- public function jsonEncode($valueToEncode)
- {
- return $this->jsonHelper->jsonEncode($valueToEncode);
- }
- /**
- * Get random string
- *
- * @param int $length
- * @param string|null $chars
- * @return string
- */
- public function getRandomString($length, $chars = null)
- {
- return $this->mathRandom->getRandomString($length, $chars);
- }
- /**
- * Check if quantity can be displayed for tier price with msrp
- *
- * @param Product $product
- * @return bool
- * @SuppressWarnings(PHPMD.BooleanGetMethodName)
- */
- public function getCanDisplayQty(Product $product)
- {
- //TODO Refactor - change to const similar to Model\Product\Type\Grouped::TYPE_CODE
- if ($product->getTypeId() == 'grouped') {
- return false;
- }
- return true;
- }
- }
|