X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=server%2Fmodels%2FGame.js;h=32b2a6624b8fdc9127d9e88d61ead7096787ed49;hb=99f12ac0a1dc9633db08bf2804d7920d060fc214;hp=017d195d2045c5f84a8878283cac2529fa355407;hpb=77c5096644d83aaae8ab1dd42a5cde524507cf9d;p=vchess.git diff --git a/server/models/Game.js b/server/models/Game.js index 017d195d..32b2a662 100644 --- a/server/models/Game.js +++ b/server/models/Game.js @@ -81,7 +81,7 @@ const GameModel = // NOTE: g.scoreMsg can be NULL // (in this case score = "*" and no reason to look at it) "SELECT g.id, g.vid, g.fen, g.fenStart, g.timeControl, g.score, " + - "g.scoreMsg, v.name AS vname " + + "g.scoreMsg, g.drawOffer, v.name AS vname " + "FROM Games g " + "JOIN Variants v " + " ON g.vid = v.id " + @@ -138,7 +138,8 @@ const GameModel = db.all(query, (err,gameIds) => { if (!!err) return cb(err); - gameIds = gameIds || []; //might be empty + if (gameIds.length == 0) + return cb(null, []); let gameArray = []; for (let i=0; i { games.forEach(g => { @@ -271,13 +278,19 @@ const GameModel = "FROM Moves " + "WHERE gid = " + g.id; db.get(query, (err2,updated) => { - if (!updated && tsNow - g.created > 7*day) - return GameModel.remove(g.id); - const lastMaj = updated.lastMaj; - if (g.score != "*" && tsNow - lastMaj > 7*day || - g.score == "*" && tsNow - lastMaj > 91*day) + if (!updated.lastMaj) + { + if (tsNow - g.created > 7*day) + return GameModel.remove(g.id); + } + else //at least one move { - GameModel.remove(g.id); + const lastMaj = updated.lastMaj; + if (g.score != "*" && tsNow - lastMaj > 7*day || + g.score == "*" && tsNow - lastMaj > 91*day) + { + GameModel.remove(g.id); + } } }); });