|
@@ -30,17 +30,28 @@ style.innerHTML = '\
|
|
margin: 0.5em;\
|
|
margin: 0.5em;\
|
|
border-radius: 0.2em;\
|
|
border-radius: 0.2em;\
|
|
}\
|
|
}\
|
|
|
|
+#the-toc-this-website-lacks h1 {\
|
|
|
|
+ text-align: center;\
|
|
|
|
+ font-size: x-large;\
|
|
|
|
+}\
|
|
';
|
|
';
|
|
|
|
|
|
var toc = document.createElement('div');
|
|
var toc = document.createElement('div');
|
|
var toc_ltr = document.createElement('div');
|
|
var toc_ltr = document.createElement('div');
|
|
var fold_button = document.createElement('button');
|
|
var fold_button = document.createElement('button');
|
|
-var ol = document.createElement('ol');
|
|
|
|
|
|
+var h1_articles = document.createElement('h1');
|
|
|
|
+var ol_articles = document.createElement('ol');
|
|
|
|
+var h1_annexes = document.createElement('h1');
|
|
|
|
+var ol_annexes = document.createElement('ol');
|
|
|
|
+
|
|
|
|
+h1_articles.textContent = 'Articles';
|
|
|
|
+h1_annexes.textContent = 'Annexes';
|
|
|
|
|
|
-var article_titles = document.evaluate("//p[@class='ti-art']",
|
|
|
|
|
|
+var article_titles = document.evaluate("//div[@lang='EN']/p[@class='ti-art']",
|
|
document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
|
|
document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
|
|
|
|
|
|
-var buf = "";
|
|
|
|
|
|
+var annex_titles = document.evaluate("//div[@lang='EN']/div[@id]/p[1][@class='doc-ti']",
|
|
|
|
+ document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
|
|
|
|
|
|
for (var i = 0; i < article_titles.snapshotLength; i++) {
|
|
for (var i = 0; i < article_titles.snapshotLength; i++) {
|
|
var id = article_titles.snapshotItem(i);
|
|
var id = article_titles.snapshotItem(i);
|
|
@@ -52,10 +63,30 @@ for (var i = 0; i < article_titles.snapshotLength; i++) {
|
|
|
|
|
|
var li = document.createElement('li');
|
|
var li = document.createElement('li');
|
|
var a = document.createElement('a');
|
|
var a = document.createElement('a');
|
|
- a.href = '#article-' + n;
|
|
|
|
|
|
+ a.href = '#' + id.id;
|
|
|
|
+ a.textContent = title.textContent;
|
|
|
|
+ li.appendChild(a);
|
|
|
|
+ ol_articles.appendChild(li);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+for (var i = 0; i < annex_titles.snapshotLength; i++) {
|
|
|
|
+ var id = annex_titles.snapshotItem(i);
|
|
|
|
+ var title = id.nextElementSibling;
|
|
|
|
+
|
|
|
|
+ if (id.textContent === 'STATEMENT OF THE EUROPEAN PARLIAMENT') {
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ var n = id.textContent.replace(/ANNEX /, '');
|
|
|
|
+
|
|
|
|
+ id.id = 'annex-' + n;
|
|
|
|
+
|
|
|
|
+ var li = document.createElement('li');
|
|
|
|
+ var a = document.createElement('a');
|
|
|
|
+ a.href = '#' + id.id;
|
|
a.textContent = title.textContent;
|
|
a.textContent = title.textContent;
|
|
li.appendChild(a);
|
|
li.appendChild(a);
|
|
- ol.appendChild(li);
|
|
|
|
|
|
+ ol_annexes.appendChild(li);
|
|
}
|
|
}
|
|
|
|
|
|
fold_button.textContent = "(Un)Fold TOC";
|
|
fold_button.textContent = "(Un)Fold TOC";
|
|
@@ -77,7 +108,10 @@ fold_button.onclick = (function() {
|
|
})();
|
|
})();
|
|
|
|
|
|
toc_ltr.appendChild(fold_button);
|
|
toc_ltr.appendChild(fold_button);
|
|
-toc_ltr.appendChild(ol);
|
|
|
|
|
|
+toc_ltr.appendChild(h1_articles);
|
|
|
|
+toc_ltr.appendChild(ol_articles);
|
|
|
|
+toc_ltr.appendChild(h1_annexes);
|
|
|
|
+toc_ltr.appendChild(ol_annexes);
|
|
toc.appendChild(toc_ltr);
|
|
toc.appendChild(toc_ltr);
|
|
document.getElementsByTagName('body')[0].appendChild(toc);
|
|
document.getElementsByTagName('body')[0].appendChild(toc);
|
|
document.getElementsByTagName('head')[0].appendChild(style);
|
|
document.getElementsByTagName('head')[0].appendChild(style);
|