diff options
Diffstat (limited to 'content/sstallman.org/stallman.org.js')
-rw-r--r-- | content/sstallman.org/stallman.org.js | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/content/sstallman.org/stallman.org.js b/content/sstallman.org/stallman.org.js deleted file mode 100644 index f9f0e6b..0000000 --- a/content/sstallman.org/stallman.org.js +++ /dev/null @@ -1,91 +0,0 @@ -/* - Copyright © 2021 jahoti (jahoti@tilde.team) - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -var div1 = document.querySelector('.column1'), - div2 = document.querySelector('.column2'), - div3 = document.querySelector('.column3'), - rest = document.querySelector('.rest'), - head = document.body; - -head.removeChild(div1); -head.removeChild(div2); -head.removeChild(div3); -head.removeChild(rest); - -var wrapper, chaseHeader = div1.querySelector('#urgent'); -var urgent = chaseHeader.parentNode.nextElementSibling; -chaseHeader.parentNode.removeChild(chaseHeader); -urgent.parentNode.removeChild(urgent); - -var chaseHeader = div1.querySelector('#oughttobe'); -var oughttobe = chaseHeader.parentNode.nextElementSibling; -var oughttobe_more = oughttobe.nextElementSibling; -chaseHeader.parentNode.removeChild(chaseHeader); -oughttobe.parentNode.removeChild(oughttobe) -oughttobe_more.parentNode.removeChild(oughttobe_more) - -div1.style.width = '100%'; - -var polnotes = div2.querySelector('iframe'); -polnotes.parentNode.removeChild(polnotes); - -var trailing = ['More']; -var current, text, node; -for (var child of rest.children) if (child.tagName === 'HR') chaseHeader = child; -while (node = rest.firstChild) { - rest.removeChild(node); - - if (node === chaseHeader) text = 'Footer'; - else if (node.tagName === 'HR') continue; - else if (/H\d/.test(node.tagName)) text = '* ' + node.textContent.trim(); - - if (text) { - if (current && !current.children.length) trailing[trailing.length - 1].splice(1, 1); - - if (text === '* Media/Press/Bios') { - text = current = undefined; - continue; - } - - current = document.createElement('div'); - if (node.children.length && node.firstElementChild.tagName === 'A' && !node.firstElementChild.href.startsWith('#')) { - trailing.push([text, current, node.firstElementChild.href]); - } - else trailing.push([text, current]); - - text = undefined; - } - else current && current.append(node); -} - - -// Build the nav index, and then render the page - -Sparse([ - 'stallman.org', - ['Home', urgent, polnotes], - ['* Urgent action items', urgent], - ['* Political Notes', polnotes, div2.firstElementChild.querySelector('a').href], - ['There Ought to Be a Law', oughttobe, oughttobe_more.href], - ['Media/Press/Bios', 'https://stallman.org/media.html'] -].concat( - trailing -).concat([ - ['Miscellaneous', div1, div2], - 'Miscellaneous', - ['* Misc. 1', div3], - ['* Misc. 2', head] -]));
\ No newline at end of file |