X-Git-Url: https://git.auder.net/assets/current/git-favicon.png?a=blobdiff_plain;f=client%2Fsrc%2Futils%2FgameStorage.js;h=f995828da081f239b2d1d795aa559822e2e58023;hb=7f36b53a818bd707e49e7109275e3659e97d91b4;hp=a9ebf33ae234b5aa49052dd39aad1d599f50d0d5;hpb=63ca2b89cfe577efd168c6b2e26750cb01b66d64;p=vchess.git diff --git a/client/src/utils/gameStorage.js b/client/src/utils/gameStorage.js index a9ebf33a..f995828d 100644 --- a/client/src/utils/gameStorage.js +++ b/client/src/utils/gameStorage.js @@ -4,7 +4,7 @@ // vname: string, // fenStart: string, // players: array of sid+id+name, -// timeControl: string, +// cadence: string, // increment: integer (seconds), // mode: string ("live" or "corr") // imported: boolean (optional, default false) @@ -17,6 +17,7 @@ // } import { ajax } from "@/utils/ajax"; +import { store } from "@/store"; function dbOperation(callback) { @@ -24,7 +25,7 @@ function dbOperation(callback) let DBOpenRequest = window.indexedDB.open("vchess", 4); DBOpenRequest.onerror = function(event) { - alert("Database error: " + event.target.errorCode); + alert(store.state.tr["Database error:"] + " " + event.target.errorCode); }; DBOpenRequest.onsuccess = function(event) { @@ -36,7 +37,7 @@ function dbOperation(callback) DBOpenRequest.onupgradeneeded = function(event) { let db = event.target.result; db.onerror = function(event) { - alert("Error while loading database: " + event.target.errorCode); + alert(store.state.tr["Error while loading database:"] + " " + event.target.errorCode); }; // Create objectStore for vchess->games let objectStore = db.createObjectStore("games", { keyPath: "id" }); @@ -47,7 +48,6 @@ function dbOperation(callback) export const GameStorage = { // Optional callback to get error status - // TODO: this func called from Hall seems to not work now... add: function(game, callback) { dbOperation((db) => { @@ -58,7 +58,7 @@ export const GameStorage = callback({}); //everything's fine } transaction.onerror = function() { - callback({errmsg: "addGame failed: " + transaction.error}); + callback({errmsg: store.state.tr["Game retrieval failed:"] + " " + transaction.error}); }; } let objectStore = transaction.objectStore("games"); @@ -67,7 +67,8 @@ export const GameStorage = }, // TODO: also option to takeback a move ? - update: function(gameId, obj) //chat, move, fen, clocks, score, initime, ... + // obj: chat, move, fen, clocks, score[Msg], initime, ... + update: function(gameId, obj) { if (Number.isInteger(gameId) || !isNaN(parseInt(gameId))) { @@ -79,10 +80,12 @@ export const GameStorage = gid: gameId, newObj: { + // Some fields may be undefined: chat: obj.chat, - move: obj.move, //may be undefined... + move: obj.move, fen: obj.fen, score: obj.score, + scoreMsg: obj.scoreMsg, drawOffer: obj.drawOffer, } } @@ -174,7 +177,7 @@ export const GameStorage = callback({}); //everything's fine } transaction.onerror = function() { - callback({errmsg: "removeGame failed: " + transaction.error}); + callback({errmsg: store.state.tr["Game removal failed:"] + " " + transaction.error}); }; } transaction.objectStore("games").delete(gameId);