getContext(); $request = $context->getRequest(); $docRoot = $context->getServer()->getDocumentRoot(); Loc::loadMessages($docRoot . BX_ROOT . "/modules/main/options.php"); Loc::loadMessages(__FILE__); if ($APPLICATION->GetGroupRight($module_id) < "S") { $APPLICATION->AuthForm(Loc::getMessage("ACCESS_DENIED")); } $tabs = [ [ "DIV" => "edit1", "TAB" => Loc::getMessage("REST_TAB_SET"), "TITLE" => Loc::getMessage("REST_TAB_TITLE_SET"), ], [ "DIV" => "edit2", "TAB" => Loc::getMessage("REST_TAB_LOG"), "TITLE" => Loc::getMessage("REST_TAB_TITLE_LOG"), ], ]; $tabControl = new CAdminTabControl("tabControl", $tabs); $backUrl = $request->get('back_url_settings'); $arDefaultValues = array( 'BLOCK_NEW_USER_LF_SITE' => 'N', ); $allOptions = [ [ 'CODE' => 'enable_mod_zip', 'NAME' => Loc::getMessage('REST_OPT_ENABLE_MOD_ZIP') . ':', 'PARAMS' => [ 'TYPE' => 'checkbox' ] ], [ 'CODE' => 'import_max_size', 'NAME' => Loc::getMessage('REST_OPT_MAX_IMPORT_SIZE') . ':', 'PARAMS' => [ 'TYPE' => 'float', 'PRECISION' => 2, 'ABS' => 'Y' ] ], ]; $filterOptions = [ [ 'CODE' => 'client_id', 'NAME' => Loc::getMessage('REST_OPT_LOG_FILTER_CLIENT_ID') . ' (client_id):', 'SIZE' => 45, ], [ 'CODE' => 'password_id', 'NAME' => Loc::getMessage('REST_OPT_LOG_FILTER_PASSWORD_ID') . ' (password_id):', 'SIZE' => 45, ], [ 'CODE' => 'scope', 'NAME' => Loc::getMessage('REST_OPT_LOG_FILTER_SCOPE') . ' (scope):', 'SIZE' => 12, ], [ 'CODE' => 'method', 'NAME' => Loc::getMessage('REST_OPT_LOG_FILTER_METHOD') . ' (method):', 'SIZE' => 45, ], [ 'CODE' => 'user_id', 'NAME' => Loc::getMessage('REST_OPT_LOG_FILTER_USER_ID') . ' (user_id):', 'SIZE' => 6, ], ]; // post save if ($Apply.$RestoreDefaults <> '' && \check_bitrix_sessid()) { if ($RestoreDefaults <> '') { include_once('default_option.php'); if (is_array($rest_default_option)) { foreach ($rest_default_option as $option => $value) { \COption::setOptionString($module_id, $option, $value); } } } else { foreach ($allOptions as $option) { if ($option[0] == 'header') { continue; } $code = $option['CODE']; $val = ${$code}; $val = trim($val); switch ($option['PARAMS']['TYPE']): case 'checkbox': if ($val <> 'Y') { $val = 'N'; } break; case 'float': $precision = $option['PARAMS']['PRECISION'] ? : 0; $val = round($val, $precision); break; endswitch; if($option['PARAMS']['ABS'] && $option['PARAMS']['ABS'] == 'Y') { $val = abs($val); } \COption::setOptionString($module_id, $code, $val); } if ($_REQUEST["clear_data"] === "y") { \Bitrix\Rest\LogTable::clearAll(); } if (array_key_exists('ACTIVE', $_REQUEST)) { $ACTIVE = intval($_REQUEST['ACTIVE']); if ($ACTIVE > 0 && $ACTIVE <= 86400) { LoggerManager::getInstance()->setEndTimeLogging(time() + $ACTIVE); LoggerManager::getInstance()->setLevel('info'); LoggerManager::getInstance()->setType('db'); } else { LoggerManager::getInstance()->deactivate(); } } $filters = array(); foreach ($filterOptions as $option) { $val = trim($_REQUEST["log_filters"][$option["CODE"]]); if ($val) { $filters[$option["CODE"]] = $val; } } LoggerManager::getInstance()->setFilterOptions($filters); } \LocalRedirect( $APPLICATION->GetCurPage() . '?mid=' . urlencode($mid) . '&lang=' . urlencode(LANGUAGE_ID) . '&back_url_settings=' . urlencode($backUrl) . '&' . $tabControl->ActiveTabParam()); } $tabControl->Begin(); ?>