コード例 #1
0
             $EPILOG = GetDefaultEpilog();
         }
     }
     $arFields["ENTERED_BY"] = $USER->GetID();
     $arFields["PROLOG"] = $PROLOG;
     $arFields["EPILOG"] = $EPILOG;
     $ID = CWorkflow::Insert($arFields);
 }
 CWorkflow::LinkFiles2Document($arUploadedFiles, $ID);
 if (is_array($del_files)) {
     foreach ($del_files as $del_id) {
         CWorkflow::CleanUpFiles($ID, $del_id);
     }
 }
 $strError = "";
 CWorkflow::SetStatus($ID, $STATUS_ID, intval($OLD_STATUS_ID), false);
 $strError = "";
 if (!$message) {
     if ($STATUS_ID == 1) {
         $strNote .= GetMessage("FLOW_PUBLISHED_SUCCESS");
     }
     if (strlen($save) > 0 || $STATUS_ID == 1) {
         if (strlen($return_url) > 0) {
             LocalRedirect($return_url);
         } else {
             LocalRedirect("/bitrix/admin/workflow_list.php?lang=" . LANGUAGE_ID . "&set_default=Y&strError=" . urlencode($strError) . "&strNote=" . urlencode($strNote));
         }
     } elseif (strlen($apply) > 0) {
         LocalRedirect("/bitrix/admin/workflow_edit.php?lang=" . LANGUAGE_ID . "&ID=" . $ID . "&strError=" . urlencode($strError) . "&strNote=" . urlencode($strNote) . "&" . $tabControl->ActiveTabParam() . (strlen($return_url) ? "&return_url=" . urlencode($return_url) : ""));
     }
 }
コード例 #2
0
ファイル: workflow_list.php プロジェクト: DarneoStudio/bitrix
$filter = new CAdminFilter($sTableID . "_filter_id", array(GetMessage('FLOW_F_ID'), GetMessage('FLOW_F_LOCK_STATUS'), GetMessage("FLOW_F_DATE_MODIFY"), GetMessage('FLOW_F_MODIFIED_BY'), GetMessage('FLOW_F_SITE'), 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_modified_user_id_exact_match);
InitBVar($find_filename_exact_match);
InitBVar($find_title_exact_match);
InitBVar($find_body_exact_match);
InitBVar($find_status_exact_match);
$arFilter = array("ID" => $find_id, "DATE_MODIFY_1" => $find_modify_1, "DATE_MODIFY_2" => $find_modify_2, "MODIFIED_USER_ID" => $find_type == "modified_by" && strlen($find) > 0 ? $find : $find_modified_user_id, "LOCK_STATUS" => $find_lock_status, "STATUS" => $find_status, "STATUS_ID" => $find_status_id, "FILENAME" => $find_filename, "SITE_ID" => $find_site_id, "TITLE" => $find_type == "title" && strlen($find) > 0 ? $find : $find_title, "BODY" => $find_type == "body" && strlen($find) > 0 ? $find : $find_body, "ID_EXACT_MATCH" => $find_id_exact_match, "MODIFIED_USER_ID_EXACT_MATCH" => $find_modified_user_id_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 ($WORKFLOW_RIGHT > "R" && $lAdmin->EditAction()) {
    foreach ($FIELDS as $ID => $arFields) {
        $ID = intval($ID);
        if (!$lAdmin->IsUpdated($ID)) {
            continue;
        }
        if (CWorkflow::IsAllowEdit($ID, $locked_by, $date_lock)) {
            CWorkflow::SetStatus($ID, $arFields["STATUS_ID"], $FIELDS_OLD[$ID]["STATUS_ID"]);
            CWorkflow::UnLock($ID);
        } else {
            if (intval($locked_by) > 0) {
                $str = str_replace("#DID#", $ID, GetMessage("FLOW_DOCUMENT_LOCKED"));
                $str = str_replace("#ID#", $locked_by, $str);
                $str = str_replace("#DATE#", $date_lock, $str);
                $lAdmin->AddUpdateError($str, $ID);
                //$strError .= $str."<br>";
            } else {
                $str = str_replace("#ID#", $ID, GetMessage("FLOW_DOCUMENT_IS_NOT_AVAILABLE"));
                $lAdmin->AddUpdateError($str, $ID);
                //$strError .= $str."<br>";
            }
        }
    }