Skip to content

Commit e084eea

Browse files
committed
Database connected
2 parents d3be332 + 49abf8e commit e084eea

4 files changed

Lines changed: 21 additions & 12 deletions

File tree

app.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,4 @@ dbAdapter.connectToDatabase();
5353

5454
//start application
5555
const port = process.env.PORT || 3000;
56-
app.listen(port, () => debugStartup(`Listening on port ${port}...`));
57-
58-
56+
app.listen(port, () => debugStartup(`Listening on port ${port}...`));

routes/users.js

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,11 @@ router.post('/password/reset/request/:email', async (req, res) => {
123123
});
124124

125125
router.put('/password/reset/:code', async (req, res) => {
126+
if (!req.params.code) {
127+
debugRoute("POST /api/verification/verify/:code - 400 - Code required");
128+
return res.status(400).send("Code required");
129+
}
130+
126131
if (!req.body.password) {
127132
debugRoute("GET /api/users/password/reset/:code - 400 - No password provided");
128133
return res.status(400).send("No password provided");
@@ -138,12 +143,11 @@ router.put('/password/reset/:code', async (req, res) => {
138143
return res.status(400).send(error.details[0].message);
139144
}
140145

141-
//TODO get user from database
142-
let user = {};
143-
//if (Date.now() - user.passwordResetTime > 600000) {
144-
// debugRoute("GET /api/users/password/reset/:code - 400 - Reset code expired");
145-
// return res.status(400).send("Reset code expired");
146-
//}
146+
let user = await dbAdapter.getUserByEmailVerificationCode(req.params.code);
147+
if (Date.now() - user.last_email_send > 600000) {
148+
debugRoute("GET /api/users/password/reset/:code - 400 - Reset code expired");
149+
return res.status(400).send("Reset code expired");
150+
}
147151

148152
const salt = bcrypt.genSaltSync(10);
149153
user.password = await bcrypt.hash(req.body.password, salt);

routes/verification.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,7 @@ router.post('/verify/:code', async (req, res) => {
5252
return res.status(400).send("Invalid code");
5353
}
5454

55-
//TODO find user in database
56-
let user = {}
55+
let user = await dbAdapter.getUserByEmailVerificationCode(req.params.code);
5756

5857
if (user.last_email_send < Date.now() - 259200000) {
5958
debugRoute("POST /api/verification/verify/:code - 400 - Verification code expired");

services/dbAdapter.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,13 @@ async function getUserByUsername(username) {
3434
return result.rows[0];
3535
}
3636

37+
async function getUserByEmailVerificationCode(code) {
38+
// Abfrage ausführen
39+
const result = await client.query('SELECT * FROM users WHERE email_verification_code = $1', [code])
40+
return result.rows[0];
41+
}
42+
43+
3744
async function updateUser(user) {
3845
const query = `
3946
UPDATE users
@@ -115,5 +122,6 @@ module.exports = {
115122
disconnectFromDatabase,
116123
createUser,
117124
getUserByUsername,
118-
updateUser
125+
updateUser,
126+
getUserByEmailVerificationCode
119127
}

0 commit comments

Comments
 (0)