Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/ilovecveti.ru/bitrix/modules/catalog/lib/v2/Iblock/ |
Upload File : |
<?php namespace Bitrix\Catalog\v2\Iblock; use Bitrix\Main\ObjectNotFoundException; use Bitrix\Main\Type\Dictionary; /** * Class IblockInfo * * @package Bitrix\Catalog\v2\Iblock * * !!! This API is in alpha stage and is not stable. This is subject to change at any time without notice. * @internal */ class IblockInfo { private $iblock; public function __construct(int $iblockId) { $iblockInfo = \CCatalogSku::GetInfoByIBlock($iblockId); if (!$iblockInfo || !is_array($iblockInfo)) { throw new ObjectNotFoundException("Can not find catalog iblock {{$iblockId}}."); } $this->iblock = new Dictionary($iblockInfo); } public function toArray(): array { return $this->iblock->toArray(); } public function getCatalogType() { return $this->iblock->get('CATALOG_TYPE'); } // ToDo all these wrappers public function getProductIblockId(): int { return $this->canHaveSku() ? (int)$this->iblock->get('PRODUCT_IBLOCK_ID') : (int)$this->iblock->get('IBLOCK_ID'); } public function hasSubscription(): bool { return $this->iblock->get('SUBSCRIPTION') === 'Y'; } public function canHaveSku(): bool { return ( $this->getCatalogType() === \CCatalogSku::TYPE_OFFERS || $this->getCatalogType() === \CCatalogSku::TYPE_FULL || $this->getCatalogType() === \CCatalogSku::TYPE_PRODUCT ); } public function getSkuIblockId(): ?int { return $this->canHaveSku() ? (int)$this->iblock->get('IBLOCK_ID') : null; } public function getSkuPropertyId(): ?int { return $this->canHaveSku() ? (int)$this->iblock->get('SKU_PROPERTY_ID') : null; } public function getVatId(): ?int { return (int)$this->iblock->get('VAT_ID') ?: null; } }