Source files (src/) and rendered bundle (www/) extracted on 2026-04-29T01:35:47+02:00. Adds nginx:alpine Dockerfile + docker-compose.yml (Caddy-labels) so the bot runs stand-alone or as a per-customer template clone. Parent monorepo commit: d2c816f3edbc9760802a11b29ff4151c7aad4b46 Bot version: 2026-04-25
20 lines
No EOL
1.5 KiB
JavaScript
20 lines
No EOL
1.5 KiB
JavaScript
// Erste Unterweisung — 1 korrekte Antwort im Vier-Stufen-Modul (Kernmodul HF 3)
|
|
if ((state.moduleCorrect && state.moduleCorrect['vier-stufen'] >= 1)) unlockBadge('erste_unterweisung');
|
|
// Paragraphen-Profi — BBiG/JArbSchG zusammen >= 10 korrekt (eignung-betrieb + vertrag + jugendarbeitsschutz)
|
|
const paraSum = ((state.moduleCorrect && state.moduleCorrect['eignung-betrieb']) || 0)
|
|
+ ((state.moduleCorrect && state.moduleCorrect['vertrag']) || 0)
|
|
+ ((state.moduleCorrect && state.moduleCorrect['jugendarbeitsschutz']) || 0);
|
|
if (paraSum >= 10) unlockBadge('paragraphen_profi');
|
|
// 4-Stufen-Meister:in — Vier-Stufen-Methode-Quiz mind. 5 korrekt
|
|
if ((state.moduleCorrect && state.moduleCorrect['vier-stufen'] >= 5)) unlockBadge('4_stufen_meister');
|
|
// Lehrgespräch-Profi — Flashcards Lehrgespräch durch
|
|
if ((state.modulePassedFlash && state.modulePassedFlash['lehrgespraech'])) unlockBadge('lehrgespraech_pro');
|
|
// Didaktik-Nerd — Lerntheorien-Modul (>= 5 korrekt)
|
|
if ((state.moduleCorrect && state.moduleCorrect['lerntheorien'] >= 5)) unlockBadge('didaktik_nerd');
|
|
// AdA-Meister:in — 16 von 20 Modulen mit ≥80% Quiz-Score abgeschlossen (~80% Master-Coverage)
|
|
if ((state.completedCurricula || []).length >= 16) unlockBadge('ada_meister');
|
|
// Streak 7
|
|
if (state.maxStreak >= 7) unlockBadge('streak_7');
|
|
// Night Owl
|
|
const h = new Date().getHours();
|
|
if (h >= 22) unlockBadge('night_owl'); |