source: spip-zone/_plugins_/kconf/public/kconf_balise.php @ 30253

Last change on this file since 30253 was 30253, checked in by gilles.vincent@…, 12 years ago

[30252] suite : split est deprecie en 5.3.0

File size: 2.7 KB
Line 
1<?php
2if (!defined("_ECRIRE_INC_VERSION")) return;
3
4function balise_KCONF_dist($p,$id_objet=0,$I='rubrique') {
5        // de public/balises:
6        $clef = interprete_argument_balise(1,$p);
7        if ($clef) {
8                if (($id = interprete_argument_balise(2,$p)) !== null)
9                        $id_objet = $id;
10                if ($interface = interprete_argument_balise(3,$p))
11                        $I = $interface;
12                $code = "kconf_balise($I,$id_objet,$clef)";
13        } else
14                $code = "''";
15        $p->code=$code;
16       
17        $p->interdire_scripts = false;
18        return $p;
19}
20
21function balise_KCONF_RUB_dist($p) {
22        $id_rubrique = champ_sql('id_rubrique', $p);
23        return balise_KCONF_dist($p,$id_rubrique,'rubrique');
24}
25
26function balise_KCONF_ART_dist($p) {
27        $id_article = champ_sql('id_article', $p);
28        return balise_KCONF_dist($p,$id_article,'article');
29}
30
31function balise_KCONF_LOGO_dist($p,$id_objet=0,$I='rubrique') {
32        // de public/balises:
33        $clef = interprete_argument_balise(1,$p);
34        if ($clef) {
35                if (($id = interprete_argument_balise(2,$p)) !== null)
36                        $id_objet = $id;
37                if ($interface = interprete_argument_balise(3,$p))
38                        $I = $interface;
39                $code = "kconf_balise_logo($I,$id_objet,$clef)";
40        } else
41                $code = "''";
42        $p->code=$code;
43       
44        $p->interdire_scripts = false;
45        return $p;
46}
47
48function balise_KCONF_LOGO_RUB_dist($p) {
49        $id_rubrique = champ_sql('id_rubrique', $p);
50        return balise_KCONF_LOGO_dist($p,$id_rubrique,'rubrique');
51}
52
53function balise_KCONF_LOGO_ART_dist($p) {
54        $id_article = champ_sql('id_article', $p);
55        return balise_KCONF_LOGO_dist($p,$id_article,'article');
56}
57
58function kconf_balise($I,$id_objet,$clef) {
59//      spip_log("balise cherche $I,$id_objet,$clef");
60        list($val,$type,$cascade) = kconf_recevoir_valeur($I,intval($id_objet),$clef);
61//      spip_log("balise trouve $val,$type,$cascade");
62        return $val;
63}
64
65function kconf_balise_logo($I,$id_objet,$clef) {
66        list($val,$type,$cascade) = kconf_recevoir_valeur($I,intval($id_objet),$clef);
67        if ($val) {
68                $val = _DIR_LOGOS.$val;
69                if ($taille = @getimagesize($val)) {
70                        $taille = " ".$taille[3];
71                }
72                $val = "<img src='$val' $taille />";
73        }
74        return $val;
75}
76
77// Utiliser kconf comme critère (super expérimental) (pause de gros problèmes avec les valeurs par défaut)
78// Ce critère ne doit jamais être utilisé
79// Et encore moins documenté !
80function critere_kconf($idb, &$boucles, $crit) {
81        if (isset($crit->param[0])) {
82                $t = $crit->param[0];
83                if ($t[0]->type == 'texte') {
84                        $t = $t[0]->texte;
85                        list($k,$v) = explode(" ",$t);
86                        $ret = "s:".strlen($k).":\"$k\";a:3:{i:0;s:".strlen($v).":\"$v\"";
87//                      spip_log("critere_kconf $k, $v, $ret");
88                        $boucle = &$boucles[$idb];
89                        $boucle->from["kconf"] = "spip_kconf_rubriques";
90                        $boucle->where[] = array ("'AND'",
91                                array("'='","'rubriques.id_rubrique'","'kconf.id_rubrique'"),
92                                array("'LIKE'","'kconf.valeur'","'\'%$ret%\''"),
93                        );
94                }
95        }
96}
97
98?>
Note: See TracBrowser for help on using the repository browser.