Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 5 di 13
  • livello principiante
Indice lezioni

Menu e toolbar

Configurare menu e barra degli strumenti
Configurare menu e barra degli strumenti
Link copiato negli appunti

In quella che oramai possiamo definire famosa cartella "lang", raggiungibile dall'altrettanto noto percorso /inetpub/wwwroot/aspnuke/lang/, sono presenti due utilissimi file per la personalizzazione del menu utente e del menu amministrativo:

  • menuitems.xml
  • controlpanel.xml

Nella cartella troviamo anche il file "menuitems2.xml" che si differenza dall'altro file per un discorso "grafico", ovvero, tale file permette di associare alle voci dei link delle icone grafiche che possiamo visualizzare seguendo il percorso inetpub/wwwroot/aspnuke/themes/default/bullet/ e che, a loro volta, sono associate al tema che stiamo utilizzando)

Possiamo modificare questi file con il nostro editor di testi, ovviamente, come sempre, facciamo attenzione a non utilizzare tag HTML o caratteri speciali per non incorrere in problemi di varia natura tra cui, il più grave ed ovvio, il non corretto funzionamento di ASPNuke.

I file menuitems.xml e menuitems2.xml hanno la seguente struttura:

<menu>
<element>
<text></text>
<link></link>
<target></target>
<bullet ></bullet>
<role></role>
<flag></flag>
</element>

<element>
...
</element>
</menu>

Il tag <menu> è detto tag radice (root) del file e contiene tutti gli altri.

Il tag <element> rappresenta ogni elemento del menu e ne racchiude i relativi attributi.

Il tag <text> racchiude il testo del link o del comando, e come per le voci successive è possibile personalizzarlo:

  • senza nessun attributo visualizza normalmente il testo, ad esempio:

    <text>Modifica configurazione</text>

  • mediante l'utilizzo dell'attributo type="translation" il valore specificato viene tradotto con la corrispondente etichetta del file di lingua, ad esempio:

    <text type="translation">LANG_NEWS</text>

    traduce il testo in "Notizie" o "News" a seconda se utilizziamo la lingua italiana o inglese;

  • con l'uso dell'attributo type="instruction", il testo specificato viene eseguito come concatenamento tra due variabili, ad esempio

    <text type="instructions">LANG_NEWS & " - " & LANG_TO_VALIDATE</text>

    invia in output il testo "Notizie - Da validare".

Il tag <link> permette la personalizzazione dell'indirizzo a cui i nostri utenti saranno indirizzati cliccando sul link o sul comando, ed analizziamo anche in questo caso le possibilità offerte dalla personalizzazione:

  • per inserire un comunissimo link:

    <link>http://www.altrosito.it</link>

  • per richiamare la cartella principale (nel caso del nostro corso la cartella aspnuke) del sito:

    <link type="translation">GLOBAL_SITE_PATH</link>

  • per linkare la pagina delle news:

    <link type="instruction">GLOBAL_SITE_PATH & GLOBAL_SITE_NEWS_PAGE</link>

Il tag <target> permette di scegliere in quale finestra far aprire il link, analizziamo ora anche in questo caso le varie opzioni proposte:

  • per proseguire la visione dei contenuti nella pagina attuale:

    <target></target> o <target>_self</target>

  • per lanciare la pagina in una nuova finestra del browser:

    <target>_blank</target>

  • per aprire la pagina nella stessa pagina da cui è linkata e per rimuovere eventuali frame:

    <target>_top</target>

  • mediante l'utilizzo degli attributi dell'oggetto "window" di Javascript, è possibile gestire la grandezza della finestra, se renderla ridimensionabile e se far visualizzare o meno la scrollbar:

    <target>width=600,height=400,resizable=yes,scrollbars=yes</target>

Il tag <bullet> serve ad indicare quale icona utilizzare di fianco al testo del link:

  • non visualizzeremo alcuna icona:

    <bullet></bullet>

  • viene eseguito del codice ASP e ne viene visualizzato il risultato che in questo caso sarà l'invio in output dell'immagine downloads.gif che si trova nella directory /inetpub/wwwroot/aspnuke/themes/default/bullet/:

    <bullet type="instruction">GLOBAL_SITE_THEMES_PATH & sTheme & "/bullet/downloads.gif"</bullet>

Il tag <role> serve ad indicare quali utenti possono visualizzare la voce di menu (tutti, solo gli amministratori, solo gli utenti registrati, solo gli utenti che si sono loggati, solo gli utenti che non hanno eseguito il log-in o solo gli utenti il cui ruolo all'interno del CMS sia superiore all'user).

  • il menu viene visualizzato da tutti gli utenti che dopo aver eseguito il log-in sono entrati nel proprio pannello di controllo:

    <role></role>

  • il menu viene visualizzato solo per gli utenti che hanno eseguito il log-in:

    <role type="instruction">ROLE_USER</role>

  • il menu viene visualizzato solo per gli utenti con ruolo specifico (da sostituire ad XXX):

    <role type="instruction">ROLE_xxx</role>

  • il menu sarà visualizzato solamente agli utenti che non hanno ancora fatto il log-in

    <role type="instruction">0</role>

  • il menu sarà visualizzato per tutti gli utenti:

    <role type="instruction">-1</role>

  • il menu sarà visualizzato solo per gli utenti il cui ruolo è maggiore di "User":

    <role type="instruction">-2</role>

Infine il tag <flag> serve a dare delle condizioni di visualizzazione al menu:

  • <flag></flag>, il menu viene visualizzato sempre;
  • <flag type="instruction">GLOBAL_NEWS_TOP</flag> il menu viene visualizzata solo se il valore della variabile GLOBAL_NEWS_TOP è True (ovvero > 0);

<flag type="instruction">0</flag> serve per inserire una riga vuota tra le varie voci del menu.

toolbar.xml

Il file "toolbar.xml", che risiede sempre nella directory /inetpub/wwwroot/aspnuke/lang/ serve, come avrete sicuramente capito, per la personalizzazione della toolbar. Possiamo modificato con un editor di testi. La sua struttura è la seguente:

<toolbar>
<menu>
<element>
<text></text>
<link></link>
<target></target>
</element>
</menu>
</toolbar>

Il tag <toolbar> è il tag radice di questo documento ed i vari elementi che definiscono le caratteristiche della toolbar sono racchuisi nel tag <element>.

Il tag <text> è analogo a quello già visto racchiudono il nome del link, e come per le voci successive è possibile personalizzarlo:

  • senza nessun attributo viene visualizzato normalmente il testo, esempio <text>Modifica configurazione</text>;
  • mediante l'utilizzo dell'attributo type="translation" il valore specificato viene tradotto con la corrispondente etichetta del file di lingua, ad esempio <text type="translation">LANG_NEWS</text>, traduce il testo in "Notizie" o "News" a seconda se utilizziamo la lingua italiana o inglese;
  • con l'uso dell'attributo type="instruction",il testo specificato viene eseguito come concatenamento tra due variabili per il codice ASP, ad esempio <text type="instructions">LANG_NEWS & " - " & LANG_TO_VALIDATE</text>, invierà in output il testo "Notizie - Da validare".

il tag <link> permette la personalizzazione dell'indirizzo a cui i nostri utenti saranno indirizzati cliccando sul link, ed analizziamo anche in questo caso le possibilità offerte dalla personalizzazione:

  • <link>http://www.altrosito.it</link> per inserire un comunissimo link;
  • <link type="translation">GLOBAL_SITE_PATH</link> per richiamare la cartella principale (nel caso del nostro corso la cartella aspnuke) del sito;
  • <link type="instruction">GLOBAL_SITE_PATH & GLOBAL_SITE_NEWS_PAGE</link> per linkare la pagina delle news.

Infine il tag <target> permette di scegliere in quale finestra far aprire il link, analizziamo ora anche in questo caso le varie opzioni proposte:

  • <target></target> o <target>_self</target> per proseguire la visione dei contenuti nella pagina attuale;
  • <target>_blank</target> per lanciare la pagina in una nuova finestra del browser;
  • <target>_top</target> per aprire la pagina nella stessa pagina da cui è linkata e per rimuovere eventuali frame
  • <target>width=600,height=400,resizable=yes,scrollbars=yes</target>, mediante l'utilizzo degli attributi dell'oggetto WINDOWS di Javascript, è possibile gestire la grandezza della finestra, se renderla ridimensionabile e se far visualizzare o meno la scrollbar.

Ti consigliamo anche