/** * Actual login! Performs the login of a user using pre-vetted info! * Creates the cookie and session stuff for the login process. * * @return void */ function _login_user($p_username, $p_player_id, $p_account_id) { if (!$p_username || !$p_player_id || !$p_account_id) { throw new \Exception('Request made to _login_user without all of username, player_id, and account_id being set.'); } $_COOKIE['username'] = $p_username; // May want to keep this for relogin easing purposes. update_activity_log($p_player_id); update_last_logged_in($p_player_id); $update = "UPDATE players SET active = 1 WHERE player_id = :char_id"; query($update, array(':char_id' => array($p_player_id, PDO::PARAM_INT))); $session = SessionFactory::getSession(); $session->set('username', $p_username); // Actually char name $session->set('player_id', $p_player_id); // Actually char id. $session->set('account_id', $p_account_id); }
/** * Actual login! Performs the login of a user using pre-vetted info! * Creates the cookie and session stuff for the login process. **/ function _login_user($p_username, $p_player_id, $p_account_id) { if (!$p_username || !$p_player_id || !$p_account_id) { throw new Exception('Request made to _login_user without all of username, player_id, and account_id being set.'); } SESSION::commence(); // Start a session on a successful login. $_COOKIE['username'] = $p_username; // May want to keep this for relogin easing purposes. SESSION::set('username', $p_username); // Actually char name SESSION::set('player_id', $p_player_id); // Actually char id. SESSION::set('account_id', $p_account_id); update_activity_log($p_player_id); update_last_logged_in($p_player_id); $up = "UPDATE players SET active = 1 WHERE player_id = :char_id"; query($up, array(':char_id' => array($p_player_id, PDO::PARAM_INT))); }
/** * Sets the extra settings after successful login, does not perform the authentication. **/ function setup_logged_in($player_id, $username) { $_COOKIE['username'] = $username; SESSION::set('player_id', $player_id); SESSION::set('username', $username); update_activity_log($username); // Block by ip list here, if necessary. $player_data = get_player_info(); /* $players_id = $player_data['player_id']; $player_id = $players_id; // Just two aliases for the player id. $players_email = $player_data['email']; // password and messages intentionally excluded. $players_turns = $player_data['turns']; $players_health = $player_data['health']; $players_bounty = $player_data['bounty']; $players_gold = $player_data['gold']; $players_level = $player_data['level']; $players_class = $player_data['class']; $players_strength = $player_data['strength']; $players_kills = $player_data['kills']; $players_days = $player_data['days']; $players_created_date = $player_data['created_date']; $players_last_started_attack = $player_data['last_started_attack']; $players_clan = $player_data['clan_long_name']; // TODO: not ready yet: $players_energy = $player_data['energy']; // Also migrate the player_score to a true player object. // Also migrate the rank_id to a true player object. $players_status = getStatus($username);*/ put_player_info_in_session($player_data); }