From 749787381c3fdcfb45852b2234b8099483ff0cf5 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Thu, 6 Dec 2012 20:23:34 -0800 Subject: Code re-org --- passport.coffee | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 passport.coffee (limited to 'passport.coffee') diff --git a/passport.coffee b/passport.coffee new file mode 100644 index 00000000..280117d1 --- /dev/null +++ b/passport.coffee @@ -0,0 +1,30 @@ +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(username, (err, user) -> + return done(null, user) + ) +) + +passport.use(new LocalStrategy( + (username, password, done) -> + db.hget(username, 'password', (err, hash) -> + if hash + bcrypt.compare(password, hash, (err, match) -> + if match + db.hgetall(username, (err, user) -> + return done(null, user) + ) + ) + ) +)) + +exports.passport = passport -- cgit v1.2.3