Statistics
| Branch: | Tag: | Revision:

root / api / index.php @ master

History | View | Annotate | Download (1.5 kB)

1
<?php
2
        error_reporting(E_ERROR | E_PARSE);
3

    
4
        require_once "../config.php";
5

    
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

    
11
        function __autoload($class) {
12
                $file = "classes/".strtolower(basename($class)).".php";
13
                if (file_exists($file)) {
14
                        require $file;
15
                }
16
        }
17

    
18
        require_once "db.php";
19
        require_once "db-prefs.php";
20
        require_once "functions.php";
21

    
22
        chdir("..");
23

    
24
        if (defined('ENABLE_GZIP_OUTPUT') && ENABLE_GZIP_OUTPUT &&
25
                        function_exists("ob_gzhandler")) {
26

    
27
                ob_start("ob_gzhandler");
28
        }
29

    
30
        $link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
31

    
32
        $session_expire = SESSION_EXPIRE_TIME; //seconds
33
        $session_name = (!defined('TTRSS_SESSION_NAME')) ? "ttrss_sid_api" : TTRSS_SESSION_NAME . "_api";
34

    
35
        session_name($session_name);
36

    
37
        $input = file_get_contents("php://input");
38

    
39
        // Override $_REQUEST with JSON-encoded data if available
40
        if ($input) {
41
                $input = json_decode($input, true);
42

    
43
                if ($input) $_REQUEST = $input;
44
        }
45

    
46
        if ($_REQUEST["sid"]) {
47
                session_id($_REQUEST["sid"]);
48
        }
49

    
50
        session_start();
51

    
52
        if (!init_connection($link)) return;
53

    
54
        $method = strtolower($_REQUEST["op"]);
55

    
56
        $handler = new API($link, $_REQUEST);
57

    
58
        if ($handler->before($method)) {
59
                if ($method && method_exists($handler, $method)) {
60
                        $handler->$method();
61
                } else if (method_exists($handler, 'index')) {
62
                        $handler->index($method);
63
                }
64
                $handler->after();
65
        }
66

    
67
        db_close($link);
68

    
69
?>