CanDoOperation('security_antivirus_settings_read'); $canWrite = $USER->CanDoOperation('security_antivirus_settings_write'); if(!$canRead && !$canWrite) $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); $rsSecurityWhiteList = CSecurityAntiVirus::GetWhiteList(); if($rsSecurityWhiteList->Fetch()) $bSecurityWhiteList = true; else $bSecurityWhiteList = false; $aTabs = array( array( "DIV" => "main", "TAB" => GetMessage("SEC_ANTIVIRUS_MAIN_TAB"), "ICON"=>"main_user_edit", "TITLE"=>GetMessage("SEC_ANTIVIRUS_MAIN_TAB_TITLE"), ), array( "DIV" => "params", "TAB" => GetMessage("SEC_ANTIVIRUS_PARAMETERS_TAB"), "ICON"=>"main_user_edit", "TITLE"=>GetMessage("SEC_ANTIVIRUS_PARAMETERS_TAB_TITLE"), ), array( "DIV" => "exceptions", "TAB" => $bSecurityWhiteList? GetMessage("SEC_ANTIVIRUS_WHITE_LIST_SET_TAB"): GetMessage("SEC_ANTIVIRUS_WHITE_LIST_TAB"), "ICON"=>"main_user_edit", "TITLE"=>GetMessage("SEC_ANTIVIRUS_WHITE_LIST_TAB_TITLE"), ), ); $tabControl = new CAdminTabControl("tabControl", $aTabs, true, true); $bVarsFromForm = false; $_GET["return_url"] = $_GET["return_url"] ?? ""; $returnUrl = $_GET["return_url"]? "&return_url=".urlencode($_GET["return_url"]): ""; if( $_SERVER["REQUEST_METHOD"] == "POST" && (isset($_REQUEST["save"]) || isset($_REQUEST["apply"]) || isset($_REQUEST["antivirus_b"])) && $canWrite && check_bitrix_sessid() ) { if($_REQUEST["antivirus_b"]!="") CSecurityAntiVirus::SetActive($_POST["antivirus_active"]==="Y"); $antivirus_timeout = intval($_POST["antivirus_timeout"]); if($antivirus_timeout <= 0) $antivirus_timeout = 1; COption::SetOptionInt("security", "antivirus_timeout", $antivirus_timeout); if($_POST["antivirus_action"]==="notify_only") COption::SetOptionString("security", "antivirus_action", "notify_only"); else COption::SetOptionString("security", "antivirus_action", "replace"); CSecurityAntiVirus::UpdateWhiteList($_POST["WHITE_LIST"]); if(isset($_REQUEST["save"]) && $_GET["return_url"]!="") LocalRedirect($_GET["return_url"]); else LocalRedirect("/bitrix/admin/security_antivirus.php?lang=".LANGUAGE_ID.$returnUrl."&".$tabControl->ActiveTabParam()); } $messageDetails = ""; if (CSecurityAntiVirus::IsActive()) { $messageType = "OK"; $messageText = GetMessage("SEC_ANTIVIRUS_ON"); if($bSecurityWhiteList || COption::GetOptionString("security", "antivirus_action") == "notify_only") $messageDetails = "".GetMessage("SEC_ANTIVIRUS_WARNING").""; } else { $messageType = "ERROR"; $messageText = GetMessage("SEC_ANTIVIRUS_OFF"); } $warningMessage = ""; if(!defined("BX_SECURITY_AV_STARTED")) { if(preg_match("/cgi/i", php_sapi_name())) $warningMessage = GetMessage("SEC_ANTIVIRUS_PREBODY_NOTFOUND_CGI", array("#PATH#" => $_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/security/tools/start.php")); else $warningMessage = GetMessage("SEC_ANTIVIRUS_PREBODY_NOTFOUND", array("#PATH#" => $_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/security/tools/start.php")); } $APPLICATION->SetTitle(GetMessage("SEC_ANTIVIRUS_TITLE")); CUtil::InitJSCore(); $APPLICATION->AddHeadScript('/bitrix/js/security/admin/interface.js'); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); CAdminMessage::ShowMessage(array( "MESSAGE" => $messageText, "TYPE" => $messageType, "DETAILS" => $messageDetails, "HTML" => true )); ?>