Checking for existing accounts when registering

Packed up js into a file
This commit is contained in:
2021-03-23 18:40:38 +03:00
parent c75520014f
commit 725c965c4e
3 changed files with 20 additions and 14 deletions

View File

@@ -25,14 +25,6 @@
</form>
<script src="https://www.google.com/recaptcha/api.js?render=6LcTXIsaAAAAAGWE4913KuaqU1tTT9uyqmvPADcn"></script>
<script>
grecaptcha.ready(function () {
grecaptcha.execute('6LcTXIsaAAAAAGWE4913KuaqU1tTT9uyqmvPADcn', { action: 'demo' })
.then(function (token) {
document.getElementsByClassName('g-recaptcha-response')[0].value = token;
document.getElementsByClassName('g-recaptcha-response')[1].value = token;
});
});
</script>
<script src="index.js"></script>
</body>
</html>

View File

@@ -0,0 +1,7 @@
grecaptcha.ready(function () {
grecaptcha.execute('6LcTXIsaAAAAAGWE4913KuaqU1tTT9uyqmvPADcn', { action: 'demo' })
.then(function (token) {
document.getElementsByClassName('g-recaptcha-response')[0].value = token;
document.getElementsByClassName('g-recaptcha-response')[1].value = token;
});
});

View File

@@ -49,12 +49,19 @@ app.post('/register', async (req, res) => {
verifyCaptcha(req, res, async () => {
const hashedPass = await bcrypt.hash(req.body.pass, 10)
try {
const user = await client.db('reg_example').collection('users').findOne({
login: req.body.login
})
if (user) {
res.send('A user with this username already exists.')
} else {
await client.db('reg_example').collection('users').insertOne({
login: req.body.login,
pass: hashedPass
})
req.session.loggedIn = true
res.status(201).redirect('/')
}
} catch (e) {
console.log("Error: " + e)
res.status(500).send()