79cbcd71ec2bcf3e468b5d635ef780b844f021e7
[lhc/web/www.git] / www / plugins-dist / statistiques / base / stats.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2016 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
12
13 /**
14 * Déclarations relatives à la base de données
15 *
16 * @plugin Statistiques pour SPIP
17 * @license GNU/GPL
18 * @package SPIP\Stats\Pipelines
19 **/
20
21 if (!defined("_ECRIRE_INC_VERSION")) {
22 return;
23 }
24
25 /**
26 * Déclarer les tables de statistiques
27 *
28 * Déclare les tables :
29 * - spip_visites
30 * - spip_visites_articles
31 * - spip_referers
32 * - spip_referers_articles
33 *
34 * @pipeline declarer_tables_auxiliaires
35 * @param array $tables_auxiliaires
36 * Description des tables auxiliaires
37 * @return array
38 * Description complétée des tables auxiliaires
39 */
40 function stats_declarer_tables_auxiliaires($tables_auxiliaires) {
41
42 $spip_visites = array(
43 "date" => "DATE NOT NULL",
44 "visites" => "int UNSIGNED DEFAULT '0' NOT NULL",
45 "maj" => "TIMESTAMP"
46 );
47
48 $spip_visites_key = array(
49 "PRIMARY KEY" => "date"
50 );
51
52 $spip_visites_articles = array(
53 "date" => "DATE NOT NULL",
54 "id_article" => "int UNSIGNED NOT NULL",
55 "visites" => "int UNSIGNED DEFAULT '0' NOT NULL",
56 "maj" => "TIMESTAMP"
57 );
58
59 $spip_visites_articles_key = array(
60 "PRIMARY KEY" => "date, id_article"
61 );
62
63
64 $spip_referers = array(
65 "referer_md5" => "bigint UNSIGNED NOT NULL",
66 "date" => "DATE NOT NULL",
67 "referer" => "VARCHAR (255)",
68 "visites" => "int UNSIGNED NOT NULL",
69 "visites_jour" => "int UNSIGNED NOT NULL",
70 "visites_veille" => "int UNSIGNED NOT NULL",
71 "maj" => "TIMESTAMP"
72 );
73
74 $spip_referers_key = array(
75 "PRIMARY KEY" => "referer_md5"
76 );
77
78 $spip_referers_articles = array(
79 "id_article" => "int UNSIGNED NOT NULL",
80 "referer_md5" => "bigint UNSIGNED NOT NULL",
81 "referer" => "VARCHAR (255) DEFAULT '' NOT NULL",
82 "visites" => "int UNSIGNED NOT NULL",
83 "maj" => "TIMESTAMP"
84 );
85
86 $spip_referers_articles_key = array(
87 "PRIMARY KEY" => "id_article, referer_md5",
88 "KEY referer_md5" => "referer_md5"
89 );
90
91 $tables_auxiliaires['spip_visites'] = array(
92 'field' => &$spip_visites,
93 'key' => &$spip_visites_key
94 );
95 $tables_auxiliaires['spip_visites_articles'] = array(
96 'field' => &$spip_visites_articles,
97 'key' => &$spip_visites_articles_key
98 );
99 $tables_auxiliaires['spip_referers'] = array(
100 'field' => &$spip_referers,
101 'key' => &$spip_referers_key
102 );
103 $tables_auxiliaires['spip_referers_articles'] = array(
104 'field' => &$spip_referers_articles,
105 'key' => &$spip_referers_articles_key
106 );
107
108 return $tables_auxiliaires;
109 }