Spamworldpro Mini Shell
Spamworldpro


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/aheadworks/module-csblock/Model/Rule/Condition/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //home/corals/old/vendor/aheadworks/module-csblock/Model/Rule/Condition/Combine.php
<?php
namespace Aheadworks\Csblock\Model\Rule\Condition;

/**
 * Class Combine
 * @package Aheadworks\Csblock\Model\Rule\Condition
 */
class Combine extends \Magento\Rule\Model\Condition\Combine
{

    /**
     * @var \Aheadworks\Csblock\Model\Rule\Condition\Product\AttributesFactory
     */
    protected $_attributeFactory;

    /**
     * @param \Magento\Rule\Model\Condition\Context $context
     * @param \Aheadworks\Csblock\Model\Rule\Condition\Product\AttributesFactory $attributesFactory
     * @param array $data
     */
    public function __construct(
        \Magento\Rule\Model\Condition\Context $context,
        \Aheadworks\Csblock\Model\Rule\Condition\Product\AttributesFactory $attributesFactory,
        array $data = []
    ) {
        parent::__construct($context, $data);
        $this->_attributeFactory = $attributesFactory;
        $this->setType(\Aheadworks\Csblock\Model\Rule\Condition\Combine::class);
    }

    /**
     * Prepare child rules option list
     *
     * @return array
     */
    public function getNewChildSelectOptions()
    {
        $conditions = [
            ['value' => $this->getType(), 'label' => __('Conditions Combination')],
            $this->_attributeFactory->create()->getNewChildSelectOptions(),
        ];

        $conditions = array_merge_recursive(parent::getNewChildSelectOptions(), $conditions);
        return $conditions;
    }

    /**
     * @return array|mixed
     */
    public function getConditions()
    {
        if ($this->getData($this->getPrefix()) === null) {
            $this->setData($this->getPrefix(), []);
        }
        return $this->getData($this->getPrefix());
    }

    /**
     * @param array $productCollection
     * @return $this
     */
    public function collectValidatedAttributes($productCollection)
    {
        foreach ($this->getConditions() as $condition) {
            /** @var Product|Combine $condition */
            $condition->setAggregator($condition->getAggregator());
            $condition->setTrue((bool)$condition->getValue());
            $condition->collectValidatedAttributes($productCollection);
        }
        return $this;
    }
}

Spamworldpro Mini