source: spip-zone/_plugins_/sedna/trunk/sedna_options.php

Last change on this file was 105656, checked in by real3t@…, 3 years ago

Notices PHP en moins

File size: 2.2 KB
Line 
1<?php
2
3if (!defined("_ECRIRE_INC_VERSION")) return;
4
5if (preg_match(',&age=([0-9]+)&age=([0-9]+),',$_SERVER['REQUEST_URI'],$regs)){
6        url_de_base();
7        $url = parametre_url(self(),'age',$regs[1],'&');
8        include_spip('inc/headers');
9        redirige_par_entete($url);
10}
11
12if($var_color=_request('var_color')) {
13        include_spip('inc/cookie');
14        spip_setcookie('sedna_color', $var_color, time()+365*24*3600);
15        $_COOKIE['sedna_color'] = $var_color;
16}
17
18$GLOBALS['marqueur'] = (isset($GLOBALS['marqueur'])?$GLOBALS['marqueur']:'').isset($_COOKIE['sedna_color'])?(":".$_COOKIE['sedna_color']):"";
19
20function sedna_utils(){
21        $GLOBALS['forcer_lang']= true;
22
23        // Descriptifs : affiches ou masques ?
24        // l'accessibilite sans javascript => affiches par defaut
25        if ($_COOKIE['sedna_style'] == 'masquer')
26                $class_desc = "desc_masquer";
27        else
28                $class_desc = "desc_afficher";
29       
30        // Si synchro active il faut comparer le contenu du cookie et ce
31        // qu'on a stocke dans le champ spip_auteurs.sedna (a creer au besoin)
32        $synchro = '';
33        if ($_COOKIE['sedna_synchro'] == 'oui'
34        AND $id = $GLOBALS['visiteur_session']['id_auteur']) {
35                // Recuperer ce qu'on a stocke
36                $champ = $champ['sedna'];
37                // mixer avec le cookie en conservant un ordre chronologique
38                if ($_COOKIE['sedna_lu'] <> $champ) {
39                        $lus_cookie = preg_split(',[- +],',$_COOKIE['sedna_lu']);
40                        $lus_champ = preg_split(',[- +],',$champ);
41                        $lus = array();
42                        while (count($lus_cookie) OR count($lus_champ)) {
43                                if ($a = array_shift($lus_cookie))
44                                        $lus[$a] = true;
45                                if ($a = array_shift($lus_champ))
46                                        $lus[$a] = true;
47                        }
48                        $lus = substr(join('-', array_keys($lus)),0,3000); # 3ko maximum
49                        // Mettre la base a jour
50                        sql_updateq("spip_auteurs",array('sedna',$lus),"id_auteur=".intval($id));
51                        $synchro = ' *';
52
53                        // Si le cookie n'est pas a jour, on l'update sur le brouteur
54                        if ($lus <> $_COOKIE['sedna_lu']) {
55                                include_spip('inc/cookie');
56                                spip_setcookie('sedna_lu', $lus,
57                                        time()+365*24*3600);
58                                        $_COOKIE['sedna_lu'] = $lus;
59                                // Signaler que la synchro a eu lieu
60                                $synchro = ' &lt;&lt;';
61                        }
62                }
63        }
64        // forcer le refresh ?
65        if ($id = intval(_request('refresh'))) {
66                include_spip('genie/syndic');
67                syndic_a_jour($id);
68        }
69}
70
71?>
Note: See TracBrowser for help on using the repository browser.