{
db.serialize(function() {
let query =
- "INSERT INTO Games (vid, fenStart, fen, score, timeControl, created)"
+ "INSERT INTO Games"
+ + " (vid, fenStart, fen, score, timeControl, created, drawOffer)"
+ " VALUES (" + vid + ",'" + fen + "','" + fen + "','*','"
- + timeControl + "'," + Date.now() + ")";
+ + timeControl + "'," + Date.now() + "," + false + ")";
db.run(query, function(err) {
if (!!err)
return cb(err);
});
},
- // obj can have fields move, fen and/or score
+ // obj can have fields move, message, fen, drawOffer and/or score
update: function(id, obj)
{
db.parallelize(function() {
let query =
"UPDATE Games " +
"SET ";
+ if (!!obj.message)
+ query += "message = message || ' ' || '" + obj.message + "',";
+ if (!!obj.drawOffer)
+ query += "drawOffer = " + obj.drawOffer + ",";
if (!!obj.fen)
query += "fen = '" + obj.fen + "',";
if (!!obj.score)
{
const m = obj.move;
query =
- "INSERT INTO Moves (gid, squares, message, played, idx) VALUES " +
- "(" + id + ",'" + JSON.stringify(m.squares) + "','" + m.message +
- "'," + m.played + "," + m.idx + ")";
+ "INSERT INTO Moves (gid, squares, played, idx) VALUES " +
+ "(" + id + ",'" + JSON.stringify(m.squares) + "',"
+ + m.played + "," + m.idx + ")";
db.run(query);
}
});