403Webshell
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 :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/ilovecveti.ru/bitrix/modules/catalog/lib/v2/Iblock/IblockInfo.php
<?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;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit