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/rospirotorg.ru/bitrix/modules/main/lib/userfield/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/main/lib/userfield/renderer.php
<?php

namespace Bitrix\Main\UserField;

/**
 * Class Renderer
 * @package Bitrix\Main\UserField
 */
class Renderer
{
	/**
	 * @var array $userField
	 * @var array $additionalParameters
	 * @var array $defaultAdditionalParameters
	 * @var string|array $mode
	 */
	protected
		$userField = [],
		$additionalParameters = [],
		$defaultAdditionalParameters = [
		'bVarsFromForm' => false
	],
		$mode;

	/**
	 * Renderer constructor.
	 * @param array $userField
	 * @param array $additionalParameters
	 */
	public function __construct(array $userField, ?array $additionalParameters = [])
	{
		$this->setUserField($userField);
		$this->setAdditionalParameters($additionalParameters);

		if($this->getAdditionalParameter('mode'))
		{
			$this->setMode($this->getAdditionalParameter('mode'));
		}
	}

	/**
	 * @return string|null
	 */
	public function render(): ?string
	{
		global $USER_FIELD_MANAGER;

		return $USER_FIELD_MANAGER->renderField(
			$this->getUserField(),
			$this->getAdditionalParameters()
		);
	}

	/**
	 * @return array|string
	 */
	public function getMode()
	{
		return $this->mode;
	}

	/**
	 * @param string|array $mode
	 * @return Renderer
	 */
	public function setMode($mode): Renderer
	{
		$this->mode = $mode;
		return $this;
	}

	/**
	 * @return array
	 */
	public function getUserField(): array
	{
		return $this->userField;
	}

	/**
	 * @param string $param
	 * @param string|array|int $value
	 * @param bool|null $storeAsDefault
	 * @return Renderer
	 */
	public function setAdditionalParameter(string $param, $value, ?bool $storeAsDefault = false): Renderer
	{
		$this->additionalParameters[$param] = $value;
		if($storeAsDefault)
		{
			$this->defaultAdditionalParameters[$param] = $value;
		}
		return $this;
	}

	/**
	 * @param string $param
	 * @return null|mixed
	 */
	public function getAdditionalParameter(string $param)
	{
		return ($this->additionalParameters[$param] ?: null);
	}

	/**
	 * @return array
	 */
	protected function getAdditionalParameters(): array
	{
		return $this->additionalParameters;
	}

	/**
	 * @param array $userField
	 * @return Renderer
	 */
	public function setUserField(array $userField): Renderer
	{
		$this->userField = $userField;
		return $this;
	}

	/**
	 * @param array|null $additionalParameters
	 * @return Renderer
	 */
	public function setAdditionalParameters(?array $additionalParameters): Renderer
	{
		$this->additionalParameters = $additionalParameters;
		return $this;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit