ijsbreker/sets.json
Frank Meeuwsen 0775ee6161 feat: workshop sets management systeem toegevoegd
Nieuw sets systeem voor het beheren van meerdere workshop configuraties.

Nieuwe functionaliteit:
- Sets dropdown bovenaan editor voor eenvoudig switchen
- "Opslaan als Nieuwe Set" knop voor nieuwe configuraties
- Meerdere complete workshop sets opslaan en laden
- Elke set bevat eigen stellingen, kleuren, timer en teksten
- Automatische migratie van huidige config naar default set

Backend wijzigingen:
- GET/POST /api/sets endpoints toegevoegd
- Helper functies voor sets management en config updates
- Automatische initialisatie van sets.json bij eerste gebruik

Frontend wijzigingen:
- Sets sectie met dropdown en acties knoppen (editor.html)
- Styling met blauwe accent border (editor.css)
- Complete sets management logic (editor.js)
- Event handlers voor set selectie en opslaan

Data structuur:
- sets.json: database met alle workshop sets
- config.json: blijft actieve configuratie voor presentatie

Backwards compatible:
- Systeem werkt zonder sets.json (legacy fallback)
- Presentatie modus ongewijzigd (gebruikt config.json)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-16 07:36:55 +01:00

149 lines
No EOL
4.1 KiB
JSON

{
"activeSetId": "set-1765866890733",
"sets": [
{
"config": {
"buttonText": "Volgende stelling",
"colors": {
"left": "#3b82f6",
"right": "#ef4444"
},
"finishText": "Dat was het! Having fun yet?",
"fontSize": "3rem",
"stellingen": [
{
"links": "Koffie",
"rechts": "Thee"
},
{
"links": "Structurele planner",
"rechts": "Creatieve chaoot"
},
{
"links": "Ik gebruik meer sneltoetsen",
"rechts": "Ik ben van team muisgebruik"
},
{
"links": "We hebben duidelijke afspraken over naamgeving van bestanden",
"rechts": "Mijn naamgeving van bestanden is veel logischer"
},
{
"links": "Mappenstructuur",
"rechts": "Zoekfunctie"
},
{
"links": "Ik maak eigen notities op één plek",
"rechts": "Ik maak overal notities en zoek me suf"
},
{
"links": "Samenwerken in één document",
"rechts": "Concept_versie_3_def_final.docx mailen"
},
{
"links": "Mijn TO-DO lijst is actueel",
"rechts": "Mijn TO-DO lijst is fictie"
},
{
"links": "Ik gebruik tags en labels",
"rechts": "Ik stop alles in mapjes"
},
{
"links": "Browser met 50+ open tabbladen",
"rechts": "Opgeruimde browser"
},
{
"links": "Kennis zit in mijn hoofd",
"rechts": "Kennis staat in het systeem"
},
{
"links": "Ik kom vandaag vooral halen",
"rechts": "Ik kom vandaag ook brengen"
}
],
"timer": 10
},
"id": "default",
"name": "Standaard Set"
},
{
"config": {
"buttonText": "Volgende",
"colors": {
"left": "#10b981",
"right": "#f59e0b"
},
"finishText": "Bedankt!",
"fontSize": "2.5rem",
"stellingen": [
{
"links": "Inbox Zero held",
"rechts": "1000+ ongelezen mails"
},
{
"links": "Alles digitaal",
"rechts": "Mijn papieren notitieboek is heilig"
},
{
"links": "Samenwerken in één document",
"rechts": "Concept_versie_3_def_final.docx mailen"
},
{
"links": "Camera aan tijdens Teams",
"rechts": "Lekker onzichtbaar luisteren"
},
{
"links": "Agenda blokken voor focus",
"rechts": "Mijn deur staat altijd open (digitaal)"
},
{
"links": "Ik weet wat de AVG van me vraagt",
"rechts": "Privacy is voor de juristen"
}
],
"timer": 3
},
"id": "pkm-workshop",
"name": "PKM Workshop 2025"
},
{
"id": "set-1765866890733",
"name": "Kerstboom",
"config": {
"buttonText": "Volgende",
"colors": {
"left": "#10b981",
"right": "#f59e0b"
},
"finishText": "Bedankt!",
"fontSize": "2.5rem",
"stellingen": [
{
"links": "Inbox Zero held",
"rechts": "1000+ ongelezen mails"
},
{
"links": "Alles digitaal",
"rechts": "Mijn papieren notitieboek is heilig"
},
{
"links": "Samenwerken in één document",
"rechts": "Concept_versie_3_def_final.docx mailen"
},
{
"links": "Camera aan tijdens Teams",
"rechts": "Lekker onzichtbaar luisteren"
},
{
"links": "Agenda blokken voor focus",
"rechts": "Mijn deur staat altijd open (digitaal)"
},
{
"links": "Ik weet wat de AVG van me vraagt",
"rechts": "Privacy is voor de juristen"
}
],
"timer": 3
}
}
]
}