From 7c5dfc8d51efe4df4e67f86f33c489a320fcb8f9 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Thu, 31 Jul 2014 21:06:23 -0700 Subject: Move coffee files to src/ folder --- src/passport.coffee | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/passport.coffee (limited to 'src/passport.coffee') diff --git a/src/passport.coffee b/src/passport.coffee new file mode 100644 index 00000000..12913424 --- /dev/null +++ b/src/passport.coffee @@ -0,0 +1,35 @@ +db = require("redis").createClient() +bcrypt = require('bcrypt') + +passport = require('passport') +LocalStrategy = require('passport-local').Strategy + +passport.serializeUser((user, done) -> + done(null, user.username) +) + +passport.deserializeUser((username, done) -> + db.hgetall("user:"+username, (err, user) -> + return done(null, user) + ) +) + +passport.use(new LocalStrategy( + (username, password, done) -> + db.hget("user:"+username, 'password', (err, hash) -> + return done(err) if err + if hash + bcrypt.compare(password, hash, (err, match) -> + if match + db.hgetall("user:"+username, (err, user) -> + return done(null, user) + ) + else + return done(null, false) + ) + else + return done(null, false) + ) +)) + +module.exports = passport -- cgit v1.2.3