fix: redundant authentication code
This commit is contained in:
parent
771a60a4ad
commit
19138c2d46
3 changed files with 100 additions and 95 deletions
|
|
@ -1,15 +1,14 @@
|
|||
const db = require('../../db')
|
||||
|
||||
function validateUser (username, password) {
|
||||
const sql = 'SELECT id, username FROM users WHERE username=$1 AND password=$2'
|
||||
const sqlUpdateLastAccessed = 'UPDATE users SET last_accessed = now() WHERE username=$1'
|
||||
return db.tx(t => {
|
||||
const q1 = t.one('SELECT * FROM users WHERE username=$1 AND password=$2', [username, password])
|
||||
const q2 = t.none('UPDATE users SET last_accessed = now() WHERE username=$1', [username])
|
||||
|
||||
return db.one(sql, [username, password])
|
||||
.then(user => {
|
||||
return db.none(sqlUpdateLastAccessed, [user.username])
|
||||
.then(() => user)
|
||||
})
|
||||
.catch(() => false)
|
||||
return t.batch([q1, q2])
|
||||
.then(([user, _]) => user)
|
||||
.catch(() => false)
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue