예제 #1
0
     $DB->query("SELECT Enabled FROM users_main WHERE ID='{$LoggedUser['ID']}'");
     list($Enabled) = $DB->next_record();
     $Cache->cache_value('enabled_' . $LoggedUser['ID'], $Enabled, 0);
 }
 if ($Enabled == 2) {
     logout();
 }
 // Get info such as username
 $LightInfo = user_info($LoggedUser['ID']);
 $HeavyInfo = user_heavy_info($LoggedUser['ID']);
 // Get user permissions
 $Permissions = get_permissions($LightInfo['PermissionID']);
 // Create LoggedUser array
 $LoggedUser = array_merge($HeavyInfo, $LightInfo, $Permissions);
 if (!isset($LoggedUser['ID'])) {
     $Debug->log_var($LightInfo, 'LightInfo');
     $Debug->log_var($HeavyInfo, 'HeavyInfo');
     $Debug->log_var($Permissions, 'Permissions');
 }
 //Load in the permissions
 $LoggedUser['Permissions'] = get_permissions_for_user($LoggedUser['ID'], $LoggedUser['CustomPermissions']);
 //Change necessary triggers in external components
 $Cache->CanClear = check_perms('admin_clear_cache');
 // Because we <3 our staff
 if (check_perms('site_disable_ip_history')) {
     $_SERVER['REMOTE_ADDR'] = '127.0.0.1';
 }
 // Update LastUpdate every 10 minutes
 if (strtotime($UserSessions[$SessionID]['LastUpdate']) + 600 < time()) {
     $DB->query("UPDATE users_main SET LastAccess='" . sqltime() . "' WHERE ID='{$LoggedUser['ID']}'");
     $DB->query("UPDATE users_sessions SET IP='" . $_SERVER['REMOTE_ADDR'] . "', Browser='" . $Browser . "', OperatingSystem='" . $OperatingSystem . "', LastUpdate='" . sqltime() . "' WHERE UserID='{$LoggedUser['ID']}' AND SessionID='" . db_string($SessionID) . "'");