From 007a38d4c3a8b823325bf6c5ec13f1058ef40ab3 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 16 May 2007 08:05:42 +0100 Subject: [PATCH] new option: STRIP_UNSAFE_TAGS (utilized) --- functions.php | 12 ++++++------ viewfeed.js | 10 +++++++++- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/functions.php b/functions.php index c8ad1c5ea..5e43a5677 100644 --- a/functions.php +++ b/functions.php @@ -630,7 +630,7 @@ # sanitize content - $entry_content = sanitize_rss($entry_content); +// $entry_content = sanitize_rss($entry_content); if (defined('DAEMON_EXTENDED_DEBUG')) { _debug("update_rss_feed: done collecting data [TITLE:$entry_title]"); @@ -2605,7 +2605,7 @@ } } - function sanitize_rss($str) { + function sanitize_rss($link, $str) { $res = $str; /* $res = preg_replace('//i', @@ -2619,7 +2619,7 @@ "

(Disabled html object - flash or other embedded content)

", $res); */ - if (get_pref("STRIP_UNSAFE_TAGS")) { + if (get_pref($link, "STRIP_UNSAFE_TAGS")) { $res = strip_tags($res, "


"); } @@ -2750,8 +2750,8 @@ $latest_version = trim(preg_replace("/(Milestone)|(completed)/", "", $latest_item["title"])); - $release_url = sanitize_rss($latest_item["link"]); - $content = sanitize_rss($latest_item["description"]); + $release_url = sanitize_rss($link, $latest_item["link"]); + $content = sanitize_rss($link, $latest_item["description"]); if (version_compare(VERSION, $latest_version) == -1) { if ($brief_fmt) { @@ -3520,7 +3520,7 @@ $line["content"] = preg_replace("/href=/i", "target=\"_new\" href=", $line["content"]); } - $line["content"] = sanitize_rss($line["content"]); + $line["content"] = sanitize_rss($link, $line["content"]); print $line["content"] . ""; diff --git a/viewfeed.js b/viewfeed.js index 4942a25cf..c3b28bb80 100644 --- a/viewfeed.js +++ b/viewfeed.js @@ -46,7 +46,13 @@ function headlines_callback() { var counters = xmlhttp.responseXML.getElementsByTagName("counters")[0]; var articles = xmlhttp.responseXML.getElementsByTagName("article"); - f.innerHTML = headlines.firstChild.nodeValue; + if (headlines) { + f.innerHTML = headlines.firstChild.nodeValue; + } else { + debug("headlines_callback: returned no data"); + f.innerHTML = "
" + __('Could not update headlines (missing XML data)') + "
"; + + } if (articles) { for (var i = 0; i < articles.length; i++) { @@ -54,6 +60,8 @@ function headlines_callback() { debug("found id: " + a_id); cache_inject(a_id, articles[i].firstChild.nodeValue); } + } else { + debug("no cached articles received"); } if (counters) {