diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-01-19 19:52:21 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-01-19 19:52:21 +0000 |
| commit | 83feedc21e7ba06625837d3c11461d9e8734bf6c (patch) | |
| tree | 60754063b1bdaed303b2eedb9896dffe89897a83 /lib/docx/notes-reader.js | |
| parent | 5a0b91e72fc89695fcb92ed5306587a64570ddd0 (diff) | |
Modify footnotes-reader to allow reading of other notes
Diffstat (limited to 'lib/docx/notes-reader.js')
| -rw-r--r-- | lib/docx/notes-reader.js | 22 |
1 files changed, 22 insertions, 0 deletions
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; +} |
