From 175f0235d0c292740d67de9b7414b123f67a8516 Mon Sep 17 00:00:00 2001 From: mrfry Date: Wed, 13 Jan 2021 10:40:30 +0100 Subject: [PATCH] User specific motd changes (again) --- src/modules/api/api.ts | 63 +++++++++++++--------------------- submodules/qmining-data-editor | 2 +- submodules/qmining-page | 2 +- 3 files changed, 25 insertions(+), 42 deletions(-) diff --git a/src/modules/api/api.ts b/src/modules/api/api.ts index ef47b5b..83e456c 100644 --- a/src/modules/api/api.ts +++ b/src/modules/api/api.ts @@ -130,7 +130,6 @@ function GetApp(): ModuleType { '/register', '/favicon.ico', '/login', - '/postfeedbackfile', '/postfeedback', '/fosuploader', '/badtestsender', @@ -208,39 +207,6 @@ function GetApp(): ModuleType { rootRedirectURL = utils.ReadFile(rootRedirectToFile) } - function userShouldGetUserSpecificMOTD(id, cid) { - let shouldSee = true - let write = false - - if (!userSpecificMotd[id].seen) { - logger.Log( - `User #${id}'s user specific motd is now seen.`, - logger.GetColor('bluebg') - ) - logger.Log(userSpecificMotd[id].msg) - - userSpecificMotd[id].seen = true - write = true - } - - if (userSpecificMotd[id].seeCounter) { - if (userSpecificMotd[id].seeCounter <= 1) { - shouldSee = false - } else if (cid) { - userSpecificMotd[id].seeCounter -= 1 - write = true - } - } - - if (write) { - utils.WriteFile( - JSON.stringify(userSpecificMotd, null, 2), - userSpecificMotdFile - ) - } - return shouldSee - } - const filesToWatch = [ { fname: userSpecificMotdFile, @@ -1296,7 +1262,6 @@ function GetApp(): ModuleType { app.get('/infos', function(req: Request, res) { const user: User = req.session.user - const cid: any = req.query.cid const result: any = { result: 'success', @@ -1311,15 +1276,33 @@ function GetApp(): ModuleType { } if (req.query.motd) { result.motd = motd - result.userSpecificMotd = userSpecificMotd[user.id].msg - result.userShouldGetUserSpecificMOTD = userShouldGetUserSpecificMOTD( - user.id, - cid - ) + result.userSpecificMotd = { + msg: userSpecificMotd[user.id].msg, + seen: userSpecificMotd[user.id].seen, + } } res.json(result) }) + app.post('/infos', (req: Request, res) => { + const user: User = req.session.user + + if (req.body.userSpecificMotdSeen) { + userSpecificMotd[user.id].seen = true + + logger.Log( + `User #${user.id}'s user specific motd is now seen.`, + logger.GetColor('bluebg') + ) + utils.WriteFile( + JSON.stringify(userSpecificMotd, null, 2), + userSpecificMotdFile + ) + } + + res.json({ msg: 'done' }) + }) + app.post('/registerscript', function(req: Request, res) { logger.LogReq(req) diff --git a/submodules/qmining-data-editor b/submodules/qmining-data-editor index 07b3476..2d6211a 160000 --- a/submodules/qmining-data-editor +++ b/submodules/qmining-data-editor @@ -1 +1 @@ -Subproject commit 07b34762c3265abde099297f1794349022f2e12d +Subproject commit 2d6211a80af3ccd6fe78d6e30c98f340f0579ac8 diff --git a/submodules/qmining-page b/submodules/qmining-page index 21bd0c0..23dc619 160000 --- a/submodules/qmining-page +++ b/submodules/qmining-page @@ -1 +1 @@ -Subproject commit 21bd0c01771cce8f693a32a0ae5d2f5fda4d55fb +Subproject commit 23dc6197ad6913cf3e3f0a950fabf05c943cfffa