aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/passport.js4
-rw-r--r--node_simple.js9
-rw-r--r--routes/index.js14
-rw-r--r--views/signup.hbs9
4 files changed, 27 insertions, 9 deletions
diff --git a/config/passport.js b/config/passport.js
index 9709693..4bc53d6 100644
--- a/config/passport.js
+++ b/config/passport.js
@@ -37,11 +37,11 @@ passport.use('local_signup', new LocalStrategy({
var fields = [email, req.body.usrname, req.body.fname, req.body.lname, req.body.univ, req.body.dept, hash_pass,
req.body.phone_num];
- dbFile.add_user(fields, function (success, error, message) {
+ dbFile.add_user(fields, function (success, error, message) {
if (!success && error) {
console.log("!success && error");
- return done(message);
+ return done(null, false, {message:message}); // Review later, need to pass errors
}
else if (!success && !error) {
diff --git a/node_simple.js b/node_simple.js
index b2321f2..ba20ba1 100644
--- a/node_simple.js
+++ b/node_simple.js
@@ -113,9 +113,7 @@ exports.add_user = function (fields, callbackUser) {
// find out if this user already exists by checking their email
exports.find_user( fields[0] ,callbackUser, function (result, callbackUser) {
- console.log("inside find_user");
if (result == false) {
- console.log("no such user found");
// find out if the user_name is taken
exports.find_user_name( fields[1], callbackUser, function (docs) {
@@ -130,28 +128,28 @@ exports.add_user = function (fields, callbackUser) {
var users = db.collection('users');
var logins = db.collection('logins');
-<<<<<<< HEAD
// Add users, and login through callbacks
users.insertOne( user_data, function (err) {
if (err) {
callbackUser(false, true, "Error : User has not been added.");
+ db.close();
}
else {// user insert successfull
logins.insertOne( login_data, function (err) {
if (err) {
callbackUser(false, true, "Error : User has not been added.");
+ db.close();
}
else {// login insert successfull
callbackUser(true, false, "User has been added.");
+ db.close();
}
});
}
});
- db.close();
-
})
.catch(function (err) {
callbackUser(false, true, "Unable to connect.");
@@ -199,6 +197,7 @@ exports.find_user_name = function (user_name, callbackUser, callback) {
* */
exports.find_user = function (email, callbackUser, callback) {
// make a connection
+ console.log("inside find_user");
mongoFactory.getConnection(uri)
.then(function (db) {
diff --git a/routes/index.js b/routes/index.js
index b6db0ca..a15e48e 100644
--- a/routes/index.js
+++ b/routes/index.js
@@ -157,8 +157,20 @@ router.get('/questions/:exam_id', function (req,res) {
router.get('/signup', function(req, res, next) {
res.render('signup', {csrfToken: req.csrfToken(), success: req.session.success, errors: req.session.errors});
+ req.session.errors = null;
});
+router.get('/signup/failed', function(req, res, next) {
+ var msg = req.flash('error');
+ console.log('message is: ' + msg);
+
+ res.render('signup', {csrfToken: req.csrfToken(),
+ success: req.session.success,
+ errors: req.session.errors,
+ flashMsg: msg});
+});
+
+
/*router.post('/signup', passport.authenticate('local_signup', {
successRedirect: '/user_profile',
@@ -180,7 +192,7 @@ router.post('/signup', function(req, res, next) {
console.log("GOT SUCCESS");
passport.authenticate('local_signup', {
successRedirect: '/user_profile',
- failureRedirect: '/signup',
+ failureRedirect: '/signup/failed',
failureFlash: true
})(req, res);
}
diff --git a/views/signup.hbs b/views/signup.hbs
index 24fad1f..d14b1f6 100644
--- a/views/signup.hbs
+++ b/views/signup.hbs
@@ -11,7 +11,7 @@
{{ else }}
{{# if errors }}
<section class="alert alert-danger">
- <ul>
+ <ul>
{{# each errors }}
<li>{{ this.msg }}</li>
{{/each}}
@@ -19,6 +19,13 @@
</section>
{{/if}}
{{/if}}
+ {{#if flashMsg}}
+ <section class="alert alert-danger">
+ {{flashMsg}}
+ </section>
+ {{/if}}
+
+
<h2><i class="fa fa-user-plus" aria-hidden="true"></i> Sign Up</h2>
<form action="/signup" method="post">