} else {
                            $DB->Commit();
                        }
                    }
                }
                break;
            case "restore":
                if (!CIBlockElement::WF_Restore($ID)) {
                    $lAdmin->AddGroupError(GetMessage("IBLOCK_ADM_HISTORY_RESTORE_ERROR"), $ID);
                }
                break;
        }
    }
}
// dataset
$rsData = CIBlockElement::WF_GetHistoryList($ELEMENT_ID, $by, $order, $arFilter, $is_filtered);
$rsData = new CAdminResult($rsData, $sTableID);
$rsData->NavStart();
// navigation
$lAdmin->NavText($rsData->GetNavPrint(GetMessage("IBLOCK_ADM_HISTORY_PAGER")));
// list headers
$lAdmin->AddHeaders(array(array("id" => "ID", "content" => GetMessage("IBLOCK_FIELD_ID"), "sort" => "s_id", "default" => true), array("id" => "NAME", "content" => GetMessage("IBLOCK_FIELD_NAME"), "sort" => "s_name", "default" => true), array("id" => "WF_STATUS_ID", "content" => GetMessage("IBLOCK_FIELD_STATUS"), "sort" => "s_status", "default" => true), array("id" => "MODIFIED_BY", "content" => GetMessage("IBLOCK_FIELD_USER_NAME"), "sort" => "s_modified_by", "default" => true), array("id" => "TIMESTAMP_X", "content" => GetMessage("IBLOCK_FIELD_TIMESTAMP_X"), "sort" => "s_timestamp_x", "default" => true)));
// list
while ($arRes = $rsData->NavNext(true, "f_")) {
    $row =& $lAdmin->AddRow($f_ID, $arRes);
    if ($f_MODIFIED_BY > 0) {
        $row->AddViewField("MODIFIED_BY", '[<a href="user_edit.php?lang=' . LANG . '&ID=' . $f_MODIFIED_BY . '">' . $f_MODIFIED_BY . '</a>] ' . $f_USER_NAME . '</a>');
    }
    $row->AddViewField("WF_STATUS_ID", '[<a href="workflow_status_edit.php?ID=' . $f_WF_STATUS_ID . '&lang=' . LANG . '">' . $f_WF_STATUS_ID . '</a>] ' . htmlspecialcharsex(CIBlockElement::WF_GetStatusTitle($f_WF_STATUS_ID)));
    $arActions = array();
    $arActions[] = array("ICON" => "view", "DEFAULT" => true, "TEXT" => GetMessage("IBLOCK_ADM_HISTORY_VIEW"), "TITLE" => GetMessage("IBLOCK_ADM_HISTORY_VIEW_ALT"), "ACTION" => $lAdmin->ActionRedirect('iblock_element_edit.php?type=' . $type . '&ID=' . $f_ID . '&lang=' . LANG . '&IBLOCK_ID=' . $IBLOCK_ID . '&view=Y&find_section_section=' . $find_section_section));
Beispiel #2
0
    $res["EDIT"] = "N";
} elseif (CWebDavIblock::CheckRight($arResult["ELEMENT"]["PERMISSION"], "element_bizproc_start") == "U") {
    $res["EDIT"] = $arResult["ELEMENT"]["WF_STATUS_ID"] > 1 && $arResult["WF_STATUSES_PERMISSION"][$arResult["ELEMENT"]["WF_STATUS_ID"]] < 2 ? "N" : "Y";
}
$arResult["ELEMENT"]["SHOW"] = $res;
/************** Last element ***************************************/
$arResult["ELEMENT"]["LAST"] = $arResult["ELEMENT"];
$LAST_ID = CIBlockElement::WF_GetLast($arResult["ELEMENT"]["ID"]);
if ($LAST_ID != $arResult["ELEMENT"]["ID"]) {
    $db_res = CIBlockElement::GetByID($LAST_ID);
    if ($db_res && ($res = $db_res->Fetch())) {
        $arResult["ELEMENT"]["LAST"] = $res;
    }
}
/************** Versions *******************************************/
$db_res = CIBlockElement::WF_GetHistoryList($arParams['ELEMENT_ID'], $by = 's_id', $order = 'desc', array("IBLOCK_ID" => $arParams['IBLOCK_ID']), $is_filtered);
if ($db_res) {
    $db_res->NavStart($arParams["PAGE_ELEMENTS"]);
    $arResult["NAV_RESULT"] = $db_res;
    $arResult["NAV_STRING"] = $db_res->GetPageNavStringEx($navComponentObject, GetMessage("WD_DOCUMENTS"), $arParams["PAGE_NAVIGATION_TEMPLATE"]);
    if ($this->__parent) {
        $this->__parent->arResult["HISTORY_LENGTH"] = $db_res->NavRecordCount;
    }
    $nameTemplate = $arParams['NAME_TEMPLATE'];
    if (empty($nameTemplate)) {
        $nameTemplate = CSite::GetNameFormat();
    }
    if ($res = $db_res->GetNext()) {
        do {
            if (isset($arParams["OBJECT"])) {
                $dbPropRes = CIBlockElement::GetProperty($arParams["IBLOCK_ID"], $res["ID"], "sort", "asc", array("CODE" => $arParams["OBJECT"]->file_prop));