%PDF- %PDF-
Direktori : /home/bitrix/www/bitrix/modules/bizproc/admin/ |
Current File : /home/bitrix/www/bitrix/modules/bizproc/admin/bizproc_log.php |
<? require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_before.php"); require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/bizproc/include.php"); require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/bizproc/prolog.php"); IncludeModuleLangFile(__FILE__); /* $bizprocModulePermissions = $APPLICATION->GetGroupRight("bizproc"); if ($bizprocModulePermissions < "R") $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); */ require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); $errorMessage = ""; $ID = trim($_REQUEST["ID"]); $adminMode = (strtoupper($_REQUEST["admin_mode"]) == "Y"); $arWorkflowState = CBPStateService::GetWorkflowState($ID); if (!is_array($arWorkflowState) || count($arWorkflowState) <= 0) { $APPLICATION->SetTitle(GetMessage("BPABL_INVALID_WF")); CAdminMessage::ShowMessage(GetMessage("BPABL_INVALID_WF").". "); } else { $bCanView = CBPDocument::CanUserOperateDocument( CBPCanUserOperateOperation::ViewWorkflow, $GLOBALS["USER"]->GetID(), $arWorkflowState["DOCUMENT_ID"], array("WorkflowId" => $ID, "DocumentStates" => array($ID => $arWorkflowState), "UserGroups" => $GLOBALS["USER"]->GetUserGroupArray()) ); if (!$bCanView) { $APPLICATION->SetTitle(GetMessage("BPABL_ERROR")); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); echo ShowError(GetMessage("BPABL_NO_PERMS")); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin.php"); die(); } $backUrl = "/".ltrim(trim($_REQUEST["back_url"]), "\\/"); if (strlen($backUrl) <= 0) $backUrl = CBPDocument::GetDocumentAdminPage($arWorkflowState["DOCUMENT_ID"]); $aMenu = array( array( "TEXT" => GetMessage("BPABL_BACK"), "LINK" => $backUrl, "ICON" => "btn_list", ) ); $context = new CAdminContextMenu($aMenu); $context->Show(); $APPLICATION->SetTitle(str_replace("#ID#", $ID, GetMessage("BPABL_TITLE"))); $aTabs = array( array("DIV" => "edit1", "TAB" => GetMessage("BPABL_WF_TAB"), "ICON" => "bizproc", "TITLE" => GetMessage("BPABL_TAB_TITLE")) ); $tabControl = new CAdminTabControl("tabControl", $aTabs); $tabControl->Begin(); $tabControl->BeginNextTab(); ?> <tr> <td align="right" valign="top" width="50%"><?= GetMessage("BPABL_NAME") ?>:</td> <td width="50%" valign="top"><?= htmlspecialcharsbx($arWorkflowState["TEMPLATE_NAME"]) ?></td> </tr> <tr> <td align="right" valign="top" width="50%"><?= GetMessage("BPABL_DESCRIPTION") ?>:</td> <td width="50%" valign="top"><?= htmlspecialcharsbx($arWorkflowState["TEMPLATE_DESCRIPTION"]) ?></td> </tr> <tr> <td align="right" valign="top" width="50%"><?= GetMessage("BPABL_ID") ?>:</td> <td width="50%" valign="top"><?= htmlspecialcharsbx($arWorkflowState["ID"]) ?></td> </tr> <tr> <td width="40%"><?= GetMessage("BPABL_STATE_MODIFIED") ?>:</td> <td width="60%"><?= htmlspecialcharsbx($arWorkflowState["STATE_MODIFIED"]) ?></td> </tr> <tr> <td align="right" valign="top" width="50%"><?= GetMessage("BPABL_STATE_NAME") ?>:</td> <td width="50%" valign="top"><? if (strlen($arWorkflowState["STATE_NAME"]) > 0) { if (strlen($arWorkflowState["STATE_TITLE"]) > 0) echo htmlspecialcharsbx($arWorkflowState["STATE_TITLE"])." (".htmlspecialcharsbx($arWorkflowState["STATE_NAME"]).")"; else echo htmlspecialcharsbx($arWorkflowState["STATE_NAME"]); } else { echo " "; } ?></td> </tr> <tr> <td colspan="2"> </td> </tr> <tr class="heading"> <td colspan="2"><?= GetMessage("BPABL_LOG") ?>:</td> </tr> <tr> <td colspan="2"> <? if ($adminMode) { $arWorkflowTrack = CBPTrackingService::DumpWorkflow($ID); foreach ($arWorkflowTrack as $track) { echo $track["PREFIX"]; $strMessageTemplate = ""; switch ($track["TYPE"]) { case 1: $strMessageTemplate = GetMessage("BPABL_TYPE_1"); break; case 2: $strMessageTemplate = GetMessage("BPABL_TYPE_2"); break; case 3: $strMessageTemplate = GetMessage("BPABL_TYPE_3"); break; case 4: $strMessageTemplate = GetMessage("BPABL_TYPE_4"); break; case 5: $strMessageTemplate = GetMessage("BPABL_TYPE_5"); break; default: $strMessageTemplate = GetMessage("BPABL_TYPE_6"); } $name = (strlen($track["ACTION_TITLE"]) > 0 ? $track["ACTION_TITLE"]." (".$track["ACTION_NAME"].")" : $track["ACTION_NAME"]); switch ($track["EXECUTION_STATUS"]) { case CBPActivityExecutionStatus::Initialized: $status = GetMessage("BPABL_STATUS_1"); break; case CBPActivityExecutionStatus::Executing: $status = GetMessage("BPABL_STATUS_2"); break; case CBPActivityExecutionStatus::Canceling: $status = GetMessage("BPABL_STATUS_3"); break; case CBPActivityExecutionStatus::Closed: $status = GetMessage("BPABL_STATUS_4"); break; case CBPActivityExecutionStatus::Faulting: $status = GetMessage("BPABL_STATUS_5"); break; default: $status = GetMessage("BPABL_STATUS_6"); } switch ($track["EXECUTION_RESULT"]) { case CBPActivityExecutionResult::None: $result = GetMessage("BPABL_RES_1"); break; case CBPActivityExecutionResult::Succeeded: $result = GetMessage("BPABL_RES_2"); break; case CBPActivityExecutionResult::Canceled: $result = GetMessage("BPABL_RES_3"); break; case CBPActivityExecutionResult::Faulted: $result = GetMessage("BPABL_RES_4"); break; case CBPActivityExecutionResult::Uninitialized: $result = GetMessage("BPABL_RES_5"); break; default: $status = GetMessage("BPABL_RES_6"); } $note = ((strlen($track["ACTION_NOTE"]) > 0) ? ": ".$track["ACTION_NOTE"] : ""); $note = CBPTrackingService::parseStringParameter($note); echo str_replace( array("#ACTIVITY#", "#STATUS#", "#RESULT#", "#NOTE#"), array($name, $status, $result, $note), $strMessageTemplate ); echo "<br />"; } echo "<br><a href=\"".htmlspecialcharsbx($APPLICATION->GetCurPageParam("admin_mode=N", array("admin_mode")))."\">".GetMessage("BPABL_RES2SIMPLEMODE")."</a>"; } else { $dbResult = CBPTrackingService::GetList( array("ID" => "ASC"), array("WORKFLOW_ID" => $ID, "TYPE" => array( CBPTrackingType::Report, CBPTrackingType::Custom, CBPTrackingType::FaultActivity, CBPTrackingType::Error )), false, false, array("ID", "MODIFIED", "ACTION_NOTE") ); while ($arResult = $dbResult->GetNext()) echo "<i>".$arResult["MODIFIED"]."</i><br>".CBPTrackingService::parseStringParameter($arResult["ACTION_NOTE"])."<br><br>"; echo "<a href=\"".htmlspecialcharsbx($APPLICATION->GetCurPageParam("admin_mode=Y", array("admin_mode")))."\">".GetMessage("BPABL_RES2ADMINMODE")."</a>"; } ?> </td> </tr> <? //$tabControl->Buttons(); ?> <? $tabControl->End(); } require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin.php");