forked from mascaldotfr/CoRT
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
move db initialization and emailVerification
- Loading branch information
1 parent
a7ae1bc
commit d9381ce
Showing
3 changed files
with
60 additions
and
43 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
const mysql = require('mysql'); | ||
|
||
require('dotenv').config(); | ||
const DB_HOST = process.env.DB_HOST; | ||
const DB_USER = process.env.DB_USER; | ||
const DB_PASS = process.env.DB_PASS; | ||
const DB_NAME = process.env.DB_NAME; | ||
const DB_PORT = process.env.DB_PORT; | ||
|
||
const connection = mysql.createConnection({ | ||
host: DB_HOST, | ||
user: DB_USER, | ||
password: DB_PASS, | ||
database: DB_NAME, | ||
port: DB_PORT, | ||
}); | ||
|
||
connection.connect((err) => { | ||
if (err) { | ||
console.error('Error connecting to the database: ' + err.stack); | ||
return; | ||
} | ||
console.log('Connected to the database as id ' + connection.threadId); | ||
}); | ||
|
||
module.exports = connection; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
const express = require('express'); | ||
const router = express.Router(); | ||
const db = require('./dbInit'); // Adjust the path as necessary | ||
// const logger = require('./logger'); // Adjust the path as necessary | ||
|
||
router.get('/user/email/verify/:email_verification_key', (req, res) => { | ||
const email_verification_key = req.params.email_verification_key; | ||
logger.info('Verifying email with email verification key: ' + email_verification_key); | ||
db.query('SELECT * FROM users WHERE email_verification_key = ? AND email_verification_expires > ?', [email_verification_key, new Date()], (err, result) => { | ||
if (err) { | ||
logger.error('Error querying database: ' + err); | ||
res.status(500).send('Internal Server Error'); | ||
return; | ||
} | ||
if (result.length === 0) { | ||
res.json({ status: 'error', message: 'Invalid email verification key or expired' }); | ||
return; | ||
} | ||
const user = result[0]; | ||
db.query('UPDATE users SET email_verified = TRUE, email_verification_key = NULL, email_verification_expires = NULL WHERE id = ?', [user.id], (err, result) => { | ||
if (err) { | ||
logger.error('Error updating email verification in database: ' + err); | ||
res.status(500).send('Internal Server Error'); | ||
return; | ||
} | ||
res.json({ status: 'success', message: 'Email verified' }); | ||
}); | ||
}); | ||
}); | ||
|
||
module.exports = router; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters