X-Git-Url: https://git.wh0rd.org/?p=tt-rss.git;a=blobdiff_plain;f=backend.php;h=b2eba083eefb88231300a1349eee150609adbc03;hp=66afb06c030ca59554100f0161a11321fb34a3a5;hb=e2b8c9273e09091c235959c25d8e4d8122aa6ca8;hpb=19b3992b7855518c6fe05a380b6471902f5be5b7 diff --git a/backend.php b/backend.php index 66afb06c..b2eba083 100644 --- a/backend.php +++ b/backend.php @@ -37,30 +37,36 @@ @$csrf_token = $_REQUEST['csrf_token']; - require_once "functions.php"; + require_once "autoload.php"; require_once "sessions.php"; + require_once "functions.php"; require_once "config.php"; require_once "db.php"; require_once "db-prefs.php"; - no_cache_incantation(); - startup_gettext(); - $script_started = getmicrotime(); + $script_started = microtime(true); - $link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); + if (!init_plugins()) return; - if (!init_connection($link)) return; - - header("Content-Type: text/plain; charset=utf-8"); + header("Content-Type: text/json; charset=utf-8"); if (ENABLE_GZIP_OUTPUT && function_exists("ob_gzhandler")) { ob_start("ob_gzhandler"); } if (SINGLE_USER_MODE) { - authenticate_user($link, "admin", null); + authenticate_user( "admin", null); + } + + if ($_SESSION["uid"]) { + if (!validate_session()) { + header("Content-Type: text/json"); + print error_json(6); + return; + } + load_user_plugins( $_SESSION["uid"]); } $purge_intervals = array( @@ -75,21 +81,21 @@ $update_intervals = array( 0 => __("Default interval"), -1 => __("Disable updates"), - 15 => __("Each 15 minutes"), - 30 => __("Each 30 minutes"), + 15 => __("15 minutes"), + 30 => __("30 minutes"), 60 => __("Hourly"), - 240 => __("Each 4 hours"), - 720 => __("Each 12 hours"), + 240 => __("4 hours"), + 720 => __("12 hours"), 1440 => __("Daily"), 10080 => __("Weekly")); $update_intervals_nodefault = array( -1 => __("Disable updates"), - 15 => __("Each 15 minutes"), - 30 => __("Each 30 minutes"), + 15 => __("15 minutes"), + 30 => __("30 minutes"), 60 => __("Hourly"), - 240 => __("Each 4 hours"), - 720 => __("Each 12 hours"), + 240 => __("4 hours"), + 720 => __("12 hours"), 1440 => __("Daily"), 10080 => __("Weekly")); @@ -98,24 +104,16 @@ 5 => __("Power User"), 10 => __("Administrator")); - #$error = sanity_check($link); - - #if ($error['code'] != 0 && $op != "logout") { - # print json_encode(array("error" => $error)); - # return; - #} - $op = str_replace("-", "_", $op); - global $pluginhost; - $override = $pluginhost->lookup_handler($op, $method); + $override = PluginHost::getInstance()->lookup_handler($op, $method); if (class_exists($op) || $override) { if ($override) { $handler = $override; } else { - $handler = new $op($link, $_REQUEST); + $handler = new $op($_REQUEST); } if ($handler && implements_interface($handler, 'IHandler')) { @@ -131,21 +129,19 @@ $handler->after(); return; } else { - header("Content-Type: text/plain"); - print json_encode(array("error" => array("code" => 6))); + header("Content-Type: text/json"); + print error_json(6); return; } } else { - header("Content-Type: text/plain"); - print json_encode(array("error" => array("code" => 6))); + header("Content-Type: text/json"); + print error_json(6); return; } } } - header("Content-Type: text/plain"); - print json_encode(array("error" => array("code" => 7))); + header("Content-Type: text/json"); + print error_json(13); - // We close the connection to database. - db_close($link); ?>