summaryrefslogtreecommitdiff
path: root/classes/opml.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2012-11-12 16:13:34 +0400
committerAndrew Dolgov <[email protected]>2012-11-12 16:13:34 +0400
commitcc616ea162113e64b47f6e18f910d3f692df99ff (patch)
tree9a9efccb37d76b6275610e730ba5bc056f3c4302 /classes/opml.php
parenta9796b26487d5b177ae94a20a6106fd6527b29a2 (diff)
opml import: add workaround for broken OPML files using title instead of text (refs #509)
Diffstat (limited to 'classes/opml.php')
-rw-r--r--classes/opml.php7
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) {