GetGroupRight("mail"); if($MOD_RIGHT<"R") $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); IncludeModuleLangFile(__FILE__); \Bitrix\Main\Loader::includeModule('mail'); $err_mess = "File: ".__FILE__."
Line: "; $sTableID = "t_filter_admin"; $oSort = new CAdminSorting($sTableID, "timestamp_x", "desc");// инициализация сортировки $lAdmin = new CAdminList($sTableID, $oSort);// инициализация списка $filter = new CAdminFilter( $sTableID."_filter_id", array( "ID", GetMessage("MAIL_FILT_ADM_FILT_MBOX"), GetMessage("MAIL_FILT_ADM_FILT_ACT") ) ); $arFilterFields = Array( "find_name", "find_id", "find_mailbox_id", "find_active", ); $lAdmin->InitFilter($arFilterFields);//инициализация фильтра $arFilter = Array( "ID"=>$find_id, "NAME"=>$find_name, "MAILBOX_ID"=>$find_mailbox_id, "ACTIVE"=>$find_active ); if ($MOD_RIGHT=="W" && $lAdmin->EditAction()) //если идет сохранение со списка { foreach($FIELDS as $ID => $arFields) { $ID = intval($ID); if(!$lAdmin->IsUpdated($ID)) continue; $DB->StartTransaction(); if(!CMailFilter::Update($ID, $arFields)) { $e = $APPLICATION->GetException(); $lAdmin->AddUpdateError(GetMessage("MAIL_SAVE_ERROR")." #".$ID.": ".$e->GetString(), $ID); $DB->Rollback(); } $DB->Commit(); } } // обработка действий групповых и одиночных if($MOD_RIGHT=="W" && $arID = $lAdmin->GroupAction()) { if($_REQUEST['action_target']=='selected') { $rsData = CMailFilter::GetList(Array($by=>$order), $arFilter); while($arRes = $rsData->Fetch()) $arID[] = $arRes['ID']; } foreach($arID as $ID) { if($ID == '') continue; $ID = intval($ID); switch($_REQUEST['action']) { case "delete": @set_time_limit(0); $DB->StartTransaction(); if(!CMailFilter::Delete($ID)) { $DB->Rollback(); $e = $APPLICATION->GetException(); $lAdmin->AddGroupError($e->GetString(), $ID); } $DB->Commit(); break; case "activate": case "deactivate": $arFields = Array("ACTIVE"=>($_REQUEST['action']=="activate"?"Y":"N")); if(!CMailFilter::Update($ID, $arFields)) if($e = $APPLICATION->GetException()) $lAdmin->AddGroupError(GetMessage("MAIL_SAVE_ERROR")." #".$ID.": ".$e->GetString(), $ID); break; } } } $rsData = CMailFilter::GetList(Array($by=>$order), $arFilter); $rsData = new CAdminResult($rsData, $sTableID); $rsData->NavStart(); // установка строки навигации $lAdmin->NavText($rsData->GetNavPrint(GetMessage("MAIL_FILT_ADM_NAVIGATION"))); $arHeaders = Array(); $arHeaders[] = Array("id"=>"ID", "content"=>"ID", "default"=>true, "sort" => "id"); $arHeaders[] = Array("id"=>"TIMESTAMP_X", "content"=>GetMessage("MAIL_FILT_ADM_DATECH"), "default"=>true, "sort" => "timestamp_x"); $arHeaders[] = Array("id"=>"NAME", "content"=>GetMessage("MAIL_FILT_ADM_NAME"), "default"=>true, "sort" => "name"); $arHeaders[] = Array("id"=>"ACTIVE", "content"=>GetMessage("MAIL_FILT_ADM_ACT"), "default"=>true, "sort" => "active"); $arHeaders[] = Array("id"=>"SORT", "content"=>GetMessage("MAIL_FILT_ADM_SORT"), "default"=>true, "sort" => "sort"); $arHeaders[] = Array("id"=>"MAILBOX_NAME", "content"=>GetMessage("MAIL_FILT_ADM_MBOX"), "default"=>true, "sort" => "mailbox_name"); $lAdmin->AddHeaders($arHeaders); // построение списка while($arRes = $rsData->NavNext(true, "f_")) { $row =& $lAdmin->AddRow($f_ID, $arRes); if ($row->bEditMode) { $row->AddInputField("NAME",Array("size"=>"35")); } else { $strType = ""; if($arRes["ACTION_TYPE"] <> '') { $res = CMailFilter::GetFilterList($arRes["ACTION_TYPE"]); if ($arModFilter = $res->Fetch()): $strType = htmlspecialcharsbx($arModFilter["NAME"])."
"; endif; } else { $strType = GetMessage("MAIL_FILT_ADM_MANUAL_TYPE")."
"; } $strWhen = ""; if ($arRes["WHEN_MAIL_RECEIVED"]=="Y") { $strWhen .= GetMessage("MAIL_FILT_ADM_WHEN_RECIEVE"); } if ($arRes["WHEN_MANUALLY_RUN"]=="Y") { $strWhen .= ($strWhen!=""?GetMessage("MAIL_FILT_ADM_WHEN_OR"):"").GetMessage("MAIL_FILT_ADM_WHEN_MANUAL"); } $strCond = ""; $res = CMailFilterCondition::GetList(Array("id"=>"asc"), Array("FILTER_ID"=>$f_ID)); while($ar = $res->Fetch()) { $strCond .= ''; if ($strCond!="") $strCond .= GetMessage("MAIL_FILT_ADM_WHEN_AND"); switch($ar["TYPE"]) { case "SENDER": $strCond .= GetMessage("MAIL_FILT_ADM_SENDER"); break; case "RECIPIENT": $strCond .= GetMessage("MAIL_FILT_ADM_RECIPIENT"); break; case "SUBJECT": $strCond .= GetMessage("MAIL_FILT_ADM_SUBJECT"); break; case "BODY": $strCond .= GetMessage("MAIL_FILT_ADM_BODY"); break; case "HEADER": $strCond .= GetMessage("MAIL_FILT_ADM_HEADER"); break; case "ALL": $strCond .= GetMessage("MAIL_FILT_ADM_ALL"); break; case "ATTACHMENT": $strCond .= GetMessage("MAIL_FILT_ADM_ATTACH"); break; } $strCond .= " "; switch($ar["COMPARE_TYPE"]) { case "CONTAIN": $strCond .= GetMessage("MAIL_FILT_ADM_CONTAIN"); $strNameTmp1 = GetMessage("MAIL_FILT_ADM_STRING"); $strNameTmp2 = GetMessage("MAIL_FILT_ADM_ONE_STRING"); break; case "NOT_CONTAIN": $strCond .= GetMessage("MAIL_FILT_ADM_NOTCONTAIN"); $strNameTmp1 = GetMessage("MAIL_FILT_ADM_STRING"); $strNameTmp2 = GetMessage("MAIL_FILT_ADM_ALL_STRING"); break; case "EQUAL": $strCond .= GetMessage("MAIL_FILT_ADM_EQUAL"); $strNameTmp1 = GetMessage("MAIL_FILT_ADM_EQUAL_STRING"); $strNameTmp2 = GetMessage("MAIL_FILT_ADM_EQUAL_ONESTRING"); break; case "NOT_EQUAL": $strCond .= GetMessage("MAIL_FILT_ADM_NOTEQUAL"); $strNameTmp1 = GetMessage("MAIL_FILT_ADM_EQUAL_STRING"); $strNameTmp2 = GetMessage("MAIL_FILT_ADM_EQUAL_ALLSTRING"); break; case "REGEXP": $strCond .= GetMessage("MAIL_FILT_ADM_REGEXP"); $strNameTmp1 = GetMessage("MAIL_FILT_ADM_REGEXP_STRING"); $strNameTmp2 = GetMessage("MAIL_FILT_ADM_REGEXP_ONESTRING"); break; } $ar["STRINGS"] = trim($ar["STRINGS"]); if (mb_strpos($ar["STRINGS"], "\n") > 0) { $ar["STRINGS"] = str_replace("\r", '', $ar["STRINGS"]); $ar["STRINGS"] = '"'.str_replace("\n", '","', $ar["STRINGS"]).'"'; $strCond .= " ".$strNameTmp2." {".htmlspecialcharsbx(mb_substr($ar["STRINGS"], 0, 30)).(mb_strlen(trim($ar["STRINGS"])) > 30?"...":"")."}"; } else $strCond .= " ".$strNameTmp1." "".htmlspecialcharsbx(mb_substr($ar["STRINGS"], 0, 30)).(mb_strlen($ar["STRINGS"]) > 30?"...":"")."""; } $strAction = ""; if($arRes["ACTION_READ"]=="Y") { $strAction .= ($strAction!=""?", ":"").GetMessage("MAIL_FILT_ADM_MARK_READ"); } if($arRes["ACTION_DELETE_MESSAGE"]=="Y") { $strAction .= ($strAction!=""?", ":"").GetMessage("MAIL_FILT_ADM_DELETE"); } if($arRes["ACTION_PHP"] <> '') { $strAction .= ($strAction!=""?", ":"").GetMessage("MAIL_FILT_ADM_PHP_ACTION"); } if ($arRes["ACTION_STOP_EXEC"]=="Y") { $strAction .= ($strAction!=""?GetMessage("MAIL_FILT_ADM_WHEN_AND"):"").GetMessage("MAIL_FILT_ADM_CANCEL_RULES"); } $strDesc = $strType. ($strCond!=""? GetMessage("MAIL_FILT_ADM_WHEN").", ".($strWhen!=''?$strWhen.', ':'').$strCond: $strWhen ).($strAction!="" && $strCond!=""?", ".GetMessage("then")." ":" ").$strAction; $row->AddViewField("NAME", $f_NAME."
".$strDesc); } $str = $f_MAILBOX_NAME.' ['.$f_MAILBOX_ID.']'; $row->AddViewField("MAILBOX_NAME", $str); $row->AddCheckField("ACTIVE"); $row->AddInputField("SORT", Array("size"=>"3")); $arActions = Array(); $arActions[] = array( "ICON"=>"edit", "DEFAULT" => "Y", "TEXT"=>GetMessage("MAIL_FILT_ADM_CHANGE"), "ACTION"=>$lAdmin->ActionRedirect("mail_filter_edit.php?ID=".$f_ID."&lang=".LANG) ); $arActions[] = array( "ICON"=>"list", "TEXT"=>GetMessage("MAIL_FILT_ADM_LOG"), "ACTION"=>$lAdmin->ActionRedirect("mail_log.php?find_filter_id=".$f_ID."&set_filter=Y&lang=".LANG) ); if ($MOD_RIGHT=="W") { $arActions[] = array("SEPARATOR"=>true); $arActions[] = array( "ICON"=>"delete", "TEXT"=>GetMessage("MAIL_FILT_ADM_DEL"), "ACTION"=>"if(confirm('".GetMessage('MAIL_FILT_ADM_DEL_CONFIRM')."')) ".$lAdmin->ActionDoGroup($f_ID, "delete"), ); } $row->AddActions($arActions); } // "подвал" списка $lAdmin->AddFooter( array( array("title"=>GetMessage("MAIN_ADMIN_LIST_SELECTED"), "value"=>$rsData->SelectedRowsCount()), array("counter"=>true, "title"=>GetMessage("MAIN_ADMIN_LIST_CHECKED"), "value"=>"0"), ) ); if ($MOD_RIGHT=="W") { // показ добавление формы с кнопками $lAdmin->AddGroupActionTable(Array( "activate"=>GetMessage("MAIN_ADMIN_LIST_ACTIVATE"), "deactivate"=>GetMessage("MAIN_ADMIN_LIST_DEACTIVATE"), "delete"=>GetMessage("MAIN_ADMIN_LIST_DELETE"), ) ); } $arSubMenu = Array(); $arSubMenu[] = array( "TEXT" => GetMessage("MAIL_FILT_ADM_MANUAL_TYPE"), "ACTION" => "window.location='/bitrix/admin/mail_filter_edit.php?filter_type=&lang=".LANG."';" ); ClearVars("a_"); $res = CMailFilter::GetFilterList(); while($ar = $res->ExtractFields("a_")) { $arSubMenu[] = array( "TEXT" => $a_NAME, "ACTION" => "window.location='/bitrix/admin/mail_filter_edit.php?filter_type=".$a_ID."&lang=".LANG."';" ); } $aContext = array( array( "ICON" => "btn_new", "TEXT" => GetMessage("MAIL_ADD_FILTER"), "TITLE" => GetMessage("MAIL_FILT_ADM_NEW_TYPE"), "MENU" => $arSubMenu, ), ); $lAdmin->AddAdminContextMenu($aContext); $lAdmin->CheckListMode(); $APPLICATION->SetTitle(GetMessage("MAIL_FILT_ADM_TITLE")); require_once($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/prolog_admin_after.php"); ?>
Begin();?> :
Fatal error: Uncaught Error: Call to undefined function ShowFilterLogicHelp() in D:\ktt\ttepla.com\public_html\bitrix\modules\mail\admin\mail_filter_admin.php:376 Stack trace: #0 {main} thrown in D:\ktt\ttepla.com\public_html\bitrix\modules\mail\admin\mail_filter_admin.php on line 376