element.classList.add("red");
}
+function appendRow(childNode, tableElement) {
+ const MAX_OVERDAYS = 7.5;
+
+ let timeArray = childNode.getAttribute("sollarbeitszeit").split(":");
+ let maxWorktime = timeArray[0] * 3600;
+ maxWorktime += timeArray[1] * 60;
+ maxWorktime *= MAX_OVERDAYS;
+ timeArray = childNode.getAttribute("saldo").split(":");
+ let saldo = timeArray[0] * 3600;
+ saldo += timeArray[1] * 60;
+ const quota = saldo / maxWorktime;
+
+ let trElement = document.createElement("tr");
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Wochentag");
+ tdElement.innerText = childNode.getAttribute("wochentag");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Datum");
+ tdElement.innerText = childNode.getAttribute("datum");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Anfang");
+ tdElement.innerText = childNode.getAttribute("begin");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Ende");
+ tdElement.innerText = childNode.getAttribute("ende");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Pause");
+ tdElement.innerText = childNode.getAttribute("pause");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Soll");
+ tdElement.innerText = childNode.getAttribute("sollarbeitszeit");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Ist");
+ tdElement.innerText = childNode.getAttribute("arbeitszeit");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Stunden");
+ tdElement.innerText = childNode.getAttribute("stunden");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tdElement = document.createElement("td");
+ tdElement.setAttribute("data-cell", "Saldo");
+ tdElement.innerText = childNode.getAttribute("saldo");
+ addColorClass(tdElement, quota);
+ trElement.append(tdElement);
+
+ tableElement.append(trElement)
+}
+
function loadFile() {
const fileinput = document.getElementById("filepath");
const element = document.getElementById("content");
const rootNode = xmldoc.children[0]
const tableElement = document.createElement("table");
- const MAX_OVERDAYS = 7.5;
+
let trElement;
let tdElement;
- let saldo;
- let timeArray;
- let maxWorktime;
- let quota;
const captionElement = document.createElement("caption");
captionElement.innerText = `Zeitkonto - Anfangssaldo: ${rootNode.getAttribute("anfangssaldo")}`
tableElement.append(trElement)
const count = rootNode.childElementCount;
for (let i = 0; i < count; i++) {
- timeArray = rootNode.children[i].getAttribute("sollarbeitszeit").split(":");
- maxWorktime = timeArray[0] * 3600;
- maxWorktime += timeArray[1] * 60;
- maxWorktime *= MAX_OVERDAYS;
- timeArray = rootNode.children[i].getAttribute("saldo").split(":");
- saldo = timeArray[0] * 3600;
- saldo += timeArray[1] * 60;
- quota = saldo / maxWorktime;
-
- trElement = document.createElement("tr");
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Wochentag");
- tdElement.innerText = rootNode.children[i].getAttribute("wochentag");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Datum");
- tdElement.innerText = rootNode.children[i].getAttribute("datum");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Anfang");
- tdElement.innerText = rootNode.children[i].getAttribute("begin");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Ende");
- tdElement.innerText = rootNode.children[i].getAttribute("ende");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Pause");
- tdElement.innerText = rootNode.children[i].getAttribute("pause");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Soll");
- tdElement.innerText = rootNode.children[i].getAttribute("sollarbeitszeit");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Ist");
- tdElement.innerText = rootNode.children[i].getAttribute("arbeitszeit");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Stunden");
- tdElement.innerText = rootNode.children[i].getAttribute("stunden");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tdElement = document.createElement("td");
- tdElement.setAttribute("data-cell", "Saldo");
- tdElement.innerText = rootNode.children[i].getAttribute("saldo");
- addColorClass(tdElement, quota);
- trElement.append(tdElement);
-
- tableElement.append(trElement)
+ appendRow(rootNode.children[i], tableElement);
}
element.append(tableElement);