Uno degli elementi più usati nel linguaggio Giotto è il Container.
Un container serve a poter definire un insieme di oggetti che hanno una configurazione comune.
Inoltre, un container ha la caratteristica di poter essere replicabile.
Per definire un container, usa l'attributo mn:container
.
<div mn:container>Questo é un container</div>
È possibile quindi:
- Definire i parametri di un container;
- Rendere un container ripetibile;
- Associare dei parametri ad un container;
Parametri del container
Per poter configurare un container, è necessario associargli dei parametri.
Per dichiarare un parametro usa l'attributo mn:param
.
Se definisci un parametro nel corpo della comunicazione, questo sarà valido per l'intero documento.
La sua configurazione avverrà mediante un apposito pulsante Stili. Sarà così possibile definire una configurazione globale della comunicazione, per esempio impostando un colore di background o un attributo generale del testo.
Se un parametro viene definito a livello di container, la sua validità sarà limitata al solo container.
<div mn:container> <meta mn:param mn:name="Color" mn:type="color" mn:default="#E5E5E5" /> <meta mn:param mn:name="showtext" mn:type="boolean" mn:default="true" mn:tab="Opzioni" mn:section="Opzioni di visualizzazione" mn:label="Mostrare il testo Notizie" mn:help="E opzionale" /> <div style="background-color:[param:color];"> Container con parametri <span mn:if="param.showtext">Notizie</span> </div> </div>
Container ripetibili
Uno dei vantaggi principali nell'uso del Container è il fatto che questo potrà essere ripetibile.
L'uso del container torna molto utile, per esempio, quando si vuole dare agli utenti la possibilità di inserire rapidamente degli articoli.
Per fare si che un container possa essere ripetibile, usa l'attributo mn:repeatable
.
<div mn:container mn:repeatable> <meta mn:param mn:name="testo" mn:type="text" mn:default="Testo" /> Container ripetibile al cui interno è inserito del contenuto modificabile ed ha un parametro [param:testo] configurabile </div>
È possibile definire un numero minimo e massimo di volte in cui il container può essere ripetuto.
Per farlo puoi usare gli attributi opzionali mn:min
e mn:max
.
Se viene definito un mn:min
saranno automaticamente creati il numero di container indicati.
I valori di default di mn:min
e mn:max
sono rispettivamente 1 e 0, dove 0 significa infinito. Se diverso da 0, il valore di mn:max
deve essere maggiore di quello di mn:min
.
<div mn:container mn:repeatable mn:min="2" mn:max="4"> <div mn:editable> Questo contenuto può essere ripetuto tra 2 e 4 volte </div> </div>
Parametri del container
Sfruttando l'interfaccia della piattaforma è possibile configurare dei parametri specifici all'interno del container.
Per creare un parametro modificabile usa l'attributo mn:editparam
, mediante il quale indicare il parametro da configurare.
<div mn:container mn:repeatable> <meta mn:param mn:name="testo" mn:type="text" mn:default="Testo" /> Parametro modificabile: <span mn:editable mn:editparam="testo"></span> e non modificabile: [param:testo] </div>