v1.13.0: Reset Password

This commit is contained in:
Wingy 2020-10-30 11:15:00 -04:00
parent 10c585d230
commit 22ebde8a0b
7 changed files with 134 additions and 11 deletions

View file

@ -10,7 +10,7 @@ block content
.columns
.column
if user.signupToken
- const link = `${_CC.config.base}confirm-account/${user.signupToken}`
- const signupLink = `${_CC.config.base}confirm-account/${user.signupToken}`
.box(style='overflow: hidden;')
.columns(style='margin-bottom: 0;')
.column.is-narrow(style='padding-bottom: 0;')
@ -30,7 +30,7 @@ block content
form(method='POST', action=`${_CC.config.base}admin-settings/edit/refresh-signup-token/${user._id}`)
input.button.is-rounded(type='submit', value='Generate New Link')
.level-item
a(href=link, style='font-family: monospaced; word-break: break-all;')= link
a(href=signupLink, style='font-family: monospaced; word-break: break-all;')= signupLink
h2 Change Name
form(action=`${_CC.config.base}admin-settings/edit/rename/${user._id}`, method='POST')
.field
@ -42,6 +42,31 @@ block content
.field
.control
input.button.is-primary(type='submit' value='Change Username')
h2(style='margin-bottom: 1em;') Reset Password
if user.pwToken
- const resetLink = `${_CC.config.base}resetpw/${user.pwToken}`
p There is a reset password link for this user.
if user.pwExpiry > new Date().getTime()
span It expires #{_CC.require('moment')(user.pwExpiry).fromNow()}
else
span.has-text-weight-bold.has-text-danger It expired #{_CC.require('moment')(user.pwExpiry).fromNow()}
a(href=resetLink)= resetLink
.columns
.column.is-narrow
form(method='POST', action=`${_CC.config.base}admin-settings/edit/resetpw/${user._id}`)
.field
.control
input.button.is-primary(type='submit' value='Refresh Password Reset Link')
.column.is-narrow
form(method='POST', action=`${_CC.config.base}admin-settings/edit/cancelresetpw/${user._id}`)
.field
.control
input.button.is-info(type='submit' value='Cancel Password Reset Link')
else
form(method='POST', action=`${_CC.config.base}admin-settings/edit/resetpw/${user._id}`)
.field
.control
input.button.is-danger(type='submit' value='Create Password Reset Link')
.column.is-narrow
h2 Irreversible Deletion
form(method='POST', action=`${_CC.config.base}admin-settings/edit/remove/${user._id}`)

34
views/resetpw.pug Normal file
View file

@ -0,0 +1,34 @@
extends layout.pug
mixin icon(c, text)
.columns.is-vcentered.is-mobile
.column.is-narrow
span.icon.is-large
i.fa-3x(class=c)
.column #{text}
block title
if doc
h1 #{config.siteTitle} | Reset Password
else
h1 #{config.siteTitle} | Reset Link Invalid
block content
if doc
if doc.pwExpiry > new Date().getTime()
+icon('fas fa-smile-beam', `Hello ${doc._id}! Please set your password here.`)
form(method='POST')
.field
label.label Password
.control.has-icons-left
input.input(type='password', name='password', placeholder='pa$$word!')
span.icon.is-small.is-left
i.fas.fa-lock
.field
.control
input.button.is-primary(type='submit' value=`Reset Password`)
else
+icon('fas fa-frown-open', 'Your reset link has expired. Please ask for a new one.')
else
+icon('fas fa-frown-open', "This reset link isn't valid, perhaps the link was canceled or some characters at the end got cut off?")