diff options
author | Andrew Dolgov <[email protected]> | 2005-11-25 13:37:27 +0100 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2005-11-25 13:37:27 +0100 |
commit | da49ccf5dc7c978d8bb430bf0f8f72d05fb4b299 (patch) | |
tree | afdd34e69cd7e918cdb29beae65df6ff2aed9773 | |
parent | b400ca775a2937f5e807c1744ccd99c2372fd347 (diff) |
category support for OPML export
-rw-r--r-- | opml.php | 37 |
1 files changed, 36 insertions, 1 deletions
@@ -28,15 +28,50 @@ print "<head><dateCreated>" . date("r", time()) . "</dateCreated></head>"; print "<body>"; - $result = db_query($link, "SELECT * FROM ttrss_feeds ORDER BY title"); + $cat_mode = false; + + if (get_pref($link, 'ENABLE_FEED_CATS')) { + $cat_mode = true; + $result = db_query($link, "SELECT + ttrss_feeds.feed_url AS feed_url, + ttrss_feeds.title AS title, + ttrss_feed_categories.title AS cat_title + FROM ttrss_feeds,ttrss_feed_categories + WHERE + cat_id = ttrss_feed_categories.id + ORDER BY ttrss_feed_categories.title,ttrss_feeds.title"); + } else { + $result = db_query($link, "SELECT * FROM ttrss_feeds + ORDER BY title"); + } + + $old_cat_title = ""; while ($line = db_fetch_assoc($result)) { $title = htmlspecialchars($line["title"]); $url = htmlspecialchars($line["feed_url"]); + if ($cat_mode) { + $cat_title = htmlspecialchars($line["cat_title"]); + + if ($old_cat_title != $cat_title) { + if ($old_cat_title) { + print "</outline>"; + } + + print "<outline text=\"$cat_title\">"; + + $old_cat_title = $cat_title; + } + } + print "<outline text=\"$title\" xmlUrl=\"$url\"/>"; } + if ($cat_mode && $old_cat_title) { + print "</outline>"; + } + print "</body></opml>"; } |