Changeset 50262 in spip-zone


Ignore:
Timestamp:
Aug 5, 2011, 8:11:38 AM (10 years ago)
Author:
marcimat@…
Message:

Pouvoir mettre des coordonnées ailleurs que sur les auteurs. (auteurs par défaut toujours).

Location:
_plugins_/coordonnees
Files:
3 added
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/coordonnees/base/coordonnees_upgrade.php

    r46556 r50262  
    2222                include_spip('base/create');
    2323                creer_base();
     24                // mettre les auteurs par defaut comme objet «coordonnable»
     25                ecrire_meta('coordonnees', serialize(array('objets'=>array('auteur'))));
    2426                ecrire_meta($nom_meta_base_version, $current_version=$version_cible);
    2527        }
     
    109111        }
    110112
     113        if (version_compare($current_version, "1.5", "<")) {
     114                // mettre les auteurs par defaut comme objet «coordonnable»
     115                ecrire_meta('coordonnees', serialize(array('objets'=>array('auteur'))));
     116                ecrire_meta($nom_meta_base_version, $current_version="1.5");
     117        }
     118
    111119}
    112120
     
    120128        sql_drop_table("spip_emails_liens");
    121129
     130        effacer_meta('coordonnees');
    122131        effacer_meta($nom_meta_base_version);
    123132}
  • _plugins_/coordonnees/coordonnees_pipelines.php

    r47863 r50262  
    66**/
    77
     8/**
     9 * Informations sur les objets où peut s'appliquer les coordonnees
     10 *
     11 * @param String $quoi info que l'on veut recuperer (sinon tout le tableau)
     12 * @return Array Liste d'objet et quelques définitions (titre, exec)
     13**/
     14function liste_objets_coordonnees($quoi = '') {
     15        $liste = array(
     16                'auteur'       => array('titre'=>_T('coordonnees:auteurs'),   'exec'=>'auteur_infos'),
     17                'article'      => array('titre'=>_T('coordonnees:articles'),  'exec'=>'articles'),
     18                'rubrique'     => array('titre'=>_T('coordonnees:rubriques'), 'exec'=>'naviguer'),
     19                'contact'      => array('titre'=>_T('contacts:contacts'),     'exec'=>'contact'),
     20                'organisation' => array('titre'=>_T('contacts:organisations'),'exec'=>'organisation'),
     21        );
     22       
     23        if (!$quoi) {
     24                return $liste;
     25        }
     26
     27        $listeq = array();
     28        foreach ($liste as $c=>$v) {
     29                $listeq[$c] = $v[$quoi];
     30        }
     31        return $listeq;
     32}
     33
     34
    835
    936/**
     
    1239**/
    1340function coordonnees_affiche_milieu($flux) {
     41        // cas SPIP 3 ?
     42        if (function_exists('trouver_objet_exec')) {
     43                $exec = trouver_objet_exec(_request('exec'));
     44                // pas en édition
     45                if ($exec['edition']) {
     46                        return $flux;
     47                }
     48                $_id = $exec['id_table_objet'];
     49               
     50        } else {
     51                $exec = $flux['args']['exec'];
     52        }
     53
     54        $liste = liste_objets_coordonnees('exec');
     55        $liste = array_flip($liste);
     56       
     57        if (isset($liste[$exec]) and $type = $liste[$exec]) {
     58                // c'est un exec que l'on peut afficher
     59                // verifions qu'il est coche dans la conf
     60                $conf = unserialize($GLOBALS['meta']['coordonnees']);
     61                if (in_array($type, $conf['objets'])) {
     62                        // on doit l'afficher
     63                        // seulement si on a un identifiant
     64                        $_id = id_table_objet($type);
     65
     66                        if (isset($flux['args'][$_id]) and $id = $flux['args'][$_id]) {
     67                                include_spip('inc/presentation');
     68                                $contexte = array(
     69                                        'objet' => $type,
     70                                        'id_objet' => $id
     71                                );
     72                                $flux['data'] .= recuperer_fond('prive/boite/coordonnees', $contexte, array('ajax'=>true));             
     73                        }
     74                }
     75        }
     76
     77        return $flux;
     78/*     
    1479        if (
    1580                (($flux['args']['exec'] == 'auteur_infos') AND $id_auteur = $flux['args']['id_auteur'])
    1681                OR (function_exists('trouver_objet_exec')
    1782                                AND $exec = trouver_objet_exec(_request('exec'))
    18                     AND $exec['type']=='auteur'
     83                    AND $exec['type'] == 'auteur'
    1984                                AND !$exec['edition']
    2085                    AND $id_auteur = $flux['args']['id_auteur'])
     
    2792                        $flux['data'] .= recuperer_fond('prive/boite/coordonnees', $contexte, array('ajax'=>true));
    2893        }
    29         return $flux;
     94        return $flux;*/
    3095}
    3196
  • _plugins_/coordonnees/lang/coordonnees_fr.php

    r48404 r50262  
    1313        'ajouter_email' => 'Ajouter un email',
    1414        'ajouter_telephone' => 'Ajouter un t&eacute;l&eacute;phone',
     15        'auteurs' => 'Auteurs',
     16        'articles' => 'Articles',
     17       
    1518
    1619        // C
     20        'configuration_coordonnees' => 'Configuration des coordonnées',
    1721        'confirmer_suppression_adresse' => 'Voulez-vous vraiment supprimer cette adresse ?',
    1822        'confirmer_suppression_email' => 'Voulez-vous vraiment supprimer ce courriel ?',
     
    2731        'explication_type_email' => 'Le type peut être \'perso\' ou \'pro\'.',
    2832        'explication_type_numero' => 'Le type peut être \'perso\' ou \'pro\' ou \'fax\'.',
    29 
     33        'explication_objets_actifs' => "Sur quels objets éditoriaux proposer les coordonnées ?",
     34       
    3035        // F
    3136        'fax' => 'Fax.',
     
    5560        'label_ville' => 'Ville',
    5661        'label_voie' => 'Adresse',
     62        'label_objets_actifs' => 'Objets',
     63       
    5764
    5865        // M
     
    6875        'numeros' => 'Num&eacute;ros',
    6976
     77        // R
     78        'rubriques' => 'Rubriques',
     79       
    7080        // S
    7181        'supprimer_adresse' => 'Supprimer cette adresse',
  • _plugins_/coordonnees/plugin.xml

    r48105 r50262  
    1111       
    1212        <version>1.4.5</version>
    13         <version_base>1.4</version_base>
     13        <version_base>1.5</version_base>
    1414        <etat>test</etat>
    1515       
Note: See TracChangeset for help on using the changeset viewer.