Changeset 117941 in spip-zone


Ignore:
Timestamp:
Sep 24, 2019, 11:02:25 PM (13 months ago)
Author:
Charles Razack
Message:

Pétouilles : un peu de rangement dans le fichier d'administration + < INCLURE> au lieu de #INCLURE dans le form de config

Location:
_plugins_/statistiques_objets/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/statistiques_objets/trunk

    • Property subgit:lock:a2238c48679de9aa853500e223491ed4dbe95ff9 deleted
    • Property subgit:lock:8920037f65793790f2c3fdc32aca63b885ec1c15 set to 2019-09-25T01:05:14.169
  • _plugins_/statistiques_objets/trunk/formulaires/inc-statistiques_objets.html

    r98256 r117941  
    1 #SET{name,objets}#SET{erreurs,#ENV**{erreurs/#GET{name}}}
     1#SET{name,objets}
     2#SET{erreurs,#ENV**{erreurs/#GET{name}}}
    23#SET{div,#REM|spip_version|floatval|>={3.1}|?{div,li}}
    3 <[(#GET{div}) ]class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
     4<[(#GET{div}) ]class="editer configurer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    45        <span class="explication"><:statistiques:cfg_champ_objets_explication:></span>
    5         <label><:statistiques:cfg_champ_objets_label:></label>[
    6         <span class='erreur_message'>(#GET{erreurs})</span>
    7         ]
    8         #INCLURE{fond=formulaires/inc-choisir-objets,name=#GET{name},selected=#ENV**{#GET{name}}}
     6        <label><:statistiques:cfg_champ_objets_label:></label>
     7        [<span class='erreur_message'>(#GET{erreurs})</span>]
     8        <INCLURE{fond=formulaires/inc-choisir-objets, name=#GET{name}, selected=#ENV**{#GET{name}}}>
    99</[(#GET{div})]>
  • _plugins_/statistiques_objets/trunk/paquet.xml

    r117939 r117941  
    22        prefix="statsobjets"
    33        categorie="statistique"
    4         version="1.1.1"
     4        version="1.1.2"
    55        etat="test"
    66        compatibilite="[3.0.0;3.2.*]"
  • _plugins_/statistiques_objets/trunk/statsobjets_administrations.php

    r98636 r117941  
    3131        $maj = array();
    3232
    33         // Ajout de 2 tables pour prendre en compte les statistiques des objets éditoriaux
    34         // Ajout des colonnes popularite, visites et referers sur tous les objets
     33        // Ajout de 2 tables pour prendre en compte les statistiques des objets éditoriaux.
     34        // Ajout des colonnes popularite, visites et referers sur tous les objets.
    3535        $maj['create'] = array(
    3636                array('maj_tables', array('spip_visites_objets', 'spip_referers_objets')),
    37                 array('statsobjets_check_upgrade'),
     37                array('statsobjets_maj_create'),
    3838        );
    39         // Si les stats sont activées, on prend en compte les articles
    40         if (lire_config('activer_statistiques') == 'oui'){
    41                 $maj['create'][] = array('ecrire_config', 'activer_statistiques_objets', array('spip_articles'));
    42         }
    4339
    4440        include_spip('base/upgrade');
    4541        maj_plugin($nom_meta_base_version, $version_cible, $maj);
    46 
    47 }
    48 
    49 
    50 /**
    51  * Une fonction pour vérifier que les champs nécessaires sont bien sur tous les objets,
    52  * appelée lorsqu'on enregistre la configuration
    53  * (cas d'un nouvel objet ajouté apres l'install du plugin)
    54  *
    55  * @return void
    56  */
    57 function statsobjets_check_upgrade(){
    58 
    59         include_spip('base/objets');
    60 
    61         $tables_objets = array_keys(lister_tables_objets_sql());
    62         $trouver_table = charger_fonction('trouver_table','base');
    63         foreach($tables_objets as $table){
    64                 $desc = $trouver_table($table);
    65                 if (!isset($desc['field']['popularite'])){
    66                         sql_alter("TABLE $table ADD popularite DOUBLE DEFAULT '0' NOT NULL");
    67                 }
    68                 if (!isset($desc['field']['visites'])) {
    69                         sql_alter("TABLE $table ADD visites integer DEFAULT '0' NOT NULL");
    70                 }
    71                 if (!isset($desc['field']['referers'])) {
    72                         sql_alter("TABLE $table ADD referers integer DEFAULT '0' NOT NULL");
    73                 }
    74         }
    7542
    7643}
     
    10774        effacer_meta($nom_meta_base_version);
    10875}
     76
     77
     78/**
     79 * Fonction privée pour l'installation
     80 * @return void
     81 */
     82function statsobjets_maj_create() {
     83        // Si les stats sont activées, on prend en compte les articles
     84        include_spip('inc/config');
     85        if (lire_config('activer_statistiques') == 'oui') {
     86                ecrire_config('activer_statistiques_objets', array('spip_articles'));
     87        }
     88        // vérifier la présence des champs sur toutes les tables
     89        statsobjets_check_upgrade();
     90}
     91
     92
     93/**
     94 * Vérifier que les champs nécessaires sont présents sur tous les objets : popularite, visites, referers
     95 * Fonction appelée également lorsqu'on enregistre la configuration
     96 * (cas d'un nouvel objet ajouté apres l'install du plugin)
     97 *
     98 * @return void
     99 */
     100function statsobjets_check_upgrade() {
     101
     102        include_spip('base/objets');
     103
     104        $tables_objets = array_keys(lister_tables_objets_sql());
     105        $trouver_table = charger_fonction('trouver_table','base');
     106        foreach($tables_objets as $table){
     107                $desc = $trouver_table($table);
     108                if (!isset($desc['field']['popularite'])){
     109                        sql_alter("TABLE $table ADD popularite DOUBLE DEFAULT '0' NOT NULL");
     110                }
     111                if (!isset($desc['field']['visites'])) {
     112                        sql_alter("TABLE $table ADD visites integer DEFAULT '0' NOT NULL");
     113                }
     114                if (!isset($desc['field']['referers'])) {
     115                        sql_alter("TABLE $table ADD referers integer DEFAULT '0' NOT NULL");
     116                }
     117        }
     118
     119}
Note: See TracChangeset for help on using the changeset viewer.