From f59928d7a85645b5813181409847fa41d1b6b937 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 27 Dec 2011 18:03:20 +0400 Subject: better label import category checking, filters import placeholder --- opml.php | 38 ++++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) (limited to 'opml.php') diff --git a/opml.php b/opml.php index e8ae163a6..103ec0ba6 100644 --- a/opml.php +++ b/opml.php @@ -53,10 +53,11 @@ $pref_name = db_escape_string($attributes->getNamedItem('pref-name')->nodeValue); $label_name = db_escape_string($attributes->getNamedItem('label-name')->nodeValue); + $filter_name = db_escape_string($attributes->getNamedItem('filter-name')->nodeValue); if ($cat_title && !$feed_url) { - if ($cat_title != "tt-rss-prefs" && $cat_title != 'tt-rss-labels') { + if ($cat_title != "tt-rss-prefs" && $cat_title != 'tt-rss-labels' && $cat_title != 'tt-rss-filters') { db_query($link, "BEGIN"); @@ -98,14 +99,39 @@ } if ($label_name) { - $fg_color = db_escape_string($attributes->getNamedItem('label-fg-color')->nodeValue); - $bg_color = db_escape_string($attributes->getNamedItem('label-bg-color')->nodeValue); + $parent_node = $outline->parentNode; + + if ($parent_node && $parent_node->nodeName == "outline") { + $cat_check = $parent_node->attributes->getNamedItem('title')->nodeValue; + if ($cat_check == "tt-rss-labels") { - if (!label_find_id($link, $label_name, $_SESSION['uid'])) { + $fg_color = db_escape_string($attributes->getNamedItem('label-fg-color')->nodeValue); + $bg_color = db_escape_string($attributes->getNamedItem('label-bg-color')->nodeValue); - printf("
  • ".__("Adding label %s")."
  • ", $label_name); + if (!label_find_id($link, $label_name, $_SESSION['uid'])) { + printf("
  • ".__("Adding label %s")."
  • ", $label_name); + label_create($link, $label_name, $fg_color, $bg_color); + } else { + printf("
  • ".__("Duplicate label: %s")."
  • ", $label_name); + } + } + } + } - label_create($link, $label_name, $fg_color, $bg_color); + if ($filter_name) { + $parent_node = $outline->parentNode; + + if ($parent_node && $parent_node->nodeName == "outline") { + $cat_check = $parent_node->attributes->getNamedItem('title')->nodeValue; + if ($cat_check == "tt-rss-filters") { + $filter = json_decode($outline->nodeValue, true); + + if ($filter) { + ///// + + + } + } } } -- cgit v1.2.3