" + x_glossary[i].word + " | " + x_glossary[i].definition + " | ";
}
@@ -4626,14 +4514,10 @@ var XENITH = (function ($, parent) { var self = parent.GLOSSARY = {};
x_pageContentsUpdated();
- // add class for shaded rows rather than using css selector as doesn't work for IE8 & below
+ // add class for shaded rows rather than using css selector as doesnt work for IE8 & below
$("#glossaryItems .glossary tr:nth-child(even)").addClass("shaded");
},
- // TODO Revert all changes in 3.11 to Glossary, because it breaks ol LO's
- // Keep new code so we can try to fix it later
-
- /*
insertText = function(tempText, exclude, list) {
// check text for glossary words - if found replace with a link
if (x_glossary.length > 0 && (exclude == undefined || (exclude == false && list.indexOf("glossary") > -1) || (exclude == true && list.indexOf("glossary") == -1))) {
@@ -4643,8 +4527,8 @@ var XENITH = (function ($, parent) { var self = parent.GLOSSARY = {};
let nodes = getTextNodes(fragment);
let index = 'textContent' in document.body ? 'textContent' : 'innerText';
for (var k=0, len=x_glossary.length; k 0 && (exclude == undefined || (exclude == false && list.indexOf("glossary") > -1) || (exclude == true && list.indexOf("glossary") == -1))) {
- for (var k=0, len=x_glossary.length; k]| )(' + x_glossary[k].word + ')([\\s\\.,!?:;\)<]|$| )', 'i');
- tempText = tempText.replace(regExp, '$1{|{'+k+'::$2}|}$3');
- }
- for (var k=0, len=x_glossary.length; k]| )(\\{\\|\\{' + k + '::(.*?)\\}\\|\\})([\\s\\.,!?:;\)<]|$| )', 'i');
- tempText = tempText.replace(regExp, '$1$3$4');
- }
- }
-
- return tempText;
- },
-
getTextNodes = function (fragment) {
let textNodes = [];
- (function R(node) {
+ (function recurse(node) {
if (node = node.firstChild)
while (node != null) {
- if (node.nodeType == 3) {
+ if (node.nodeType === Node.TEXT_NODE) {
if (node && node.parentNode && node.parentNode.nodeName !== "A") textNodes.push(node);
}
- else if (node.nodeType == 1) R(node);
+ else if (node.nodeType === Node.ELEMENT_NODE) recurse(node);
node = node.nextSibling;
}
})(fragment);
@@ -4709,6 +4577,7 @@ var XENITH = (function ($, parent) { var self = parent.GLOSSARY = {};
self.init = init;
self.buildPage = buildPage;
self.insertText = insertText;
+ self.getTextNodes = getTextNodes;
self.touchStartHandler = touchStartHandler;
return parent; })(jQuery, XENITH || {});