make sure to include Twitter links in recap
[Ultimately_Untrue_Thought.git] / theme / static / js / comment_counts.js
1 function placeCommentCounts() {
2     let containers = Array.from(document.querySelectorAll(".comments-link-container"));
3     let paths = containers.map(function(span) { return span.dataset.path; });
4     if (paths.length === 0) {
5         return;
6     }
7
8     let request = new XMLHttpRequest();
9
10     request.open('POST', 'http://unremediatedgender.space/isso/count', true);
11     request.setRequestHeader("Content-Type", "application/json");
12
13     request.send(JSON.stringify(paths));
14
15     request.onload = function() {
16         if (this.status >= 200 && this.status < 400) {
17             let counts = JSON.parse(this.response);
18             for (let [i, container] of containers.entries()) {
19                 let a = document.createElement('a');
20                 let count = counts[i];
21                 if (count === 0) {
22                     count = "no";
23                 }
24                 let pluralizer = count === 1 ? "" : "s";
25                 let text = document.createTextNode(`${count} comment${pluralizer}`);
26                 a.appendChild(text);
27                 a.href = `${paths[i]}#isso-thread`;
28                 container.appendChild(a);
29             }
30         }
31     };
32
33 }
34
35 document.addEventListener("DOMContentLoaded", function() {
36     placeCommentCounts();
37 });