[ Index ]
 

Code source de SPIP 1.9.2c

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/ecrire/action/ -> logout.php (source)

   1  <?php
   2  
   3  /***************************************************************************\
   4   *  SPIP, Systeme de publication pour l'internet                           *
   5   *                                                                         *
   6   *  Copyright (c) 2001-2007                                                *
   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  if (!defined("_ECRIRE_INC_VERSION")) return;
  14  
  15  include_spip('inc/cookie');
  16  
  17  // http://doc.spip.org/@action_logout_dist
  18  function action_logout_dist()
  19  {
  20      global $auteur_session, $ignore_auth_http;
  21      $logout =_request('logout');
  22      $url = _request('url');
  23      spip_log("logout $logout $url" . $auteur_session['id_auteur']);
  24      // cas particulier, logout dans l'espace public
  25      if ($logout == 'public' AND !$url)
  26          $url = url_de_base();
  27  
  28      // seul le loge peut se deloger (mais id_auteur peut valoir 0 apres une restauration avortee)
  29      if (is_numeric($auteur_session['id_auteur'])) {
  30          spip_query("UPDATE spip_auteurs SET en_ligne = DATE_SUB(NOW(),INTERVAL 15 MINUTE) WHERE id_auteur = ".$auteur_session['id_auteur']);
  31      // le logout explicite vaut destruction de toutes les sessions
  32          if ($_COOKIE['spip_session']) {
  33              $session = charger_fonction('session', 'inc');
  34              $session($auteur_session['id_auteur']);
  35              spip_setcookie('spip_session', '', 0);
  36          }
  37          if ($_SERVER['PHP_AUTH_USER'] AND !$ignore_auth_http) {
  38              include_spip('inc/actions');
  39              if (verifier_php_auth()) {
  40                ask_php_auth(_T('login_deconnexion_ok'),
  41                         _T('login_verifiez_navigateur'),
  42                         _T('login_retour_public'),
  43                             "redirect=". _DIR_RESTREINT_ABS, 
  44                         _T('login_test_navigateur'),
  45                         true);
  46                exit;
  47              }
  48          }
  49      }
  50      redirige_par_entete($url ? $url : generer_url_public('login'));
  51  }
  52  ?>


Généré le : Wed Nov 21 10:20:27 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics