'') { define("NO_KEEP_STATISTIC", "Y"); } require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_before.php"); require_once($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/prolog.php"); if(!$USER->CanDoOperation('edit_other_settings') && !$USER->CanDoOperation('view_other_settings')) $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); $isAdmin = $USER->CanDoOperation('edit_other_settings'); IncludeModuleLangFile(__FILE__); $arSettings = array( "transparentTextPercent" => array( "int", 5, 10, GetMessage("MAIN_ADM_CAPTCHA_PARAM1"), ), "arBGColor_1" => array( "string", 6, "FFFFFF", GetMessage("MAIN_ADM_CAPTCHA_PARAM2"), ), "arBGColor_2" => array( "string", 6, "FFFFFF", GetMessage("MAIN_ADM_CAPTCHA_PARAM3"), ), "numEllipses" => array( "int", 5, 100, GetMessage("MAIN_ADM_CAPTCHA_PARAM4"), ), "arEllipseColor_1" => array( "string", 6, "7F7F7F", GetMessage("MAIN_ADM_CAPTCHA_PARAM5"), ), "arEllipseColor_2" => array( "string", 6, "FFFFFF", GetMessage("MAIN_ADM_CAPTCHA_PARAM6"), ), "bLinesOverText" => array( "checkbox", "Y", "N", GetMessage("MAIN_ADM_CAPTCHA_PARAM7"), ), "numLines" => array( "int", 5, 20, GetMessage("MAIN_ADM_CAPTCHA_PARAM8"), ), "arLineColor_1" => array( "string", 6, "6E6E6E", GetMessage("MAIN_ADM_CAPTCHA_PARAM9"), ), "arLineColor_2" => array( "string", 6, "FAFAFA", GetMessage("MAIN_ADM_CAPTCHA_PARAM10"), ), "textStartX" => array( "int", 5, 7, GetMessage("MAIN_ADM_CAPTCHA_PARAM11"), ), "textFontSize" => array( "int", 5, 20, GetMessage("MAIN_ADM_CAPTCHA_PARAM12"), ), "arTextColor_1" => array( "string", 6, "000000", GetMessage("MAIN_ADM_CAPTCHA_PARAM13"), ), "arTextColor_2" => array( "string", 6, "646464", GetMessage("MAIN_ADM_CAPTCHA_PARAM14"), ), "textAngel_1" => array( "int", 5, -20, GetMessage("MAIN_ADM_CAPTCHA_PARAM15"), ), "textAngel_2" => array( "int", 5, 20, GetMessage("MAIN_ADM_CAPTCHA_PARAM16"), ), "textDistance_1" => array( "int", 5, 27, GetMessage("MAIN_ADM_CAPTCHA_PARAM17"), ), "textDistance_2" => array( "int", 5, 32, GetMessage("MAIN_ADM_CAPTCHA_PARAM18"), ), "bWaveTransformation" => array( "checkbox", "Y", "N", GetMessage("MAIN_ADM_CAPTCHA_PARAM19"), ), "bEmptyText" => array( "checkbox", "Y", "N", GetMessage("MAIN_ADM_CAPTCHA_PARAM23"), ), "arBorderColor" => array( "string", 6, "000000", GetMessage("MAIN_ADM_CAPTCHA_PARAM20"), ), "arTTFFiles" => array( "list", array( // "font.ttf" => "font.ttf", // "bitrix_captcha.ttf" => "bitrix_captcha.ttf", ), array("font.ttf"), GetMessage("MAIN_ADM_CAPTCHA_PARAM21"), ), "letters" => array( "string", 35, "ABCDEFGHJKLMNPQRSTWXYZ23456789", GetMessage("MAIN_ADM_CAPTCHA_PARAM22"), ), ); $cpt = new CCaptcha; $dh = opendir($_SERVER["DOCUMENT_ROOT"].$cpt->GetTTFFontsPath()); if($dh) { while(($file = readdir($dh)) !== false) { if(mb_substr(mb_strtolower($file), -4) === ".ttf") { $arSettings["arTTFFiles"][1][$file] = $file; } } closedir($dh); } $aTabs = array( array("DIV" => "fedit1", "TAB" => GetMessage("MAIN_ADM_CAPTCHA_TAB"), "ICON" => "main_settings", "TITLE" => GetMessage("MAIN_ADM_CAPTCHA_TAB_TITLE")), ); $tabControl = new CAdminTabControl("tabControl", $aTabs); if($REQUEST_METHOD=="POST" && (!empty($_POST['save']) || !empty($_POST['apply'])) && check_bitrix_sessid() && $isAdmin) { foreach($arSettings as $key => $value) { if($key === "letters") { $strChars = mb_strtoupper($_POST[$key]); $arChars = array(); for($i = 0, $c = mb_strlen($strChars);$i < $c;$i++) { $ch = mb_substr($strChars, $i, 1); $arChars[$ch] = $ch; } COption::SetOptionString("main", "CAPTCHA_".$key, implode("", $arChars)); } elseif($value[0] === "int") COption::SetOptionInt("main", "CAPTCHA_".$key, intval($_POST[$key] ?? 0)); elseif($value[0] === "string") COption::SetOptionString("main", "CAPTCHA_".$key, $_POST[$key] ?? ''); elseif($value[0] === "checkbox") COption::SetOptionString("main", "CAPTCHA_".$key, isset($_POST[$key]) && $_POST[$key]==="Y"? "Y": "N"); elseif($value[0] === "list") { $ar = array(); if(isset($_POST[$key]) && is_array($_POST[$key])) { foreach($_POST[$key] as $val) if(array_key_exists($val, $value[1])) $ar[] = $val; } COption::SetOptionString("main", "CAPTCHA_".$key, implode(",", $ar)); } } COption::SetOptionInt("main", "CAPTCHA_presets", intval($_POST["presets"])); LocalRedirect($APPLICATION->GetCurPage()."?lang=".LANGUAGE_ID."&".$tabControl->ActiveTabParam()); } if (!empty($_REQUEST["Preview"])) { $cpt = new CCaptcha(); $result = array(); foreach($arSettings as $key => $value) { if($value[0] === "int") { if(array_key_exists($key, $_GET)) $result[$key] = intval($_GET[$key]); else $result[$key] = COption::GetOptionInt("main", "CAPTCHA_".$key, $value[2]); } elseif($value[0] === "string") { if(array_key_exists($key, $_GET)) $result[$key] = $_GET[$key]; else $result[$key] = COption::GetOptionString("main", "CAPTCHA_".$key, $value[2]); } elseif($value[0] === "checkbox") { if(array_key_exists($key, $_GET)) $result[$key] = $_GET[$key] === "Y"? "Y": "N"; else $result[$key] = COption::GetOptionString("main", "CAPTCHA_".$key, $value[2]); } elseif($value[0] === "list") { $ar = array(); if(array_key_exists($key, $_GET)) { $_GET[$key] = explode(",", $_GET[$key]); foreach($_GET[$key] as $val) if(array_key_exists($val, $value[1])) $ar[] = $val; } else { $ar = explode(",", COption::GetOptionString("main", "CAPTCHA_".$key, implode(",", $value[2]))); } $result[$key] = $ar; } } $cpt->SetTextTransparent(true, $result["transparentTextPercent"]); $cpt->SetBGColorRGB($result["arBGColor_1"], $result["arBGColor_2"]); $cpt->SetEllipsesNumber($result["numEllipses"]); $cpt->SetEllipseColorRGB($result["arEllipseColor_1"], $result["arEllipseColor_2"]); $cpt->SetLinesOverText($result["bLinesOverText"] === "Y"); $cpt->SetLinesNumber($result["numLines"]); $cpt->SetLineColorRGB($result["arLineColor_1"], $result["arLineColor_2"]); $cpt->SetTextWriting($result["textAngel_1"], $result["textAngel_2"], $result["textStartX"], $result["textDistance_1"], $result["textDistance_2"], $result["textFontSize"]); $cpt->SetTextColorRGB($result["arTextColor_1"], $result["arTextColor_2"]); $cpt->SetWaveTransformation($result["bWaveTransformation"] === "Y"); $cpt->SetEmptyText($result["bEmptyText"] === "Y"); $cpt->SetBorderColorRGB($result["arBorderColor"]); $cpt->SetTTFFonts($result["arTTFFiles"]); $arChars = array(); $l = mb_strlen($result["letters"]); for($i = 0; $i < $l; $i++) $arChars[] = mb_substr($result["letters"], $i, 1); $cpt->SetCodeChars($arChars); $cpt->SetCode(); if ($cpt->InitCode($cpt->GetSID())) $cpt->Output(); else $cpt->OutputError(); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php"); die(); } $APPLICATION->SetTitle(GetMessage("MAIN_ADM_CAPTCHA_PAGE_TITLE")); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); $CAPTCHA_CODE = htmlspecialcharsbx($APPLICATION->CaptchaGetCode()); $tabControl->Begin(); ?>

Fatal error: Uncaught Error: Call to undefined function bitrix_sessid_post() in D:\ktt\ttepla.com\public_html\bitrix\modules\main\admin\captcha.php:526 Stack trace: #0 {main} thrown in D:\ktt\ttepla.com\public_html\bitrix\modules\main\admin\captcha.php on line 526