source: spip-zone/_grenier_/balise_session/session.php @ 50816

Last change on this file since 50816 was 15641, checked in by cedric@…, 13 years ago

ne generer un marqueur que quand id_auteur est dans auteur_session
(cas tordu ou un plugin stocke des choses dans auteur_session mme si non connecte)

File size: 2.2 KB
Line 
1<?php
2
3/***************************************************************************\
4 *  SPIP, Systeme de publication pour l'internet                           *
5 *                                                                         *
6 *  Copyright (c) 2001-2006                                                *
7 *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
8 *                                                                         *
9 *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
10 *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
11\***************************************************************************/
12
13/*
14        Modifications : James pour la balise #SESSION (2006)
15*/
16# ou est l'espace prive ?
17@define('_DIR_RESTREINT_ABS', 'ecrire/');
18include_once _DIR_RESTREINT_ABS.'inc_version.php';
19
20# rediriger les anciens URLs de la forme page.php3fond=xxx
21if (isset($_GET['fond']))
22        redirige_par_entete(generer_url_public($_GET['fond']));
23
24$tmp_marqueur = $GLOBALS['marqueur'];
25
26if(isset($GLOBALS['auteur_session']) AND is_array($GLOBALS['auteur_session']) AND isset($GLOBALS['auteur_session']['id_auteur'])) {
27        if(@function_exists('session_start') AND isset($contexte_inclus['session'])){
28                $contexte_inclus['session'] = $contexte_inclus['session'] ?
29                        strtoupper($contexte_inclus['session']) :
30                        'SPIPSESSID';
31                $session = session_name($contexte_inclus['session']);
32                session_start();
33                $GLOBALS['auteur_session'] = array_merge(
34                        $_SESSION,
35                        $GLOBALS['auteur_session']
36                );
37                //faire un cache base sur le contenu de $_SESSION
38                $GLOBALS['marqueur'] .= ':'.md5(serialize($_SESSION));
39        }
40
41        //faire un cache base sur l'id_auteur
42        $GLOBALS['marqueur'] .= ':session'.$GLOBALS['auteur_session']['id_auteur'];
43        //pour faire un cache base sur le statut des visiteurs, decommenter la ligne
44        //ci desous, et ajouter un # devant la ligne au dessus.
45        //vous pouvez aussi cloner ce fichier et le nommer statut.php
46        //puis appeler <INCLURE(statut.php){fond=page_visiteurs}> dans vos squelettes
47        #$GLOBALS['marqueur'] .= ':'.$GLOBALS['auteur_session']['statut'];
48
49}
50# au travail...
51include _DIR_RESTREINT_ABS.'public.php';
52
53$GLOBALS['marqueur'] = $tmp_marqueur;
54
55?>
Note: See TracBrowser for help on using the repository browser.