[SPIP] +2.1.12
[velocampus/web/www.git] / www / extensions / vertebres / vertebres_pipelines.php
1 <?php
2
3 if (!defined("_ECRIRE_INC_VERSION")) return;
4
5 /*
6 * Determiner l'utilisation du vertebreur
7 * lorsque l'on passe un appel spip.php?page=table:articles
8 */
9 function vertebres_styliser($flux) {
10
11 // si pas de squelette trouve,
12 // on verifie si on demande une vue de table
13 if (!$squelette = $flux['data']) {
14
15 $ext = $flux['args']['ext'];
16 $fond = $flux['args']['fond'];
17 $connect = $flux['args']['connect'];
18
19 // Si pas de squelette regarder si c'est une table
20 // et si l'on a la permission de l'afficher
21 $trouver_table = charger_fonction('trouver_table', 'base');
22 if (preg_match('/^table:(.*)$/', $fond, $r)
23 AND $table = $trouver_table($r[1], $connect)
24 AND include_spip('inc/autoriser')
25 AND autoriser('webmestre')
26 ) {
27 $fond = $r[1];
28 $base = _DIR_TMP . 'table_' . $fond . ".$ext";
29 if (!file_exists($base)
30 OR $GLOBALS['var_mode']) {
31 $vertebrer = charger_fonction('vertebrer', 'public');
32 ecrire_fichier($base, $vertebrer($table));
33 }
34
35 // sauver les changements
36 $flux['data'] = _DIR_TMP . 'table_' . $fond;
37 }
38 }
39
40 return $flux;
41 }
42
43 ?>