From 0d2fdeb13031aafd203ffeac47496a7ebae7e2e6 Mon Sep 17 00:00:00 2001 From: Jonathan Barrow Date: Thu, 25 Nov 2021 14:19:39 -0500 Subject: [PATCH] Added error check for login --- public/assets/css/login.css | 23 +++++++++++++++++++++++ src/routers/account.js | 24 +++++++++++------------- views/account_login.handlebars | 10 +++++++++- 3 files changed, 43 insertions(+), 14 deletions(-) diff --git a/public/assets/css/login.css b/public/assets/css/login.css index 9dc8e09..09fd606 100644 --- a/public/assets/css/login.css +++ b/public/assets/css/login.css @@ -82,4 +82,27 @@ form.login .register button { footer { margin-top: 23px; +} + +@keyframes banner-notice { + 0% {top: -150px} + 20% {top: 35px} + 80% {top: 35px} + 100% {top: -150px} +} +.banner-notice { + display: flex; + justify-content: center; + position: fixed; + top: -150px; + width: 100%; + animation: banner-notice 5s; +} +.banner-notice div { + padding: 4px 36px; + border-radius: 5px; + z-index: 3; +} +.banner-notice.error div { + background: #A9375B; } \ No newline at end of file diff --git a/src/routers/account.js b/src/routers/account.js index d6214e3..1df4fcf 100644 --- a/src/routers/account.js +++ b/src/routers/account.js @@ -176,16 +176,16 @@ router.get('/', async (request, response) => { }); router.get('/login', async (request, response) => { - const reqLocale = request.locale; - const locale = util.getLocale(reqLocale.region, reqLocale.language); - - const localeString = reqLocale.toString(); - - response.render('account_login', { + const renderData = { layout: 'main', - locale, - localeString, - }); + locale: util.getLocale(request.locale.region, request.locale.language), + localeString: request.locale.toString(), + error: request.cookies.error + }; + + response.clearCookie('error'); + + response.render('account_login', renderData); }); router.post('/login', async (request, response) => { @@ -198,10 +198,8 @@ router.post('/login', async (request, response) => { }); if (apiResponse.statusCode !== 200) { - // TODO: Error message - return response.status(apiResponse.statusCode).json({ - error: 'Bad' - }); + response.cookie('error', apiResponse.body.error); + return response.redirect('/account/login'); } const tokens = apiResponse.body; diff --git a/views/account_login.handlebars b/views/account_login.handlebars index 4c55341..239a764 100644 --- a/views/account_login.handlebars +++ b/views/account_login.handlebars @@ -31,4 +31,12 @@ {{> footer }} - \ No newline at end of file + + +{{#if error}} + +{{/if}} \ No newline at end of file