- Модуль: bizproc
- Путь к файлу: ~/bitrix/modules/bizproc/classes/general/document.php
- Класс: CBPDocument
- Вызов: CBPDocument::startWorkflowParametersValidate
static function startWorkflowParametersValidate($templateId, $arWorkflowParameters, $documentType, &$arErrors)
{
$arErrors = array();
$templateId = intval($templateId);
if ($templateId <= 0)
{
$arErrors[] = array(
"code" => "",
"message" => GetMessage("BPCGDOC_EMPTY_WD_ID"),
);
return array();
}
if (!isset($arWorkflowParameters) || !is_array($arWorkflowParameters))
$arWorkflowParameters = array();
$arWorkflowParametersValues = array();
$arRequest = $_REQUEST;
foreach ($_FILES as $k => $v)
{
if (array_key_exists("name", $v))
{
if (is_array($v["name"]))
{
$ks = array_keys($v["name"]);
for ($i = 0, $cnt = count($ks); $i < $cnt; $i++)
{
$ar = array();
foreach ($v as $k1 => $v1)
$ar[$k1] = $v1[$ks[$i]];
$arRequest[$k][] = $ar;
}
}
else
{
$arRequest[$k] = $v;
}
}
}
if (count($arWorkflowParameters) > 0)
{
$arErrorsTmp = array();
$ar = array();
foreach ($arWorkflowParameters as $parameterKey => $arParameter)
{
$key = "bizproc" . $templateId . "_" . $parameterKey;
$ar[$parameterKey] = $arRequest[$key] ?? null;
}
$arWorkflowParametersValues = CBPWorkflowTemplateLoader::CheckWorkflowParameters(
$arWorkflowParameters,
$ar,
$documentType,
$arErrors
);
}
return $arWorkflowParametersValues;
}