source: spip-zone/_plugins_/cartes/trunk/base/cartes.php @ 96742

Last change on this file since 96742 was 96742, checked in by kent1@…, 4 years ago

Pouvoir définir si on affiche un label sur chaque point reprenant le titre

  • Property svn:executable set to *
File size: 3.9 KB
Line 
1<?php
2/**
3 * Déclarations relatives à la base de données
4 *
5 * @plugin     Création de cartes
6 * @copyright  2016
7 * @author     kent1
8 * @licence    GNU/GPL
9 * @package    SPIP\Cartes\Pipelines
10 */
11
12if (!defined('_ECRIRE_INC_VERSION')) return;
13
14
15/**
16 * Déclaration des alias de tables et filtres automatiques de champs
17 *
18 * @pipeline declarer_tables_interfaces
19 * @param array $interfaces
20 *     Déclarations d'interface pour le compilateur
21 * @return array
22 *     Déclarations d'interface pour le compilateur
23 */
24function cartes_declarer_tables_interfaces($interfaces) {
25        $interfaces['table_des_tables']['cartes'] = 'cartes';
26        $interfaces['table_des_traitements']['TEXTE_FOOTER']['cartes'] = _TRAITEMENT_RACCOURCIS;
27        $interfaces['table_des_traitements']['CONTROLES']['cartes'] = 'unserialize(%s)';
28        return $interfaces;
29}
30
31
32/**
33 * Déclaration des objets éditoriaux
34 *
35 * @pipeline declarer_tables_objets_sql
36 * @param array $tables
37 *     Description des tables
38 * @return array
39 *     Description complétée des tables
40 */
41function cartes_declarer_tables_objets_sql($tables) {
42
43        $tables['spip_cartes'] = array(
44                'type' => 'carte',
45                'principale' => "oui",
46                'field'=> array(
47                        'id_carte'           => 'bigint(21) NOT NULL',
48                        'titre'              => 'text NOT NULL DEFAULT ""',
49                        'texte'              => 'text NOT NULL DEFAULT ""',
50                        'texte_footer'       => 'text NOT NULL DEFAULT ""',
51                        'layer_defaut'       => 'text NOT NULL DEFAULT ""',
52                        'layer_topojson'     => 'text NOT NULL DEFAULT ""',
53                        'zoom_defaut'            => 'int(6) NOT NULL DEFAULT 0',
54                        'zoom_min'           => 'int(6) NOT NULL DEFAULT 0',
55                        'zoom_max'           => 'int(6) NOT NULL DEFAULT 0',
56                        'style_carte'        => 'text NOT NULL DEFAULT ""',
57                        'footer_carte'       => 'text NOT NULL DEFAULT ""',
58                        'lat'                            => 'double NULL NULL',
59                        'lon'                            => 'double NULL NULL',
60                        'center_points'      => 'VARCHAR(3) DEFAULT "non"',
61                        'popup'              => 'text NOT NULL DEFAULT ""',
62                        'label'              => 'text NOT NULL DEFAULT ""',
63                        'bounds'             => 'GEOMETRY DEFAULT "" NOT NULL',
64                        'controles'              => 'text NOT NULL DEFAULT ""',
65                        'type'               => 'text NOT NULL DEFAULT ""',
66                        'date'               => 'datetime NOT NULL DEFAULT "0000-00-00 00:00:00"', 
67                        'statut'             => 'varchar(20)  DEFAULT "0" NOT NULL', 
68                        'lang'               => 'VARCHAR(10) NOT NULL DEFAULT ""',
69                        'langue_choisie'     => 'VARCHAR(3) DEFAULT "non"', 
70                        'id_trad'            => 'bigint(21) NOT NULL DEFAULT 0', 
71                        'maj'                => 'TIMESTAMP'
72                ),
73                'key' => array(
74                        'PRIMARY KEY'        => 'id_carte',
75                        'KEY lang'           => 'lang', 
76                        'KEY id_trad'        => 'id_trad', 
77                        'KEY statut'         => 'statut', 
78                ),
79                'titre' => 'titre AS titre, lang AS lang',
80                'date' => 'date',
81                'champs_editables'  => array('titre', 'texte', 'layer_defaut', 'layer_topojson', 'zoom_defaut', 'zoom_min', 'zoom_max', 'style_carte', 'footer_carte', 'texte_footer', 'bounds', 'controles', 'type', 'lat', 'lon', 'center_points', 'popup', 'label'),
82                'champs_versionnes' => array('titre', 'texte', 'layer_defaut', 'layer_topojson', 'zoom_defaut', 'zoom_min', 'zoom_max', 'style_carte', 'footer_carte', 'texte_footer', 'bounds', 'controles', 'type', 'lat', 'lon', 'center_points', 'popup', 'label'),
83                'rechercher_champs' => array("titre" => 5, "texte" => 7,"texte_footer" => 4),
84                'tables_jointures'  => array(),
85                'statut_textes_instituer' => array(
86                        'prepa'    => 'texte_statut_en_cours_redaction',
87                        'prop'     => 'texte_statut_propose_evaluation',
88                        'publie'   => 'texte_statut_publie',
89                        'refuse'   => 'texte_statut_refuse',
90                        'poubelle' => 'texte_statut_poubelle',
91                ),
92                'statut'=> array(
93                        array(
94                                'champ'     => 'statut',
95                                'publie'    => 'publie',
96                                'previsu'   => 'publie,prop,prepa',
97                                'post_date' => 'date', 
98                                'exception' => array('statut','tout')
99                        )
100                ),
101                'texte_changer_statut' => 'carte:texte_changer_statut_carte',
102        );
103
104        return $tables;
105}
Note: See TracBrowser for help on using the repository browser.