%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 3.15.208.238 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/rest/lib/preset/data/ |
Upload File : |
<?php namespace Bitrix\Rest\Preset\Data; use Bitrix\Main\ArgumentException; use Bitrix\Main\Data\Cache; use Bitrix\Main\Localization\Loc; use Bitrix\Main\Web\Json; use Bitrix\Rest\Dictionary\Integration; Loc::loadMessages(__FILE__); /** * Class Element * @package Bitrix\Rest\Preset\Data */ class Element extends Base { private const CACHE_DIR = '/rest/integration/element/'; public const DEFAULT_APPLICATION = 'application'; public const DEFAULT_IN_WEBHOOK = 'in-hook'; public const DEFAULT_OUT_WEBHOOK = 'out-hook'; /** * @param $code string * * @return array * @throws ArgumentException */ public static function get($code) : array { $result = []; $cache = Cache::createInstance(); if ($cache->initCache(static::CACHE_TIME, 'item' . $code . LANGUAGE_ID, static::CACHE_DIR)) { $result = $cache->getVars(); } elseif ($cache->startDataCache()) { $remoteDictionary = new Integration(); $dictionary = $remoteDictionary->toArray(); if (!empty($dictionary)) { $dictionaryCode = array_column($dictionary, 'code'); $key = array_search($code, $dictionaryCode, true); if ($key !== false) { $el = $dictionary[$key]; if (!empty($el['option'])) { $data = Json::decode(base64_decode($el['option'])); if (is_array($data)) { $data = static::changeMessage($data); $data['CODE'] = $data['ELEMENT_CODE']; $result = $data; } } } } $cache->endDataCache($result); } return $result; } /** * @param $sectionCode string * * @return array * @throws ArgumentException */ public static function getList($sectionCode) : array { $result = []; $cache = Cache::createInstance(); if ($cache->initCache(static::CACHE_TIME, 'section' . $sectionCode . LANGUAGE_ID, static::CACHE_DIR)) { $result = $cache->getVars(); } elseif ($cache->startDataCache()) { $dictionary = new Integration(); foreach ($dictionary as $el) { if (!empty($el['option'])) { $data = Json::decode(base64_decode($el['option'])); if (is_array($data) && $sectionCode === $data['SECTION_CODE']) { $data = static::changeMessage($data); $data['CODE'] = $data['ELEMENT_CODE']; $result[$data['CODE']] = $data; } } } $cache->endDataCache($result); } return $result; } }