summaryrefslogtreecommitdiff
path: root/database/games.js
blob: b378eb2610cacfadbe1eb010d2c40d4164cb2c61 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import db from "./db.js";

const createGameStatement = db.prepare("INSERT INTO games (player1, player2, data) VALUES (?, ?, ?);");
const getGameStatement = db.prepare("SELECT * from games where id = ?;");
const listGamesStatement = db.prepare("SELECT * from games where player1 = ?1 OR player2 = ?1 ORDER BY last_move_at;");

export function createGame(player1, player2, data) {
	try {
		return createGameStatement.run(player1, player2, data).lastInsertRowId;
	} catch {
		return null;
	}
}

export function getGame(id) {
	try {
		return getGameStatement.get(id);
	} catch {
		return null;
	}
}

export function listGames(userId) {
	try {
		return listGamesStatement.all({ 1: userId });
	} catch {
		return [];
	}
}