![]() 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/cartforge.co/app/code/Amasty/Base/Block/Adminhtml/ |
<?php /** * @author Amasty Team * @copyright Copyright (c) Amasty (https://www.amasty.com) * @package Magento 2 Base Package */ namespace Amasty\Base\Block\Adminhtml; use Amasty\Base\Model\ModuleListProcessor; use Magento\Backend\Block\Template; use Magento\Config\Block\System\Config\Form\Field; use Magento\Store\Model\ScopeInterface; use Amasty\Base\Model\Source\NotificationType; use Amasty\Base\Model\Config; class Notification extends Field { /** * @var string */ protected $_template = 'Amasty_Base::notification.phtml'; /** * @var ModuleListProcessor */ private $moduleListProcessor; /** * @var Config */ private $config; public function __construct( Template\Context $context, ModuleListProcessor $moduleListProcessor, Config $config, array $data = [] ) { parent::__construct($context, $data); $this->moduleListProcessor = $moduleListProcessor; $this->config = $config; } protected function _toHtml() { if ($this->isSetNotification()) { return parent::_toHtml(); } return ''; } /** * @return int|null * @throws \Magento\Framework\Exception\FileSystemException */ public function getUpdatesCount() { $modules = $this->moduleListProcessor->getModuleList(); return count($modules['hasUpdate']); } /** * @return bool */ protected function isSetNotification() { $value = $this->config->getEnabledNotificationTypes(); return in_array(NotificationType::AVAILABLE_UPDATE, $value); } }