Ignore:
Timestamp:
Jul 28, 2006, 11:34:27 AM (18 years ago)
Author:
nikrou
Message:

Fix bug 451: improvement
small problem with reconnexion after session timeout
add auto-login function
all staff for session (connexion, auto-login and logout)
is now in include/user.inc.php

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/functions_user.inc.php

    r1493 r1511  
    551551function log_user($user_id, $remember_me)
    552552{
    553   global $conf;
     553  global $conf, $user;
    554554
    555555  if ($remember_me)
     
    582582  session_start();
    583583  $_SESSION['pwg_uid'] = $user_id;
     584
     585  $user['id'] = $_SESSION['pwg_uid'];
     586  $user['is_the_guest'] = false;
     587}
     588
     589/*
     590 * Performs auto-connexion when cookie remember_me exists
     591 * @return void
     592*/
     593function auto_login() {
     594  global $conf;
     595
     596  $cookie = unserialize(pwg_stripslashes($_COOKIE[$conf['remember_me_name']]));
     597  $query = '
     598SELECT auto_login_key
     599  FROM '.USERS_TABLE.'
     600  WHERE '.$conf['user_fields']['id'].' = '.$cookie['id'].'
     601;';
     602
     603  $auto_login_key = current(mysql_fetch_assoc(pwg_query($query)));
     604  if ($auto_login_key == $cookie['key'])
     605  {
     606    log_user($cookie['id'], false);
     607    redirect(make_index_url());
     608  }
     609  else
     610  {
     611    setcookie($conf['remember_me_name'], '', 0, cookie_path());
     612    redirect(make_index_url());
     613  }
    584614}
    585615
Note: See TracChangeset for help on using the changeset viewer.