Changeset 25572 in spip-zone


Ignore:
Timestamp:
Dec 28, 2008, 10:23:44 AM (11 years ago)
Author:
marcimat@…
Message:

Un peu de style et pouvoir ordonner les champs extras d'une table lorsqu'ils sont plus de 2 !

Location:
_plugins_/_dev_/champs_extras/extensions/interface
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_dev_/champs_extras/extensions/interface/action/iextras.php

    r25571 r25572  
    1919        // actions possibles
    2020        if (!in_array($arg, array(
     21                'monter_extra',
     22                'descendre_extra',
    2123                'supprimer_extra',
    2224                'desassocier_extra',
     
    2729                        exit;           
    2830        }
     31
     32        // cas de monter
     33        if (($arg == 'monter_extra') and $id_extra = $id_extra_ou_table){
     34                action_monter_champ_extra($id_extra);
     35        }
    2936       
     37        // cas de descente
     38        if (($arg == 'descendre_extra') and $id_extra = $id_extra_ou_table){
     39                action_descendre_champ_extra($id_extra);
     40        }
     41                       
    3042        // cas de suppression
    3143        if (($arg == 'supprimer_extra') and $id_extra = $id_extra_ou_table){
    3244                action_supprimer_champ_extra($id_extra);
    33 
    3445        }
    3546
     
    4253        if (($arg == 'associer_champ') and ($table = $id_extra_ou_table) and $champ){
    4354                $id_extra = action_associer_champ_sql_comme_champ_extra($table, $champ);
     55                /*
    4456                if ($id_extra) {
    4557                        // redirection vers le formulaire d'edition du champ
     
    4961                        redirige_par_entete($redirect);                 
    5062                }
     63                */
    5164        }
    5265
     
    5568                action_supprimer_champ_sql($table, $champ);
    5669        }
     70}
     71
     72// tri les extras par table
     73function iextras_trier_extras_par_table($extras) {
     74        $new = array();
     75       
     76}
     77
     78// remonter d'un cran un champ extra
     79function action_monter_champ_extra($id_extra) {
     80        include_spip('inc/iextras');
     81        $extras = iextras_get_extras_tries_par_table();
     82        foreach($extras as $i=>$extra) {
     83                if ($extra->get_id() == $id_extra) {
     84                        extras_log("Remonter le champ $extra->table/$extra->champ par auteur ".$GLOBALS['auteur_session']['id_auteur']);
     85                       
     86                        if ($i !== 0) {
     87                                unset($extras[$i]);
     88                                array_splice($extras, $i-1, 0, array($extra));
     89                                iextras_set_extras($extras);
     90                        }
     91                        break;
     92                }
     93        }       
     94}
     95
     96// descendre d'un cran un champ extra
     97function action_descendre_champ_extra($id_extra) {
     98        include_spip('inc/iextras');
     99        $extras = iextras_get_extras_tries_par_table();
     100        $total = count($extras);
     101        foreach($extras as $i=>$extra) {
     102                if ($extra->get_id() == $id_extra) {
     103                        extras_log("Descendre le champ $extra->table/$extra->champ par auteur ".$GLOBALS['auteur_session']['id_auteur']);
     104                       
     105                        if ($i+1 !== $total) {
     106                                unset($extras[$i]);
     107                                array_splice($extras, $i+1, 0, array($extra));
     108                                iextras_set_extras($extras);
     109                        }
     110                        break;
     111                }
     112        }       
    57113}
    58114
  • _plugins_/_dev_/champs_extras/extensions/interface/inc/iextras.php

    r25560 r25572  
    3030        return $tables;
    3131}
     32
     33// tableau des extras, tries par table SQL
     34function iextras_get_extras_tries_par_table(){
     35        $extras = iextras_get_extras();
     36        $tables = $extras_tries = array();
     37        foreach($extras as $e) {
     38                if (!isset($tables[$e->table])) {
     39                        $tables[$e->table] = array();
     40                }
     41                $tables[$e->table][] = $e;
     42        }
     43        sort($tables);
     44        foreach ($tables as $table) {
     45                foreach ($table as $extra) {
     46                        $extras_tries[] = $extra;
     47                }
     48        }
     49        return $extras_tries;
     50}
    3251?>
  • _plugins_/_dev_/champs_extras/extensions/interface/lang/iextras_fr.php

    r25564 r25572  
    33        //A
    44        'action_associer' => 'gérer ce champ',
    5         'action_desassocier' => 'ne plus gérer ce champ',
     5        'action_associer_title' => 'Gérer l\'affichage de ce champ par le plugin Champs Extras',
     6        'action_desassocier' => 'désassocier',
     7        'action_desassocier_title' => 'Ne plus gérer l\'affichage de ce champ par le plugin Champs Extras',
     8        'action_descendre' => 'descendre',
     9        'action_descendre_title' => 'Déplacer le champ d\'un rang vers le bas',
    610        'action_modifier' => 'modifier',
     11        'action_modifier_title' => 'Modifier les paramètres du champ extra',
     12        'action_monter' => 'monter',
     13        'action_monter_title' => 'Monter le champ d\'un rang vers le haut',
    714        'action_supprimer' => 'supprimer',
     15        'action_supprimer_title' => 'Supprimer totalement le champ de la base de données',
    816        //C
    917        'caracteres_interdits' => 'Certains caracères utilisés ne conviennent pas pour ce champ.',
  • _plugins_/_dev_/champs_extras/extensions/interface/prive/contenu/champs_extras.html

    r25564 r25572  
    88                        <li>
    99                                [(#VALEUR|table_valeur{champ})]
    10                                 | <a href="[(#URL_ECRIRE{iextras_edit}|parametre_url{id_extra,#VALEUR|table_valeur{id_extra}})]"><:iextras:action_modifier:></a>
    11                                 | <a href="[(#URL_ACTION_AUTEUR{iextras, [desassocier_extra/(#VALEUR|table_valeur{id_extra})], #SELF})]"><:iextras:action_desassocier:></a>
    12                                 | <a href="[(#URL_ACTION_AUTEUR{iextras, [supprimer_extra/(#VALEUR|table_valeur{id_extra})], #SELF})]" class="supprimer"><:iextras:action_supprimer:></a>
     10                                <ul class="actions">
     11                                [(#TOTAL_BOUCLE|>{1}|oui)
     12                                        [(#COMPTEUR_BOUCLE|!={1}|oui)
     13                                                <li><a href="[(#URL_ACTION_AUTEUR{iextras, [monter_extra/(#VALEUR|table_valeur{id_extra})], #SELF})]" title="<:iextras:action_monter_title|attribut_html:>"><:iextras:action_monter:></a></li>
     14                                        ]
     15                                        [(#COMPTEUR_BOUCLE|!=={#TOTAL_BOUCLE}|oui)
     16                                                <li><a href="[(#URL_ACTION_AUTEUR{iextras, [descendre_extra/(#VALEUR|table_valeur{id_extra})], #SELF})]" title="<:iextras:action_descendre_title|attribut_html:>"><:iextras:action_descendre:></a></li>                 
     17                                        ]
     18                                ]
     19                                <li><a href="[(#URL_ECRIRE{iextras_edit}|parametre_url{id_extra,#VALEUR|table_valeur{id_extra}})]" title="<:iextras:action_modifier_title|attribut_html:>"><:iextras:action_modifier:></a></li>
     20                                <li><a href="[(#URL_ACTION_AUTEUR{iextras, [desassocier_extra/(#VALEUR|table_valeur{id_extra})], #SELF})]" title="<:iextras:action_desassocier_title|attribut_html:>"><:iextras:action_desassocier:></a></li>
     21                                <li><a href="[(#URL_ACTION_AUTEUR{iextras, [supprimer_extra/(#VALEUR|table_valeur{id_extra})], #SELF})]" class="supprimer" title="<:iextras:action_supprimer_title|attribut_html:>"><:iextras:action_supprimer:></a></li>
     22                                </ul>
    1323                        </li>
    1424                </BOUCLE_extras>
  • _plugins_/_dev_/champs_extras/extensions/interface/prive/contenu/champs_extras_possibles.html

    r25565 r25572  
    88                        <li>
    99                                #CLE
    10                                 | <a href="[(#URL_ACTION_AUTEUR{iextras, [associer_champ/#_tables:CLE/(#CLE)], #SELF})]"><:iextras:action_associer:></a>
    11                                 | <a href="[(#URL_ACTION_AUTEUR{iextras, [supprimer_champ/#_tables:CLE/(#CLE)], #SELF})]" class="supprimer"><:iextras:action_supprimer:></a>
    12 
     10                                <ul class="actions">
     11                                <li><a href="[(#URL_ACTION_AUTEUR{iextras, [associer_champ/#_tables:CLE/(#CLE)], #SELF})]" title="<:iextras:action_associer_title|attribut_html:>"><:iextras:action_associer:></a></li>
     12                                <li><a href="[(#URL_ACTION_AUTEUR{iextras, [supprimer_champ/#_tables:CLE/(#CLE)], #SELF})]" class="supprimer" title="<:iextras:action_supprimer_title|attribut_html:>"><:iextras:action_supprimer:></a></li>
     13                                </ul>
    1314                        </li>
    1415                </BOUCLE_extras>
Note: See TracChangeset for help on using the changeset viewer.