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/amasty/feed/Model/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/old/vendor/amasty/feed/Model/FormFieldDependency.php
<?php
/**
 * @author Amasty Team
 * @copyright Copyright (c) Amasty (https://www.amasty.com)
 * @package Product Feed for Magento 2
 */

namespace Amasty\Feed\Model;

use Magento\Backend\Block\Widget\Form\Element\Dependence;
use Magento\Config\Model\Config\Structure\Element\Dependency\FieldFactory;
use Magento\Framework\View\Element\AbstractBlock;

class FormFieldDependency
{
    /**
     * @var FieldFactory
     */
    private $fieldFactory;

    /**
     * @var array
     */
    private $dependArray =[];

    public function __construct(FieldFactory $fieldFactory)
    {
        $this->fieldFactory = $fieldFactory;
    }

    /**
     * @param string $whatId
     * @param string $fromId
     * @param array|string $value
     */
    public function addDepend($whatId, $fromId, $value)
    {
        $this->dependArray[] = [
            'what' => $whatId,
            'from' => $fromId,
            'value' => is_array($value) ? implode(",", $value) : $value
        ];
    }

    /**
     * @param AbstractBlock $block
     */
    public function depend(AbstractBlock $block)
    {
        /** @var Dependence $blockDependence */
        $blockDependence = $block->getLayout()->createBlock(
            Dependence::class
        );

        /** @var array $depend */
        foreach ($this->dependArray as $depend) {
            $refField = $this->fieldFactory->create(
                [
                    'fieldData' => [
                        'value' => $depend['value'],
                        'separator' => ','
                    ],
                    'fieldPrefix' => ''
                ]
            );

            $blockDependence->addFieldMap($depend['what'], $depend['what'])
                ->addFieldMap($depend['from'], $depend['from'])
                ->addFieldDependence(
                    $depend['what'],
                    $depend['from'],
                    $refField
                );
        }

        $block->setChild(
            'form_after',
            $blockDependence
        );
    }
}

Spamworldpro Mini