summaryrefslogtreecommitdiff
path: root/api
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2010-10-15 19:04:09 +0400
committerAndrew Dolgov <[email protected]>2010-10-15 19:04:09 +0400
commitf95ac2755a918ddaec4937d441b893a53467ed88 (patch)
treead5ed6c2ad2e7929ea48fd54735f3ccb23dd7353 /api
parentcd9c29de806f1ba3d82853023c15792860f03c26 (diff)
api: getArticle: allow comma-separated list of ids
Diffstat (limited to 'api')
-rw-r--r--api/index.php53
1 files changed, 27 insertions, 26 deletions
diff --git a/api/index.php b/api/index.php
index ae4f1eb5d..f02f92a77 100644
--- a/api/index.php
+++ b/api/index.php
@@ -194,42 +194,43 @@
case "getArticle":
- $article_id = (int)db_escape_string($_REQUEST["article_id"]);
+ $article_id = db_escape_string($_REQUEST["article_id"]);
- $query = "SELECT title,link,content,feed_id,comments,int_id,
+ $query = "SELECT id,title,link,content,feed_id,comments,int_id,
marked,unread,published,
".SUBSTRING_FOR_DATE."(updated,1,16) as updated,
author
FROM ttrss_entries,ttrss_user_entries
- WHERE id = '$article_id' AND ref_id = id AND owner_uid = " .
+ WHERE id IN ($article_id) AND ref_id = id AND owner_uid = " .
$_SESSION["uid"] ;
- $attachments = get_article_enclosures($link, $article_id);
-
$result = db_query($link, $query);
-
- $article = array();
-
+
if (db_num_rows($result) != 0) {
- $line = db_fetch_assoc($result);
-
- $article = array(
- "title" => $line["title"],
- "link" => $line["link"],
- "labels" => get_article_labels($link, $article_id),
- "unread" => sql_bool_to_bool($line["unread"]),
- "marked" => sql_bool_to_bool($line["marked"]),
- "published" => sql_bool_to_bool($line["published"]),
- "comments" => $line["comments"],
- "author" => $line["author"],
- "updated" => strtotime($line["updated"]),
- "content" => $line["content"],
- "feed_id" => $line["feed_id"],
- "attachments" => $attachments
- );
- }
- print json_encode($article);
+ while ($line = db_fetch_assoc($result)) {
+
+ $attachments = get_article_enclosures($link, $line['id']);
+
+ $article = array(
+ "id" => $line["id"],
+ "title" => $line["title"],
+ "link" => $line["link"],
+ "labels" => get_article_labels($link, $line['id']),
+ "unread" => sql_bool_to_bool($line["unread"]),
+ "marked" => sql_bool_to_bool($line["marked"]),
+ "published" => sql_bool_to_bool($line["published"]),
+ "comments" => $line["comments"],
+ "author" => $line["author"],
+ "updated" => strtotime($line["updated"]),
+ "content" => $line["content"],
+ "feed_id" => $line["feed_id"],
+ "attachments" => $attachments
+ );
+
+ print json_encode($article);
+ }
+ }
break;
case "getConfig":