![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-sales-rule/Model/Quote/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\SalesRule\Model\Quote; use Magento\Quote\Model\Quote\Item\AbstractItem as QuoteItem; /** * Used to determine necessity to validate rule on item's children that may depends on product type. */ class ChildrenValidationLocator { /** * @var array */ private $productTypeChildrenValidationMap; /** * @param array $productTypeChildrenValidationMap * <pre> * [ * 'ProductType1' => true, * 'ProductType2' => false * ] * </pre> */ public function __construct( array $productTypeChildrenValidationMap = [] ) { $this->productTypeChildrenValidationMap = $productTypeChildrenValidationMap; } /** * Checks necessity to validate rule on item's children. * * @param QuoteItem $item * @return bool */ public function isChildrenValidationRequired(QuoteItem $item): bool { $type = $item->getProduct()->getTypeId(); if (isset($this->productTypeChildrenValidationMap[$type])) { return (bool)$this->productTypeChildrenValidationMap[$type]; } return true; } }