source: spip-zone/_galaxie_/code.spip.net/spip-zora/plugin/ZoraApi/base/zoraapi.php @ 74548

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

Sources de code.spip.net (nom de code Zora)

File size: 4.5 KB
Line 
1<?php
2/**
3 * Déclarations relatives à la base de données
4 *
5 * @plugin     Zora Api
6 * @copyright  2013
7 * @author     Matthieu Marcillaud
8 * @licence    GNU/GPL
9 * @package    SPIP\Zoraapi\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 zoraapi_declarer_tables_interfaces($interfaces) {
25
26        $interfaces['table_des_tables']['api_fonctions'] = 'api_fonctions';
27       
28        $interfaces['table_des_traitements']['DEFINITION']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
29        $interfaces['table_des_traitements']['COMPATIBILITE']['api_fonctions'] = _TRAITEMENT_TYPO;
30        $interfaces['table_des_traitements']['DESCRIPTION']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
31        $interfaces['table_des_traitements']['PARAMETRES']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
32        $interfaces['table_des_traitements']['RETOUR']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
33        $interfaces['table_des_traitements']['HISTORIQUE']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
34        $interfaces['table_des_traitements']['EXEMPLES']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
35        $interfaces['table_des_traitements']['NOTA']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
36        $interfaces['table_des_traitements']['VOIR_AUSSI']['api_fonctions'] = _TRAITEMENT_RACCOURCIS;
37       
38        return $interfaces;
39}
40
41
42/**
43 * Déclaration des objets éditoriaux
44 *
45 * @pipeline declarer_tables_objets_sql
46 * @param array $tables
47 *     Description des tables
48 * @return array
49 *     Description complétée des tables
50 */
51function zoraapi_declarer_tables_objets_sql($tables) {
52
53        $tables['spip_api_fonctions'] = array(
54                'type' => 'api_fonction',
55                'principale' => "oui", 
56                'table_objet_surnoms' => array('apifonction'), // table_objet('api_fonction') => 'api_fonctions'
57                'field'=> array(
58                        "id_api_fonction"    => "bigint(21) NOT NULL",
59                        "id_rubrique"        => "bigint(21) NOT NULL DEFAULT 0", 
60                        "id_secteur"         => "bigint(21) NOT NULL DEFAULT 0", 
61                        "nom"                => "tinytext NOT NULL DEFAULT ''",
62                        "definition"         => "tinytext NOT NULL DEFAULT ''",
63                        "compatibilite"      => "tinytext NOT NULL DEFAULT ''",
64                        "nom_complet"        => "tinytext NOT NULL DEFAULT ''",
65                        "fichier"            => "tinytext NOT NULL DEFAULT ''",
66                        "description"        => "mediumtext NOT NULL DEFAULT ''",
67                        "parametres"         => "mediumtext NOT NULL DEFAULT ''",
68                        "retour"             => "mediumtext NOT NULL DEFAULT ''",
69                        "historique"         => "mediumtext NOT NULL DEFAULT ''",
70                        "exemples"           => "text NOT NULL DEFAULT ''",
71                        "nota"               => "mediumtext NOT NULL DEFAULT ''",
72                        "voir_aussi"         => "mediumtext NOT NULL DEFAULT ''",
73                        "date_publication"   => "datetime NOT NULL DEFAULT '0000-00-00 00:00:00'", 
74                        "statut"             => "varchar(20)  DEFAULT '0' NOT NULL", 
75                        "lang"               => "VARCHAR(10) NOT NULL DEFAULT ''",
76                        "langue_choisie"     => "VARCHAR(3) DEFAULT 'non'", 
77                        "id_trad"            => "bigint(21) NOT NULL DEFAULT 0", 
78                        "maj"                => "TIMESTAMP"
79                ),
80                'key' => array(
81                        "PRIMARY KEY"        => "id_api_fonction",
82                        "KEY id_rubrique"    => "id_rubrique", 
83                        "KEY id_secteur"     => "id_secteur", 
84                        "KEY lang"           => "lang", 
85                        "KEY id_trad"        => "id_trad", 
86                        "KEY statut"         => "statut", 
87                ),
88                'titre' => "nom AS titre, lang AS lang",
89                'date' => "date_publication",
90                'champs_editables'  => array('nom', 'definition', 'compatibilite', 'nom_complet', 'fichier', 'description', 'parametres', 'retour', 'historique', 'exemples', 'nota', 'voir_aussi'),
91                'champs_versionnes' => array('nom', 'definition', 'compatibilite', 'nom_complet', 'fichier', 'description', 'parametres', 'retour', 'historique', 'exemples', 'nota', 'voir_aussi'),
92                'rechercher_champs' => array("nom" => 7, "definition" => 3),
93                'tables_jointures'  => array(),
94                'statut_textes_instituer' => array(
95                        'prepa'    => 'texte_statut_en_cours_redaction',
96                        'prop'     => 'texte_statut_propose_evaluation',
97                        'publie'   => 'texte_statut_publie',
98                        'refuse'   => 'texte_statut_refuse',
99                        'poubelle' => 'texte_statut_poubelle',
100                ),
101                'statut'=> array(
102                        array(
103                                'champ'     => 'statut',
104                                'publie'    => 'publie',
105                                'previsu'   => 'publie,prop,prepa',
106                                'post_date' => 'date', 
107                                'exception' => array('statut','tout')
108                        )
109                ),
110                'texte_changer_statut' => 'api_fonction:texte_changer_statut_api_fonction', 
111               
112
113        );
114
115        return $tables;
116}
117
118
119
120?>
Note: See TracBrowser for help on using the repository browser.