1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Bundle\Pricing\Render;
use Magento\Bundle\Pricing\Price\FinalPrice;
use Magento\Catalog\Pricing\Price\CustomOptionPrice;
use Magento\Catalog\Pricing\Render as CatalogRender;
/**
* Class for final_price rendering
*/
class FinalPriceBox extends CatalogRender\FinalPriceBox
{
/**
* Check if bundle product has one or more options, or custom options, with different prices
*
* @return bool
*/
public function showRangePrice()
{
/** @var FinalPrice $bundlePrice */
$bundlePrice = $this->getPriceType(FinalPrice::PRICE_CODE);
$showRange = $bundlePrice->getMinimalPrice() != $bundlePrice->getMaximalPrice();
if (!$showRange) {
//Check the custom options, if any
/** @var \Magento\Catalog\Pricing\Price\CustomOptionPrice $customOptionPrice */
$customOptionPrice = $this->getPriceType(CustomOptionPrice::PRICE_CODE);
$showRange =
$customOptionPrice->getCustomOptionRange(true) != $customOptionPrice->getCustomOptionRange(false);
}
return $showRange;
}
}