source: spip-zone/_plugins_/noizetier_layout/trunk/saisies/grid_selection.html @ 113922

Last change on this file since 113922 was 113922, checked in by rastapopoulos@…, 14 months ago

Sous-plugin du Noizetier qui permet de déclarer une grille CSS au noizetier. Ce plugin ne fait rien en soit, il faut ensuite implémenter un framework de grille en déclarant des choses. Cela ajoute alors des nouvelles configurations automatiquement à toutes les noisettes, permettant de configurer des options d'agencement (le colonnage, etc).

File size: 2.2 KB
Line 
1[(#REM)
2
3        Saisie radio
4
5        Différences avec la saisie normale :
6        - radios affichées en inline
7
8        Paramètres :
9                **obligatoire
10                *recommandé
11
12                - data** : tableau associatif des valeurs
13                - medias : « oui » pour ajouter une ligne par média
14                  Dans ce cas on obtient des sous-valeurs name\[media\]
15                - obligatoire : « oui »
16                        S'il y a plusieurs médias et que la grille est mobile-first,
17                        seul le 1er est obligatoire.
18                - slider : « oui » pour afficher sous forme de slider
19]
20
21#SET{valeur, #ENV{valeur_forcee,#ENV{valeur,#ENV{defaut}}}}
22#SET{grille, #REM|noizetier_layout_decrire_grille}
23#SET{medias, #ENV{medias}|=={oui}|?{#GET{grille/medias},#ARRAY{'',''}}}
24#SET{slider, #ENV{slider}|=={oui}}
25
26<BOUCLE_medias(DATA){source table, #GET{medias}}>
27#SET{media,    #CLE}
28#SET{name,     #ENV{nom}|concat{\[,#GET{media},\]}}
29#SET{id,       #VAL{champ_}|concat{#ENV{id,#ENV{nom}},_,#GET{media}}|saisie_nom2classe}
30#SET{required, #ENV{obligatoire}|=={oui}|et{#GET{grille/mobile_first}|?{#COMPTEUR_BOUCLE|=={1},oui}}}
31#SET{disable_choix, #ENV{disable_choix}|explode{','}}
32<B_selection>
33<div class="gridedit[ gridedit_(#GET{media}|attribut_html)][ (#ENV{class}|attribut_html)]">
34
35        [<div class="gridedit__item gridedit__item_media">
36                [<img src="(#CHEMIN{#VALEUR{img}})" width="32" heigh="32" alt="">]
37                <label>(#VALEUR{label})</label>
38        </div>]
39
40        <div class="gridedit__item gridedit__item_select">
41                <select
42                        type="select"
43                        name="#GET{name}"
44                        class="select"
45                        id="#GET{id}"
46                        [(#GET{required}|oui)required="required"]
47                        [(#GET{disabled}|oui)disabled="disabled"]
48                        [readonly="(#ENV{readonly})"]
49                        [aria-describedby="(#ENV{describedby})"]
50                        [size="(#ENV{size})"]
51                        [(#ENV*{attributs})]
52                >
53                        [(#ENV{cacher_option_intro}|non)<option value="">[(#ENV{option_intro})]]
54                        <BOUCLE_selection(POUR){tableau #ENV*{data}}>
55                        #SET{value,    #CLE|noizetier_layout_creer_classe_media{#GET{media}}}
56                        #SET{selected, #GET{value}|in_any{#GET{valeur}}}
57                        #SET{disabled, ''}
58                        <option
59                                value="#GET{value}"
60                                [(#GET{selected}|oui)selected="selected"]
61                                [(#GET{disabled}|oui)disabled="disabled"]
62                        />#VALEUR</option>
63                        </BOUCLE_selection>
64                </select>
65        </div>
66</div>
67</B_selection>
68</BOUCLE_medias>
Note: See TracBrowser for help on using the repository browser.