source: spip-zone/_plugins_/tradrub/210/base/tradrub_install.php @ 35558

Last change on this file since 35558 was 35558, checked in by marcimat@…, 9 years ago

On s'appuie beaucoup plus sur la traduction des articles dans le principe :

  • on ne peut modifier une liaison que s'il n'y en a pas déjà une de déclarée
  • on peut délier des traductions.

Désinstallation :

  • on supprime la colonne id_trad si et seulement si il n'existe aucune traduction entre rubriques.
File size: 1.3 KB
Line 
1<?php
2/**
3 * Plugin tradrub
4 * Licence GPL (c) 2008-2010 Stephane Laurent (Bill), Matthieu Marcillaud
5 *
6 */
7
8if (!defined("_ECRIRE_INC_VERSION")) return;
9
10include_spip('inc/meta');
11
12/**
13 * Upgrade de la base
14 *
15 * @param string $nom_meta_base_version
16 * @param string $version_cible
17 */
18function tradrub_upgrade($nom_meta_base_version,$version_cible){
19        $current_version = 0.0;
20
21        if ( (!isset($GLOBALS['meta'][$nom_meta_base_version]) )
22                || (($current_version = $GLOBALS['meta'][$nom_meta_base_version])!=$version_cible))
23        {
24                include_spip('base/tradrub');
25                if ($current_version==0.0){
26                        include_spip('base/create');
27                        maj_tables('spip_rubriques');
28                        // index sur le nouveau champ
29                        sql_alter("TABLE spip_rubriques ADD INDEX (id_trad)");
30                        ecrire_meta($nom_meta_base_version,$current_version=$version_cible,'non');
31                }       
32        }
33}
34
35/**
36 * Desinstallation du plugin
37 *
38 * @param string $nom_meta_base_version
39 */
40function tradrub_vider_tables($nom_meta_base_version) {
41        // supprimer la colonne seulement s'il ne reste pas de traductions
42        $il_en_reste = sql_countsel('spip_rubriques', array(
43                'id_trad <> ' . sql_quote(0),
44                'id_trad <> id_rubrique')
45        );
46        if (!$il_en_reste) {
47                sql_alter("TABLE spip_rubriques DROP id_trad");
48        }
49        effacer_meta($nom_meta_base_version);
50}
51       
52
53?>
Note: See TracBrowser for help on using the repository browser.