diff options
author | Andrew Dolgov <[email protected]> | 2012-11-12 16:13:34 +0400 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2012-11-12 16:13:34 +0400 |
commit | cc616ea162113e64b47f6e18f910d3f692df99ff (patch) | |
tree | 9a9efccb37d76b6275610e730ba5bc056f3c4302 /classes | |
parent | a9796b26487d5b177ae94a20a6106fd6527b29a2 (diff) |
opml import: add workaround for broken OPML files using title instead of text (refs #509)
Diffstat (limited to 'classes')
-rw-r--r-- | classes/opml.php | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/classes/opml.php b/classes/opml.php index c076cbda7..10967c171 100644 --- a/classes/opml.php +++ b/classes/opml.php @@ -388,6 +388,9 @@ class Opml extends Handler_Protected { if ($root_node) { $cat_title = db_escape_string($root_node->attributes->getNamedItem('text')->nodeValue); + if (!$cat_title) + $cat_title = db_escape_string($root_node->attributes->getNamedItem('title')->nodeValue); + if (!in_array($cat_title, array("tt-rss-filters", "tt-rss-labels", "tt-rss-prefs"))) { $cat_id = get_feed_category($this->link, $cat_title, $parent_id); db_query($this->link, "BEGIN"); @@ -416,6 +419,10 @@ class Opml extends Handler_Protected { if ($node->hasAttributes() && strtolower($node->tagName) == "outline") { $attrs = $node->attributes; $node_cat_title = db_escape_string($attrs->getNamedItem('text')->nodeValue); + + if (!$node_cat_title) + $node_cat_title = db_escape_string($attrs->getNamedItem('title')->nodeValue); + $node_feed_url = db_escape_string($attrs->getNamedItem('xmlUrl')->nodeValue); if ($node_cat_title && !$node_feed_url) { |