document.addEventListener("DOMContentLoaded", async function () {
const res = await fetch("assets/services.json");
const data = await res.json();
const pakete = data.pakete;
function render(paketName, ziel, preisZiel, dauerId) {
const paket = pakete[paketName];
let sum = 0;
ziel.innerHTML = paket.leistungen.map(id => {
const s = data.services.find(x => x.id === id);
if (!s) return "";
sum += s.preis;
return `• ${s.name}`;
}).filter(Boolean).join("
");
preisZiel.textContent = `CHF ${sum.toFixed(2)}`;
const dauerEl = document.getElementById(dauerId);
if (dauerEl && paket.dauer) {
dauerEl.textContent = `Dauer: ca. ${paket.dauer} Arbeitstage`;
}
}
const kategorien = {
"räder": "Räder",
"bremsen": "Bremsen",
"antrieb": "Antrieb",
"rahmen": "Rahmen",
"steuerung": "Steuerung",
"grundwartung": "Grundwartung",
"service": "Servicepakete"
};
const gruppiert = {};
data.services.forEach(s => {
if (s.id.includes("H")) return; // nur vorne behalten
if (!gruppiert[s.system]) gruppiert[s.system] = [];
gruppiert[s.system].push(s);
});
const container = document.getElementById("service-tabelle").parentElement;
container.innerHTML = "";
Object.keys(gruppiert).forEach(system => {
const title = document.createElement("h2");
title.textContent = kategorien[system] || system;
container.appendChild(title);
const table = document.createElement("table");
table.className = "service-table";
const thead = document.createElement("thead");
thead.innerHTML = "