]>
Commit | Line | Data |
---|---|---|
378a548c | 1 | <?php |
378a548c AD |
2 | error_reporting(E_ERROR | E_PARSE); |
3 | ||
4 | require_once "../config.php"; | |
dbaa4e4a | 5 | |
4a0500fb AD |
6 | set_include_path(get_include_path() . PATH_SEPARATOR . |
7 | dirname(__FILE__) . PATH_SEPARATOR . | |
8 | dirname(dirname(__FILE__)) . PATH_SEPARATOR . | |
9 | dirname(dirname(__FILE__)) . "/include" ); | |
10 | ||
f1d65e50 | 11 | chdir(".."); |
de8260cb | 12 | |
964f1533 AD |
13 | define('TTRSS_SESSION_NAME', 'ttrss_api_sid'); |
14 | ||
4a0500fb AD |
15 | require_once "db.php"; |
16 | require_once "db-prefs.php"; | |
17 | require_once "functions.php"; | |
964f1533 | 18 | require_once "sessions.php"; |
378a548c | 19 | |
02cd6de1 AD |
20 | define('AUTH_DISABLE_OTP', true); |
21 | ||
6a79e8af AD |
22 | if (defined('ENABLE_GZIP_OUTPUT') && ENABLE_GZIP_OUTPUT && |
23 | function_exists("ob_gzhandler")) { | |
24 | ||
70543b6a AD |
25 | ob_start("ob_gzhandler"); |
26 | } | |
27 | ||
dbaa4e4a | 28 | $link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); |
378a548c AD |
29 | |
30 | $session_expire = SESSION_EXPIRE_TIME; //seconds | |
31 | $session_name = (!defined('TTRSS_SESSION_NAME')) ? "ttrss_sid_api" : TTRSS_SESSION_NAME . "_api"; | |
32 | ||
3bb7e191 AD |
33 | session_name($session_name); |
34 | ||
90e71380 AD |
35 | $input = file_get_contents("php://input"); |
36 | ||
6eaf3193 AD |
37 | if (defined('_API_DEBUG_HTTP_ENABLED') && _API_DEBUG_HTTP_ENABLED) { |
38 | // Override $_REQUEST with JSON-encoded data if available | |
39 | // fallback on HTTP parameters | |
40 | if ($input) { | |
41 | $input = json_decode($input, true); | |
42 | if ($input) $_REQUEST = $input; | |
43 | } | |
44 | } else { | |
45 | // Accept JSON only | |
90e71380 | 46 | $input = json_decode($input, true); |
6eaf3193 | 47 | $_REQUEST = $input; |
90e71380 AD |
48 | } |
49 | ||
3bb7e191 AD |
50 | if ($_REQUEST["sid"]) { |
51 | session_id($_REQUEST["sid"]); | |
52 | } | |
53 | ||
378a548c AD |
54 | session_start(); |
55 | ||
de8260cb | 56 | if (!init_connection($link)) return; |
378a548c | 57 | |
de8260cb | 58 | $method = strtolower($_REQUEST["op"]); |
378a548c | 59 | |
de8260cb | 60 | $handler = new API($link, $_REQUEST); |
b792cd70 | 61 | |
de8260cb AD |
62 | if ($handler->before($method)) { |
63 | if ($method && method_exists($handler, $method)) { | |
64 | $handler->$method(); | |
65 | } else if (method_exists($handler, 'index')) { | |
66 | $handler->index($method); | |
67 | } | |
68 | $handler->after(); | |
378a548c AD |
69 | } |
70 | ||
71 | db_close($link); | |
dbaa4e4a | 72 | |
378a548c | 73 | ?> |