[SPIP][PLUGINS] v3.0-->v3.2
[lhc/web/www.git] / www / plugins / spip_piwik / balise / piwik.php
1 <?php
2 /**
3 * Balise #PIWIK
4 *
5 * Au final ne correspond qu'à un inclure mais est plus rapide à écrire
6 * et ne casse pas à la compilation si le plugin n'est pas activé
7 *
8 * @param object $p
9 * @return
10 */
11
12 if (!defined('_ECRIRE_INC_VERSION')) {
13 return;
14 }
15
16 function balise_PIWIK_dist($p) {
17 return calculer_balise_dynamique($p, 'PIWIK', array());
18 }
19 function balise_PIWIK_stat($args, $filtres) {
20 return $args;
21 }
22 function balise_PIWIK_dyn() {
23 if (!function_exists('lire_config')) {
24 include_spip('inc/config');
25 }
26 $config = lire_config('piwik', array());
27 if (!empty($config['urlpiwik'])
28 and is_numeric($config['idpiwik'])
29 and ($config['mode_insertion'] == 'balise')) {
30 if ((isset($GLOBALS['visiteur_session']['statut']) and in_array($GLOBALS['visiteur_session']['statut'], lire_config('piwik/restreindre_statut_public', array())))
31 or (isset($GLOBALS['visiteur_session']['id_auteur']) and in_array($GLOBALS['visiteur_session']['id_auteur'], lire_config('piwik/restreindre_auteurs_public', array())))) {
32 return;
33 }
34 if (isset($config['exclure_ips'])) {
35 $piwik_ips = array_flip(preg_split(
36 '/(\s*[;,]\s*|\s+)/',
37 trim($config['exclure_ips']),
38 -1,
39 PREG_SPLIT_NO_EMPTY
40 ));
41 if (isset($piwik_ips[$GLOBALS['ip']])) {
42 return;
43 }
44 }
45 return array(
46 'prive/piwik',
47 0,
48 array()
49 );
50 }
51 }