• Модуль: bizproc
  • Путь к файлу: ~/bitrix/modules/bizproc/classes/general/restactivity.php
  • Класс: CBPRestActivity
  • Вызов: CBPRestActivity::__construct
public function __construct($name)
{
	parent::__construct($name);

	$activityData = self::getRestActivityData();
	$this->arProperties = [
		'Title' => '',
		'UseSubscription' =>
			isset($activityData['USE_SUBSCRIPTION']) && $activityData['USE_SUBSCRIPTION'] === 'Y'
				? 'Y'
				: 'N'
		,
		'IsTimeout' => 0,
		'AuthUserId' => isset($activityData['AUTH_USER_ID']) ? 'user_' . $activityData['AUTH_USER_ID'] : null,
		'SetStatusMessage' => 'Y',
		'StatusMessage' => '',
		'TimeoutDuration' => 0,
		'TimeoutDurationType' => 's',
	];

	if (!empty($activityData['PROPERTIES']))
	{
		foreach ($activityData['PROPERTIES'] as $propertyName => $property)
		{
			if (isset($this->arProperties[$propertyName]))
			{
				continue;
			}
			$this->arProperties[$propertyName] = $property['DEFAULT'] ?? null;
		}
	}

	$types = [];
	if (!empty($activityData['RETURN_PROPERTIES']))
	{
		foreach ($activityData['RETURN_PROPERTIES'] as $returnPropertyName => $property)
		{
			if (isset($this->arProperties[$returnPropertyName]))
			{
				continue;
			}
			$this->arProperties[$returnPropertyName] = $property['DEFAULT'] ?? null;
			if (isset($property['TYPE']))
			{
				$types[$returnPropertyName] = [
					'Type' => $property['TYPE'],
					'Multiple' => CBPHelper::getBool($property['MULTIPLE']),
					'Options' => $property['OPTIONS'] ?? null,
				];
			}
		}
	}
	$types['IsTimeout'] = [
		'Type' => 'int',
	];
	$this->SetPropertiesTypes($types);
}