![]() 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/app/code/Chronopost/Chronorelais/Block/Adminhtml/System/Config/ |
<?php /** * Chronopost * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade this extension to newer * version in the future. * * @category Chronopost * @package Chronopost_Chronorelais * @copyright Copyright (c) 2021 Chronopost */ declare(strict_types=1); namespace Chronopost\Chronorelais\Block\Adminhtml\System\Config; use Magento\Backend\Block\Template\Context; use Magento\Config\Block\System\Config\Form\Field; use Magento\Framework\Data\Form\Element\AbstractElement; use Chronopost\Chronorelais\Helper\Webservice; use Chronopost\Chronorelais\Helper\Data; /** * Class Enabled * * @package Chronopost\Chronorelais\Block\Adminhtml\System\Config */ class Enabled extends Field { /** * @var Webservice */ protected $helperWS; /** * @var Data */ private $helperData; /** * Enabled constructor. * * @param Context $context * @param Webservice $helperWS * @param Data $helperData * @param array $data */ public function __construct( Context $context, Webservice $helperWS, Data $helperData, array $data = [] ) { $this->helperWS = $helperWS; $this->helperData = $helperData; parent::__construct($context, $data); } /** * Return element html * * @param AbstractElement $element * * @return string */ protected function _getElementHtml(AbstractElement $element): string { $id = $element->getId(); $carrier = explode('_', $id); if (isset($carrier[1])) { $offer = null; if ($carrier[1] === Data::CHRONO_FRESH_CODE) { $offer = $this->helperData->getDefaultChronofreshOffer(); } if (!$this->helperWS->shippingMethodEnabled($carrier[1], 1000, $offer) || !$this->helperData->shippingMethodIsEnabled($carrier[1])) { $element->setDisabled('disabled'); $element->setValue(0); } } return parent::_getElementHtml($element) . $this->_toHtml(); } }