source: spip-zone/_plugins_/albums/trunk/formulaires/ajouter_album.html @ 99736

Last change on this file since 99736 was 99736, checked in by tcharlss@…, 3 years ago

v3.3.27 : Remplace partout là où c'est possible les #INCLURE et #MODELE par des <INCLURE>, et rétablir l'affichage des albums affichés sous le portfolio dans les squelettes de la dist en 3.1 (qui a ajouté un float:left sur les li des albums).

File size: 6.3 KB
Line 
1[(#REM)
2
3        Formulaire pour ajouter un ou plusieurs albums à un objet.
4        On peut soit créer et remplir un nouvel album, soit choisir un ou plusieurs albums existants.
5        Dans le premier cas, il s'agit en gros d'un fusion des formulaires « editer_album » et « joindre_document ».
6
7        Utilise :
8                formulaires/inc-upload_document.html
9
10]
11#SET{ul,#SPIP_VERSION|floatval|>={3.1}|?{div,ul}}
12#SET{li,#SPIP_VERSION|floatval|>={3.1}|?{div,li}}
13#SET{id_unique,#ENV{objet_associer}|concat{#ENV{id_objet_associer}|intval}}
14#SET{edition,#EVAL{_request('exec')}|match{_edit$}|?{1}}
15<div class='formulaire_spip formulaire_#FORM'>
16        <h3 class='titrem'>[(#CHEMIN_IMAGE{album-24.png}|balise_img{'',cadre-icone})]<:album:icone_ajouter_album:></h3>
17        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV**{message_ok})</p>]
18        [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
19
20        [(#ENV{editable})
21        <form method='post' action='#ENV{action}' name="formulaire_ajouter_album" id="formulaire_ajouter_album_#GET{id_unique}"><div>
22                #ACTION_FORMULAIRE{#ENV{action}}
23
24                [(#REM)
25                        Onglet « Création d'un nouvel album »
26                ]
27                <div id="creer-album-#GET{id_unique}">
28
29                        <h4 class="menu">
30                                <span class="creer"><:album:onglet_ajouter_creer:></span> | <span class="choisir"><a href="#"><:album:onglet_ajouter_choisir:></a></span>
31                        </h4>
32
33                        <p class="explication"><strong><:album:label_onglet_ajouter_creer:></strong></p>
34                        <p class="explication"><:album:explication_onglet_ajouter_creer:></p>
35
36                        <[(#GET{ul})] class="editer-groupe">
37                                #SET{name,titre} #SET{obli,''} #SET{defaut,#ENV{titre_defaut,''}} #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
38                                <[(#GET{li})] class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
39                                        <label for="#GET{name}"><:album:label_titre:></label>[
40                                        <span class='erreur_message'>(#GET{erreurs})</span>
41                                        ]<input type="text" name="#GET{name}" class="text" value="#ENV*{#GET{name},#GET{defaut}}" id="#GET{name}" placeholder="<:album:info_nouvel_album|attribut_html:>" />
42                                </[(#GET{li})]>
43                                #SET{name,descriptif} #SET{obli,''} #SET{defaut,#ENV{titre_defaut,''}} #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
44                                <[(#GET{li})] class="editer editer_[(#GET{name})_album][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
45                                        <label for="text_area"><:album:label_descriptif:></label>[
46                                        <span class='erreur_message'>(#GET{erreurs})</span>
47                                        ]<textarea name="#GET{name}" id="#GET{name}"[ lang="(#LANGUE)"] rows="[(#GET{edition}|?{2,4})]" cols="40">[(#ENV*{#GET{name}})]</textarea>
48                                </[(#GET{li})]>
49                        </[(#GET{ul})]>
50
51                        [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ]
52                        <!--extra-->
53
54                        [(#REM) documents ]
55                        <div class="documents">
56                                <strong>[(#CHEMIN_IMAGE{document-12.png}|balise_img) ]<:medias:info_documents:></strong>
57                                <INCLURE{fond=formulaires/inc-upload_document,
58                                        env,
59                                        objet=album,
60                                        id_objet=#ENV{_id_temporaire},
61                                        mediatheque=oui,
62                                        mode=document}
63                                        |replace{value="<:bouton_upload:>"|value="<:medias:bouton_attacher_document:>"|value="<:bouton_choisir:>",value="<:bouton_enregistrer:>"}>
64                        </div>
65
66                </div><!-- #creer-album -->
67
68                [(#REM)
69                        Onglet « Choix d'un album existant »
70                ]
71                <div id="choisir-album-#GET{id_unique}" style="display:none;">
72
73                        <h4 class="menu">
74                                <span class="creer"><a href="#"><:album:onglet_ajouter_creer:></a></span> | <span class="choisir"><:album:onglet_ajouter_choisir:></span>
75                        </h4>
76
77                        <p class="explication"><strong><:album:label_onglet_ajouter_choisir:></strong></p>
78                        <p class="explication"><:album:explication_onglet_ajouter_choisir:></p>
79
80                        <[(#GET{ul})] class="editer-groupe">
81                                #SET{name,ids_albums_associer} #SET{obli,''} #SET{defaut,''} #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
82                                <[(#GET{li})] class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
83                                        <label for="#GET{name}"><:album:label_album_numero:></label>[
84                                        <span class='erreur_message'>(#GET{erreurs})</span>
85                                        ]<input type="text" name="#GET{name}" class="text identifiants" value="#ENV*{#GET{name},#GET{defaut}}" id="ids_albums_associer_#GET{id_unique}" />
86                                        <input class="submit file" type="button" name="parcourir_albums" value="<:medias:bouton_parcourir:>"
87                                                onclick="jQuery.modalboxload('#URL_ECRIRE{popin-choisir_album,var_zajax=contenu&selectfunc=albumselect#GET{id_unique}}&objet=#ENV{objet_associer}&id_objet=#ENV{id_objet_associer}',{autoResize: true});"
88                                                />
89                                </[(#GET{li})]>
90                        </[(#GET{ul})]>
91
92                        <p class='boutons'[ style="direction: (#LANG_DIR|=={ltr}|?{rtl,ltr})"]>
93                                <input class="submit" type="submit" name="choisir_album" value="<:bouton_enregistrer:>" />
94                        </p>
95
96                </div><!-- #choisir-album -->
97
98        </div></form>
99        ]
100</div>
101[(#REM) Scripts :
102 - la gestion des onglets et intitulé du bouton de validation
103 - poster automatiquement le formulaire aux choix d'un album dans la modalbox
104]
105<script type='text/javascript'>/*<![CDATA[*/
106jQuery(document).ready(function($) {
107        // fn : gestion onglets + intitulés bouton validation
108        function ajouter_album() {
109                var creer = $("#creer-album-[(#GET{id_unique})]");
110                var choisir = $("#choisir-album-[(#GET{id_unique})]");
111                var menu_creer = $("#formulaire_ajouter_album_[(#GET{id_unique}) ].menu .creer");
112                var menu_choisir = $("#formulaire_ajouter_album_[(#GET{id_unique}) ].menu .choisir");
113                var bouton = $("#formulaire_ajouter_album_[(#GET{id_unique}) ]input[name='choisir_album']");
114                menu_creer.click(function() {
115                        if (creer.is(':hidden')) {
116                                creer.slideDown(function(){$(this).find("input#titre").focus()});
117                                choisir.slideUp();
118                                bouton.attr("value","<:bouton_enregistrer:>");
119                                return false;
120                        }
121                });
122                menu_choisir.click(function() {
123                        if (choisir.is(':hidden')) {
124                                creer.slideUp()
125                                choisir.slideDown(function(){$(this).find("input#ids_albums_associer_#GET{id_unique}").focus()});
126                                bouton.attr("value","<:bouton_valider:>");
127                                return false;
128                        }
129                });
130        }
131        // init
132        ajouter_album();
133        // relance en cas de rechargement ajax
134        if (window.jQuery) jQuery(function(){
135                onAjaxLoad(ajouter_album);
136        });
137});
138// fn : validation du formulaire au choix d'un album dans la modalbox
139function albumselect#GET{id_unique}(id){
140        $.modalboxclose();
141        $("#ids_albums_associer_#GET{id_unique}").attr('value',id).focus();
142        $('#formulaire_ajouter_album_[(#GET{id_unique}) ]input\[name=choisir_album\]').get(0).click();
143}
144/*]]>*/</script>
Note: See TracBrowser for help on using the repository browser.