source: spip-zone/_plugins_/_dev_/spipclear/spipclear_pipelines.php @ 28685

Last change on this file since 28685 was 28685, checked in by brunobergot@…, 11 years ago

Corrections de la page de configuration du plugin dans le sélecteur de secteurs. Remplacer l'option "tous" par "aucun" et affcter -1 en valeur par défaut car in_array peut avoir des problèmes avec la valeur 0.

File size: 1.3 KB
Line 
1<?php
2
3// utiliser le pipeline 'styliser' pour
4// définir le squelette a utiliser si on est dans le cas
5// d'une rubrique de spipClear
6
7function spipclear_styliser($flux){
8        // si article, rubrique ou sommaire,
9        // on cherche si spip clear doit s'activer
10        if (($fond = $flux['args']['fond'])
11        AND in_array($fond, array('article','rubrique','sommaire'))) {
12               
13                $ext = $flux['args']['ext'];
14
15                // cas du sommaire
16                if ($fond == 'sommaire') {
17                        // uniquement si configuration de spipClear pour le sommaire
18                        if (lire_config('spipclear/sommaire_spipclear') == 'on') {
19                                if ($squelette = test_squelette_spipclear($fond, $ext)) {
20                                        $flux['data'] = $squelette;
21                                }
22                        }
23                }
24               
25                // cas dans une rubrique
26                // uniquement si configuration de spipClear pour le secteur en question
27                elseif ($id_rubrique = $flux['args']['id_rubrique']) {
28                        $id_secteur = sql_getfetsel('id_secteur', 'spip_rubriques', 'id_rubrique=' . intval($id_rubrique));
29                        if (in_array($id_secteur, lire_config('spipclear/secteurs', array(0,-1)))) {
30                                if ($squelette = test_squelette_spipclear($fond, $ext)) {
31                                        $flux['data'] = $squelette;
32                                }
33                        }
34                }
35        }
36        return $flux;
37}
38
39function test_squelette_spipclear($fond, $ext) {
40        if ($squelette = find_in_path($fond."_spipclear.$ext")) {
41                return substr($squelette, 0, -strlen(".$ext"));
42        }
43        return false;
44}
45?>
Note: See TracBrowser for help on using the repository browser.