diff options
Diffstat (limited to 'modules/rss/helpers')
-rw-r--r-- | modules/rss/helpers/rss.php | 19 | ||||
-rw-r--r-- | modules/rss/helpers/rss_theme.php | 14 |
2 files changed, 8 insertions, 25 deletions
diff --git a/modules/rss/helpers/rss.php b/modules/rss/helpers/rss.php index 1d30425f..403ee225 100644 --- a/modules/rss/helpers/rss.php +++ b/modules/rss/helpers/rss.php @@ -19,28 +19,23 @@ */ class rss_Core { - static function item_feed($item) { - $id = $item->is_album() ? $item->id : $item->parent_id; - return url::site("rss/albums/$id"); - } - - static function tag_feed($tag) { - return url::site("rss/tags/$tag->id}"); + static function feed_link($uri) { + $url = url::site("rss/feed/$uri"); + return "<link rel=\"alternate\" type=\"" . rest::RSS . "\" href=\"$url\" />"; } /** * Get all available rss feeds */ - static function get_feeds($item, $sidebar_only=true) { + static function available_feeds($item) { $feeds = array(); foreach (module::active() as $module) { $class_name = "{$module->name}_rss"; if (method_exists($class_name, "available_feeds")) { foreach (call_user_func(array($class_name, "available_feeds"), $item) as $feed) { - if ($sidebar_only && !$feed["sidebar"]) { - continue; + if ($feed["type"] == "block") { + $feeds[$feed["description"]] = url::site("rss/feed/{$feed['uri']}"); } - $feeds[$feed["description"]] = url::site("rss/{$feed['uri']}"); } } } @@ -48,7 +43,7 @@ class rss_Core { return $feeds; } - static function process_feed($feed, $offset, $limit, $id) { + static function feed_data($feed, $offset, $limit, $id) { foreach (module::active() as $module) { $class_name = "{$module->name}_rss"; if (method_exists($class_name, $feed)) { diff --git a/modules/rss/helpers/rss_theme.php b/modules/rss/helpers/rss_theme.php index b82133bd..52d988bf 100644 --- a/modules/rss/helpers/rss_theme.php +++ b/modules/rss/helpers/rss_theme.php @@ -18,18 +18,6 @@ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ class rss_theme_Core { - static function head($theme) { - if ($theme->item()) { - $url = rss::item_feed($theme->item()); - } else if ($theme->tag()) { - $url = rss::tag_feed($theme->tag()); - } - - if (!empty($url)) { - return "<link rel=\"alternate\" type=\"" . rest::RSS . "\" href=\"$url\" />"; - } - } - static function sidebar_blocks($theme) { // @todo this needs to be data driven if (!$theme->item()) { @@ -40,7 +28,7 @@ class rss_theme_Core { $block->css_id = "gRss"; $block->title = t("Available RSS Feeds"); $block->content = new View("rss_block.html"); - $block->content->feeds = rss::get_feeds($theme->item()); + $block->content->feeds = rss::available_feeds($theme->item()); return $block; } |