From ef448836e74e86d5254daf52928e30ab65a6ee19 Mon Sep 17 00:00:00 2001 From: mrjvs Date: Sat, 12 Jan 2019 17:17:58 +0100 Subject: [PATCH] added forget password frontend --- assets/js/api.js | 18 ++++++++++++++++++ locales/US_en.json | 10 ++++++++++ routes/pnid.js | 11 +++++++++++ views/forgot.hbs | 28 ++++++++++++++++++++++++++++ views/login.hbs | 1 + 5 files changed, 68 insertions(+) create mode 100644 views/forgot.hbs diff --git a/assets/js/api.js b/assets/js/api.js index 643549a..26e42dc 100644 --- a/assets/js/api.js +++ b/assets/js/api.js @@ -40,6 +40,24 @@ function login() { } } +function passwordForgot() { + var xhr = postAjax('/api/v1/passwordforgot', { + email: document.getElementById('email_input').value + }); + xhr.onload = function () { + if (xhr.responseText.charAt(0) !== "{") { + return showErrorPopup('Whoops, something went wrong. Try again later.'); + } + response = JSON.parse(xhr.responseText); + if (response.success === true) { + document.getElementById('email_input').value = ''; + return showSuccessPopup('An email has been sent to your email address.'); + } else if (response.errors) { + showErrorPopup(response.errors); + } + } +} + function passwordReset() { var xhr = postAjax('/api/v1/passwordreset', { password: document.getElementById('password_input').value, diff --git a/locales/US_en.json b/locales/US_en.json index 8cd72ba..9308832 100644 --- a/locales/US_en.json +++ b/locales/US_en.json @@ -51,6 +51,8 @@ "email_text": "Username or Email", "password_text": "Password", "button_text": "Sign In", + "forgotpass_introduction": "Forgot password?", + "forgotpass_text": "Click here to reset it.", "link_introduction": "Don't have an account yet?", "link_text": "Click here to register." } @@ -77,6 +79,14 @@ "button_text": "Reset password" } }, + "forgot": { + "card": { + "caption": "Did you forget something?", + "title": "Forgot password", + "email_text": "Email address", + "button_text": "Send email" + } + }, "about": { "caption": "What is this?", "title": "About", diff --git a/routes/pnid.js b/routes/pnid.js index b9717bf..e74d1b0 100644 --- a/routes/pnid.js +++ b/routes/pnid.js @@ -41,6 +41,17 @@ router.get('/pnid/login', (request, response) => { locale: utilHelper.getLocale('US', 'en') }); }); +// renders password forget +router.get('/pnid/forgotpassword', (request, response) => { + return response.render('forgot', { + title: 'Pretendo | Forgot password', + description: 'On the Pretendo Network ID Dashboard you can manage your personal information and make new virtual consoles to use for login on your home console.', + url: request.protocol + '://' + request.get('host') + request.originalUrl, + baseurl: request.protocol + '://' + request.get('host'), + locale: utilHelper.getLocale('US', 'en'), + user: utilHelper.templateReadyUser(request) + }); +}); // renders password reset page router.get('/pnid/passwordreset', (request, response) => { return response.render('password', { diff --git a/views/forgot.hbs b/views/forgot.hbs new file mode 100644 index 0000000..dcdce44 --- /dev/null +++ b/views/forgot.hbs @@ -0,0 +1,28 @@ + + + + {{> metatags }} + {{ title }} + + + + + + + +
+

{{ locale.nav.brand }}

+
+

{{ locale.forgot.card.caption }}

+

{{ locale.forgot.card.title }}

+
+
+ + +
+ +
+
+ {{> footer-default }} + + diff --git a/views/login.hbs b/views/login.hbs index cd7c5f8..308e7bd 100644 --- a/views/login.hbs +++ b/views/login.hbs @@ -21,6 +21,7 @@ +

{{ locale.login.card.forgotpass_introduction }} {{ locale.login.card.forgotpass_text }}

{{ locale.login.card.link_introduction }} {{ locale.login.card.link_text }}