本文整理匯總了PHP中CBPWorkflowTemplateLoader::FindParentActivityByName方法的典型用法代碼示例。如果您正苦於以下問題:PHP CBPWorkflowTemplateLoader::FindParentActivityByName方法的具體用法?PHP CBPWorkflowTemplateLoader::FindParentActivityByName怎麽用?PHP CBPWorkflowTemplateLoader::FindParentActivityByName使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類CBPWorkflowTemplateLoader
的用法示例。
在下文中一共展示了CBPWorkflowTemplateLoader::FindParentActivityByName方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: GetPropertiesDialogValues
public static function GetPropertiesDialogValues($documentType, $activityName, &$arWorkflowTemplate, &$arWorkflowParameters, &$arWorkflowVariables, $arCurrentValues, &$arErrors)
{
$arErrors = array();
$runtime = CBPRuntime::GetRuntime();
$arProperties = array();
$arProperties["Permission"] = CBPHelper::UsersStringToArray($arCurrentValues["permission"], $documentType, $arErrors);
if (count($arErrors) > 0) {
return false;
}
$arErrors = self::ValidateProperties($arProperties, new CBPWorkflowTemplateUser(CBPWorkflowTemplateUser::CurrentUser));
if (count($arErrors) > 0) {
return false;
}
$arCurrentActivity =& CBPWorkflowTemplateLoader::FindActivityByName($arWorkflowTemplate, $activityName);
$arCurrentActivity["Properties"] = $arProperties;
$currentParent =& CBPWorkflowTemplateLoader::FindParentActivityByName($arWorkflowTemplate, $activityName);
$c = count($currentParent['Children']);
if ($c == 1) {
if ($arCurrentValues["setstate"] != '') {
$currentParent['Children'][] = array('Type' => 'SetStateActivity', 'Name' => md5(uniqid(mt_rand(), true)), 'Properties' => array('TargetStateName' => $arCurrentValues["setstate"]), 'Children' => array());
}
} elseif ($currentParent['Children'][$c - 1]["Type"] == 'SetStateActivity') {
if ($arCurrentValues["setstate"] != '') {
$currentParent['Children'][$c - 1]["Properties"]['TargetStateName'] = $arCurrentValues["setstate"];
} else {
unset($currentParent['Children'][$c - 1]);
}
}
return true;
}