opml: clean empty categories

This commit is contained in:
Andrew Dolgov 2012-08-15 15:55:41 +04:00
parent d75409bfda
commit 65c8267980
1 changed files with 10 additions and 0 deletions

View File

@ -201,6 +201,16 @@ class Opml extends Protected_Handler {
$doc->formatOutput = true;
$doc->preserveWhiteSpace = false;
$doc->loadXML($out);
$xpath = new DOMXpath($doc);
$outlines = $xpath->query("//outline[@title]");
// cleanup empty categories
foreach ($outlines as $node) {
if ($node->getElementsByTagName('outline')->length == 0)
$node->parentNode->removeChild($node);
}
$res = $doc->saveXML();
// saveXML uses a two-space indent. Change to tabs.