source: spip-zone/_plugins_/getID3/trunk/base/getid3_base.php @ 71836

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

On en profite pour commencer à s'occuper des fichiers vidéos via ce plugin

On ajoute une pelletée de champs sur spip_documents pour gérer plus de métadonnées

On en profite pour passer un coup de PHPdoc

Le schema est incrémenté en 0.5.0

La version en 1.3.1

File size: 3.7 KB
Line 
1<?php
2/**
3 * GetID3
4 * Gestion des métadonnées de fichiers sonores et vidéos directement dans SPIP
5 *
6 * Auteurs :
7 * kent1 (http://www.kent1.info - kent1@arscenic.info), BoOz
8 * 2008-2013 - Distribué sous licence GNU/GPL
9 *
10 * Définition des tables
11 *
12 */
13
14if (!defined('_ECRIRE_INC_VERSION')) return;
15
16/**
17 * Insertion dans le pipeline declarer_tables_interfaces (SPIP)
18 *
19 * Déclarer les interfaces : on ajoute les champs de la table spip_documents
20 *
21 * @pipeline declarer_tables_interfaces
22 * @param array $interfaces
23 *     Déclarations d'interface pour le compilateur
24 * @return array
25 *     Déclarations d'interface pour le compilateur
26 */
27function getid3_declarer_tables_principales($tables_principales){
28
29        $tables_principales['spip_documents']['field']['duree'] = "VARCHAR(255) DEFAULT '' NOT NULL";
30        $tables_principales['spip_documents']['field']['bitrate'] = "INTEGER NOT NULL";
31        $tables_principales['spip_documents']['field']['hasvideo'] = "VARCHAR(3) DEFAULT '' NOT NULL";
32        $tables_principales['spip_documents']['field']['hasaudio'] = "VARCHAR(3) DEFAULT '' NOT NULL";
33        $tables_principales['spip_documents']['field']['framecount'] = "INTEGER";
34        $tables_principales['spip_documents']['field']['framerate'] = "FLOAT";
35        $tables_principales['spip_documents']['field']['videobitrate'] = "INTEGER";
36        $tables_principales['spip_documents']['field']['videocodec'] = "VARCHAR(255) DEFAULT '' NOT NULL";
37        $tables_principales['spip_documents']['field']['videocodecid'] = "VARCHAR(255) DEFAULT '' NOT NULL";
38        $tables_principales['spip_documents']['field']['audiobitrate'] = "INTEGER NOT NULL";
39        $tables_principales['spip_documents']['field']['audiobitratemode'] = "text DEFAULT '' NOT NULL";
40        $tables_principales['spip_documents']['field']['audiosamplerate'] = "INTEGER NOT NULL";
41        $tables_principales['spip_documents']['field']['audiochannels'] = "text DEFAULT '' NOT NULL";
42        $tables_principales['spip_documents']['field']['audiocodec'] = "VARCHAR(255) DEFAULT '' NOT NULL";
43        $tables_principales['spip_documents']['field']['audiocodecid'] = "VARCHAR(255) DEFAULT '' NOT NULL";
44        $tables_principales['spip_documents']['field']['encodeur'] = "text DEFAULT '' NOT NULL";
45        $tables_principales['spip_documents']['field']['bits'] = "INTEGER NOT NULL";
46       
47
48        return $tables_principales;
49}
50
51/**
52 * Insertion dans le pipeline declarer_tables_objets_sql (SPIP)
53 *
54 * On ajoute nos champs dans les champs editables de la table spip_documents
55 *
56 * @pipeline declarer_tables_objets_sql
57 * @param array $tables
58 *     Description des tables
59 * @return array
60 *     Description complétée des tables
61 */
62function getid3_declarer_tables_objets_sql($tables){
63        $tables['spip_documents']['champs_editables'][] = 'duree';
64        $tables['spip_documents']['champs_editables'][] = 'bitrate';
65        $tables['spip_documents']['champs_editables'][] = 'hasvideo';
66        $tables['spip_documents']['champs_editables'][] = 'hasaudio';
67        $tables['spip_documents']['champs_editables'][] = 'framecount';
68        $tables['spip_documents']['champs_editables'][] = 'framerate';
69        $tables['spip_documents']['champs_editables'][] = 'videobitrate';
70        $tables['spip_documents']['champs_editables'][] = 'videocodec';
71        $tables['spip_documents']['champs_editables'][] = 'videocodecid';
72        $tables['spip_documents']['champs_editables'][] = 'audiobitrate';
73        $tables['spip_documents']['champs_editables'][] = 'audiobitratemode';
74        $tables['spip_documents']['champs_editables'][] = 'audiosamplerate';
75        $tables['spip_documents']['champs_editables'][] = 'audiocodec';
76        $tables['spip_documents']['champs_editables'][] = 'audiocodecid';
77        $tables['spip_documents']['champs_editables'][] = 'audiochannels';
78        $tables['spip_documents']['champs_editables'][] = 'encodeur';
79        $tables['spip_documents']['champs_editables'][] = 'bits';
80       
81        return $tables;
82}
83?>
Note: See TracBrowser for help on using the repository browser.