summaryrefslogtreecommitdiff
path: root/backend.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2005-11-28 14:19:54 +0100
committerAndrew Dolgov <[email protected]>2005-11-28 14:19:54 +0100
commitadccd201687825e49a863548172df36dcfba6ef6 (patch)
tree22aff2851454fbb7ab78df253e64f1ec235c5103 /backend.php
parente5a99b885fe7131618f3896b43f776ee9d94d8ba (diff)
headlines: xml output mode (omode=xml)
Diffstat (limited to 'backend.php')
-rw-r--r--backend.php211
1 files changed, 128 insertions, 83 deletions
diff --git a/backend.php b/backend.php
index 53e4698a1..2df6fc55f 100644
--- a/backend.php
+++ b/backend.php
@@ -683,6 +683,11 @@
$view_mode = $_GET["view"];
$addheader = $_GET["addheader"];
$limit = $_GET["limit"];
+ $omode = $_GET["omode"];
+
+ if ($omode == "xml") {
+ header("Content-Type: application/xml");
+ }
if (!$feed) {
return;
@@ -976,44 +981,54 @@
}
if (!$result) {
- print "<div align='center'>
- Could not display feed (query failed). Please check match syntax or local configuration.</div>";
- return;
- }
+ if ($omode != "xml") {
+ print "<div align='center'>
+ Could not display feed (query failed). Please check label match syntax or local configuration.</div>";
+ return;
+ } else {
+ print "<error error-code=\"8\"/>";
+ }
+ }
+
if (db_num_rows($result) > 0) {
- print "<table class=\"headlinesSubToolbar\"
- width=\"100%\" cellspacing=\"0\" cellpadding=\"0\"><tr>";
-
- print "<td class=\"headlineActions\">
- Select:
- <a href=\"javascript:selectTableRowsByIdPrefix('headlinesList',
- 'RROW-', 'RCHK-', true)\">All</a>,
- <a href=\"javascript:selectTableRowsByIdPrefix('headlinesList',
- 'RROW-', 'RCHK-', true, 'Unread')\">Unread</a>,
- <a href=\"javascript:selectTableRowsByIdPrefix('headlinesList',
- 'RROW-', 'RCHK-', false)\">None</a>
- &nbsp;&nbsp;
- Toggle: <a href=\"javascript:toggleUnread()\">Unread</a>,
- <a href=\"javascript:toggleStarred()\">Starred</a>";
-
- print "</td>";
-
- print "<td class=\"headlineTitle\">";
-
- if ($feed_site_url) {
- print "<a target=\"_blank\" href=\"$feed_site_url\">$feed_title</a>";
+ if ($omode != "xml") {
+
+ print "<table class=\"headlinesSubToolbar\"
+ width=\"100%\" cellspacing=\"0\" cellpadding=\"0\"><tr>";
+
+ print "<td class=\"headlineActions\">
+ Select:
+ <a href=\"javascript:selectTableRowsByIdPrefix('headlinesList',
+ 'RROW-', 'RCHK-', true)\">All</a>,
+ <a href=\"javascript:selectTableRowsByIdPrefix('headlinesList',
+ 'RROW-', 'RCHK-', true, 'Unread')\">Unread</a>,
+ <a href=\"javascript:selectTableRowsByIdPrefix('headlinesList',
+ 'RROW-', 'RCHK-', false)\">None</a>
+ &nbsp;&nbsp;
+ Toggle: <a href=\"javascript:toggleUnread()\">Unread</a>,
+ <a href=\"javascript:toggleStarred()\">Starred</a>";
+
+ print "</td>";
+
+ print "<td class=\"headlineTitle\">";
+
+ if ($feed_site_url) {
+ print "<a target=\"_blank\" href=\"$feed_site_url\">$feed_title</a>";
+ } else {
+ print $feed_title;
+ }
+
+ print "</td>";
+ print "</tr></table>";
+
+ print "<table class=\"headlinesList\" id=\"headlinesList\"
+ cellspacing=\"0\" width=\"100%\">";
+
} else {
- print $feed_title;
+ print "<headlines feed=\"$feed\" title=\"$feed_title\" site_url=\"$feed_site_url\">";
}
-
- print "</td>";
- print "</tr></table>";
-
-
- print "<table class=\"headlinesList\" id=\"headlinesList\"
- cellspacing=\"0\" width=\"100%\">";
$lnum = 0;
@@ -1022,7 +1037,7 @@
$num_unread = 0;
while ($line = db_fetch_assoc($result)) {
-
+
$class = ($lnum % 2) ? "even" : "odd";
$id = $line["id"];
@@ -1041,6 +1056,9 @@
if ($line["unread"] == "t" || $line["unread"] == "1") {
$class .= "Unread";
++$num_unread;
+ $is_unread = 'true';
+ } else {
+ $is_unread = 'false';
}
if ($line["marked"] == "t" || $line["marked"] == "1") {
@@ -1053,72 +1071,99 @@
$content_link = "<a id=\"FTITLE-$id\" href=\"javascript:view($id,$feed_id);\">" .
$line["title"] . "</a>";
-
- print "<tr class='$class' id='RROW-$id'>";
- // onclick=\"javascript:view($id,$feed_id)\">
-
- print "<td class='hlUpdatePic'>$update_pic</td>";
-
- print "<td class='hlSelectRow'>
- <input type=\"checkbox\" onclick=\"toggleSelectRow(this)\"
- class=\"feedCheckBox\" id=\"RCHK-$id\">
- </td>";
-
- print "<td class='hlMarkedPic'>$marked_pic</td>";
-
- if ($line["feed_title"]) {
- print "<td class='hlContent'>$content_link</td>";
- print "<td class='hlFeed'>
- <a href='javascript:viewfeed($feed_id)'>".$line["feed_title"]."</a></td>";
- } else {
- print "<td class='hlContent'>";
-
- print "<a id=\"FTITLE-$id\" href=\"javascript:view($id,$feed_id);\">" .
- $line["title"];
-
- if (get_pref($link, 'SHOW_CONTENT_PREVIEW')) {
-
- $content_preview = truncate_string(strip_tags($line["content_preview"]),
- 101);
-
- if ($content_preview) {
- print "<span class=\"contentPreview\"> - $content_preview</span>";
- }
- }
-
- print "</a>";
- print "</td>";
- }
-
+
if (get_pref($link, 'HEADLINES_SMART_DATE')) {
$updated_fmt = smart_date_time(strtotime($line["updated"]));
} else {
$short_date = get_pref($link, 'SHORT_DATE_FORMAT');
$updated_fmt = date($short_date, strtotime($line["updated"]));
}
+
+ if (get_pref($link, 'SHOW_CONTENT_PREVIEW')) {
+ $content_preview = truncate_string(strip_tags($line["content_preview"]), 101);
+ }
+
+ if ($omode != "xml") {
+
+ print "<tr class='$class' id='RROW-$id'>";
+ // onclick=\"javascript:view($id,$feed_id)\">
+
+ print "<td class='hlUpdatePic'>$update_pic</td>";
+
+ print "<td class='hlSelectRow'>
+ <input type=\"checkbox\" onclick=\"toggleSelectRow(this)\"
+ class=\"feedCheckBox\" id=\"RCHK-$id\">
+ </td>";
+
+ print "<td class='hlMarkedPic'>$marked_pic</td>";
+
+ if ($line["feed_title"]) {
+ print "<td class='hlContent'>$content_link</td>";
+ print "<td class='hlFeed'>
+ <a href='javascript:viewfeed($feed_id)'>".$line["feed_title"]."</a></td>";
+ } else {
+ print "<td class='hlContent'>";
+
+ print "<a id=\"FTITLE-$id\" href=\"javascript:view($id,$feed_id);\">" .
+ $line["title"];
+
+ if (get_pref($link, 'SHOW_CONTENT_PREVIEW')) {
+
+ if ($content_preview) {
+ print "<span class=\"contentPreview\"> - $content_preview</span>";
+ }
+ }
+
+ print "</a>";
+ print "</td>";
+ }
+
+ print "<td class=\"hlUpdated\"><nobr>$updated_fmt&nbsp;</nobr></td>";
+
+ print "</tr>";
+
+ } else {
+
+ print "<entry unread='$is_unread' id='$id'>";
+ print "<title><![CDATA[" . $line["title"] . "]]></title>";
+ print "<link>" . $line["link"] . "</link>";
+ print "<updated>$updated_fmt</updated>";
+ if ($content_preview) {
+ print "<preview><![CDATA[ $content_preview ]]></preview>";
+ }
+
+ if ($line["feed_title"]) {
+ print "<feed id='$feed_id'><![CDATA[" . $line["feed_title"] . "]]></feed>";
+ }
+ print "</entry>";
+
+ }
- print "<td class=\"hlUpdated\"><nobr>$updated_fmt&nbsp;</nobr></td>";
-
- print "</tr>";
++$lnum;
}
-
- print "</table>";
+
+ if ($omode != "xml") {
+ print "</table>";
+ } else {
+ print "</headlines>";
+ }
} else {
print "<div width='100%' align='center'>No articles found.</div>";
}
- print "<script type=\"text/javascript\">
- document.onkeydown = hotkey_handler;
- update_all_counters('$feed');
- </script>";
+ if ($omode != "xml") {
- if ($addheader) {
- print "</body></html>";
+ print "<script type=\"text/javascript\">
+ document.onkeydown = hotkey_handler;
+ update_all_counters('$feed');
+ </script>";
+
+ if ($addheader) {
+ print "</body></html>";
+ }
}
-
}
if ($op == "pref-rpc") {