Moderator |
|
Hmm, zou je nog iets specifieker kunnen zijn?
En je geeft het zelf al een beetje aan: je hebt in een beheerscherm een aantal applicatie-instellingen die je op wilt slaan. Deze zul je dus ergens moeten onthouden, en als je wilt bepalen wat je vervolgens toont, dan zul je deze instellingen weer moeten ophalen en toepassen bij het (dynamisch) opbouwen van je pagina.
Dan is er nog de vraag: wie heeft toegang tot dit agendasysteem (alleen jij als beheerder, verschillende beheerders, andere gebruikers)? En ook: kunnen deze gebruikers verschillende dingen (oftewel: ziet dezelfde pagina er mogelijk verschillend uit op grond van gebruikersrechten of andere instellingen)? En ook: beheren jullie elk jullie eigen data, of zien jullie ook elkanders data, en zoja, mag jij data van iemand anders toevoegen/wijzigen/verwijderen?
Er zijn legio manieren om instellingen op te slaan, en vervolgens zijn er ook legio manieren om hier weer mee om te gaan. Afhankelijk van in hoeverre je wilt bepalen wie wat kan, kan deze indeling variëren van eenvoudig tot heel complex.
In de eenvoudigste variant geef je iemand bijvoorbeeld toegang (of ontzeg je deze) op grond van een rol of recht. Ben je admin, heb je beschikking over alle beheerfunctionaliteit, zoniet, kom je er niet in.
In een wat geavanceerdere variant definieer je bijvoorbeeld de verschillende acties die uitgevoerd kunnen worden op resources. Een resource kan bijvoorbeeld een "evenement" zijn op je kalender (en evenementen worden bijvoorbeeld opgeslagen in een database-tabel).
Dit verband (acties x resources) zou je kunnen vastleggen in een soort CRUD-matrix. Vervolgens zou je de rijen/kolommen/cellen op zijn beurt weer kunnen koppelen aan rollen/rechten die vervolgens weer aan een gebruiker gekoppeld zijn.
Hoe complex je e.e.a. opzet hangt dus van een aantal zaken af (verschillende type gebruikers, verschillend aantal handelingen en mate van controle hierover, verschillende (data)weergaves etc.). |