/* This code captures parse errors*/ register_shutdown_function('error_alert'); function error_alert() { $arErrorType = array( E_ERROR => "Fatal error", E_PARSE => "Parse error", ); $e = error_get_last(); if(is_null($e) === false && isset($arErrorType[$e['type']])) { ob_end_clean(); echo "
"; echo ''.$arErrorType[$e['type']].': '.htmlspecialcharsbx($e['message']).' in '.htmlspecialcharsbx($e['file']).' on line '.htmlspecialcharsbx($e['line']).''; } else { global $DB; if( isset($DB) && is_object($DB) && $DB->GetErrorMessage() != '' ) { ob_end_clean(); echo "
"; echo 'Query Error: '.htmlspecialcharsbx($DB->GetErrorSQL()).' ['.htmlspecialcharsbx($DB->GetErrorMessage()).']'; } } } function fancy_output($content) { if (isTextMode()) { $flags = ENT_COMPAT; if (defined('ENT_SUBSTITUTE')) $flags |= ENT_SUBSTITUTE; else $flags |= ENT_IGNORE; return sprintf('
%s', htmlspecialcharsbx($content, $flags)); } return sprintf('
%s', $content); } function isTextMode() { return (isset($_POST['result_as_text']) && $_POST['result_as_text'] === 'y'); } require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_before.php"); define("HELP_FILE", "utilities/php_command_line.php"); /** * @global \CUser $USER * @global \CMain $APPLICATION **/ if(!$USER->CanDoOperation('view_other_settings')) $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); $isAdmin = $USER->CanDoOperation('edit_php'); IncludeModuleLangFile(__FILE__); $remove = 0; if (isset($_REQUEST["remove"]) && preg_match('/^tab(\d+)$/', $_REQUEST["remove"], $match) && check_bitrix_sessid()) { $remove = $match[1]; } if (isset($_REQUEST["query_count"]) && $_REQUEST["query_count"] > 1 && check_bitrix_sessid()) { $query_count = intval($_REQUEST["query_count"]); CUserOptions::SetOption("php_command_line", "count", $query_count); } $query_count = CUserOptions::GetOption("php_command_line", "count", 1); if ($query_count <= 1) $remove = 0; if (isset($_REQUEST["save"]) && check_bitrix_sessid()) { CUtil::JSPostUnescape(); require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_js.php"); $i = 1; while (isset($_POST["query".$i])) { $saved = CUserOptions::GetOption("php_command_line", "query".$i, ''); if ($saved !== $_POST["query".$i]) { CUserOptions::SetOption("php_command_line", "query".$i, $_POST["query".$i]); } $i++; } while(CUserOptions::GetOption("php_command_line", "query".$i, '') <> '') { CUserOptions::DeleteOption("php_command_line", "query".$i); $i++; } echo "saved"; require($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/epilog_admin_js.php"); die(); } if( $_SERVER['REQUEST_METHOD'] == 'POST' && $_POST["ajax"] === "y" && !isset($_POST["add"]) && !$remove ) { CUtil::JSPostUnescape(); require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_js.php"); if( $_POST['query'] <> '' && $isAdmin && check_bitrix_sessid() ) { printf('