]>
Commit | Line | Data |
---|---|---|
3f363052 AD |
1 | <?php\r |
2 | class Article extends Handler {\r | |
611efae7 AD |
3 | \r |
4 | function redirect() {\r | |
3f363052 | 5 | $id = db_escape_string($_REQUEST['id']);\r |
611efae7 | 6 | \r |
3f363052 AD |
7 | $result = db_query($this->link, "SELECT link FROM ttrss_entries, ttrss_user_entries\r |
8 | WHERE id = '$id' AND id = ref_id AND owner_uid = '".$_SESSION['uid']."'\r | |
9 | LIMIT 1");\r | |
611efae7 | 10 | \r |
3f363052 AD |
11 | if (db_num_rows($result) == 1) {\r |
12 | $article_url = db_fetch_result($result, 0, 'link');\r | |
13 | $article_url = str_replace("\n", "", $article_url);\r | |
611efae7 | 14 | \r |
3f363052 AD |
15 | header("Location: $article_url");\r |
16 | return;\r | |
611efae7 | 17 | \r |
3f363052 AD |
18 | } else {\r |
19 | print_error(__("Article not found."));\r | |
20 | }\r | |
21 | }\r | |
22 | \r | |
23 | function view() {\r | |
24 | $id = db_escape_string($_REQUEST["id"]);\r | |
25 | $cids = explode(",", db_escape_string($_REQUEST["cids"]));\r | |
26 | $mode = db_escape_string($_REQUEST["mode"]);\r | |
27 | $omode = db_escape_string($_REQUEST["omode"]);\r | |
611efae7 | 28 | \r |
3f363052 AD |
29 | // in prefetch mode we only output requested cids, main article\r |
30 | // just gets marked as read (it already exists in client cache)\r | |
611efae7 | 31 | \r |
3f363052 | 32 | $articles = array();\r |
611efae7 | 33 | \r |
3f363052 AD |
34 | if ($mode == "") {\r |
35 | array_push($articles, format_article($this->link, $id, false));\r | |
36 | } else if ($mode == "zoom") {\r | |
37 | array_push($articles, format_article($this->link, $id, true, true));\r | |
38 | } else if ($mode == "raw") {\r | |
39 | if ($_REQUEST['html']) {\r | |
40 | header("Content-Type: text/html");\r | |
41 | print '<link rel="stylesheet" type="text/css" href="tt-rss.css"/>';\r | |
42 | }\r | |
611efae7 | 43 | \r |
3f363052 AD |
44 | $article = format_article($this->link, $id, false);\r |
45 | print $article['content'];\r | |
46 | return;\r | |
47 | }\r | |
611efae7 | 48 | \r |
3f363052 | 49 | catchupArticleById($this->link, $id, 0);\r |
611efae7 | 50 | \r |
3f363052 AD |
51 | if (!$_SESSION["bw_limit"]) {\r |
52 | foreach ($cids as $cid) {\r | |
53 | if ($cid) {\r | |
54 | array_push($articles, format_article($this->link, $cid, false, false));\r | |
55 | }\r | |
56 | }\r | |
57 | }\r | |
611efae7 | 58 | \r |
3f363052 | 59 | print json_encode($articles);\r |
611efae7 | 60 | \r |
3f363052 | 61 | }\r |
611efae7 AD |
62 | \r |
63 | }\r |