2024-12-10 22:53:16 +01:00
|
|
|
import { createStarterKitElement, enhanceStarterKits } from './utils/starterkit-utils.js';
|
|
|
|
import { seededShuffleChildren } from './utils/shuffle-utils.js';
|
2024-12-16 22:57:46 +01:00
|
|
|
import { initializeCreateStarterKitPopup } from './utils/create-starterkit.js';
|
|
|
|
|
2024-12-10 22:53:16 +01:00
|
|
|
|
2024-12-14 22:10:17 +01:00
|
|
|
let userConsent = null;
|
|
|
|
export { userConsent };
|
|
|
|
|
2024-12-10 22:53:16 +01:00
|
|
|
async function loadTemplates() {
|
|
|
|
const response = await fetch('src/template/template.html');
|
|
|
|
const templateHTML = await response.text();
|
|
|
|
|
|
|
|
// Füge die Templates in das DOM ein
|
|
|
|
const templateContainer = document.createElement('div');
|
|
|
|
templateContainer.innerHTML = templateHTML;
|
|
|
|
document.body.appendChild(templateContainer);
|
|
|
|
}
|
|
|
|
|
|
|
|
document.addEventListener('DOMContentLoaded', async function () {
|
|
|
|
await loadTemplates(); // Templates laden
|
|
|
|
|
2024-12-16 22:57:46 +01:00
|
|
|
initializeCreateStarterKitPopup();
|
|
|
|
|
2024-12-10 22:53:16 +01:00
|
|
|
const container = document.getElementById('starterkit-container');
|
|
|
|
const shuffleContainers = document.querySelectorAll('.shuffle-container');
|
|
|
|
const seed = Date.now();
|
|
|
|
|
|
|
|
// Lade die Haupt-Konfigurationsdatei
|
|
|
|
fetch('config.json')
|
|
|
|
.then(response => response.json())
|
|
|
|
.then(config => {
|
|
|
|
const starterkitFiles = config.starterkits;
|
|
|
|
|
|
|
|
// Lade alle StarterKit-Dateien
|
|
|
|
return Promise.all(
|
|
|
|
starterkitFiles.map(file => fetch(file).then(res => res.json()))
|
|
|
|
);
|
|
|
|
})
|
|
|
|
.then(starterkits => {
|
|
|
|
// Verarbeite die geladenen StarterKits
|
|
|
|
starterkits.forEach(kit => {
|
|
|
|
const kitElement = createStarterKitElement(kit);
|
|
|
|
container.appendChild(kitElement);
|
|
|
|
});
|
|
|
|
|
|
|
|
// Shuffle-Logik anwenden
|
|
|
|
shuffleContainers.forEach(container => {
|
|
|
|
seededShuffleChildren(container, seed);
|
|
|
|
});
|
|
|
|
|
|
|
|
// Zusätzliche Funktionalität für StarterKits hinzufügen
|
|
|
|
enhanceStarterKits();
|
|
|
|
})
|
|
|
|
.catch(error => console.error('Fehler beim Laden der StarterKits:', error));
|
|
|
|
});
|