Aggiornamento Facet: Permessi di modifica e collegamenti rapidi di amministrazione

Introducing page.isEditable and Quick Admin Links

Aggiornamento Facet: Permessi di modifica e collegamenti rapidi di amministrazione

Questo aggiornamento introduce variabili di template sensibili ai permessi e URL utilitarie per l'amministrazione, rendendo più semplice costruire interfacce orientate agli editor direttamente nel frontend.

Queste aggiunte permettono ai template di determinare se l'utente corrente può modificare una pagina e di fornire accesso rapido alle azioni amministrative.


✨ Nuove funzionalità

page.isEditable

Facet espone ora una nuova variabile di template:


page.isEditable

Questa variabile indica se l'utente corrente ha il permesso di modificare la pagina corrente.

Permette ai template di visualizzare condizionalmente elementi dell'interfaccia destinati solo agli editor.

Esempio

{{#if page.isEditable}}
  <a href="{{ page.url }}?edit=1">Modifica questa pagina</a>
{{/if}}

Casi d'uso tipici:

  • pulsanti di modifica inline
  • barre degli strumenti per editor
  • controlli di modifica contestuali
  • strumenti di gestione a livello di pagina

Se l'utente non dispone dei permessi di modifica, questo blocco non verrà renderizzato.


Variabili URL di amministrazione

Facet fornisce ora diverse variabili globali per collegamenti amministrativi comuni:

VariabileDescrizione
site.adminUrlDashboard di amministrazione
site.adminProfileUrlPagina del profilo amministratore
site.adminLogoutUrlURL di logout

Queste variabili semplificano l'integrazione della navigazione amministrativa nel frontend senza dover codificare manualmente i percorsi backend.

Esempio

<a href="{{site.adminProfileUrl}}">Profilo</a>
<a href="{{site.adminLogoutUrl}}">Logout</a>

Esempio UI: collegamenti rapidi di amministrazione

Un caso d'uso comune per queste funzionalità è una barra di amministrazione rapida visualizzata nel frontend per gli utenti autenticati.

Questa barra può offrire accessi rapidi per:

  • modificare la pagina corrente
  • aprire la dashboard
  • gestire le pagine
  • accedere al profilo
  • effettuare il logout

Esempio di implementazione:

{{#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}}

Riepilogo comportamento

CondizioneRisultato
Utente non autenticatoIl componente non è visibile
Autenticato senza permesso di modificaLink amministrativi visibili, pulsante di modifica nascosto
Autenticato con permesso di modificaBarra completa visibile

Questo garantisce che gli strumenti di gestione siano disponibili solo per utenti autorizzati.


Questa versione introduce nuove capacità per costruire interfacce frontend sensibili ai permessi.

Nuove variabili di template

  • page.isEditable

Nuove variabili globali

  • site.adminUrl
  • site.adminProfileUrl
  • site.adminLogoutUrl

Questi miglioramenti rendono più semplice integrare modifica contestuale e navigazione amministrativa direttamente nei template Facet mantenendo al tempo stesso un adeguato controllo dei permessi.

kingleoric

kingleoric

First Article You're at the beginning
Next Facet: A Template Engine For FaceFlow

Discussion

Join the conversation and share your thoughts

No comments yet. Be the first to share your thoughts!