function addClassToNodes(allNodes, className) { if (!allNodes || !className) return; for (var begin = 0, chunkSize = 50, chunk, nodes; (chunk = allNodes.slice(begin, begin + chunkSize)).length; begin += chunkSize) { // hack around bug #303254 nodes = document.selectNodes('//div[contains(@class, "avatar")]/a[contains(@href, concat("/", "' + chunk.join('", "/info/")) or contains(@href, concat("/", "') + '", "/info/"))]/' + (weeklies.highlightSubtle ? 'ancestor::div[contains(concat(" ", @class, " "), " bot ")]//div[contains(concat(" ", @class, " "), " avatar ")]' : 'ancestor::div[starts-with(@id, "comment")]')); for (var i = 0; i < nodes.length; i++) { nodes[i].className += ' ' + className; } } }