source: spip-zone/_plugins_/photospip/trunk/formulaires/editer_image.html @ 61508

Last change on this file since 61508 was 61508, checked in by kent1@…, 7 years ago

On mets les vignettes des versions dans la navigation

File size: 19.8 KB
Line 
1<div class='formulaire_spip formulaire_editer formulaire_editer_document formulaire_editer_document-#ENV{id_document,nouveau}'>
2        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV**{message_ok})</p>]
3        [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
4        <BOUCLE_editable(CONDITION){si #ENV{editable}|oui}>
5        [(#PLUGIN{fonctions_images}|oui)
6                [(#CONFIG{photospip/image_niveau_de_gris_auto}|=={on}|oui)#SET{fonctions_images,on}]
7                [(#CONFIG{photospip/image_sincity}|=={on}|oui)#SET{fonctions_images,on}]
8                [(#CONFIG{photospip/image_contour_alpha}|=={on}|oui)#SET{fonctions_images,on}]
9                [(#CONFIG{photospip/image_dispersion}|=={on}|oui)#SET{fonctions_images,on}]
10                [(#CONFIG{photospip/image_saturer}|=={on}|oui)#SET{fonctions_images,on}]
11        ]
12        <BOUCLE_document(DOCUMENTS){id_document}{tout}>
13                <script type="text/javascript"><!--
14                        [(#REM)
15                                Calcul du ratio entre notre image originale et la prévisualisation
16                                Utile pour les opération de recadrage notamment
17                        ]
18                        #SET{largeur_max,#ENV{largeur_previsu,450}}
19                        #SET{hauteur_max,#CONFIG{photospip/hauteur_previsu,450}}
20                        [(#SET{largeur_reduit,[(#FICHIER|image_reduire{#GET{largeur_max},#GET{hauteur_max}}|extraire_attribut{width})]})]
21                        #SET{ratio,#LARGEUR|div{#GET{largeur_reduit}}}
22                        [(#CONFIG{photospip/image_recadre,on}|=={on}|oui)
23                                var x1, y1, x2, y2, w, h, ias;
24                                function crop_selectchange(img, selection){
25                                        // Le ratio est la relation entre notre image normale et la prévisualisation
26                                        var ratio = parseFloat([(#GET{ratio})]);
27                                        x1.val(parseFloat(selection.x1*ratio).toFixed(0));
28                                        y1.val(parseFloat(selection.y1*ratio).toFixed(0));
29                                        x2.val(parseFloat(selection.x2*ratio).toFixed(0));
30                                        y2.val(parseFloat(selection.y2*ratio).toFixed(0));
31                                        w.val(parseFloat(selection.width*ratio).toFixed(0));
32                                        h.val(parseFloat(selection.height*ratio).toFixed(0));
33                                }
34
35                                var image_crop = function(){
36                                        console.log('on init le crop');
37                                        ias = jQuery('#image_modifier img').imgAreaSelect(
38                                                {
39                                                        x1:10,
40                                                        y1:10,
41                                                        x2:50,
42                                                        y2:50,
43                                                        width:40,
44                                                        height:40,
45                                                        onSelectChange:crop_selectchange,
46                                                        show:true,
47                                                        fadeSpeed:400,
48                                                        handles: true,
49                                                        instance: true
50                                                }
51                                        );
52                                }
53                               
54                                var image_crop_close = function(){
55                                       
56                                        jQuery('#image_modifier img').imgAreaSelect({remove:true});
57                                }
58                        ]
59                       
60                        var activatesliders = function(){
61                                var slider_image_rotation = jQuery('#sliderrotation').slider({
62                                        min: -180,
63                                        max: 180,
64                                        value: #ENV{params_image_rotation,45},
65                                        slide: function( event, ui ) {
66                                                jQuery(this).parent().find('input').val(ui.value.toFixed(0));
67                                        }
68                                });
69                                $("#param_image_rotation").change(function() {
70                                        var val = parseInt($(this).val());
71                                        slider_image_rotation.slider("value", val);
72                                });
73                                var slider_image_gamma = jQuery('#slidergamma').slider({
74                                        min: -254,
75                                        max: 254,
76                                        value: #ENV{params_image_gamma,10},
77                                        slide: function( event, ui ) {
78                                                jQuery(this).parent().find('input').val(ui.value.toFixed(0));
79                                        }
80                                });
81                                $("#param_image_gamma").change(function() {
82                                        var val = parseInt($(this).val());
83                                        slider_image_gamma.slider("value", val);
84                                });
85                               
86                                var slider_image_flou = jQuery('#sliderflou').slider({
87                                        min: 1,
88                                        max: 11,
89                                        value : #ENV{param_image_flou,3},
90                                        slide: function( event, ui ) {
91                                                jQuery(this).parent().find('input').val(ui.value.toFixed(0));
92                                        }
93                                });
94                                $("#param_image_flou").change(function() {
95                                        var val = parseInt($(this).val());
96                                        slider_image_flou.slider("value", val);
97                                });
98                        }
99                       
100                        jQuery(document).ready(function() {
101                                image_crop_close();
102                                activatesliders();
103                                jQuery('.cache').hide();
104                                jQuery('input[name=filtre]:checked').parent().find('.cache').show();
105                                jQuery('.version').hover(function(){
106                                        jQuery(this).find('label img').fadeTo('fast',.1,function(){
107                                                jQuery(this).parent().parent().find('input').attr({
108                                                        checked: "checked"
109                                                });
110                                                jQuery(this).parent().parent().find('.revenir_version, .delete_version').show();       
111                                        });     
112                                },function(){
113                                        jQuery(this).find('label img').fadeTo('fast',1,function(){
114                                                jQuery(this).parent().parent().find('.revenir_version, .delete_version').hide();
115                                        });     
116                                });
117                                jQuery('form input[type=radio]').not('.nocache').unbind().click(function(){
118                                        if(jQuery(this).next().next('.cache').is(':hidden')){
119                                                jQuery(".visible").slideUp().removeClass('visible')
120                                                jQuery(this).parent().find('.cache').slideDown().addClass('visible');
121                                                if(jQuery(this).attr('id') == 'image_recadre'){
122                                                        image_crop();
123                                                }
124                                                else{   
125                                                        image_crop_close();
126                                                }
127                                        }
128                                });
129                                jQuery('#versions input[type=radio]').css("display", "none");
130                               
131                                [(#CONFIG{photospip/image_recadre,on}|oui)
132                                x1 = jQuery('#recadre_x1');
133                                x1.change(function(){
134                                        jQuery('#image_modifier img').imgAreaSelect({x1:20,y1:20,x2:70,y2:70,width:50,height:50,onSelectChange: crop_selectchange,show:true});
135                                });
136                                y1 = jQuery('#recadre_y1');
137                                x2 = jQuery('#recadre_x2');
138                                y2 = jQuery('#recadre_y2');
139                                w = jQuery('#recadre_width');
140                                h = jQuery('#recadre_height');
141                                if(jQuery('#image_recadre').is(':checked')){
142                                        image_crop_close();
143                                        image_crop();
144                                }]
145                                jQuery('.image_recadre input[type=radio]').click(function(){
146                                        if (jQuery(this).val() != ''){
147                                                jQuery('#image_modifier img').imgAreaSelect({aspectRatio: jQuery(this).val()});
148                                        }
149                                        else{
150                                                jQuery('#image_modifier img').imgAreaSelect({aspectRatio: ''});
151                                        }
152                                });
153                        });
154                        // -->
155        </script>
156        <form method='post' action='#ENV{action}' enctype='multipart/form-data'><div>
157                [(#REM) declarer les hidden qui declencheront le service du formulaire
158                parametre : url d'action ]
159                #ACTION_FORMULAIRE{#ENV{action}}
160                <input type='hidden' name='id_document' value='#ENV{id_document}' />
161                [(#REM) un bouton submit pour enregistrer qui sera declenche par le return
162                il ne doit pas etre hidden pour marcher dans safari
163                ]
164                <div id="modifier_image">
165                        <div id="image-container">
166                                <div id="image_modifier" style="[width:(#GET{largeur_max})px;]">
167                                [(#ENV{erreurs}|table_valeur{message}|oui)
168                                <div class="photospip_previsu">
169                                        <div class="previsu_texte" style="[width:(#GET{largeur_max})px;]">
170                                                [(#ENV{erreurs}|table_valeur{message}|=={previsu}|oui)
171                                                <span><:previsualisation:></span>
172                                                <:photospip:previsu:>]
173                                                [(#ENV{erreurs}|table_valeur{message}|=={sanstest}|oui)
174                                                <:photospip:sanstest:>]
175                                                [(#ENV{erreurs}|table_valeur{message}|=={sansfiltre}|oui)
176                                                <:photospip:sansfiltre:>]
177                                                [(#ENV{erreurs}|table_valeur{message}|=={sansconf}|oui)
178                                                <:photospip:sansconf:>]
179                                        </div>
180                                </div>
181                                ]
182                                [(#ENV{erreurs}|table_valeur{filtre}|oui)
183                                [(#_document:FICHIER|image_reduire{#GET{largeur_max,450},#GET{hauteur_max,450}}|photospip_appliquer_filtre{#ENV{erreurs}|table_valeur{filtre},[(#ENV{erreurs}|table_valeur{param})]}|image_reduire{[(#ENV{largeur_max}|sinon{450})],[(#ENV{hauteur_max}|sinon{450})]}|inserer_attribut{alt,' '})]]
184                                [(#ENV{erreurs}|table_valeur{filtre}|non)
185                                [(#_document:FICHIER|image_reduire{#GET{largeur_max,450},#GET{hauteur_max,450}}|inserer_attribut{alt,' '})]]
186                        </div>
187                        </div>
188                                [(#SET{photospip,pasok})]
189                                <BOUCLE_interd(DOCUMENTS_INTERS){id_document}> </BOUCLE_interd>
190                                [(#TOTAL_BOUCLE|>={#CONFIG{photospip/limite_version}}|?{#SET{photospip,ok},#SET{photospip,pasok}})]
191                                <//B_interd>
192                        <div>
193                        <ul>
194                                <li class="fieldset" id="fragment-format">
195                                        <h3 class="legend"><:photospip:legende_filtres_format:></h3>
196                                        <ul>
197                                                [(#CONFIG{photospip/image_recadre,on}|=={on}|oui)
198                                                <li class="editer editer_recadre">
199                                                        <input type="radio" name="filtre" id="image_recadre" value="image_recadre"[(#ENV{filtre}|=={image_recadre}|oui)checked="checked"] />
200                                                        <label for="image_recadre">[<img src="(#CHEMIN{images/photospip-ico/ico_rotation.png})" alt="<:photospip:image_recadre:>" /> ]<:photospip:label_image_recadre:></label>
201                                                        <div class="cache params_filtre image_recadre">
202                                                                <p class="explication">
203                                                                        <:photospip:explication_image_recadre:>
204                                                                        <:photospip:image_taille_actuelle:> #LARGEUR x #HAUTEUR px
205                                                                </p>
206                                                                <ul>
207                                                                <li>
208                                                                        <label><:photospip:label_ratio:></label>
209                                                                        <div class="choix">
210                                                                                <input type="radio" id="ratio" name="ratio" value=""[(#ENV{ratio}|non)checked="checked"] />
211                                                                                <label for="ratio"><:photospip:label_ratio_libre:></label>
212                                                                        </div>
213                                                                        <div class="choix">
214                                                                                <input type="radio" id="ratio1" name="ratio" value="1:1"[(#ENV{ratio}|=={'1:1'}|oui)checked="checked"] />
215                                                                                <label for="ratio1">1:1</label>
216                                                                        </div>
217                                                                        <div class="choix">
218                                                                                <input type="radio" id="ratio2" name="ratio" value="4:3"[(#ENV{ratio}|=={'4:3'}|oui)checked="checked"] />
219                                                                                <label for="ratio2">4:3</label>
220                                                                        </div>
221                                                                </li>
222                                                                <li>
223                                                                        <label for="recadre_width"><:photospip:label_recadre_width:></label>
224                                                                        <input type="text" class="text" id="recadre_width" maxlength="5" name="recadre_width" value="#ENV{recadre_width}" readonly="readonly" />
225                                                                </li>
226                                                                <li>
227                                                                        <label for="recadre_height"><:photospip:label_recadre_height:></label>
228                                                                        <input type="text" class="text" id="recadre_height" maxlength="5" name="recadre_height" value="#ENV{recadre_height}" readonly="readonly" />
229                                                                </li>
230                                                                <li>
231                                                                        <label><:photospip:label_recadre_x1_y1:></label>
232                                                                        <div class="choix">
233                                                                                <label for="recadre_x1">x</label>
234                                                                                <input type="text" class="text" id="recadre_x1" name="recadre_x1" value="#ENV{recadre_x1}" readonly="readonly" />
235                                                                        </div>
236                                                                        <div class="choix">
237                                                                                <label for="recadre_y1">y</label>
238                                                                                <input type="text" class="text" id="recadre_y1" name="recadre_y1" value="#ENV{recadre_y1}" readonly="readonly" />
239                                                                        </div>
240                                                                </li>
241                                                                <li>
242                                                                        <label><:photospip:label_recadre_x2_y2:></label>
243                                                                        <div class="choix">
244                                                                                <label for="recadre_x2">x</label>
245                                                                                <input type="text" class="text" id="recadre_x2" name="recadre_x2" value="#ENV{recadre_x2}" readonly="readonly" />
246                                                                        </div>
247                                                                        <div class="choix">
248                                                                                <label for="recadre_y2">y</label>
249                                                                                <input type="text" class="text" id="recadre_y2" name="recadre_y2" value="#ENV{recadre_y2}" readonly="readonly" />
250                                                                        </div>
251                                                                </li>
252                                                        </ul>
253                                                        </div>
254                                                </li>]
255                                                [(#CONFIG{photospip/tourner,oui}|=={on}|oui)
256                                                <li class="editer editer_tourner">
257                                                        <input type="radio" name="filtre" id="tourner" value="tourner"[(#ENV{filtre}|=={tourner}|oui)checked="checked"] />
258                                                        <label for="tourner">[<img src="(#CHEMIN{images/photospip-ico/ico_rotation.png})" alt="<:photospip:label_tourner:>" /> ]<:photospip:label_tourner:></label>
259                                                        <div class="cache params_filtre">
260                                                                <p class="explication"><:photospip:explication_tourner:></p>
261                                                                <ul>
262                                                                        <li>
263                                                                                <label><:photospip:label_angle_rotation:></label>
264                                                                                <div class="choix">
265                                                                                        <input type="radio" name="params_tourner" value="90" id="param_tourner_90"[(#ENV{params_tourner}|=={90}|oui)checked="checked"] />
266                                                                                        <label for="param_tourner_90"><:photospip:label_tourner_90:></label>
267                                                                                </div>
268                                                                                <div class="choix">
269                                                                                        <input type="radio" name="params_tourner" value="180" id="param_tourner_180"[(#ENV{params_tourner}|=={180}|oui)checked="checked"] />
270                                                                                        <label for="param_tourner_180"><:photospip:label_tourner_180:></label>
271                                                                                </div>
272                                                                                <div class="choix">
273                                                                                        <input type="radio" name="params_tourner" value="270" id="param_tourner_270"[(#ENV{params_tourner}|=={270}|oui)checked="checked"] />
274                                                                                        <label for="param_tourner_270"><:photospip:label_tourner_270:></label>
275                                                                                </div>
276                                                                        </li>
277                                                                </ul>
278                                                        </div>
279                                                </li>]
280                                                [(#CONFIG{photospip/image_rotation}|=={on}|oui)
281                                                <li class="editer editer_rotation">
282                                                        <input type="radio" name="filtre" id="image_rotation" value="image_rotation"[(#ENV{filtre}|=={image_rotation}|oui)checked="checked"] />
283                                                        <label for="image_rotation">[<img src="(#CHEMIN{images/photospip-ico/ico_rotation.png})" alt="<:photospip:label_image_rotation:>" /> ]<:photospip:label_image_rotation:></label>`
284                                                        <div class="cache params_filtre">
285                                                                <p class="explication"><:photospip:explication_image_rotation:></p>
286                                                                <div id='sliderrotation'>
287                                                                        <div></div>     
288                                                                </div>
289                                                                <ul>
290                                                                        <li class="editer editer_param_image_rotation">
291                                                                                <label for="param_image_rotation"><:photospip:label_angle_rotation:></label>
292                                                                                <input type="text" class="text" name="params_image_rotation" id="param_image_rotation" value="#ENV{params_image_rotation,45}" maxlength="4" />
293                                                                        </li>
294                                                                </ul>
295                                                        </div>
296                                                </li>]
297                                                [(#CONFIG{photospip/image_flip_vertical}|=={on}|oui)
298                                                <li class="editer editer_flip_vertical">
299                                                        <input type="radio" name="filtre" id="image_flip_vertical" value="image_flip_vertical"[(#ENV{filtre}|=={image_flip_vertical}|oui)checked="checked"] />
300                                                        <label for="image_flip_vertical">[<img src="(#CHEMIN{images/photospip-ico/ico_flip_vertical.png})" alt="<:photospip:image_flip_vertical:>" /> ]<:photospip:label_image_flip_vertical:></label>
301                                                        <div class="cache params_filtre">
302                                                                <p class="explication"><:photospip:explication_image_flip_vertical:></p>
303                                                        </div>
304                                                </li>]
305                                                [(#CONFIG{photospip/image_flip_horizontal}|=={on}|oui)
306                                                <li class="editer editer_flip_horizontal">
307                                                        <input type="radio" name="filtre" id="image_flip_horizontal" value="image_flip_horizontal"[(#ENV{filtre}|=={image_flip_horizontal}|oui)checked="checked"] />
308                                                        <label for="image_flip_horizontal">[<img src="(#CHEMIN{images/photospip-ico/ico_flip_horizontal.png})" alt="<:photospip:image_flip_horizontal:>" /> ]<:photospip:label_image_flip_horizontal:></label>
309                                                        <div class="cache params_filtre">
310                                                                <p class="explication"><:photospip:explication_image_flip_horizontal:></p>
311                                                        </div>
312                                                </li>]
313                                        </ul>
314                                </li>
315                                <li class="fieldset" id="fragment-couleurs">
316                                        <h3 class="legend"><:photospip:legende_filtres_de_couleur:></h3>
317                                        <ul>
318                                                [(#CONFIG{photospip/image_nb,on}|=={on}|oui)
319                                                <li class="editer editer_nb">
320                                                        <input type="radio" name="filtre" id="filtre_nb" value="image_nb"[(#ENV{filtre}|=={image_nb}|oui)checked="checked"] />
321                                                        <label for="filtre_nb">[<img src="(#CHEMIN{images/photospip-ico/ico_nb.png})" alt="<:photospip:label_image_nb:>" /> ]<:photospip:label_image_nb:></label>
322                                                        <div class="cache params_filtre">
323                                                                <p class="explication"><:photospip:explication_image_nb:></p>
324                                                        </div>
325                                                </li>]
326                                                [(#CONFIG{photospip/image_gamma}|=={on}|oui)
327                                                <li class="editer editer_gamma">
328                                                        <input type="radio" name="filtre" id="filtre_gamma" value="image_gamma"[(#ENV{filtre}|=={image_gamma}|oui)checked="checked"] />
329                                                        <label for="filtre_gamma"><:photospip:label_image_gamma:></label>
330                                                        <div class="cache params_filtre">
331                                                                <p class="explication"><:photospip:explication_image_gamma:></p>
332                                                                <div id='slidergamma'> </div>
333                                                                <ul>
334                                                                        <li class="editer_params_image_gamma">
335                                                                                <label for="param_image_gamma"><:photospip:label_niveau_gamma:></label>
336                                                                                <input type="text" class="text" name="params_image_gamma" id="param_image_gamma" value="#ENV{params_image_gamma,10}" maxlength="4" />
337                                                                        </li>
338                                                                </ul>
339                                                        </div>
340                                                </li>]
341                                                [(#CONFIG{photospip/image_flou}|=={on}|oui)
342                                                <li class="editer editer_flou">
343                                                        <input type="radio" name="filtre" id="filtre_flou" value="image_flou"[(#ENV{filtre}|=={image_flou}|oui)checked="checked"] />
344                                                        <label for="filtre_flou"><:photospip:label_image_flou:></label>
345                                                        <div class="cache params_filtre">
346                                                                <p class="explication"><:photospip:explication_image_flou:></p>
347                                                                <div id='sliderflou'> </div>
348                                                                <ul>
349                                                                        <li class="editer_param_image_flou">
350                                                                                <label for="param_image_flou"><:photospip:label_niveau_flou:></label>
351                                                                                <input type="text" class="text" name="params_image_flou" id="param_image_flou" value="#ENV{params_image_flou,3}" maxlength="2" />
352                                                                        </li>
353                                                                </ul>
354                                                        </div>
355                                                </li>]
356                                                [(#CONFIG{photospip/image_sepia}|=={on}|oui)
357                                                <li class="editer editer_image_sepia">
358                                                        <input type="radio" name="filtre" id="filtre_sepia" value="image_sepia"[(#ENV{filtre}|=={image_sepia}|oui)checked="checked"] />
359                                                        <label for="filtre_sepia">[<img src="(#CHEMIN{images/photospip-ico/ico_sepia.png})" alt="<:photospip:image_sepia:>" /> ]<:photospip:label_image_sepia:></label>
360                                                        <div class="cache params_filtre">
361                                                                <ul>
362                                                                        <li class="editer_param_image_sepia">
363                                                                                <label for="param_image_sepia"><:photospip:label_couleur_sepia:></label>
364                                                                                <input type="text" name="params_image_sepia" class="text palette couleur" id="param_image_sepia" value="#ENV{params_image_sepia,#896f5e}" maxlength="7" />
365                                                                        </li>
366                                                                </ul>
367                                                        </div>
368                                                </li>]
369                                        </ul>
370                                </li>
371                                [(#GET{fonctions_images}|=={on}|oui)
372                                <li class="fieldset" id="fragment-sup">
373                                        <h3 class="legend"><:photospip:legende_filtres_supplementaires:></h3>
374                                        <ul>
375                                                [(#CONFIG{photospip/image_niveau_de_gris_auto}|=={on}|oui)
376                                                <li class="editer editer_niveaux_auto">
377                                                        <input type="radio" name="filtre" id="filtre_niveaux_auto" value="image_niveaux_gris_auto"[(#ENV{filtre}|=={image_niveaux_gris_auto}|oui)checked="checked"] />
378                                                        <label for="filtre_niveaux_auto"><:photospip:label_image_niveau_de_gris_auto:></label>
379                                                        <div class="cache params_filtre explications">
380                                                                <p class="explication"><:photospip:explication_image_niveau_de_gris_auto:></p>
381                                                        </div>
382                                                </li>]
383                                                [(#CONFIG{photospip/image_sincity}|=={on}|oui)
384                                                <li class="editer editer_sincity">
385                                                        <input type="radio" name="filtre" id="filtre_sincity" value="image_sincity"[(#ENV{filtre}|=={image_sincity}|oui)checked="checked"] />
386                                                        <label for="filtre_sincity"><:photospip:label_image_sincity:></label>
387                                                        <div class="cache params_filtre explications">
388                                                                <p class="explication"><:photospip:explication_image_sincity:></p>
389                                                        </div>
390                                                </li>]
391                                                [(#CONFIG{photospip/image_contour_alpha}|=={on}|oui)
392                                                <li class="editer editer_contour_alpha">
393                                                        <input type="radio" name="filtre" id="filtre_contour_alpha" value="image_contour_alpha"[(#ENV{filtre}|=={image_contour_alpha}|oui)checked="checked"] />
394                                                        <label for="filtre_contour_alpha"><:photospip:label_image_contour_alpha:></label>
395                                                        <div class="cache params_filtre explications">
396                                                                <p class="explication"><:photospip:explication_image_contour_alpha:></p>
397                                                        </div>
398                                                </li>]
399                                                [(#CONFIG{photospip/image_saturer}|=={on}|oui)
400                                                <li class="editer editer_saturer">
401                                                        <input type="radio" name="filtre" id="filtre_saturer" value="image_saturer"[(#ENV{filtre}|=={image_saturer}|oui)checked="checked"] />
402                                                        <label for="filtre_saturer"><:photospip:label_image_saturation_desaturation:></label>
403                                                        <div class="cache params_filtre explications">
404                                                                <p class="explication"><:photospip:explication_image_saturation_desaturation:></p>
405                                                                <div id='slidersaturer'> </div>
406                                                                <ul>
407                                                                        <li class="editer editer_param_image_saturer">
408                                                                                <label for="param_image_saturer"><:photospip:label_niveau_saturation_desaturation:></label>
409                                                                                <input type="text" class="text" name="params_image_saturer" id="param_image_saturer" value="#ENV{params_image_saturer,1}" maxlength="3" />
410                                                                        </li>
411                                                                </ul>
412                                                        </div>
413                                                </li>]
414                                        </ul>
415                                </li>]
416
417                </ul>
418          [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ]
419          <!--extra-->
420          <p class="boutons">
421                <input type="submit" class="submit" name="tester" value="<:photospip:bouton_tester:>" />
422                <input type="submit" class="submit" name="validation" value="<:photospip:valider:>" />
423          </p>
424        </div></form>
425        </BOUCLE_document>
426        </BOUCLE_editable>
427</div>
Note: See TracBrowser for help on using the repository browser.