From ddb68b812c500db7029aba8656e41b880db6e6c9 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sun, 27 Nov 2005 19:31:20 +0100 Subject: weird magpie Atom parse workaround, feed is always updated when added (to get title, etc.) even if DAEMON_REFRESH_ONLY is set --- functions.php | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'functions.php') diff --git a/functions.php b/functions.php index a4156651e..a0feae47e 100644 --- a/functions.php +++ b/functions.php @@ -160,11 +160,11 @@ } } - function update_rss_feed($link, $feed_url, $feed) { + function update_rss_feed($link, $feed_url, $feed, $ignore_daemon = false) { if (WEB_DEMO_MODE) return; - if (DAEMON_REFRESH_ONLY && !$_GET["daemon"]) { + if (DAEMON_REFRESH_ONLY && !$_GET["daemon"] && !$ignore_daemon) { return; } @@ -232,7 +232,12 @@ array_push($filters[$line["name"]], $line["reg_exp"]); } - foreach ($rss->items as $item) { + $iterator = $rss->items; + + if (!$iterator) $iterator = $rss->entries; + if (!$iterator) $iterator = $rss; + + foreach ($iterator as $item) { $entry_guid = $item["id"]; @@ -261,13 +266,17 @@ $entry_timestamp_fmt = strftime("%Y/%m/%d %H:%M:%S", $entry_timestamp); $entry_title = $item["title"]; - $entry_link = $item["link"]; + + // strange Magpie workaround + $entry_link = $item["link_"]; + if (!$entry_link) $entry_link = $item["link"]; if (!$entry_title) continue; if (!$entry_link) continue; $entry_content = $item["content:escaped"]; + if (!$entry_content) $entry_content = $item["summary"]; if (!$entry_content) $entry_content = $item["content:encoded"]; if (!$entry_content) $entry_content = $item["content"]; if (!$entry_content) $entry_content = $item["description"]; -- cgit v1.2.3