X-Git-Url: https://git.wh0rd.org/?a=blobdiff_plain;f=public.php;h=33f5af75713df54fad835da2bed0c3085428a223;hb=7649a2df140322f00ff64492a225c901c1220383;hp=59e0ef2e3696082acbc9cb9ab2f017a60817747d;hpb=88e8fb3a7132d1321ab65b66a19a67df890c402d;p=tt-rss.git diff --git a/public.php b/public.php index 59e0ef2e..33f5af75 100644 --- a/public.php +++ b/public.php @@ -17,22 +17,19 @@ $_REQUEST = array_map('stripslashes_deep', $_REQUEST); } - require_once "functions.php"; + require_once "autoload.php"; require_once "sessions.php"; + require_once "functions.php"; require_once "sanity_check.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_connection($link)) return; + if (!init_plugins()) return; if (ENABLE_GZIP_OUTPUT && function_exists("ob_gzhandler")) { ob_start("ob_gzhandler"); @@ -40,9 +37,15 @@ $method = $_REQUEST["op"]; - $handler = new Handler_Public($link, $_REQUEST); + $override = PluginHost::getInstance()->lookup_handler("public", $method); + + if ($override) { + $handler = $override; + } else { + $handler = new Handler_Public($_REQUEST); + } - if ($handler->before($method)) { + if (implements_interface($handler, "IHandler") && $handler->before($method)) { if ($method && method_exists($handler, $method)) { $handler->$method(); } else if (method_exists($handler, 'index')) { @@ -55,6 +58,4 @@ header("Content-Type: text/plain"); print json_encode(array("error" => array("code" => 7))); - // We close the connection to database. - db_close($link); ?>