source: spip-zone/_plugins_/noizetier/trunk/formulaires/lister_noisettes_bloc.html @ 110216

Last change on this file since 110216 was 110216, checked in by eric@…, 16 months ago

Permettre d'imbriquer plusieurs niveaux de noisettes de type conteneur (2 max).
Cette limitation sera configurable dans une future version.
Prise en compte de l'imbrication dans la visualisation du privé de la liste des noisettes d'un bloc.
Reste à étendre l'imbrication à la compilation dans le public.

File size: 4.1 KB
Line 
1[(#REM) en ajax, on perds parfois le paramètre dans l'URL ]
2#SET{self, #SELF|parametre_url{objet, #ENV{objet}}}
3#SET{self, #GET{self}|parametre_url{id_objet, #ENV{id_objet}}}
4#SET{self, #GET{self}|parametre_url{page, #ENV{page}}}
5#SET{self, #GET{self}|parametre_url{bloc, #ENV{bloc}}}
6<form method="post" action="#ENV{action}">
7        [(#REM) declarer les hidden qui declencheront le service du formulaire parametre : url d'action ]
8        #ACTION_FORMULAIRE{#ENV{action}}
9        <input type="hidden" name="conteneur_id" value="#ENV{id_conteneur}" />
10
11        [#BOITE_OUVRIR{'','error'}(#ENV*{message_erreur})#BOITE_FERMER]
12        [#BOITE_OUVRIR{'','success'}(#ENV*{message_ok})#BOITE_FERMER]
13
14        [(#ENV{page}|?{
15                #SET{url_add, #URL_ECRIRE{noisette_add, page=#ENV{page}&bloc=#ENV{bloc}}},
16                #SET{url_add, #URL_ECRIRE{noisette_add, objet=#ENV{objet}&id_objet=#ENV{id_objet}&bloc=#ENV{bloc}}}
17        })]
18
19        #SET{infos_bloc, #NOIZETIER_BLOC_INFOS{#ENV{bloc}}}
20        <a name="bloc-#ENV{bloc}"></a>
21        [(#BOITE_OUVRIR{#GET{infos_bloc/nom}, simple, titrem})]
22                [<p>(#GET{infos_bloc/description})</p>]
23                <B_noisettes>
24                <ul class="editer-groupe liste-items liste-noisettes liste-noisettes-bloc">
25                <BOUCLE_noisettes(NOISETTES){plugin=noizetier}{id_conteneur?}{par rang_noisette}>
26                        #SET{profondeur, 0}
27                        <li class="editer item noisette" id="noisette-#ID_NOISETTE">
28                                <INCLURE{fond=formulaires/inclure/inc-resume_noisette,
29                                        id_noisette,
30                                        id_conteneur,
31                                        rang_noisette,
32                                        nb_noisettes=#TOTAL_BOUCLE,
33                                        profondeur=#GET{profondeur},
34                                        url_page=#GET{self},
35                                        url_add=#GET{url_add},
36                                        bloc} />
37                                #SET{conteneur, #CONTENEUR_IDENTIFIER{noizetier, #ARRAY{type_noisette, #TYPE_NOISETTE, id_noisette, #ID_NOISETTE}}}
38                        </li>
39
40                        <B_noisettes_enfants>
41                        <ul class="liste-noisettes-conteneur">
42                        <BOUCLE_noisettes_enfants(NOISETTES){plugin=noizetier}{id_conteneur=#GET{conteneur}}{par rang_noisette}>
43                                #SET{profondeur, #GET{profondeur}|plus{1}}
44                                <li class="editer item noisette" id="noisette-#ID_NOISETTE">
45                                        <INCLURE{fond=formulaires/inclure/inc-resume_noisette,
46                                                id_noisette,
47                                                id_conteneur,
48                                                rang_noisette,
49                                                nb_noisettes=#_noisettes_enfants:TOTAL_BOUCLE,
50                                                classe=conteneur-#GET{profondeur},
51                                                profondeur=#GET{profondeur},
52                                                url_page=#GET{self},
53                                                url_add=#GET{url_add},
54                                                bloc} />
55                                        #SET{conteneur, #CONTENEUR_IDENTIFIER{noizetier, #ARRAY{type_noisette, #TYPE_NOISETTE, id_noisette, #ID_NOISETTE}}}
56                                </li>
57                                <BOUCLE_noisettes_petits_enfants(BOUCLE_noisettes_enfants)></BOUCLE_noisettes_petits_enfants>
58                                #SET{profondeur,#GET{profondeur}|moins{1}}
59                        </BOUCLE_noisettes_enfants>
60                        </ul>
61                        </B_noisettes_enfants>
62                </BOUCLE_noisettes>
63                        <input type="hidden" name="nb_noisettes" value="#TOTAL_BOUCLE" />
64                </ul>
65                [(#URL_ACTION_AUTEUR{vider_conteneur, [(#ENV{id_conteneur})], #GET{self}}
66                        |icone_verticale{<:noizetier:formulaire_supprimer_noisettes_bloc:>, noizetier-24, del, #LANG_LEFT})]
67                </B_noisettes>
68                <ul class="editer-groupe liste-items liste-noisettes liste-noisettes-bloc">
69                        <li class="editer item">
70                                #BOITE_OUVRIR{'','notice'}<:noizetier:bloc_sans_noisette:>#BOITE_FERMER
71                        </li>
72                        <input type="hidden" name="nb_noisettes" value="0" />
73                </ul>
74                <//B_noisettes>
75                [(#GET{url_add}
76                        |icone_verticale{<:noizetier:formulaire_ajouter_noisette_bloc:>,noisette, add, right preload})]
77        #BOITE_FERMER
78
79        [(#REM) <!-- ajouter les saisies supplementaires : extra et autre, a cet endroit -->]
80        <!--extra-->
81</form>
82<script type="text/javascript">
83/*<!\[CDATA\[*/
84        [(#REM) <!-- Autoriser le tri des noisettes du bloc -->]
85        jQuery('ul.liste-noisettes-bloc').sortable({
86                items: 'li.noisette',
87                axis: 'y',
88                opacity: 0.5,
89                connectWith: 'ul.liste-noisettes-bloc',
90                forcePlaceholderSize: true,
91                cursor: 'move',
92                update: function(event, ui) {
93                        form = $(this).closest('form');
94                        form.submit();
95                }
96        });
97
98        [(#REM) <!-- Affichage ou effacement des boutons d'actions de chaque page -->]
99        $(function(){
100                $('.item.noisette .edition a:not(.visible)').hide();
101                $('.item.noisette')
102                        .hover(
103                                function(){
104                                        $(this).find('.edition a').show();
105                                },
106                                function(){
107                                        $(this).find('.edition a:not(.visible)').hide();
108                                }
109                        );
110        });
111/*\]\]>*/
112</script>
Note: See TracBrowser for help on using the repository browser.