-function UPDATE_LOGIN_DATA () {
- global $LAST, $_CONFIG;
- if (!is_array($LAST)) $LAST = array();
-
- // Recheck if logged in
- if (!IS_MEMBER()) return false;
-
- // Secure user ID
- $GLOBALS['userid'] = bigintval(get_session('userid'));
-
- // Extract last online time (life) and how long is auto-login valid (time)
- $newl = time() + bigintval(get_session('lifetime'));
-
- // Load last module and last online time
- $result = SQL_QUERY_ESC("SELECT last_module, last_online FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
- if (SQL_NUMROWS($result) == 1) {
- // Load last module and online time
- list($mod, $onl) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
-
- // Maybe first login time?
- if (empty($mod)) $mod = "login";
-
- if (set_session("userid", $GLOBALS['userid'], $newl, COOKIE_PATH) && set_session("u_hash", get_session('u_hash'), $newl, COOKIE_PATH) && set_session("lifetime", bigintval(get_session('lifetime')), $newl, COOKIE_PATH)) {
- // This will be displayed on welcome page! :-)
- if (empty($LAST['module'])) {
- $LAST['module'] = $mod; $LAST['online'] = $onl;
- } // END - if
-
- // "what" not set?
- if (empty($GLOBALS['what'])) {
- // Fix it to default
- $GLOBALS['what'] = "welcome";
- if (!empty($_CONFIG['index_home'])) $GLOBALS['what'] = $_CONFIG['index_home'];
- } // END - if
-
- // Update last module / online time
- $result = SQL_QUERY_ESC("UPDATE `"._MYSQL_PREFIX."_user_data` SET last_module='%s', last_online=UNIX_TIMESTAMP(), REMOTE_ADDR='%s' WHERE userid=%s LIMIT 1",
- array($GLOBALS['what'], GET_REMOTE_ADDR(), $GLOBALS['userid']), __FILE__, __LINE__);
- }
- } else {
- // Destroy session, we cannot update!
- destroy_user_session();
- }
-}
-//