Skip to main content

Beheerder — Frontpagebeheer

Dit subdomein beschrijft hoe beheerders tekstuele frontpagecontent beheren binnen vooraf bepaalde frontpagecontexten. De beheerinterface ondersteunt het raadplegen, selecteren, bewerken, opslaan en historisch terugzien van contentblokken, maar vormt geen vrije pagebuilder. De structurele pagina-opbouw, blokvolgorde, layout en runtime-rendering blijven codegedreven.

Frontpagebeheer werkt met basiscontexten. Gecombineerde rolfrontpages worden runtime samengesteld uit die basiscontexten volgens de vaste prioriteitsvolgorde en worden niet als afzonderlijke persistente ontwerpen beheerd.

Usecases

UsecaseOmschrijving
UC-BEH-FRONT-001 — Frontpagebeheer openenOpent de beheerpagina Frontpagebeheer en toont contexttabs, beschikbare contentblokken en toegestane acties zonder domeinmutatie.
UC-BEH-FRONT-002 — Frontpagecontext selecterenSelecteert een basiscontext zoals Publiek, Zonder rol, Beheerder, Docent, Leerling of Ouder/voogd en toont alleen de beheerbare blokken voor die context.
UC-BEH-FRONT-003 — Frontpage-contentblok bewerkenZet een bestaand contentblok in bewerkmodus en laat alleen beheerbare tekstvelden wijzigen in de editor, zonder de wijziging al persistent op te slaan.
UC-BEH-FRONT-004 — Frontpagewijziging opslaanValideert en bewaart een wijziging aan beheerbare frontpagecontent en legt de wijziging auditbaar vast.
UC-BEH-FRONT-005 — Frontpagegeschiedenis bekijkenToont de wijzigingshistorie per context of contentblok met actor, tijdstip, veld en oude en nieuwe waarde.
UC-BEH-FRONT-006 — Runtime-samenstelling van gecombineerde frontpage controlerenLaat controleren hoe gecombineerde rolfrontpages runtime uit basiscontexten worden opgebouwd zonder aparte rolcombinatieconfiguratie aan te maken.

Relevante schermdocumentatie

Scherm / onderdeelGebruik binnen dit subdomein
Site InstellingenHub van waaruit de beheerder Frontpagebeheer opent.
FrontpagebeheerBeheerpagina met contexttabs en detail-/editorpaneel voor frontpagecontent.
ContexttabsScheiden de basiscontexten Public, NoRole, Student, Guardian, Teacher en Admin.
ContentblokeditorBewerkt alleen toegestane titel-, tekst-, label- of knoptekstvelden van bestaande blokken.
GeschiedenisToont wijzigingen aan frontpagecontent per context of blok.
Frontpages van gebruikersrollenRuntime-verbruikers van de beheerde content; zij bepalen geen beheerstructuur.

Domeinafbakening

Binnen dit subdomeinBuiten dit subdomein
Beheer van tekstuele frontpagecontent binnen bestaande bloklocaties.Vrij bouwen van nieuwe frontpage-layouts of pagebuilderfunctionaliteit.
Selecteren van basiscontexten voor frontpagecontent.Persistente ontwerpen per rolcombinatie.
Opslaan van beheerbare contentvelden en bijbehorende historie.Wijzigen van autorisaties, zichtbare gegevenssets, rollen of sessies.
Raadplegen van geschiedenis en runtime-samenstelling.Beheer van systeemnotificaties, featuretoggles, popups, systeemberichttemplates of footercontent.
Gebruik van het uniforme contentblokmodel met DomainType = FrontPage.Aanmaken van nieuwe technische sleutels, rendererlogica, migraties of seeddefinities via de GUI.

Frontpagecontexten

ContextTypeFunctionele contextPersistente beheerinhoud
PublicNiet-ingelogde publieke frontpage.Ja, als basiscontext.
NoRoleIngelogde gebruiker zonder actieve rolcontext.Ja, als basiscontext.
StudentLeerlingfrontpage.Ja, als basiscontext.
GuardianOuder-/voogdfrontpage.Ja, als basiscontext.
TeacherDocentfrontpage.Ja, als basiscontext.
AdminBeheerderfrontpage.Ja, als basiscontext.

Voor gecombineerde rolfrontpages wordt geen extra contexttype of ontwerp opgeslagen. De runtime combineert beschikbare basiscontexten in de vaste volgorde Beheerder, Docent, Ouder/voogd. Voor de combinatie Docent + Ouder/voogd worden eerst docentblokken en daarna ouder-/voogdblokken getoond.

Contentblokmodel

OnderdeelRegel
DomainTypeIs voor dit subdomein altijd FrontPage.
ContextTypeMoet één van de bekende basiscontexten zijn.
BlockKeyIs een codevast anker en wordt niet via de GUI aangemaakt of gewijzigd.
Beheerbare veldenBeperkt tot tekstuele inhoud zoals titel, introductietekst, korte toelichting, label of knoptekst waar het blok dat ondersteunt.
Read-only veldenTechnische sleutel, domein, context, bloklocatie, layout, renderer en codegedreven gedrag.
GeschiedenisLegt minimaal actor, UTC-tijdstip, gewijzigd veld, oude waarde en nieuwe waarde vast.

Het contentblokmodel beheert geen structurele zichtbaarheid van willekeurige blokken, geen vrije volgorde en geen runtime-autorisaties. Ontbreekt een verwacht contentblok, dan wordt het blok veilig niet geladen of toont de beheerinterface een duidelijke niet-beschikbaarafhandeling.

Bijzondere regels

  • Server-side beheerderautorisatie is leidend voor iedere lees- en mutatieactie.
  • Zoek-, filter-, contextselectie- en geschiedenisacties zijn read-only.
  • Bewerken in de editor is pas een persistente mutatie wanneer de beheerder expliciet opslaat.
  • Iedere opgeslagen contentwijziging wordt historisch vastgelegd.
  • Beheerbare frontpagecontent mag geen autorisaties, navigatiebevoegdheden, rolcontexten of zichtbare gegevenssets wijzigen.
  • Gecombineerde rolfrontpages worden runtime samengesteld en zijn geen aparte beheerbare records.
  • Teller- en samenvattingswaarden op frontpages blijven readmodelwaarden met expliciete definities per blok; frontpagebeheer wijzigt die definities niet.
  • Popupteksten en popupgedrag worden niet in deze usecases gedupliceerd; usecases verwijzen uitsluitend op PopupKey-niveau wanneer een popup relevant is.

Diagramgebruik

DiagramtypeGebruik binnen dit subdomein
State diagramAlleen gebruiken wanneer een werkelijk statusobject wijzigt; de meeste frontpagebeheerflows kennen geen zelfstandig statusmodel.
Decision flowGebruikt voor autorisatie, contextkeuze, veldvalidatie, concurrency en blokkade van rolcombinatieontwerpen.
Data lifecycle diagramGebruikt om het verschil tussen readmodel, editorstate, persistente content en geschiedenis te tonen.
Sequence diagramGebruikt wanneer beheerder, frontend, backend, autorisatiecomponent, database en historyservice samenwerken.