aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--controllers/user.js32
-rw-r--r--views/login.handlebars5
-rw-r--r--views/register.handlebars3
3 files changed, 35 insertions, 5 deletions
diff --git a/controllers/user.js b/controllers/user.js
index e25abf8..54b8161 100644
--- a/controllers/user.js
+++ b/controllers/user.js
@@ -1,8 +1,24 @@
+const User = require('../models/user');
+
module.exports = {
register(req, res) {
- console.log(req.body);
- res.redirect('/register');
+ if (req.body.password === req.body.confirmPassword) {
+ const newUser = new User({
+ firstname: req.body.firstname,
+ lastname: req.body.lastname,
+ email: req.body.email,
+ password: req.body.password
+ });
+ newUser.save().then(() => {
+ req.flash('msg', 'You successfully registered.');
+ res.redirect('/login');
+ });
+ }
+ else {
+ req.flash('msg', 'Validation errors...');
+ res.redirect('/register');
+ }
},
login(req, res) {
@@ -15,11 +31,19 @@ module.exports = {
},
registerView(req, res) {
- res.render('register', {title: 'Register', register: true});
+ res.render('register', {
+ title: 'Register',
+ register: true,
+ msg: req.flash('msg')
+ });
},
loginView(req, res) {
- res.render('login', {title: 'Login', login: true});
+ res.render('login', {
+ title: 'Login',
+ login: true,
+ msg: req.flash('msg')
+ });
}
};
diff --git a/views/login.handlebars b/views/login.handlebars
index 47e2166..fd87ba7 100644
--- a/views/login.handlebars
+++ b/views/login.handlebars
@@ -1,5 +1,8 @@
<div class="container">
<h1 class="mt-2">{{ title }}</h1>
+ {{#if msg}}
+ <div class="alert alert-success" role="alert">{{msg}}</div>
+ {{/if}}
<form action="/login" method="post" accept-charset="utf-8">
<div class="mb-3">
<label for="email" class="form-label">Email:</label>
@@ -7,7 +10,7 @@
</div>
<div class="mb-3">
<label for="password" class="form-label">Password:</label>
- <input name="password" class="form-control" id="password" required></input>
+ <input name="password" type="password" class="form-control" id="password" required></input>
</div>
<button type="submit" class="btn">Login</button>
</form>
diff --git a/views/register.handlebars b/views/register.handlebars
index d18a6b8..a2c9f4d 100644
--- a/views/register.handlebars
+++ b/views/register.handlebars
@@ -1,5 +1,8 @@
<div class="container">
<h1 class="mt-2">{{ title }}</h1>
+ {{#if msg}}
+ <div class="alert alert-warning" role="alert">{{msg}}</div>
+ {{/if}}
<form action="/register" method="post" accept-charset="utf-8">
<div class="mb-3">
<label for="firstname" class="form-label">First name:</label>