public static function GetPropertiesDialog($documentType, $activityName, $arWorkflowTemplate, $arWorkflowParameters, $arWorkflowVariables, $arCurrentValues = null, $formName = "") { $runtime = CBPRuntime::GetRuntime(); $arStates = CBPWorkflowTemplateLoader::GetStatesOfTemplate($arWorkflowTemplate); if (!is_array($arCurrentValues)) { $arCurrentActivity =& CBPWorkflowTemplateLoader::FindActivityByName($arWorkflowTemplate, $activityName); if (is_array($arCurrentActivity["Properties"]) && array_key_exists("TargetStateName", $arCurrentActivity["Properties"])) { $arCurrentValues["target_state_name"] = $arCurrentActivity["Properties"]["TargetStateName"]; } } return $runtime->ExecuteResourceFile(__FILE__, "properties_dialog.php", array("arStates" => $arStates, "arCurrentValues" => $arCurrentValues)); }
public static function GetPropertiesDialog($documentType, $activityName, $arWorkflowTemplate, $arWorkflowParameters, $arWorkflowVariables, $arCurrentValues = null, $formName = "") { $runtime = CBPRuntime::GetRuntime(); $currentParent =& CBPWorkflowTemplateLoader::FindParentActivityByName($arWorkflowTemplate, $activityName); $c = count($currentParent['Children']); $allowSetStatus = $c == 1 || $currentParent['Children'][$c - 1]["Type"] == 'SetStateActivity'; if (!is_array($arCurrentValues)) { $arCurrentValues = array(); $arCurrentActivity =& CBPWorkflowTemplateLoader::FindActivityByName($arWorkflowTemplate, $activityName); if (is_array($arCurrentActivity["Properties"]) && array_key_exists("Permission", $arCurrentActivity["Properties"])) { $arCurrentValues["permission"] = CBPHelper::UsersArrayToString($arCurrentActivity["Properties"]["Permission"], $arWorkflowTemplate, $documentType); } if ($c > 1 && $currentParent['Children'][$c - 1]["Type"] == 'SetStateActivity') { $arCurrentValues["setstate"] = $currentParent['Children'][$c - 1]["Properties"]["TargetStateName"]; } } $arStates = array(); if ($allowSetStatus) { $arStates = CBPWorkflowTemplateLoader::GetStatesOfTemplate($arWorkflowTemplate); } return $runtime->ExecuteResourceFile(__FILE__, "properties_dialog.php", array("arCurrentValues" => $arCurrentValues, "formName" => $formName, "allowSetStatus" => $allowSetStatus, "arStates" => $arStates)); }