Changeset 104368 in spip-zone


Ignore:
Timestamp:
May 8, 2017, 7:32:14 PM (2 years ago)
Author:
eric@…
Message:

Amélioration de la page noizetier_page_edit

Location:
_plugins_/noizetier/trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/noizetier/trunk/formulaires/editer_page.html

    r104217 r104368  
    88                #ACTION_FORMULAIRE{#ENV{action}}
    99                <input type="hidden" name="page" value="#ENV{page}" />
    10                 <input type="hidden" name="new" value="#ENV{new}" />
    11                 <input type="hidden" name="dupliquer" value="#ENV{dupliquer}" />
    1210                <ul class="editer-groupe">
    13                         #SET{name, type_page}
    14                         #SET{obli, obligatoire}
    15                         #SET{erreurs, #ENV**{erreurs}|table_valeur{#GET{name}}}
    16                         <BOUCLE_type_editable(CONDITION){si #ENV{edition}|=={creer}}>
    17                         [(#REM) Type de composition éditable : l'édition est une création, il faut choisir le type ]
    18                         <li class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    19                                 <label for="#GET{name}"><:noizetier:formulaire_type:></label>
    20                                 <div class="explication"><:noizetier:formulaire_type_explication:></div>
    21                                 [<span class="erreur_message">(#GET{erreurs})</span>]
    22                                 <select class="select" name="#GET{name}" id="#GET{name}">
    23                                 <BOUCLE_types(DATA){source table, #ENV{_pages_composables}}>
    24                                         [<option value="#CLE">(#VALEUR)</option>]
    25                                 </BOUCLE_types>
    26                                 </select>
    27                         </li>
    28                         </BOUCLE_type_editable>
    29                         [(#REM) Type pas éditable : l'édition est une modification ou une duplication, le type est donc déjà défini et donc non éditable ]
    30                         <li class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    31                                 <label for="#GET{name}"><:noizetier:formulaire_type:></label>
    32                                 [<span class='erreur_message'>(#GET{erreurs})</span>]
    33                                 <div class="explication">
    34                                         [(#NOIZETIER_PAGE_INFOS{#ENV{type_page}, nom})][ \[(#ENV{type_page})\]]
    35                                 </div>
    36                                 <input type="hidden" name="#GET{name}" id="#GET{name}" value="#ENV{#GET{name}}" />
    37                         </li>
    38                         <//B_type_editable>
     11                        [(#REM) Le type de page n'est pas éditable car la composition est toujours basée sur une page précise ]
     12                        [(#SAISIE{input, type_page,
     13                                                label=<:noizetier:formulaire_type:>,
     14                                                explication=<:noizetier:formulaire_type_explication:>,
     15                                                disable=oui,
     16                                                obligatoire=oui,
     17                        })]
    3918
    40                         #SET{name, composition}
    41                         #SET{obli, obligatoire}
    42                         #SET{erreurs, #ENV**{erreurs}|table_valeur{#GET{name}}}
    43                         <BOUCLE_composition_editable(CONDITION){si #ENV{edition}|!={modifier}}>
    44                         [(#REM) Composition éditable ]
    45                         <li class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    46                                 <label for="#GET{name}"><:noizetier:formulaire_composition:></label>
    47                                 <div class="explication">
    48                                         <:noizetier:formulaire_composition_explication:>[
    49                                         (#ENV{edition}|=={dupliquer}|et{#ENV{page}|noizetier_page_composition}|oui)<br><:noizetier:explication_dupliquer_composition_reference{composition=#ENV{#GET{name}_ref}}:>
    50                                 ]</div>
    51                                 [<span class='erreur_message'>(#GET{erreurs})</span>]
    52                                 <input type="text" class="text" name="#GET{name}" id="#GET{name}" value="#ENV{#GET{name}}"[ (#ENV{edition}|=={dupliquer}|oui)placeholder="#ENV{#GET{name}_ref}"]/>
    53                         </li>
    54                         </BOUCLE_composition_editable>
    55                         [(#REM) Composition pas éditable ]
    56                         <li class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    57                                 <label for="#GET{name}"><:noizetier:formulaire_composition:></label>
    58                                 [<span class='erreur_message'>(#GET{erreurs})</span>]
    59                                 <div class="explication">#ENV{#GET{name}}</div>
    60                                 <input type="hidden" name="#GET{name}" id="#GET{name}" value="#ENV{#GET{name}}" />
    61                         </li>
    62                         <//B_composition_editable>
     19                        [(#REM) L'identifiant de composition n'est éditable que lors d'une création ou d'une duplication de composition ]
     20                        #SET{disable, #ENV{edition}|=={modifier}|?{oui, ''}}
     21                        [(#SAISIE{input, composition,
     22                                                label=<:noizetier:formulaire_composition:>,
     23                                                explication=<:noizetier:formulaire_composition_explication:>,
     24                                                disable=#GET{disable},
     25                                                obligatoire=oui,
     26                        })]
    6327
    6428                        #SET{name, nom}
  • _plugins_/noizetier/trunk/formulaires/editer_page.php

    r104217 r104368  
    2828 *                       URL de redirection
    2929 */
    30 function formulaires_editer_page_charger_dist($page, $edition, $description_page, $retour = '') {
     30function formulaires_editer_page_charger_dist($page, $edition, $description_page, $redirect = '') {
    3131
    3232        // Initialisation des données communes à charger dans le formulaire
     
    6464
    6565        } elseif ($edition == 'creer') {
    66                 // On crée une nouvelle page from scratch.
    67                 // Toute la configuration de la page est donc vide
    68                 // Il faut constituer la liste des pages dont la composition va s'inspirer afin de proposer ce choix à
    69                 // l'utilisateur.
    70                 $valeurs['_pages_composables'] = array();
    71                 if (defined('_NOIZETIER_COMPOSITIONS_TYPE_PAGE') and _NOIZETIER_COMPOSITIONS_TYPE_PAGE) {
    72                         $valeurs['_pages_composables']['page'] = _T('noizetier:page_autonome');
    73                 }
    74                 // Si on voulait se baser sur la config de compositions, on utiliserait compositions_objets_actives().
    75                 // En fait, à la création d'une composition du noizetier, on modifie la config de compositions.
    76                 // On se base donc sur la liste des objets sur lesquels compositions est activable
    77                 // et qui dispose déjà d'une page dans le noizetier.
    78                 include_spip('base/objets');
    79                 $tables_objet = lister_tables_objets_sql();
    80                 if ($tables_objet) {
    81                         foreach ($tables_objet as $_table) {
    82                                 // On ne sélectionne que les tables ayant une page publique configurée et qui appartient
    83                                 // à la liste des pages accessibles par le noiZetier.
    84                                 if (!empty($_table['page']) and ($configuration = noizetier_page_informer($_table['page']))) {
    85                                         $valeurs['_pages_composables'][$_table['page']] = $configuration['nom'];
    86                                 }
    87                         }
    88                 }
    89                 // Hack pour les groupes de mots-clés (car ils n'ont pas d'entrée page dans lister_tables_objets_sql()).
    90                 if (isset($tables_objet['groupe_mots'])) {
    91                         $valeurs['_pages_composables']['groupe_mots'] = 'groupe_mots';
    92                 }
     66                // On crée une nouvelle composition à partir d'une page source.
     67                // L'argument $description_page contient donc la configuration complète de la page source.
     68                $valeurs['type_page'] = $description_page['type'];
     69                $valeurs = array_merge($valeurs, construire_heritages($page, $valeurs['type_page']));
     70
    9371        } else {
    9472                $valeurs['editable'] = false;
     
    11088 *                       URL de redirection
    11189 */
    112 function formulaires_editer_page_verifier_dist($page, $edition, $description_page, $retour = '')
     90function formulaires_editer_page_verifier_dist($page, $edition, $description_page, $redirect = '')
    11391{
    11492        $erreurs = array();
     93
     94        // On vérifie que les champs obligatoires ont été bien remplis
    11595        foreach (array('type_page', 'composition', 'nom') as $champ) {
    11696                if (!_request($champ)) {
     
    11898                }
    11999        }
    120         // On vérifie, dans le cas d'une nouvelle composition que $composition n'est pas déjà pris
    121         // On vérifie aussi que $composition ne contient ni espace, ni tiret
    122         if (_request('new') and _request('composition')) {
     100
     101        // On vérifie, dans le cas d'une nouvelle composition que l'identifiant saisi n'est pas déjà pris
     102        // par une autre composition. La syntaxe de l'identifiant est aussi vérifiée (ni espace, ni tiret).
     103        if ($edition != 'modifier') {
    123104                $type_page = _request('type_page');
    124105                $composition = _request('composition');
    125                 $liste_pages = noizetier_lister_pages();
    126                 if (isset($liste_pages[$type_page.'-'.$composition]) and is_array($liste_pages[$type_page.'-'.$composition])) {
     106                $pages = noizetier_page_repertorier();
     107                if (isset($pages[$type_page.'-'.$composition]) and is_array($pages[$type_page.'-'.$composition])) {
    127108                        $erreurs['composition'] = _T('noizetier:formulaire_identifiant_deja_pris');
    128109                }
    129                 if (preg_match('#^[a-z0-9_]+$#', $composition) == 0) {
     110                if (!preg_match('#^[a-z0-9_]+$#', $composition)) {
    130111                        $erreurs['composition'] = _T('noizetier:formulaire_erreur_format_identifiant');
    131112                }
     
    147128 *                       URL de redirection
    148129 */
    149 function formulaires_editer_page_traiter_dist($page, $edition, $description_page, $retour = '')
    150 {
    151         if (!autoriser('configurer', 'noizetier')) {
    152                 return array('message_erreur' => _T('noizetier:probleme_droits'));
    153         }
    154 
    155         $res = array();
    156         $noizetier_compositions = isset($GLOBALS['meta']['noizetier_compositions']) && unserialize($GLOBALS['meta']['noizetier_compositions']) ? unserialize($GLOBALS['meta']['noizetier_compositions']) : array();
     130function formulaires_editer_page_traiter_dist($page, $edition, $description_page, $redirect = '') {
     131
     132        $retour = array();
     133
     134        // Identifiant de la composition résultante.
     135        // -- on le recalcule systématiquement même si pour une modification il correspond à $page
    157136        $type_page = _request('type_page');
    158137        $composition = _request('composition');
    159         $peupler = ($edition == 'dupliquer') ? true : (($edition == 'creer' and _request('peupler')) ? true : false);
    160 
    161         // Au cas où on n'a pas encore configuré de compositions
    162         if (!is_array($noizetier_compositions)) {
    163                 $noizetier_compositions = array();
    164         }
    165 
    166         $noizetier_compositions["${type_page}-${composition}"] = array(
     138        $identifiant = "${type_page}-${composition}";
     139
     140        // Mise à jour ou création des données de base de la composition virtuelle résultante
     141        $compositions_virtuelles = lire_config('noizetier_compositions', array());
     142        $compositions_virtuelles[$identifiant] = array(
    167143                'nom' => _request('nom'),
    168144                'description' => _request('description'),
     
    170146        );
    171147
     148        // Traitement des blocs configurables
     149        // TODO: ajouter les blocs
     150        $compositions_virtuelles[$identifiant]['blocs'] = noizetier_bloc_defaut();
     151
     152        // Traitement des branches éventuelles pour la composition virtuelle résultante
    172153        $branche = array();
    173         foreach (heritiers($type_page) as $t => $i) {
    174                 if ($h = _request('heritage-'.$t)) {
    175                         $branche[$t] = $h;
    176                 }
    177         }
    178         if (count($branche) > 0) {
    179                 $noizetier_compositions["${type_page}-${composition}"]['branche'] = $branche;
    180         }
    181 
    182         ecrire_meta('noizetier_compositions', serialize($noizetier_compositions));
    183         $retours['message_ok'] = _T('noizetier:formulaire_composition_mise_a_jour');
    184 
    185         // On pré-remplit avec les noisettes de la page mère en cas de nouvelle composition,
    186         // ou avec celles de la page de référence en cas de duplication
    187         if (
    188                 $peupler
    189                 and $type_page != 'page'
    190         ) {
    191                 $composition_ref = ($edition == 'creer') ? '' : noizetier_page_composition($page); // si on ne créé pas, c'est qu'on duplique
    192                 include_spip('base/abstract_sql');
    193                 $config_mere = sql_allfetsel(
    194                         'rang, type, composition, bloc, noisette, parametres',
    195                         'spip_noisettes',
    196                         'type='.sql_quote($type_page).' AND composition="'.$composition_ref.'"'
    197                 );
    198                 if (count($config_mere) > 0) {
    199                         foreach ($config_mere as $cle => $noisette) {
    200                                 $config_mere[$cle]['composition'] = $composition;
     154        $heritages = construire_heritages($identifiant, $type_page);
     155        foreach ($heritages['_heritiers'] as $_objet => $_infos) {
     156                if ($heritage = _request("heritage-${_objet}")) {
     157                        $branche[$_objet] = $heritage;
     158                }
     159        }
     160        $compositions_virtuelles[$identifiant]['branche'] = $branche;
     161
     162        // Mise à jour de la composition virtuelle dans la meta
     163        ecrire_config('noizetier_compositions', serialize($compositions_virtuelles));
     164
     165        // Pour une modification, le traitement s'arrête ici.
     166        // Pour une création ou un diplication, il faut traiter le peuplement automatique des noisettes
     167        // de la page source si requis.
     168        // -- on préremplit avec les noisettes de la page source, systématiquement en cas de duplication
     169        //    ou si demandé, en cas de création.
     170        if (in_array($edition, array('creer', 'dupliquer'))) {
     171                $copier_noisettes = ($edition == 'dupliquer') ? true : (($edition == 'creer' and _request('peupler')) ? true : false);
     172                if ($copier_noisettes and $type_page != 'page') {
     173                        $composition_ref = ($edition == 'creer') ? '' : noizetier_page_composition($page); // si on ne créé pas, c'est qu'on duplique
     174                        include_spip('base/abstract_sql');
     175                        $config_mere = sql_allfetsel(
     176                                'rang, type, composition, bloc, noisette, parametres',
     177                                'spip_noisettes',
     178                                'type='.sql_quote($type_page).' AND composition="'.$composition_ref.'"'
     179                        );
     180                        if (count($config_mere) > 0) {
     181                                foreach ($config_mere as $cle => $noisette) {
     182                                        $config_mere[$cle]['composition'] = $composition;
     183                                }
     184                                sql_insertq_multi('spip_noisettes', $config_mere);
    201185                        }
    202                         sql_insertq_multi('spip_noisettes', $config_mere);
    203                 }
    204                 // On vérifie également que les compositions sont actives sur ce type d'objet
    205                 $compositions_actives = compositions_objets_actives();
    206                 if (!in_array($type_page, $compositions_actives)) {
    207                         $compositions_config = unserialize($GLOBALS['meta']['compositions']);
    208                         include_spip('base/objets');
    209                         $compositions_config['objets'][] = table_objet_sql($type_page);
    210                         ecrire_meta('compositions', serialize($compositions_config));
    211                 }
    212         }
    213 
    214         // On invalide le cache en cas de création ou  de dpulication
     186                        // On vérifie également que les compositions sont actives sur ce type d'objet
     187                        $compositions_actives = compositions_objets_actives();
     188                        if (!in_array($type_page, $compositions_actives)) {
     189                                $compositions_config = unserialize($GLOBALS['meta']['compositions']);
     190                                include_spip('base/objets');
     191                                $compositions_config['objets'][] = table_objet_sql($type_page);
     192                                ecrire_meta('compositions', serialize($compositions_config));
     193                        }
     194                }
     195
     196                // On invalide le cache en cas de création ou  de dpulication
     197                include_spip('inc/invalideur');
     198                suivre_invalideur("id='page/$identifiant'");
     199        }
     200
     201        $retour['message_ok'] = _T('noizetier:formulaire_composition_mise_a_jour');
    215202        if (in_array($edition, array('creer', 'dupliquer'))) {
    216                 include_spip('inc/invalideur');
    217                 suivre_invalideur("id='page/$type_page-$composition'");
    218         }
    219 
    220         $res['message_ok'] = _T('info_modification_enregistree');
    221         if (in_array($edition, array('creer', 'dupliquer'))) {
    222                 $res['redirect'] = parametre_url(parametre_url(self(), 'new', ''), 'page', $type_page.'-'.$composition);
    223         } elseif ($retour) {
    224                 if (strncmp($retour, 'javascript:', 11) == 0) {
    225                         $res['message_ok'] .= '<script type="text/javascript">/*<![CDATA[*/'.substr($retour, 11).'/*]]>*/</script>';
    226                         $res['editable'] = true;
     203                $retour['redirect'] = $redirect;
     204        } elseif ($redirect) {
     205                if (strncmp($redirect, 'javascript:', 11) == 0) {
     206                        $retour['message_ok'] .= '<script type="text/javascript">/*<![CDATA[*/'.substr($redirect, 11).'/*]]>*/</script>';
     207                        $retour['editable'] = true;
    227208                } else {
    228                         $res['redirect'] = $retour;
    229                 }
    230         }
    231 
    232         return $res;
     209                        $retour['redirect'] = $redirect;
     210                }
     211        }
     212
     213        return $retour;
    233214}
    234215
  • _plugins_/noizetier/trunk/lang/noizetier_fr.php

    r104334 r104368  
    6464        'formulaire_ajouter_noisette' => 'Ajouter une noisette',
    6565        'formulaire_composition' => 'Identifiant de composition',
    66         'formulaire_composition_explication' => 'Indiquez un mot-clé unique (minuscules, sans espace, sans tiret et sans accent) permettant d’identifier cette composition.<br />Par exemple : <i>macompo</i>.',
     66        'formulaire_creer_composition' => 'Créer une composition',
     67        'formulaire_composition_explication' => 'Mot-clé unique (minuscules, sans espace, sans tiret et sans accent) permettant d’identifier la composition.',
    6768        'formulaire_composition_mise_a_jour' => 'Composition mise à jour',
    6869        'formulaire_configurer_bloc' => 'Configurer le bloc :',
     
    99100        'formulaire_supprimer_page' => 'Supprimer cette composition',
    100101        'formulaire_type' => 'Type de page',
    101         'formulaire_type_explication' => 'Indiquez sur quel objet porte cette composition ou si vous souhaitez créer une page autonome.',
     102        'formulaire_type_explication' => 'Objet ou page autonome dont hérite la composition.',
    102103        'formulaire_type_import' => 'Type d’importation',
    103104        'formulaire_type_import_explication' => 'Vous pouvez fusionner le fichier de configuration avec votre configuration actuelle (les noisettes de chaque page seront ajoutées à vos noisettes déjà définies) ou bien remplacer votre configuration par celle-ci.',
  • _plugins_/noizetier/trunk/noizetier_fonctions.php

    r104217 r104368  
    10581058                                foreach ($fichiers as $squelette => $chemin) {
    10591059                                        $page = basename($squelette, '.html');
    1060                                         $dossier = str_replace($squelette, '', $chemin);
    1061                                         // essayer dirname
     1060                                        $dossier = dirname($chemin);
    10621061                                        // Exclure certaines pages :
    10631062                                        // -- celles du privé situes dans prive/contenu
    10641063                                        // -- page liée au plugin Zpip en v1
    10651064                                        // -- z_apl liée aux plugins Zpip v1 et Zcore
    1066                                         if ((substr($dossier, -14) != 'prive/contenu/')
     1065                                        // -- TODO : les compositions explicites si le plugin Compositions n'est pas activé
     1066                                        if ((substr($dossier, -13) != 'prive/contenu')
    10671067                                        and (($page != 'page') or !defined('_DIR_PLUGIN_Z'))
    10681068                                        and (($page != 'z_apl') or (!defined('_DIR_PLUGIN_Z') and !defined('_DIR_PLUGIN_ZCORE')))) {
     
    12321232                        if (empty($options['compositions'])) {
    12331233                                include_spip('inc/config');
    1234                                 // todo : ne peut-on pas limiter à la page ?
     1234                                // TODO : ne peut-on pas limiter à la page ?
    12351235                                $options['compositions'] = lire_config('noizetier_compositions', array());
    12361236                        }
  • _plugins_/noizetier/trunk/prive/squelettes/contenu/noizetier_objets.html

    r104334 r104368  
    1212                <div>
    1313                        <div class="resume">
    14                                 <a[ href="(#URL_ECRIRE{noizetier_page}|parametre_url{objet, #_objet_types:CLE}|parametre_url{id_objet,#CLE})"] title="<:noizetier:bulle_configurer_objet_noisettes:>">
     14                                <a[ href="(#URL_ECRIRE{noizetier_page}
     15                                                        |parametre_url{objet, #_objet_types:CLE}
     16                                                        |parametre_url{id_objet,#CLE})"]
     17                                        title="<:noizetier:bulle_configurer_objet_noisettes:>">
    1518                                        [(#VALEUR{titre}|sinon{#_types:CLE&nbsp;-&nbsp;#CLE})]
    1619                                </a>
  • _plugins_/noizetier/trunk/prive/squelettes/contenu/noizetier_page.html

    r104334 r104368  
    77
    88[(#BOITE_OUVRIR{
    9         [(#GET{informations/est_virtuelle}|oui)
     9        [(#ENV{page}|et{#AUTORISER{modifiercomposition, noizetier, '', '', #ARRAY{page, #ENV{page}}}}|oui)
    1010                [(#URL_ECRIRE{noizetier_page_edit}
    1111                        |parametre_url{edition, modifier}
  • _plugins_/noizetier/trunk/prive/squelettes/contenu/noizetier_page_edit.html

    r103269 r104368  
    1 [(#REM) On teste l'autorisation en fonctio ndu type d'édition ]
    2 [(#ENV{edition}|=={creer}|et{#AUTORISER{creercomposition, noizetier}}
    3         |ou{#ENV{edition}|=={modifier}|et{#AUTORISER{modifiercomposition, noizetier, '', '', #ARRAY{page, #ENV{page}}}}}
    4         |ou{#ENV{edition}|=={dupliquer}|et{#AUTORISER{dupliquercomposition, noizetier, '', '', #ARRAY{page, #ENV{page}}}}}
     1[(#REM) On teste l'autorisation en fonction du type d'édition ]
     2[(#ENV{edition}|=={modifier}|et{#AUTORISER{modifiercomposition, noizetier, '', '', #ARRAY{page, #ENV{page}}}}
     3        |ou{#ENV{edition}|=={creer}|et{#AUTORISER{creercomposition, noizetier, '', '', #ARRAY{page, #ENV{source}}}}}
     4        |ou{#ENV{edition}|=={dupliquer}|et{#AUTORISER{dupliquercomposition, noizetier, '', '', #ARRAY{page, #ENV{source}}}}}
    55        |sinon_interdire_acces)]
    66
    7 #SET{description_page, #ARRAY}
    8 [(#ENV{edition}|in_array{#LISTE{modifier, dupliquer}}|oui)
    9         #SET{description_page, #NOIZETIER_PAGE_INFOS{#ENV{page}}}
    10 ]
     7#SET{description_page, #NOIZETIER_PAGE_INFOS{#ENV{page}|?{#ENV{page}, #ENV{source}}}}
    118[(#ENV{edition}|=={modifier}|oui)
    129        #SET{redirect, #URL_ECRIRE{noizetier_page}|parametre_url{page, #ENV{page}}}
     10        #SET{retour, #URL_ECRIRE{noizetier_page}|parametre_url{page, #ENV{page}}}
    1311        #SET{icone_retour, #GET{description_page/icon}}
    1412]
    15 [(#ENV{edition}|in_array{#LISTE{creer,dupliquer}}|oui)
    16         #SET{redirect,#URL_ECRIRE{noizetier_pages}}
    17         #SET{icone_retour,noizetier-24.png}
     13[(#ENV{edition}|=={modifier}|non)
     14        #SET{redirect, ''}
     15        #SET{retour, #URL_ECRIRE{noizetier_pages}|parametre_url{est_page_objet, #GET{description_page/est_page_objet}}}
     16        #SET{icone_retour, noizetier-24.png}
    1817]
    19 #SET{redirect,#ENV{redirect}|sinon{#GET{redirect}}}
     18#SET{redirect, #ENV{redirect}|sinon{#GET{redirect}}}
    2019
    2120<div class="cadre-formulaire-editer">
    2221        <div class="entete-formulaire">
    23                 [(#GET{redirect}|icone_verticale{<:noizetier:retour:>, #GET{icone_retour}, '', left retour[(#ENV{retourajax,''}|oui)ajax preload]})]
     22                [(#GET{retour}|icone_verticale{<:noizetier:retour:>, #GET{icone_retour}, '', left retour[(#ENV{retourajax,''}|oui)ajax preload]})]
    2423                [(#ENV{edition}|=={modifier}|oui)<:noizetier:formulaire_modifier_page:>]
     24                [(#ENV{edition}|=={creer}|oui)<:noizetier:formulaire_creer_composition:>]
    2525                [(#ENV{edition}|=={dupliquer}|oui)<:noizetier:formulaire_dupliquer_page_entete:>]
    2626                <h1>
    27                         [(#ENV{edition}|=={creer}|oui)<:noizetier:editer_nouvelle_page:>]
    2827                        [(#ENV{edition}|=={modifier}|oui)[(#GET{description_page/nom})]]
     28                        [(#ENV{edition}|=={creer}|oui)<:info_sans_titre:>]
    2929                        [(#ENV{edition}|=={dupliquer}|oui)<:noizetier:formulaire_dupliquer_page_titre{page=#GET{description_page/nom}}:>]
    3030                </h1>
     
    3232
    3333        [(#ENV{retourajax,''}|oui)
    34                 #SET{redirect,'javascript:if (window.jQuery) jQuery(".entete-formulaire .retour a").followLink();'}
     34                #SET{retour,'javascript:if (window.jQuery) jQuery(".entete-formulaire .retour a").followLink();'}
    3535        ]
    3636        <div class="ajax">
  • _plugins_/noizetier/trunk/prive/squelettes/contenu/noizetier_pages.html

    r104349 r104368  
    2222                        <div class="edition">
    2323                                [(#AUTORISER{creercomposition, noizetier, '', '', #ARRAY{page, #CLE}})
    24                                         [<a href="(#URL_ECRIRE{noizetier_page_edit}|parametre_url{edition, creer}|parametre_url{source, #VALEUR{type}})" title="<:noizetier:bulle_creer_composition{page=#VALEUR{type}}:>">
     24                                        [<a href="(#URL_ECRIRE{noizetier_page_edit}
     25                                                                |parametre_url{edition, creer}
     26                                                                |parametre_url{source, #VALEUR{type}})"
     27                                                title="<:noizetier:bulle_creer_composition{page=#VALEUR{type}}:>">
    2528                                                [<img height="24" width="24" src="(#CHEMIN_IMAGE{composition-add-24.png})" alt="" />]
    2629                                        </a>]
    2730                                ]
    2831                                [(#AUTORISER{modifiercomposition, noizetier, '', '', #ARRAY{page, #CLE}})
    29                                         [<a href="(#URL_ECRIRE{noizetier_page_edit}|parametre_url{edition, modifier}|parametre_url{page, #CLE})" title="<:noizetier:bulle_modifier_composition:>">
     32                                        [<a href="(#URL_ECRIRE{noizetier_page_edit}
     33                                                                |parametre_url{edition, modifier}
     34                                                                |parametre_url{page, #CLE})"
     35                                                title="<:noizetier:bulle_modifier_composition:>">
    3036                                                [<img height="24" width="24" src="(#CHEMIN_IMAGE{edit-24.png})" alt="" />]
    3137                                        </a>]
    3238                                ]
    3339                                [(#AUTORISER{dupliquercomposition, noizetier, '', '', #ARRAY{page, #CLE}})
    34                                         [<a href="(#URL_ECRIRE{noizetier_page_edit}|parametre_url{edition, dupliquer}|parametre_url{source, #CLE})" title="<:noizetier:bulle_dupliquer_composition{page=#CLE}:>">
     40                                        [<a href="(#URL_ECRIRE{noizetier_page_edit}
     41                                                                |parametre_url{edition, dupliquer}
     42                                                                |parametre_url{source, #CLE})"
     43                                                title="<:noizetier:bulle_dupliquer_composition{page=#CLE}:>">
    3544                                                [<img height="24" width="24" src="(#CHEMIN_IMAGE{composition-copy-24.png})" alt="" />]
    3645                                        </a>]
  • _plugins_/noizetier/trunk/prive/squelettes/hierarchie/noizetier_page_edit.html

    r93114 r104368  
    1 #SET{action,#ENV{page}|?{#ENV{new}|?{'dupliquer','modifier'},#ENV{new}|?{'creer',''}}}
    2 #SET{titre_page,#ENV{page}|?{#NOIZETIER_LISTE_PAGES{#ENV{page}}|table_valeur{nom}}}
    3 <a href="#URL_ECRIRE{noizetier_pages}"><:noizetier:liste_pages:></a>
    4 &gt; <strong class="on">[
    5         (#GET{action}|=={creer}|oui)<:noizetier:editer_nouvelle_page:>][
    6         (#GET{action}|=={modifier}|oui)[(#GET{titre_page})]][
    7         (#GET{action}|=={dupliquer}|oui)<:noizetier:formulaire_dupliquer_page_titre{page=#GET{titre_page}}:>]</strong>
     1[(#ENV{exec}|=={noizetier_page_edit}|oui)
     2        #SET{description_page, #NOIZETIER_PAGE_INFOS{#ENV{page}|?{#ENV{page}, #ENV{source}}}}
     3        <a href="[(#URL_ECRIRE{noizetier_pages}|parametre_url{est_page_objet, #GET{description_page/est_page_objet}})]">
     4                [(#VAL{noizetier:liste_pages_objet_}|concat{#GET{description_page/est_page_objet}}|_T)]
     5        </a>
     6        &gt; <strong class="on"> [
     7                (#ENV{edition}|=={creer}|oui)<:info_sans_titre:>][
     8                (#ENV{edition}|=={modifier}|oui)[(#GET{description_page/nom})]][
     9                (#ENV{edition}|=={dupliquer}|oui)<:noizetier:formulaire_dupliquer_page_titre{page=#GET{description_page/nom}}:>]</strong>
     10]
Note: See TracChangeset for help on using the changeset viewer.