From 83feedc21e7ba06625837d3c11461d9e8734bf6c Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 19 Jan 2015 19:52:21 +0000 Subject: Modify footnotes-reader to allow reading of other notes --- lib/docx/notes-reader.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 lib/docx/notes-reader.js (limited to 'lib/docx/notes-reader.js') diff --git a/lib/docx/notes-reader.js b/lib/docx/notes-reader.js new file mode 100644 index 0000000..00bcce5 --- /dev/null +++ b/lib/docx/notes-reader.js @@ -0,0 +1,22 @@ +exports.readFootnotesXml = createReader("footnote"); + +function createReader(noteType) { + function readNotesXml(xml) { + return xml.root.getElementsByTagName("w:" + noteType) + .filter(isFootnoteElement) + .map(readFootnoteElement); + } + + function isFootnoteElement(element) { + var type = element.attributes["w:type"]; + return type !== "continuationSeparator" && type !== "separator"; + } + + function readFootnoteElement(footnoteElement) { + var id = footnoteElement.attributes["w:id"]; + var body = footnoteElement.children; + return {noteType: noteType, id: id, body: body}; + } + + return readNotesXml; +} -- cgit v1.2.3