Changeset 68832 in spip-zone


Ignore:
Timestamp:
Jan 8, 2013, 10:42:25 AM (7 years ago)
Author:
tcharlss@…
Message:
  • Saisie 'selection_album' : pour parcourir les albums, on utilise une modalbox empruntée (encore une fois !) au plugin medias.
  • Quelques remaniements au niveau des squelettes
Location:
_plugins_/albums/trunk
Files:
2 added
1 deleted
8 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/albums/trunk/lang/album_fr.php

    r68827 r68832  
    8383        'label_modele_alignement_droite' => 'Droite',
    8484        'label_modele_alignement_gauche' => 'Gauche',
    85         'label_modele_titre' => 'Utiliser un titre différent',
     85        'label_modele_identifiant' => 'Numéro de l\'album',
     86        'label_modele_parcourir_albums' => 'Parcourir les albums',
     87        'label_modele_titre' => 'Titre personnalisé',
    8688        'label_modele_variante' => 'Variante',
    87         'label_modele_variante_defaut' => 'Vignettes',
     89        'label_modele_variante_defaut' => 'Vignettes (défaut)',
    8890        'label_titre' => 'Titre',
    8991        'label_utiliser_titre_defaut' => 'Titre d\'un nouvel album',
  • _plugins_/albums/trunk/modeles/album.yaml

    r68823 r68832  
    1212    options:
    1313      nom: 'id_modele'
     14      label: <:album:label_modele_identifiant:>
     15      defaut: ' '
     16    verifier:
     17      type: 'entier'
     18      options:
     19        min: 1
     20        #max: 9999
    1421  -
    1522    saisie: 'input'
  • _plugins_/albums/trunk/paquet.xml

    r68823 r68832  
    22        prefix="Albums"
    33        categorie="multimedia"
    4         version="2.1.3"
     4        version="2.1.4"
    55        etat="test"
    66        compatibilite="[3.0.0;3.0.*]"
  • _plugins_/albums/trunk/prive/objets/liste/albums.html

    r68823 r68832  
    11[(#REM)
    2         Affiche une liste d'albums
     2        Affiche la liste des albums
    33        Paramètres d'inclusion :
    4 
    5                 ==> selection des albums
     4                les paramètres indiqués (liste) peuvent être soit une #LISTE,
     5                soit une chaine de mots séparés par des caractères non alphanumériques (afin de pouvoir transmettre via l'url).
     6 
    67                exclus (tableau d'ids)
    7                 statut (texte)          prepa, publie, poubelle
    8 
    9                 ==> affichage
    10                 liste (texte)           albumotheque, associer, selecteur
     8                liste                   albumotheque, associer, selecteur
    119                header (liste)          tri, thead, recherche
    12                 colonnes (liste)        statut, logo, id, titre, infos, descriptif, contenu
    13                 actions (liste)         associer, choisir
    14 
     10                colonnes (liste)        statut, logo, id, titre, infos, descriptif, contenu, liaison
     11                bouton                  associer, choisir
    1512][(#REM)
    1613        inclus dans /prive/squelettes/contenu/albums_afficher_complement_objet.html
    17         inclus dans /prive/squelettes/inclure/albums_navigation_listes.html
     14        inclus dans /prive/squelettes/inclure/albums_navigation.html
    1815]
    1916
     
    2421}})
    2522]
    26 [(#REM) Variables indiquant les éléments à afficher ]
    27 <BOUCLE_header(DATA){liste #ENV{header}}>
    28 #SET{#VAL{header_}|concat{#VALEUR},oui}
    29 </BOUCLE_header>
    30 <BOUCLE_colonnes(DATA){liste #ENV{colonnes}}>
    31 #SET{#VAL{colonne_}|concat{#VALEUR},oui}
    32 </BOUCLE_colonnes>
    33 <BOUCLE_actions(DATA){liste #ENV{actions}}>
    34 #SET{#VAL{action_}|concat{#VALEUR},oui}
    35 </BOUCLE_actions>
    36 #SET{liste, #ENV{liste,albumotheque}}
     23[(#REM)
     24        Variables pour définir les éléments à afficher
     25        On convertit en tableau si nécessaire, et on donne les valeurs par défaut
     26]
     27#SET{liste, #ENV{liste, albumotheque}}
     28#SET{header, #ENV{header}|?{
     29        #ENV{header}|is_array|?{#ENV{header},#VAL{'/\W/'}|preg_split{#ENV{header}}},
     30        #LISTE{tri, thead, recherche}}
     31}
     32#SET{colonnes, #ENV{colonnes}|?{
     33        #ENV{colonnes}|is_array|?{#ENV{colonnes},#VAL{'/\W/'}|preg_split{#ENV{colonnes}}},
     34        #LISTE{statut,logo,id,titre,descriptif,contenu,liaison}}
     35}
    3736
    3837
     
    4544                [(#GRAND_TOTAL|objet_afficher_nb{album})]
    4645        })</h2>]
    47         [(#GRAND_TOTAL|>{#ENV{nb}}|ou{#ENV{recherche}}|et{#GET{header_recherche}}|oui)
     46        [(#GRAND_TOTAL|>{#ENV{nb}}|ou{#ENV{recherche}}|et{#VAL{recherche}|in_array{#GET{header}}}|oui)
    4847                #FORMULAIRE_RECHERCHE_ECRIRE{#SELF,ajax}
    4948        ]
     
    5251<div class="liste-objets[ (#GET{liste})]">
    5352
    54         [(#GET{header_tri}|oui)
     53        [(#VAL{tri}|in_array{#GET{header}}|oui)
    5554        <navigation>
    5655                <div class='pagination tri'>
     
    6766        <table class="spip liste">
    6867
    69                 [(#GET{header_thead}|oui)
     68                [(#VAL{thead}|in_array{#GET{header}}|oui)
    7069                <thead>
    71                         [(#GET{colonne_statut}|oui)             <th></th> ]
    72                         [(#GET{colonne_logo}|oui)               <th><:album:heading_logo:></th> ]
    73                         [(#GET{colonne_id}|oui)                 <th class='id'><:album:heading_id:></th> ]
    74                         [(#GET{colonne_titre}|oui)              <th><:album:heading_titre:></th> ]
    75                         [(#GET{colonne_infos}|oui)              <th><:album:heading_infos:></th> ]
    76                         [(#GET{colonne_descriptif}|oui)         <th><:album:heading_descriptif:></th> ]
    77                         [(#GET{colonne_contenu}|oui)            <th><:album:heading_contenu:></th> ]
    78                         [(#GET{colonne_liaison}|oui)            <th><:album:heading_liaison:></th> ]
    79                         [(#ENV{actions}|oui)                    <th></th> ]
     70                        [(#VAL{statut}|in_array{#GET{colonnes}}|oui)            <th></th> ]
     71                        [(#VAL{logo}|in_array{#GET{colonnes}}|oui)              <th><:album:heading_logo:></th> ]
     72                        [(#VAL{id}|in_array{#GET{colonnes}}|oui)                <th class='id'><:album:heading_id:></th> ]
     73                        [(#VAL{titre}|in_array{#GET{colonnes}}|oui)             <th><:album:heading_titre:></th> ]
     74                        [(#VAL{infos}|in_array{#GET{colonnes}}|oui)             <th><:album:heading_infos:></th> ]
     75                        [(#VAL{descriptif}|in_array{#GET{colonnes}}|oui)        <th><:album:heading_descriptif:></th> ]
     76                        [(#VAL{contenu}|in_array{#GET{colonnes}}|oui)           <th><:album:heading_contenu:></th> ]
     77                        [(#VAL{liaison}|in_array{#GET{colonnes}}|oui)           <th><:album:heading_liaison:></th> ]
     78                        [(#ENV{bouton}|oui)                                     <th></th> ]
    8079                </thead>
    8180                ]
     
    8685
    8786                        [(#REM) STATUT ]
    88                         [(#GET{colonne_statut}|oui)
     87                        [(#VAL{statut}|in_array{#GET{colonnes}}|oui)
    8988                        <td class='statut'>[(#STATUT|puce_statut{album,#ID_ALBUM})]</td>
    9089                        ]
    9190
    9291                        [(#REM) LOGO ]
    93                         [(#GET{colonne_logo}|oui)
     92                        [(#VAL{logo}|in_array{#GET{colonnes}}|oui)
    9493                        <td class='logo'>
    9594                        [(#INCLURE{fond=prive/squelettes/inclure/inc-albums_logo, id_album, taille=#ENV{logo,48}})]
     
    9897
    9998                        [(#REM) ID ]
    100                         [(#GET{colonne_id}|oui)
     99                        [(#VAL{id}|in_array{#GET{colonnes}}|oui)
    101100                        <td class='id'>
    102101                        [(#ID_ALBUM)]
     
    105104
    106105                        [(#REM) TITRE ]
    107                         [(#GET{colonne_titre}|oui)
     106                        [(#VAL{titre}|in_array{#GET{colonnes}}|oui)
    108107                        <td class='titre principale'>
    109108                                [<a href="[(#ID_ALBUM|generer_url_entite{album})]">(#TITRE)</a>]
     
    111110                        ]
    112111
    113                         [(#REM) INFOS (vue compacte : titre, statut, numéro  et nb documents) ]
    114                         [(#GET{colonne_infos}|oui)
     112                        [(#REM) INFOS vue compacte : titre, statut, numéro  et nb documents ]
     113                        [(#VAL{infos}|in_array{#GET{colonnes}}|oui)
    115114                        <td class='infos'>
    116115                        <ul>
     
    126125                                </li>]
    127126                                [<li>
    128                                         (#GET{colonne_contenu}|non)
     127                                        (#VAL{contenu}|in_array{#GET{colonnes}}|non)
    129128                                        [(#INCLURE{fond=prive/squelettes/inclure/inc-albums_nb_documents, id_album})]
    130129                                </li>]
     
    134133
    135134                        [(#REM) DESCRIPTIF ]
    136                         [(#GET{colonne_descriptif}|oui)
     135                        [(#VAL{descriptif}|in_array{#GET{colonnes}}|oui)
    137136                        <td class='descriptif'>
    138137                                [(#DESCRIPTIF|couper{100})]
     
    141140
    142141                        [(#REM) CONTENU détaillé ]
    143                         [(#GET{colonne_contenu}|oui)
     142                        [(#VAL{contenu}|in_array{#GET{colonnes}}|oui)
    144143                        <td class='contenu'>
    145144                        [(#ID_ALBUM|album_contenu{liste_detaillee})]
     
    148147
    149148                        [(#REM) LIAISON ]
    150                         [(#GET{colonne_liaison}|oui)
     149                        [(#VAL{liaison}|in_array{#GET{colonnes}}|oui)
    151150                        <td class='liaison'>
    152151                        [(#ID_ALBUM|album_liaison{liste_compacte_icone})]
     
    154153                        ]
    155154
    156                         [(#REM) ACTIONS : associer, choisir ]
    157                         [(#ENV{actions}|oui)
     155                        [(#REM) BOUTONS : associer, choisir ]
     156                        [(#ENV{bouton}|oui)
    158157                        <td class='action'>
    159                         [(#GET{action_associer}|oui)
     158                        [(#ENV{bouton}|=={associer}|oui)
    160159                                [(#INCLURE{fond=prive/squelettes/inclure/inc-albums_boutons_actions,
    161160                                        bouton=associer,
    162                                         id_album=#ID_ALBUM}{env})]
     161                                        id_album=#ID_ALBUM}{env}
     162                                )]
    163163                        ]
    164                         [(#GET{action_choisir}|oui)
    165                         <input type="radio" name="#ENV{nom_radio}" id="radio_album#ID_ALBUM" class="radio"[ (#ENV{valeur_radio}|=={#ID_ALBUM}|oui)checked="checked"] value="#ID_ALBUM" />
     164                        [(#ENV{bouton}|=={choisir}|oui)
     165                        [<input type="submit" class="choisir" onclick="(#ENV{selectfunc,''})([(#ID_ALBUM)]);return false;" value="<:bouton_choisir|attribut_html:>" />]
    166166                        ]
    167167                        </td>
     
    191191                ]
    192192        ]
    193         [(#GRAND_TOTAL|>{#ENV{nb}}|ou{#ENV{recherche}}|et{#GET{afficher_recherche}}|oui)
     193        [(#GRAND_TOTAL|>{#ENV{nb}}|ou{#ENV{recherche}}|et{#VAL{recherche}|in_array{#GET{header}}}|oui)
    194194                #FORMULAIRE_RECHERCHE_ECRIRE{#SELF,ajax}
    195195        ]
  • _plugins_/albums/trunk/prive/squelettes/contenu/albums.html

    r68823 r68832  
    77
    88<div class='albums'>
    9 [(#INCLURE{fond=prive/squelettes/inclure/albums_navigation_listes,
    10         liste=albumotheque,
    11         navigation=#LISTE{parents, divers, contenu},
    12         header=#LISTE{tri, thead, recherche},
    13         colonnes=#LISTE{statut, logo, id, titre, descriptif, contenu, liaison},
    14         nb=10}
    15         {env}{ajax}
     9[(#INCLURE{fond=prive/squelettes/inclure/albums_navigation,
     10        nb=10,
     11        env}{ajax}
    1612)]
    1713</div>
  • _plugins_/albums/trunk/prive/squelettes/contenu/albums_afficher_complement_objet.html

    r68778 r68832  
    103103                #GET{self}|parametre_url{albums,''}|ancre_url{albums},
    104104                #OBJET_LIEN|concat{'|'}|concat{#ID_OBJET_LIEN},
    105                 #ENV{lier_trad}
    106         })]
     105                #ENV{lier_trad}}
     106        )]
    107107        </div>
    108108]
     
    112112[(#ENV{albums}|=={associer}|et{#GET{albums_libres}}|oui)
    113113        <div id='associer'>
    114         [(#INCLURE{fond=prive/squelettes/inclure/albums_navigation_listes,
     114        [(#INCLURE{fond=prive/squelettes/inclure/albums_navigation,
    115115                liste=associer,
    116116                exclus=#GET{exclus},
    117                 statut='prepa|publie',
     117                statut=publie,
     118                navigation=contenus,
    118119                colonnes=#LISTE{logo,infos,descriptif,contenu},
    119                 actions=#LISTE{associer},
     120                bouton=associer,
    120121                nb=#GET{nombre_pagination},
    121                 objet=''}
    122                 {env})]
     122                objet='',
     123                env}
     124        )]
    123125        </div>
    124126]
  • _plugins_/albums/trunk/prive/squelettes/inclure/albums_modele_infos_prive.html

    r68781 r68832  
    66]
    77<BOUCLE_album(ALBUMS){id_album}{statut==.*}>
    8 
    9 [(#REM) Notice affichée dans l'espace privé ]
    10 <BOUCLE_vide(DOCUMENTS){id_album}{tout}> </BOUCLE_vide> #SET{notice,vide} <//B_vide>
     8#SET{notice, #ID_ALBUM|album_contenu|?{'','vide'}}
    119[(#STATUT|!={publie}|oui) #SET{notice, #GET{notice}|concat{'statut'}} ]
    1210[(#GET{notice}|oui)
  • _plugins_/albums/trunk/saisies/selection_album.html

    r68823 r68832  
    11[(#REM)
    22
    3   Sélection d'un album (sélecteur de type radio)
     3  Saisie pour choisir un album
    44
    5   Parametres :
     5  Parametres supplementaire :
     6  - defaut : valeur par defaut du parametre
     7  - class : classe(s) css ajoutes a l'input
     8  - size : taille du champ
     9  - maxlength : nombre de caracteres maximum
     10  - disable : champ insaisissable ? 'oui' (defaut : '')
    611  - defaut : valeur par defaut si pas présente dans l'environnement
    712  - valeur_forcee : valeur utilisee meme si une valeur est dans l'environnement
    8   - contenu : medias contenus dans l'album
    9   - orphelins : 0 ou 1
    10   - statut : prepa, publie, poubelle
    11   - pagination : nombre pour pagination
    12   - afficher : #LISTE des colonnes a afficher : statut, logo, id, titre, infos, descriptif, contenu
     13  - objet_parent : pour restreindre aux albums liés à un type d'objet
     14  - contenu : critère {contenu} (defaut : 'oui')
    1315 
    14   Exemple d'appel :
    15         [(#SAISIE{selecteur_album, id_modele,
    16                 contenu=image,
    17                 orphelins=1,
    18                 pagination=5})]
     16  Note : si on appelle le sélecteur depuis une modalbox, il faut alors lui passer _modalbox_retour qui correspond a l'url de retour
     17  apres sélection de l'album. L'id de l'album sera alors passé par URL.
    1918]
    2019
    21 #SET{valeur, #ENV{valeur_forcee,#ENV{valeur,#ENV{defaut}}}}
     20#SET{mod_fn, #ENV{_modalbox_retour}|?{'2','1'}}
    2221
    23 <div class='albums'>
    24 [(#INCLURE{fond=prive/squelettes/inclure/albums_navigation_listes,
    25         liste=selecteur,
    26         colonnes=#ENV{afficher,#LISTE{id, titre}},
    27         actions=#LISTE{choisir},
    28         statut=#ENV{statut,publie},
    29         contenu=#ENV{contenu,oui},
    30         orphelins,
    31         nb=#ENV{pagination,5},
    32         nom_radio=#ENV{nom},
    33         valeur_radio=#GET{valeur}}
    34         {ajax}
    35 )]
    36 </div>
     22[(#REM) champ input ]
     23<input type="text" name="#ENV{nom}" class="text[ (#ENV{class})]" id="champ_[(#ENV{nom}|saisie_nom2classe)]"[ value="(#ENV{valeur_forcee,#ENV{valeur,#ENV{defaut}}})"][ size="(#ENV{size,4})"][ maxlength="(#ENV{maxlength,5})"][ disabled="(#ENV{disable})"][ readonly="(#ENV{readonly})"][(#ENV{obligatoire}|et{#HTML5}|oui) required="required" ]style="width:auto; display:inline-block;" />
     24
     25[(#REM) bouton pour parcourir les albums ]
     26<input class='submit' type="submit" name="parcourir" value="<:album:label_modele_parcourir_albums:>" style="display:inline-block;"
     27        onclick="jQuery.modalboxload(
     28                '[(#URL_ECRIRE{popin-choisir_album,var_zajax=contenu&selectfunc=mediaselect#GET{mod_fn}_#ENV{nom}&bouton=choisir&navigation=divers-contenus&colonnes=logo-infos-contenu[&objet_parent=(#ENV{objet_parent})][&contenu=(#ENV{contenu,oui})]})]',
     29                {autoResize: true}
     30        );"
     31/>
     32
     33[(#ENV{_modalbox_retour}|non)
     34<script type="text/javascript">
     35        function mediaselect1_#ENV{nom}(id){
     36                jQuery.modalboxclose();
     37                jQuery("#champ_#ENV{nom}").attr('value',id).focus();
     38        };
     39</script>
     40]
     41
     42[(#ENV{_modalbox_retour}|oui)
     43<script type="text/javascript">
     44        function mediaselect2_#ENV{nom}(id){
     45                jQuery.modalboxload('#ENV**{_modalbox_retour}&#ENV{nom}='+id);
     46        };
     47</script>
     48]
Note: See TracChangeset for help on using the changeset viewer.