2021-04-12 20:06:21 +02:00
|
|
|
class commentsDisplay extends HTMLElement {
|
|
|
|
constructor() {
|
|
|
|
super();
|
|
|
|
let path = window.location.pathname;
|
|
|
|
let pageName = path.split("/").pop();
|
|
|
|
|
|
|
|
let xhr = new XMLHttpRequest();
|
|
|
|
xhr.onreadystatechange = () => {
|
2021-04-18 21:49:25 +02:00
|
|
|
if (xhr.readyState === 4) {
|
|
|
|
if (xhr.status === 200) {
|
|
|
|
let comments = JSON.parse(xhr.responseText);
|
|
|
|
comments.forEach((element) => {
|
2021-11-09 12:08:05 +01:00
|
|
|
const h3 = document.createElement("h3");
|
|
|
|
h3.classList.add("commentTitle");
|
|
|
|
h3.innerText = element["name"];
|
|
|
|
this.appendChild(h3);
|
|
|
|
|
|
|
|
const commentDiv = document.createElement("div");
|
|
|
|
commentDiv.classList.add("comment");
|
|
|
|
this.appendChild(commentDiv);
|
|
|
|
|
|
|
|
const image = document.createElement("img");
|
|
|
|
image.src = element["gravatarURL"];
|
|
|
|
commentDiv.appendChild(image);
|
|
|
|
|
|
|
|
const article = document.createElement("article");
|
|
|
|
article.classList.add("commentArticle");
|
|
|
|
commentDiv.appendChild(article);
|
|
|
|
|
|
|
|
const commentText = document.createElement("p");
|
|
|
|
commentText.classList.add("commentText");
|
|
|
|
commentText.innerText = element["comment"];
|
|
|
|
article.appendChild(commentText);
|
|
|
|
|
2021-04-18 21:49:25 +02:00
|
|
|
});
|
|
|
|
} else {
|
|
|
|
let p = document.createElement("p");
|
2021-10-30 09:16:47 +02:00
|
|
|
p.innerText = "Leider konnte dieser Inhalt nicht geladen werden, bitte versuche die Seite neu zu laden oder komme später wieder zurück.";
|
2021-04-18 21:49:25 +02:00
|
|
|
this.appendChild(p);
|
|
|
|
|
|
|
|
}
|
2021-04-12 20:06:21 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
xhr.open("GET", "/API/projectComments.php?article=" + pageName);
|
|
|
|
xhr.send();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-11-09 12:08:05 +01:00
|
|
|
customElements.define("jl-comments_display", commentsDisplay);
|