source: spip-zone/_plugins_/rss_commits/trunk/base/rss_commits.php @ 84421

Last change on this file since 84421 was 84421, checked in by teddy.spip@…, 7 years ago

On formate un peu le xml récupéré tant que le namespace est encore un peu chiant à manipuler. Et on passe par l'astuce d'Eric avec un json_encode du xml puis json_decode. L'arbre du xml est moins complexe à parcourir avec cette méthode. Pas de item-uniqid() à prendre en compte.

File size: 2.3 KB
Line 
1<?php
2/**
3 * Déclarations relatives à la base de données
4 *
5 * @plugin     Commits de projet
6 * @copyright  2014
7 * @author     Teddy Payet
8 * @licence    GNU/GPL
9 * @package    SPIP\RSSCommits\Pipelines
10 */
11
12if (!defined('_ECRIRE_INC_VERSION')) {
13    return;
14}
15
16
17/**
18 * Déclaration des alias de tables et filtres automatiques de champs
19 *
20 * @pipeline declarer_tables_interfaces
21 * @param array $interfaces
22 *     Déclarations d'interface pour le compilateur
23 * @return array
24 *     Déclarations d'interface pour le compilateur
25 */
26function rss_commits_declarer_tables_interfaces($interfaces)
27{
28
29    $interfaces['table_des_tables']['commits'] = 'commits';
30
31    return $interfaces;
32}
33
34
35/**
36 * Déclaration des objets éditoriaux
37 *
38 * @pipeline declarer_tables_objets_sql
39 * @param array $tables
40 *     Description des tables
41 * @return array
42 *     Description complétée des tables
43 */
44function rss_commits_declarer_tables_objets_sql($tables)
45{
46
47    $tables['spip_commits'] = array(
48        'type' => 'commit',
49        'principale' => "oui",
50        'field'=> array(
51            "id_commit"          => "bigint(21) NOT NULL",
52            "titre"              => "text NOT NULL DEFAULT ''",
53            "descriptif"         => "text NOT NULL DEFAULT ''",
54            "texte"              => "text NOT NULL DEFAULT ''",
55            "auteur"             => "varchar(25) NOT NULL DEFAULT ''",
56            "url_revision"       => "text NOT NULL DEFAULT ''",
57            "guid"               => "text NOT NULL DEFAULT ''",
58            "id_projet"          => "bigint(21) NOT NULL DEFAULT 0",
59            "date_creation"      => "datetime NOT NULL DEFAULT '0000-00-00 00:00:00'",
60            "maj"                => "TIMESTAMP"
61        ),
62        'key' => array(
63            "PRIMARY KEY"        => "id_commit",
64        ),
65        'titre' => "titre AS titre, '' AS lang",
66        'date' => "date_creation",
67        'champs_editables'  => array('titre', 'descriptif', 'texte', 'auteur', 'url_revision', 'guid', 'id_projet'),
68        'champs_versionnes' => array('titre', 'descriptif', 'texte', 'auteur', 'url_revision', 'guid', 'id_projet'),
69        'rechercher_champs' => array("titre" => 6, "descriptif" => 7, "texte" => 7, "auteur" => 8, "url_revision" => 5),
70        'tables_jointures'  => array(),
71
72
73    );
74
75    return $tables;
76}
77
78
79
80?>
Note: See TracBrowser for help on using the repository browser.