fix: ensure profile picture on admin user creation (#38)
This commit is contained in:
parent
6900c401de
commit
d3f85afa1d
2 changed files with 16 additions and 12 deletions
|
@ -48,7 +48,7 @@ module.exports = ({ db, config }) => {
|
|||
|
||||
router.use('/api', require('./api')({ db }))
|
||||
|
||||
router.use('/setup', require('./setup')(db))
|
||||
router.use('/setup', require('./setup')({ db, ensurePfp }))
|
||||
|
||||
router.use('/login', require('./login')({ ensurePfp }))
|
||||
router.use('/logout', require('./logout')())
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
const bcrypt = require('bcrypt-nodejs')
|
||||
const express = require('express')
|
||||
|
||||
module.exports = (db) => {
|
||||
module.exports = ({ db, ensurePfp }) => {
|
||||
const router = express.Router()
|
||||
|
||||
router.get('/',
|
||||
|
@ -19,19 +19,23 @@ module.exports = (db) => {
|
|||
async (req, res) => {
|
||||
const dbInfo = await db.info()
|
||||
if (dbInfo.doc_count === 0) {
|
||||
const username = req.body.adminUsername.trim()
|
||||
await new Promise((resolve, reject) => {
|
||||
bcrypt.hash(req.body.adminPassword, null, null, (err, adminPasswordHash) => {
|
||||
if (err) throw err
|
||||
db.put({
|
||||
_id: req.body.adminUsername.trim(),
|
||||
_id: username,
|
||||
password: adminPasswordHash,
|
||||
admin: true,
|
||||
wishlist: []
|
||||
})
|
||||
res.redirect('/')
|
||||
resolve()
|
||||
})
|
||||
} else {
|
||||
res.redirect('/')
|
||||
})
|
||||
await ensurePfp(username)
|
||||
}
|
||||
|
||||
res.redirect('/')
|
||||
}
|
||||
)
|
||||
|
||||
|
|
Loading…
Reference in a new issue