mirror of
https://codeberg.org/demostf/api.git
synced 2026-06-03 18:04:08 +02:00
cleaner tokens
This commit is contained in:
parent
a1a9504f11
commit
7a6ff09eee
2 changed files with 14 additions and 15 deletions
|
|
@ -15,18 +15,19 @@ class UserProvider extends BaseProvider {
|
|||
}
|
||||
|
||||
public function store(\SteamId $steamId) {
|
||||
$sql = 'INSERT INTO users(steamid, name, avatar, token)
|
||||
SELECT ?, ?, ?, ? WHERE NOT EXISTS(SELECT id FROM users WHERE steamid = ?)';
|
||||
$this->query($sql, [
|
||||
$steamId->getSteamId64(),
|
||||
$steamId->getNickname(),
|
||||
$steamId->getMediumAvatarUrl(),
|
||||
$this->generator->generateString(64),
|
||||
$steamId->getSteamId64()
|
||||
]);
|
||||
$token = $this->generator->generateString(64, Generator::EASY_TO_READ);
|
||||
|
||||
$user = $this->db->user()->where('steamid', $steamId->getSteamId64());
|
||||
return $user->fetch()->token;
|
||||
$query = $this->getQueryBuilder();
|
||||
$query->insert('users')
|
||||
->values([
|
||||
'steamid' => $query->createNamedParameter($steamId->getSteamId64()),
|
||||
'name' => $query->createNamedParameter($steamId->getNickname()),
|
||||
'avatar' => $query->createNamedParameter($steamId->getMediumAvatarUrl()),
|
||||
'token' => $query->createNamedParameter($token)
|
||||
])->add('orderBy', 'ON CONFLICT DO NOTHING') // hack to append arbitrary string to sql
|
||||
->execute();
|
||||
|
||||
return $token;
|
||||
}
|
||||
|
||||
public function get($steamid) {
|
||||
|
|
|
|||
|
|
@ -36,11 +36,9 @@ class UserProviderTest extends TestCase {
|
|||
}
|
||||
|
||||
public function testByKey() {
|
||||
$this->provider->store($this->steamId);
|
||||
$token = $this->provider->store($this->steamId);
|
||||
|
||||
$user = $this->provider->get('76561198024494988');
|
||||
|
||||
$byKey = $this->provider->byKey($user['token']);
|
||||
$byKey = $this->provider->byKey($token);
|
||||
$this->assertEquals('76561198024494988', $byKey['steamid']);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue