diff options
-rw-r--r-- | modules/aggregator.module | 9 | ||||
-rw-r--r-- | modules/aggregator/aggregator.module | 9 |
2 files changed, 14 insertions, 4 deletions
diff --git a/modules/aggregator.module b/modules/aggregator.module index c7e1fb6c7..ec07192ea 100644 --- a/modules/aggregator.module +++ b/modules/aggregator.module @@ -1030,8 +1030,13 @@ function aggregator_page_sources() { /** * Menu callback; generates an OPML representation of all feeds. */ -function aggregator_page_opml() { - $result = db_query('SELECT * FROM {aggregator_feed} ORDER BY title'); +function aggregator_page_opml($cid = NULL) { + if ($cid) { + $result = db_query('SELECT f.title, f.url FROM {aggregator_feed} f LEFT JOIN {aggregator_category_feed} c on f.fid = c.fid WHERE c.cid = %d ORDER BY title', $cid); + } + else { + $result = db_query('SELECT * FROM {aggregator_feed} ORDER BY title'); + } $output = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"; $output .= "<opml version=\"1.1\">\n"; diff --git a/modules/aggregator/aggregator.module b/modules/aggregator/aggregator.module index c7e1fb6c7..ec07192ea 100644 --- a/modules/aggregator/aggregator.module +++ b/modules/aggregator/aggregator.module @@ -1030,8 +1030,13 @@ function aggregator_page_sources() { /** * Menu callback; generates an OPML representation of all feeds. */ -function aggregator_page_opml() { - $result = db_query('SELECT * FROM {aggregator_feed} ORDER BY title'); +function aggregator_page_opml($cid = NULL) { + if ($cid) { + $result = db_query('SELECT f.title, f.url FROM {aggregator_feed} f LEFT JOIN {aggregator_category_feed} c on f.fid = c.fid WHERE c.cid = %d ORDER BY title', $cid); + } + else { + $result = db_query('SELECT * FROM {aggregator_feed} ORDER BY title'); + } $output = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"; $output .= "<opml version=\"1.1\">\n"; |