Ga naar inhoud

Predikant-gegevens

Doel & URL('s)

Afgeschermde pagina waar een predikant (rol pastor) zijn gegevens voor de publieke predikantenlijst en de Excel-export beheert.

  • URL: /predikant-gegevens/ (pagina "Predikant gegevens", template template-account-pastor)

Opbouw

Alleen zichtbaar voor ingelogde gebruikers met rol pastor:

  1. Eventuele contentblokken van de pagina.
  2. Gravity Forms-formulier 24 "Predikant gegevens" (knop "Versturen"), vooringevuld met de huidige gegevens:
Veld Type Label Bijzonderheid
2 name Naam zichtbaarheid administrativeniet zichtbaar voor de predikant
3 address Adres (Straat + huisnummer / Stad / Postcode)
12 phone Telefoon
13 phone Mobiele telefoon
4 email E-mailadres
14 date Geboortedatum formaat dd-mm-jjjj
10 select Functie keuzes: "Maak een keuze" (default), "Gemeentepredikant", "Predikant met bijzondere opdracht", "Emerituspredikant"
9 list Gemeenten kolommen Van / Tot / Plaatsnaam; regels toevoegen met (+)
900 checkbox "Ik wil niet verschijnen in downloadlijsten" dynamisch geïnjecteerd (opt-out, zie hieronder)

Geen enkel veld is verplicht. Bevestiging na opslaan: "Uw wijzigingen zijn opgeslagen."

Opt-out downloadlijsten

Boven de checkbox staat een beschrijving over de downloadlijsten (Excel-export van de predikantenlijst). De checkbox is vooraf aangevinkt als de predikant eerder heeft ge-opt-out (usermeta profile_export_optin = '0'). Na verzending wordt de meta opnieuw gezet: aangevinkt → '0' (opt-out), niet aangevinkt → '1'. Een opt-out-predikant ontbreekt in de aangevraagde Excel-export, maar blijft wél zichtbaar op de publieke predikantenlijst /over-de-gb/predikanten/.

Databronnen

Bron Detail
Pagina page #7251, ACF content_form = 24, template views/template-account-pastor.blade.php (controller TemplateAccountPastor)
Formulier GF 24 + UR-feed #7 (type update; rol/displayname behouden)
Bijgewerkte usermeta profile_pastor_city, profile_pastor_email, profile_pastor_address, profile_pastor_zipcode, profile_pastor_phone, profile_pastor_mobile_phone, profile_pastor_date_of_birth, profile_history (+ _from/_to/_place), profile_category, profile_export_optin
Opt-out-hook app/Forms/PredikantenOptinHooks.php (injecteert veld 900 en verwerkt de meta)
Notificatie "Predikant gegevens bijgewerkt" naar info@gereformeerdebond.nl (event gfur_user_updated)

Gedrag & rollen

  • Toegangscheck in de controller: iedere bezoeker zonder rol pastor — anoniem, subscriber, wv-subscriber, én administrators zonder pastor-rol — krijgt wp_die met HTTP 403 en de tekst "U heeft geen toestemming om deze pagina te bekijken.".
  • pastor: formulier zichtbaar en bewerkbaar; de naamvelden zijn administratief (naam wijzigen kan alleen via de beheerder).
  • Opgeslagen wijzigingen zijn direct zichtbaar op de publieke predikantenlijst /over-de-gb/predikanten/ (adres, telefoon, e-mail, geboortedatum, functie, gemeente-historie).
  • De gemeente-historie wordt op datum gesorteerd (nieuwste eerst op de publieke lijst).
  • Bij elke succesvolle wijziging gaat een notificatiemail naar het GB-beheeradres.

Acceptatiecriteria

  • Als anoniem op /predikant-gegevens/ de pagina opvraag, dan krijg ik HTTP 403 met "U heeft geen toestemming om deze pagina te bekijken.".
  • Als wv-subscriber (niet-pastor) op /predikant-gegevens/ de pagina opvraag, dan krijg ik HTTP 403.
  • Als administrator/gb-admin zonder pastor-rol op /predikant-gegevens/ de pagina opvraag, dan krijg ik HTTP 403 (huidig gedrag).
  • Als pastor op /predikant-gegevens/ de pagina laad, dan zie ik formulier 24 met adres, telefoon, mobiel, e-mail, geboortedatum, functie en de gemeenten-lijst vooringevuld — zónder zichtbare naamvelden — plus de checkbox "Ik wil niet verschijnen in downloadlijsten".
  • Als pastor in de accountnavigatie kijk, dan zie ik het item "Predikant gegevens"; als niet-pastor zie ik dat item niet.
  • Als pastor een adreswijziging opsla, dan verschijnt "Uw wijzigingen zijn opgeslagen." en toont /over-de-gb/predikanten/ het nieuwe adres.
  • Als pastor een regel toevoeg aan de gemeenten-lijst (Van/Tot/Plaatsnaam) en opsla, dan verschijnt die in de tijdlijn op de publieke predikantenlijst.
  • Als pastor de opt-out-checkbox aanvink en opsla, dan staat de checkbox bij een volgend bezoek nog aangevinkt en ontbreek ik in een nieuw aangevraagde Excel-export; op de publieke predikantenlijst blijf ik zichtbaar.
  • Als pastor de opt-out-checkbox uitvink en opsla, dan kom ik weer in de Excel-export voor (mits ik aan de overige exportcriteria voldoe).
  • Als pastor gegevens opsla, dan blijven mijn rol en displayname ongewijzigd.

Bekende afwijkingen

Niet nabouwen in Next.js, wel vermelden in het testrapport

  • De 403 is een kale wp_die-pagina zonder site-chrome en zonder loginverwijzing. In de rebuild: nette redirect naar login of een geïntegreerde foutpagina; het testrapport toetst de huidige 403.
  • Beheerders hebben geen toegang tot deze pagina (check is puur op rol pastor, geen capability). Bewust huidig gedrag, beslispunt voor de rebuild.
  • De "U moet ingelogd zijn…"-fallback in de view is dode code (de controller doet altijd eerst de 403); niet nabouwen.