mirror of
https://git.tt-rss.org/git/tt-rss.git
synced 2025-12-13 07:25:54 +00:00
implement tiny-OOP routing
This commit is contained in:
63
classes/article.php
Normal file
63
classes/article.php
Normal file
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
class Article extends Handler {
|
||||
|
||||
function index() {
|
||||
$id = db_escape_string($_REQUEST['id']);
|
||||
|
||||
$result = db_query($this->link, "SELECT link FROM ttrss_entries, ttrss_user_entries
|
||||
WHERE id = '$id' AND id = ref_id AND owner_uid = '".$_SESSION['uid']."'
|
||||
LIMIT 1");
|
||||
|
||||
if (db_num_rows($result) == 1) {
|
||||
$article_url = db_fetch_result($result, 0, 'link');
|
||||
$article_url = str_replace("\n", "", $article_url);
|
||||
|
||||
header("Location: $article_url");
|
||||
return;
|
||||
|
||||
} else {
|
||||
print_error(__("Article not found."));
|
||||
}
|
||||
}
|
||||
|
||||
function view() {
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
$cids = explode(",", db_escape_string($_REQUEST["cids"]));
|
||||
$mode = db_escape_string($_REQUEST["mode"]);
|
||||
$omode = db_escape_string($_REQUEST["omode"]);
|
||||
|
||||
// in prefetch mode we only output requested cids, main article
|
||||
// just gets marked as read (it already exists in client cache)
|
||||
|
||||
$articles = array();
|
||||
|
||||
if ($mode == "") {
|
||||
array_push($articles, format_article($this->link, $id, false));
|
||||
} else if ($mode == "zoom") {
|
||||
array_push($articles, format_article($this->link, $id, true, true));
|
||||
} else if ($mode == "raw") {
|
||||
if ($_REQUEST['html']) {
|
||||
header("Content-Type: text/html");
|
||||
print '<link rel="stylesheet" type="text/css" href="tt-rss.css"/>';
|
||||
}
|
||||
|
||||
$article = format_article($this->link, $id, false);
|
||||
print $article['content'];
|
||||
return;
|
||||
}
|
||||
|
||||
catchupArticleById($this->link, $id, 0);
|
||||
|
||||
if (!$_SESSION["bw_limit"]) {
|
||||
foreach ($cids as $cid) {
|
||||
if ($cid) {
|
||||
array_push($articles, format_article($this->link, $cid, false, false));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
print json_encode($articles);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user