***************************************************************************/ $ID = intval($ID); $STATUS_ID = intval($STATUS_ID); $arExt = GetScriptFileExt(); $arTemplates = GetFileTemplates(); $arUploadedFiles = array(); $BODY_TYPE = $BODY_TYPE == "text" ? "text" : "html"; $FILENAME = str_replace("\\", "/", $FILENAME); $arContent = array(); $site = CWorkflow::__CheckSite($site); $DOC_ROOT = CSite::GetSiteDocRoot($site); $del_id = intval($del_id); // id of the record being deleted if ($del_id > 0 && $WORKFLOW_RIGHT > "R" && check_bitrix_sessid()) { if (CWorkflow::IsAllowEdit($del_id, $locked_by, $date_lock)) { CWorkflow::Delete($del_id); LocalRedirect("/bitrix/admin/workflow_list.php?lang=" . LANGUAGE_ID); } else { if (intval($locked_by) > 0) { $str = str_replace("#DID#", "{$del_id}", GetMessage("FLOW_DOCUMENT_LOCKED")); $str = str_replace("#ID#", "{$locked_by}", $str); $str = str_replace("#DATE#", "{$date_lock}", $str); $message = new CAdminMessage(array("MESSAGE" => GetMessage("FLOW_ERROR"), "DETAILS" => $str, "TYPE" => "ERROR")); } else { $str = str_replace("#ID#", $del_id, GetMessage("FLOW_DOCUMENT_IS_NOT_AVAILABLE")); $message = new CAdminMessage(array("MESSAGE" => GetMessage("FLOW_ERROR"), "DETAILS" => $str, "TYPE" => "ERROR")); } } } // when ID of the document is given if ($ID > 0) {
function CleanUpPublished() { $err_mess = CWorkflow::err_mess() . "<br>Function: CleanUpPublished<br>Line: "; global $DB; $DAYS_AFTER_PUBLISHING = intval(COption::GetOptionString("workflow", "DAYS_AFTER_PUBLISHING", "0")); if ($DAYS_AFTER_PUBLISHING >= 0) { $strSql = "\n\t\t\t\tSELECT\n\t\t\t\t\tID\n\t\t\t\tFROM\n\t\t\t\t\tb_workflow_document\n\t\t\t\tWHERE\n\t\t\t\t\tSTATUS_ID = 1\n\t\t\t\tand to_days(now())-to_days(DATE_MODIFY)>={$DAYS_AFTER_PUBLISHING}\n\t\t\t\t"; $z = $DB->Query($strSql, false, $err_mess . __LINE__); while ($zr = $z->Fetch()) { CWorkflow::Delete($zr["ID"]); } } }
if ($WORKFLOW_RIGHT > "R" && ($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 (CWorkflow::IsAllowEdit($ID, $locked_by, $date_lock)) { CWorkflow::Delete($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->AddGroupError($str, $ID); //$strError .= $str."<br>"; } else { $str = str_replace("#ID#", $ID, GetMessage("FLOW_DOCUMENT_IS_NOT_AVAILABLE")); $lAdmin->AddGroupError($str, $ID); //$strError .= $str."<br>"; } } break; case "unlock":