コード例 #1
0
$oSort = new CAdminSorting($sTableID, "s_date_modify", "desc");
$lAdmin = new CAdminList($sTableID, $oSort);
$arFilterFields = array("find", "find_type", "find_id", "find_id_exact_match", "find_document_id", "find_document_id_exact_match", "find_modify_1", "find_modify_2", "find_modified_user", "find_modified_user_exact_match", "find_filename", "find_filename_exact_match", "find_title", "find_title_exact_match", "find_body", "find_body_exact_match", "find_status", "find_status_exact_match", "find_status_id", "FILTER_logic");
$lAdmin->InitFilter($arFilterFields);
$filter = new CAdminFilter($sTableID . "_filter_id", array("ID", GetMessage('FLOW_F_DOCUMENT'), GetMessage("FLOW_F_DATE_MODIFY"), GetMessage('FLOW_F_MODIFIED_BY'), GetMessage('FLOW_F_FILENAME'), GetMessage('FLOW_F_TITLE'), GetMessage('FLOW_F_BODY'), GetMessage('FLOW_F_STATUS'), GetMessage('FLOW_F_LOGIC')));
InitBVar($find_id_exact_match);
InitBVar($find_document_id_exact_match);
InitBVar($find_modified_user_exact_match);
InitBVar($find_filename_exact_match);
InitBVar($find_title_exact_matc);
InitBVar($find_body_exact_match);
InitBVar($find_status_exact_match);
$arFilter = array("ID" => $find_id, "DOCUMENT_ID" => $find_document_id, "DATE_MODIFY_1" => $find_modify_1, "DATE_MODIFY_2" => $find_modify_2, "MODIFIED_USER" => $find_type == "modified_by" && strlen($find) > 0 ? $find : $find_modified_user, "FILENAME" => $find_filename, "TITLE" => $find_type == "title" && strlen($find) > 0 ? $find : $find_title, "BODY" => $find_type == "body" && strlen($find) > 0 ? $find : $find_body, "STATUS" => $find_status, "STATUS_ID" => $find_status_id, "ID_EXACT_MATCH" => $find_id_exact_match, "DOCUMENT_ID_EXACT_MATCH" => $find_document_id_exact_match, "MODIFIED_USER_EXACT_MATCH" => $find_modified_user_exact_match, "FILENAME_EXACT_MATCH" => $find_filename_exact_match, "TITLE_EXACT_MATCH" => $find_title_exact_match, "BODY_EXACT_MATCH" => $find_body_exact_match, "STATUS_EXACT_MATCH" => $find_status_exact_match);
if ($arID = $lAdmin->GroupAction()) {
    if ($_REQUEST['action_target'] == 'selected') {
        $rsData = CWorkflow::GetList($by, $order, $arFilter, $is_filtered);
        while ($arRes = $rsData->Fetch()) {
            $arID[] = $arRes['ID'];
        }
    }
    foreach ($arID as $ID) {
        $ID = IntVal($ID);
        if ($ID <= 0) {
            continue;
        }
        switch ($_REQUEST['action']) {
            case "delete":
                if ($WORKFLOW_RIGHT > "R" && CWorkflow::IsAdmin()) {
                    CWorkflow::DeleteHistory($ID);
                }
                break;