X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=server%2Fmodels%2FGame.js;h=78827e29e56871bf09f7810704b509adbd054f6e;hb=8c564f462f5406fcd311d4733f851daf6ada665d;hp=94056c57a2491390dc63909ea13353f06e47b99c;hpb=a9b131f10ee55bd96c60180c55666df4b1f4dc4d;p=vchess.git diff --git a/server/models/Game.js b/server/models/Game.js index 94056c57..78827e29 100644 --- a/server/models/Game.js +++ b/server/models/Game.js @@ -31,19 +31,19 @@ const GameModel = db.serialize(function() { let query = "INSERT INTO Games (vid, fen, timeControl) " + - "VALUES (" + vid + ",'" + fen + "'," + timeControl + ")"; - db.run(insertQuery, err => { + "VALUES (" + vid + ",'" + fen + "','" + timeControl + "')"; + db.run(query, function(err) { if (!!err) return cb(err); - db.get("SELECT last_insert_rowid() AS rowid", (err2,lastId) => { - players.forEach(p => { - query = - "INSERT INTO Players VALUES " + - // Remaining time = -1 means "unstarted" - "(" + lastId["rowid"] + "," + p.id + "," + p.color + ", -1)"; - db.run(query, cb); - }); - }); + players.forEach((p,idx) => { + const color = (idx==0 ? "w" : "b"); + query = + "INSERT INTO Players VALUES " + + // Remaining time = -1 means "unstarted" + "(" + this.lastID + "," + p.id + ",'" + color + "', -1)"; + db.run(query); + }); + cb(null, {gid: this.lastID}); }); }); }, @@ -104,6 +104,7 @@ const GameModel = db.run(query, (err,gameIds) => { if (!!err) return cb(err); + gameIds = gameIds || []; //might be empty let gameArray = []; gameIds.forEach(gidRow => { GameModel.getOne(gidRow["gid"], (err2,game) => {