source: spip-zone/_core_/plugins/organiseur/organiseur_administrations.php @ 113294

Last change on this file since 113294 was 113294, checked in by spip.franck@…, 3 years ago

Il parait que le futur c'est maintenant :-D

File size: 2.4 KB
Line 
1<?php
2
3/***************************************************************************\
4 *  SPIP, Systeme de publication pour l'internet                           *
5 *                                                                         *
6 *  Copyright (c) 2001-2019                                                *
7 *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
8 *                                                                         *
9 *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
10 *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
11\***************************************************************************/
12
13if (!defined('_ECRIRE_INC_VERSION')) {
14        return;
15}
16
17/**
18 * Installation/maj des tables messagerie
19 *
20 * @param string $nom_meta_base_version
21 * @param string $version_cible
22 */
23function organiseur_upgrade($nom_meta_base_version, $version_cible) {
24        // cas particulier :
25        // si plugin pas installe mais que la table existe
26        // considerer que c'est un upgrade depuis v 1.0.0
27        // pour gerer l'historique des installations SPIP <=2.1
28        if (!isset($GLOBALS['meta'][$nom_meta_base_version])) {
29                $trouver_table = charger_fonction('trouver_table', 'base');
30                if ($desc = $trouver_table('spip_messages')
31                        and isset($desc['exist']) and $desc['exist']
32                ) {
33                        ecrire_meta($nom_meta_base_version, '1.0.0');
34                }
35                // si pas de table en base, on fera une simple creation de base
36        }
37
38        $maj = array();
39        $maj['create'] = array(
40                array('maj_tables', array('spip_messages', 'spip_auteurs')),
41        );
42
43        $maj['1.1.0'] = array(
44                array('sql_updateq', 'spip_messages', array('statut' => 'prepa'), "statut='redac'"),
45                array('maj_tables', array('spip_messages')), // champ destinataires
46        );
47
48        $maj['1.1.1'] = array(
49                array('sql_alter', 'TABLE spip_messages CHANGE id_auteur id_auteur bigint(21) DEFAULT 0 NOT NULL'),
50        );
51
52        $maj['1.1.2'] = array(
53                array('maj_tables', array('spip_auteurs')) // champs messagerie & imessage (parfois absents)
54        );
55
56        include_spip('base/upgrade');
57        maj_plugin($nom_meta_base_version, $version_cible, $maj);
58}
59
60
61/**
62 * Desinstallation/suppression des tables mots et groupes de mots
63 *
64 * @param string $nom_meta_base_version
65 */
66function organiseur_vider_tables($nom_meta_base_version) {
67        sql_drop_table('spip_messages');
68        sql_alter('TABLE spip_auteurs DROP imessage');
69        sql_alter('TABLE spip_auteurs DROP messagerie');
70
71        effacer_meta('messagerie_agenda');
72
73        effacer_meta($nom_meta_base_version);
74}
Note: See TracBrowser for help on using the repository browser.