- Модуль: scale
- Путь к файлу: ~/bitrix/modules/scale/lib/actionsdata.php
- Класс: BitrixScaleActionsData
- Вызов: ActionsData::getActionObject
static function getActionObject(
$actionId,
$serverHostname = "",
array $userParams = [],
array $freeParams = [],
array $actionParams = []
)
{
if($actionId == '')
throw new BitrixMainArgumentNullException("actionId");
if(!is_array($userParams))
throw new BitrixMainArgumentTypeException("userParams", "array");
if(!is_array($userParams))
throw new BitrixMainArgumentTypeException("freeParams", "array");
if(!is_array($actionParams))
throw new BitrixMainArgumentTypeException("actionParams", "array");
$action = false;
if(!isset($actionParams["TYPE"]) || $actionParams["TYPE"] !== "MODIFYED")
$actionParams = static::getAction($actionId);
if(empty($actionParams))
throw new Exception("Can't find params of action ".$actionId);
if(isset($actionParams["TYPE"]) && $actionParams["TYPE"] === "CHAIN")
$action = new ActionsChain($actionId, $actionParams, $serverHostname, $userParams, $freeParams);
else if(!empty($actionParams))
$action = new Action($actionId, $actionParams, $serverHostname, $userParams, $freeParams);
return $action;
}