01
De lijst met formules
Voor een franchisegever is dat geen gefilterde lijst maar precies één rij: zijn eigen. De filters bovenaan doen daar niets en dat is geen beperking maar een uitkomst, want er is niets om uit te filteren.
De lijst wordt dus niet ruim opgehaald en daarna versmald. Hij wordt smal opgehaald.
02
Het formuledossier
Bij het openen wordt opnieuw gevraagd of dit dossier van deze gebruiker is. Dat de link uit zijn eigen lijst kwam telt daarbij niet als bewijs: een adres in de balk is te veranderen en een verzoek is na te bouwen.
Een kandidaat-franchisenemer komt hier helemaal niet, ook niet bij zijn eigen formule.
03
De kandidatenlijst
De afbakening wordt op de server samengesteld en het formulenummer komt uit de sessie, nooit uit de adresregel. Wie er een ander nummer in typt krijgt zijn eigen lijst terug en niet een foutmelding die verraadt dat het andere nummer bestaat.
Tellen en ophalen gebeuren met dezelfde afbakening, zodat de teller boven de lijst nooit iets anders kan zeggen dan wat eronder staat.
04
Het bewerkformulier en het opslaan
Twee aparte ingangen en dus twee aparte controles. De tweede is de belangrijkste: een formulier kan van buitenaf worden nagebouwd en een opslagverzoek komt niet altijd van het scherm dat je hebt gezien.
Een controle die alleen bij het tonen staat beveiligt het tonen en verder niets.
05
Wat er in dat opslagverzoek staat
Stuurt een franchisegever bij het opslaan het soort of de status van zijn formule mee, dan negeert het opslaan die velden. De bestaande waarde wint van wat er binnenkomt.
Winnen en niet weigeren, met opzet: een weigering vertelt iemand dat hij het bij het juiste eind had.
06
De wijzigingshistorie
Terugdraaien is een eigen ingang en krijgt dus dezelfde controle nog een keer. Een historie is net zo gevoelig als het veld waar zij over gaat: daarin staat wat er vroeger stond en wie het heeft veranderd.
Wie niets mag wijzigen krijgt de terugdraaiknop ook niet te zien, maar dat is niet waar de bescherming in zit.
07
Het dashboard bij het inloggen
Wat een franchisegever als eerste ziet is de naam van zijn formule, drie tellingen (gekoppeld, in behandeling en geplaatst), vijf van zijn kandidaten en zijn eerstvolgende afspraken. Meelezen dus en niet meebeslissen. De server kiest de gegevens van de eigen formule uit voordat er iets naar het scherm gaat.
Er is geen totaal over alle formules dat hier per ongeluk in beeld kan komen.