source: spip-zone/_plugins_/albums/trunk/base/albums.php @ 81646

Last change on this file since 81646 was 81646, checked in by cedric@…, 5 years ago

reparer {id_auteur} sur la boucle albums qui passait a tord par albums_liens au lieu de auteurs_liens

File size: 2.6 KB
Line 
1<?php
2/**
3 * Plugin Albums
4 * Licence GNU/GPL
5 */
6
7if (!defined('_ECRIRE_INC_VERSION')) return;
8
9
10/**
11 * Déclaration des alias de tables et filtres automatiques de champs
12 */
13function albums_declarer_tables_interfaces($interfaces) {
14
15        $interfaces['table_des_tables']['albums'] = 'albums';
16
17        return $interfaces;
18}
19
20
21/**
22 * Déclaration des objets éditoriaux
23 */
24function albums_declarer_tables_objets_sql($tables){
25
26        /* ALBUMS */
27        $tables['spip_albums'] = array(
28                'type'                          => "album",
29                'principale'                    => "oui",
30                'field'=> array(
31                        "id_album"              => "bigint(21) NOT NULL",
32                        "titre"                 => "varchar(255) DEFAULT '' NOT NULL",
33                        "descriptif"            => "mediumtext DEFAULT '' NOT NULL",
34                        "date"                  => "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL",
35                        "statut"                => "varchar(255)  DEFAULT '' NOT NULL",
36                        "lang"                  => "VARCHAR(10) DEFAULT '' NOT NULL",
37                        "langue_choisie"        => "VARCHAR(3) DEFAULT 'non'",
38                        "id_trad"               => "bigint(21) DEFAULT '0' NOT NULL",
39                        "maj"                   => "TIMESTAMP"
40                ),
41                'key' => array(
42                        "PRIMARY KEY"           => "id_album",
43                        "KEY lang"              => "lang", 
44                        "KEY id_trad"           => "id_trad", 
45                        "KEY statut"            => "statut", 
46                ),
47                'titre'                         => "titre, lang AS lang",
48                'date'                          => "date",
49                'champs_editables'              => array('titre', 'descriptif'),
50                'champs_versionnes'             => array('titre', 'descriptif'),
51                'rechercher_champs' => array(
52                        'titre' => 8,
53                        'descriptif' => 1
54                ),
55                'tables_jointures'              => array(
56                ),
57                'modeles'                       => array('album'),
58                'titre' => "titre, '' AS lang",
59                'date' => "date",
60                'statut'=> array(
61                        array(
62                                'champ'         => 'statut',
63                                'publie'        => 'publie',
64                                'previsu'       => 'prepa,publie',
65                                'post_date'     => 'date',
66                                'exception'     => array('statut','tout')
67                        )
68                ),
69                'statut_textes_instituer' => array(
70                        'prepa'                 => 'album:texte_statut_prepa',
71                        'publie'                => 'album:texte_statut_publie',
72                        'poubelle'              => 'album:texte_statut_poubelle',
73                ),
74                'texte_changer_statut'          => 'album:texte_changer_statut',
75        );
76
77        // jointures sur les albums pour tous les objets
78        // passe apres id_auteur=>auteurs_liens et evite de le casser
79        $tables[]['tables_jointures'][]= 'albums_liens';
80        $tables[]['tables_jointures'][]= 'albums';
81
82        return $tables;
83}
84
85
86/**
87 * Déclaration des tables secondaires (liaisons)
88 */
89function albums_declarer_tables_auxiliaires($tables) {
90
91        $tables['spip_albums_liens'] = array(
92                'field' => array(
93                        "id_album"              => "bigint(21) DEFAULT '0' NOT NULL",
94                        "id_objet"              => "bigint(21) DEFAULT '0' NOT NULL",
95                        "objet"                 => "VARCHAR (25) DEFAULT '' NOT NULL",
96                        "vu"                    => "ENUM('non', 'oui') DEFAULT 'non' NOT NULL"
97                ),
98                'key' => array(
99                        "PRIMARY KEY"           => "id_album,id_objet,objet",
100                        "KEY id_album"          => "id_album",
101                )
102        );
103
104        return $tables;
105}
106
107?>
Note: See TracBrowser for help on using the repository browser.