Deze update introduceert template-variabelen die rekening houden met permissies en administratieve URL-variabelen, waardoor het eenvoudiger wordt om editorgerichte interfaces direct in de frontend te bouwen.
Met deze toevoegingen kunnen templates bepalen of de huidige gebruiker een pagina mag bewerken en snelle toegang bieden tot administratieve acties.
✨ Nieuwe functies
page.isEditable
Facet biedt nu een nieuwe template-variabele:
page.isEditableDeze variabele geeft aan of de huidige gebruiker toestemming heeft om de huidige pagina te bewerken.
Hiermee kunnen templates UI-elementen conditioneel weergeven die alleen bedoeld zijn voor editors.
Voorbeeld
{{#if page.isEditable}}
<a href="{{ page.url }}?edit=1">Deze pagina bewerken</a>
{{/if}}Typische toepassingen:
- inline bewerkknoppen
- editor toolbars
- contextuele bewerkingsopties
- paginabeheer tools
Als de gebruiker geen bewerkrechten heeft, wordt dit blok niet gerenderd.
Admin URL-variabelen
Facet biedt nu meerdere globale variabelen voor veelgebruikte admin-links:
| Variabele | Beschrijving |
|---|---|
site.adminUrl | Admin dashboard |
site.adminProfileUrl | Admin profielpagina |
site.adminLogoutUrl | Logout URL |
Deze variabelen maken het eenvoudiger om admin-navigatie in de frontend te integreren zonder backend-paden hard te coderen.
Voorbeeld
<a href="{{site.adminProfileUrl}}">Profiel</a>
<a href="{{site.adminLogoutUrl}}">Uitloggen</a>UI-voorbeeld: snelle admin-links
Een veelvoorkomende toepassing van deze functies is een snelle admin-toolbar die zichtbaar is in de frontend voor ingelogde gebruikers.
Deze toolbar kan snelle toegang bieden tot:
- de huidige pagina bewerken
- het dashboard openen
- pagina’s beheren
- het profiel bekijken
- uitloggen
Voorbeeldimplementatie:
{{#deferred skeleton-width="0" skeleton-height="0"}}
{{#if user.isLoggedin}}
<div
class="uniui-admin-links fixed right-4 top-1/2 -translate-y-1/2 z-50"
aria-label="Quick admin links"
>
<div class="uniui-admin-links__group">
{{#if page.isEditable}}
<a href="{{page.url}}?edit=1" aria-label="Edit page">
Edit
</a>
{{/if}}
<a href="{{site.url}}faceflow/">Dashboard</a>
<a href="{{site.url}}faceflow/pages-manage">Pages</a>
<a href="{{site.adminProfileUrl}}">Profile</a>
<a href="{{site.adminLogoutUrl}}">Logout</a>
</div>
</div>
{{/if}}
{{/deferred}}Gedragsoverzicht
| Voorwaarde | Resultaat |
|---|---|
| Gebruiker niet ingelogd | Component niet zichtbaar |
| Ingelogd zonder bewerkrechten | Admin-links zichtbaar, bewerkknop verborgen |
| Ingelogd met bewerkrechten | Volledige toolbar zichtbaar |
Dit zorgt ervoor dat beheerfunctionaliteit alleen beschikbaar is voor geautoriseerde gebruikers.
Samenvatting
Deze release introduceert nieuwe mogelijkheden voor het bouwen van permissie-bewuste frontend interfaces.
Nieuwe template-variabelen
page.isEditable
Nieuwe site-variabelen
site.adminUrlsite.adminProfileUrlsite.adminLogoutUrl
Deze verbeteringen maken het eenvoudiger om contextueel bewerken en admin-navigatie direct in Facet-templates te integreren, terwijl correcte toegangscontrole behouden blijft.




Discussion
Join the conversation and share your thoughts
No comments yet. Be the first to share your thoughts!