teach/db
Ramon 24d89b8bb5
All checks were successful
dev - build & deploy naar test / build-and-deploy (push) Successful in 36s
feat: eigen personage (avatar) voor leerlingen, ouders en staf (v0.4.23-beta)
- Nieuwe migratie db/018_user_avatar.sql: kolom avatar_data (jsonb) op users.
- publicUser() geeft avatar overal automatisch mee (login, /auth/me,
  /admin/users) - bestaande school/klas-rechten regelen vanzelf wie welke
  personages ziet, geen nieuwe permissie-sleutel nodig.
- Nieuwe route PUT /me/avatar (open voor elke ingelogde rol, zelfde patroon
  als /me/data): valideert soort/kleuren/haar/accessoires, slaat de eigen rij op.
- Nieuwe gedeelde module public/js/avatar.js: personage samenstellen uit
  soort (dino/monster/dier - elk met een vast eigen lichaamsdeel, ook de
  gevraagde dinostekels), lichaams- en haarkleur, haarstijl en hoofd-/
  lichaamsaccessoires; gedeelde editor-UI voor zowel de instellingen-sectie
  "Mijn personage" als de nieuwe widget.
- Instellingen-sectie "Mijn personage" (cms.js-patroon) - de leerling-toegang,
  want widgets van categorie "class" zijn niet toewijsbaar in het
  afgeschermde leerling-speelscherm.
- Widget 🦖 toegevoegd aan het bord (categorie "class") voor staf en
  volledige-whiteboard-gebruikers.
- School-navigator (admin.js): leerkracht/beheerder ziet nu het personage
  van elk klaslid in de personenlijst i.p.v. altijd de initialen-cirkel.
- Voorbereiding gerelateerd roadmappunt: math.js toont het eigen personage
  kort naast "Goed!" als aanmoediging (pilot in één widget, geen nieuw
  feedbacktype); zonder ingesteld personage blijft het gedrag ongewijzigd.
- Vertalingen (nl+en) voor de nieuwe widget, instellingen-sectie en editor.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014EPxzBVRXZZnBPvSAaPAbJ
2026-07-19 07:34:25 +02:00
..
001_init.sql Initiële opzet: Fastify + static, Docker, Postgres, Forgejo Actions 2026-07-07 22:41:05 +02:00
002_schools_auth.sql v0.2.00: schoolsysteem met rollen (super/admin/groepsleiding/leerling), koppelcodes, server-API en beheerpaneel 2026-07-09 22:26:01 +02:00
003_password_state.sql v0.2.02: uitgebreid wachtwoordbeheer voor gebruikers 2026-07-12 22:32:35 +02:00
004_user_roles.sql v0.2.21-beta: meerdere functies per gebruiker (multi-rol voor staf) + zoekveld 2026-07-13 22:41:40 +02:00
005_assignments.sql v0.2.22-beta: leerling-omgeving (aparte pagina zonder whiteboard) 2026-07-13 23:14:26 +02:00
006_security_boundaries.sql v0.3.03-beta: versterk publieke beveiliging 2026-07-14 12:42:16 +02:00
007_progress.sql v0.3.09-beta: voeg voortgang-schema en -API toe 2026-07-14 14:51:50 +02:00
008_widget_share.sql v0.3.14-beta: sta toewijzing van één widget toe met kijken/werken-modus (API) 2026-07-14 15:48:14 +02:00
009_save_system.sql v0.3.17-beta: detecteer save-conflicten tussen tabbladen 2026-07-14 16:19:25 +02:00
010_shared_library.sql v0.3.26-beta: server-API voor de gedeelde bibliotheek 2026-07-14 22:27:16 +02:00
011_shared_readonly.sql v0.3.28-beta: alleen-lezen-vlag voor gedeelde items (server) 2026-07-14 22:49:17 +02:00
012_image_catalog.sql feat: voeg afbeeldingscatalogus en opslagquota toe 2026-07-15 23:45:17 +02:00
013_parent_portal.sql feat: server-kant ouderportaal (v0.3.57-beta) 2026-07-16 00:02:16 +02:00
014_cms.sql feat: server-kant CMS voor de systeemmanager (v0.3.83-beta) 2026-07-16 19:29:08 +02:00
015_user_fk_cascade.sql fix: gebruiker verwijderen werkt weer (herstel foreign-key cascade) (v0.3.95-beta) 2026-07-17 21:39:29 +02:00
016_class_name_unique.sql fix: altijd de echte serverfout tonen + klasnamen uniek per school (v0.4.1-beta) 2026-07-18 03:39:04 +02:00
017_class_teacher_roles.sql fix: schoolbeheerder aan klas koppelen, systeemmanager-promotie dichten, UI-afstand (v0.4.07-beta) 2026-07-18 04:40:39 +02:00
018_user_avatar.sql feat: eigen personage (avatar) voor leerlingen, ouders en staf (v0.4.23-beta) 2026-07-19 07:34:25 +02:00