Voeg thematische kleurplaten en creatieve niveaus toe (v0.4.65-beta) #3
3 changed files with 20 additions and 7 deletions
2
VERSION
2
VERSION
|
|
@ -1 +1 @@
|
|||
0.4.30-beta
|
||||
0.4.31-beta
|
||||
|
|
@ -85,10 +85,17 @@ updateEmptyHint();
|
|||
(async function(){
|
||||
updateBoardsUI();
|
||||
try{
|
||||
const me = await api("/auth/me");
|
||||
currentUser = me.user;
|
||||
/* /auth/me en /me/data hangen allebei alleen af van dezelfde sessie-cookie,
|
||||
niet van elkaars antwoord - serieel wachten (eerst wie-ben-ik, dan pas
|
||||
mijn-data ophalen) kost een hele round-trip voor niets. Parallel
|
||||
opvragen en het tweede antwoord meegeven aan hydrateFromServer()
|
||||
(die het gewoon negeert voor een leerling/ouder, zie daar) scheelt die
|
||||
round-trip in het veelvoorkomende geval (staf/thuisgebruiker). */
|
||||
const [meResult, dataResult] = await Promise.allSettled([api("/auth/me"), api("/me/data")]);
|
||||
if(meResult.status !== "fulfilled") throw meResult.reason;
|
||||
currentUser = meResult.value.user;
|
||||
updateUserUI();
|
||||
await hydrateFromServer();
|
||||
await hydrateFromServer(dataResult.status === "fulfilled" ? dataResult.value : null);
|
||||
}catch(e){
|
||||
resetToGuest();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
"use strict";
|
||||
/* version — shown until /api/version resolves (or if the fetch fails, e.g. offline).
|
||||
Kept in sync by hand with the VERSION file at the repo root on every release. */
|
||||
const VERSION = "0.4.30-beta";
|
||||
const VERSION = "0.4.31-beta";
|
||||
(function(){
|
||||
const tag = document.getElementById("verTag");
|
||||
tag.textContent = "v"+VERSION;
|
||||
|
|
@ -887,7 +887,13 @@ function persistWords(){
|
|||
function generalExtraFromData(data){
|
||||
return (data && data.generalExtra) ? data.generalExtra : {nl:[], en:[]};
|
||||
}
|
||||
async function hydrateFromServer(){
|
||||
/* prefetchedData: alleen gebruikt door de opstart-boot in app.js, die /me/data
|
||||
al parallel met /auth/me heeft opgehaald (zie daar) i.p.v. serieel te
|
||||
wachten - een leerling/ouder gebruikt het resultaat toch niet (zie de twee
|
||||
vroege returns hieronder), dus dat verzoek is nooit verspild werk, alleen
|
||||
soms ongebruikt. Elke andere aanroep (na inloggen, na een save-conflict)
|
||||
geeft niets mee en haalt gewoon vers op, zoals voorheen. */
|
||||
async function hydrateFromServer(prefetchedData){
|
||||
/* schoolleerlingen hebben geen eigen borden - zij zien enkel wat de
|
||||
leerkracht heeft toegewezen (zie pupil.js), nooit het whiteboard.
|
||||
Thuiskinderen (leerling zonder school, ouderportaal) vallen hier expres
|
||||
|
|
@ -911,7 +917,7 @@ async function hydrateFromServer(){
|
|||
}
|
||||
stopPupilView();
|
||||
stopParentView();
|
||||
const res = await api("/me/data");
|
||||
const res = prefetchedData || await api("/me/data");
|
||||
const d = res.data || {};
|
||||
DATA_REV = typeof res.rev === "number" ? res.rev : 0;
|
||||
THEMES = themesFromData(d);
|
||||
|
|
|
|||
Loading…
Reference in a new issue