- create: function(vid, fen, timeControl, players, cb)
- {
- db.serialize(function() {
- let query =
- "INSERT INTO Games (vid, fenStart, fen, score, timeControl) VALUES " +
- "(" + vid + ",'" + fen + "','" + fen + "','*','" + timeControl + "')";
+ checkGameInfo: function(g) {
+ if (!g.vid.toString().match(/^[0-9]+$/))
+ return "Wrong variant ID";
+ if (!g.cadence.match(/^[0-9dhms +]+$/))
+ return "Wrong characters in time control";
+ if (!g.fen.match(/^[a-zA-Z0-9, /-]*$/))
+ return "Bad FEN string";
+ if (g.players.length != 2)
+ return "Need exactly 2 players";
+ if (g.players.some(p => !p.id.toString().match(/^[0-9]+$/)))
+ return "Wrong characters in player ID";
+ return "";
+ },
+
+ create: function(vid, fen, cadence, players, cb)
+ {
+ db.serialize(function() {
+ let query =
+ "INSERT INTO Games " +
+ "(vid, fenStart, fen, score, cadence, created, drawOffer) " +
+ "VALUES " +
+ "(" + vid + ",'" + fen + "','" + fen + "','*','" + cadence + "'," + Date.now() + ",'')";