From 66b2656cb01040c910fab9e094adf0446e0d423b Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Mon, 26 Oct 2009 05:33:42 -0400 Subject: [PATCH] Insomnia + anal retentive perfectionism = torrential simplification (and obstreperous, impetuous, sesquipedialian commits). --HG-- branch : xslt --- common/content/liberator.js | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/common/content/liberator.js b/common/content/liberator.js index b22a0739..c92f54b9 100644 --- a/common/content/liberator.js +++ b/common/content/liberator.js @@ -1415,23 +1415,20 @@ const liberator = (function () //{{{ } return result; } - - findHelpFile("all"); - tagMap.all = "all"; - const XSLT = XSLTProcessor("chrome://liberator/content/help.xsl"); - for (let [, namespace] in Iterator(namespaces)) - { - let files = util.evaluateXPath( - "//liberator:include/@href", - util.httpGet("chrome://" + namespace + "/locale/all.xml").responseXML); - for (let file in files) - findHelpFile(file.value).forEach(function (doc) { - doc = XSLT.transformToDocument(doc); - for (let elem in util.evaluateXPath("//liberator:tag/text()", doc)) - tagMap[elem.textContent] = file.value; - }); - } + + tagMap.all = "all"; + let files = findHelpFile("all").map(function (doc) + util.evaluateXPath( + "//liberator:include/@href", doc.responseXML)); + + util.Array.flatten(files).map(function ({ value: file }) { + findHelpFile(file).forEach(function (doc) { + doc = XSLT.transformToDocument(doc); + for (let elem in util.evaluateXPath("//liberator:tag/text()", doc)) + tagMap[elem.textContent] = file; + }); + }); services.get("liberator:").init({ HELP_TAGS: tagMap, FILE_MAP: fileMap,