source: spip-zone/_plugins_/encarts/base/encarts.php @ 43879

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

on supprime un message inopportun;

File size: 2.6 KB
Line 
1<?php
2/*
3 * Plugin Encarts
4 * (c) 2011 Camille Lafitte, Cyril Marion
5 * Distribue sous licence GPL
6 *
7 */
8
9include_spip('inc/meta');
10include_spip('base/create');
11
12function encarts_declarer_tables_interfaces($interface){
13       
14        $interface['table_des_tables']['encarts'] = 'encarts';
15       
16        $interface['tables_jointures']['spip_articles'][]= 'encarts';
17        $interface['tables_jointures']['spip_articles']['id_article']= 'encarts_liens';
18        $interface['tables_jointures']['spip_encarts'][]= 'articles';
19        // peut etre faut il plus de déclarations pour lier un encart à des articles ?
20       
21        return $interface;
22}
23
24function encarts_declarer_tables_principales($tables_principales){
25
26        //-- Table encarts ------------------------------------------
27        $encarts = array(
28                "id_encart"     => "bigint(21) NOT NULL auto_increment",
29                "date"                  => "datetime NOT NULL default '0000-00-00 00:00:00'",
30                "titre"                 => "tinytext DEFAULT '' NOT NULL",
31                "texte"                 => "text DEFAULT '' NOT NULL",
32                "maj"                   => "TIMESTAMP"
33                );
34        $encarts_key = array(
35                "PRIMARY KEY"   => "id_encart"
36                );
37        $tables_principales['spip_encarts'] =
38                array('field' => &$encarts,'key' => &$encarts_key,'join' => array('id_encart'=>'id_encart'));
39
40        return $tables_principales;
41
42}
43
44function encarts_declarer_tables_auxiliaires($tables_auxiliaires){
45
46        //-- Table encarts_liens ------------------------------------------
47        $encarts_liens = array(
48                "id_encart"     => "bigint(21) NOT NULL auto_increment",
49                "id_objet"              => "bigint(21) NOT NULL default '0'",
50                "objet"                 => "varchar(25) NOT NULL default ''",
51                "vu"                    => "enum('non','oui') NOT NULL default 'non'"
52                );
53        $encarts_liens_key = array(
54                "PRIMARY KEY"   => "id_encart, id_objet, objet"
55                );
56        $tables_auxiliaires['spip_encarts_liens'] =
57                array('field' => &$encarts_liens, 'key' => &$encarts_liens_key);
58       
59        return $tables_auxiliaires;
60}
61
62function encarts_upgrade($nom_meta_base_version,$version_cible){
63        $current_version = "0.0";
64        if (isset($GLOBALS['meta'][$nom_meta_base_version])) {
65                $current_version = $GLOBALS['meta'][$nom_meta_base_version];
66                spip_log('Version actuelle : '.$current_version,'encarts');
67        }
68        if ($current_version=="0.0") {
69                creer_base();
70                ecrire_meta($nom_meta_base_version, $current_version=$version_cible);
71                spip_log('Base de donnees encarts correctement creee','encarts');
72        }
73}
74
75function encarts_vider_tables($nom_meta_base_version) {
76        sql_drop_table("spip_encarts");
77        sql_drop_table("spip_encarts_liens");
78
79        spip_log('Plugin encarts correctement desinstalle.','encarts');
80        effacer_meta($nom_meta_base_version);
81}
82
83
84?>
Note: See TracBrowser for help on using the repository browser.