aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2013-09-29 23:38:55 -0700
committerAdam Soltys <[email protected]>2013-09-29 23:38:55 -0700
commitdb12cada8f5a2cd6d395a78ea4b06658676713b9 (patch)
treef04b2909875c323c017126a20dc6f0bbce795f40
parentb3400960bf3d389f06e39d333345ae305bc13e9b (diff)
parent99b3296173a3b84e40178b369789b6a4d7f50f53 (diff)
downloadcoinos-server-db12cada8f5a2cd6d395a78ea4b06658676713b9.tar.gz
coinos-server-db12cada8f5a2cd6d395a78ea4b06658676713b9.zip
Merge pull request #4 from metoro/master
Changed to store users as user:<user> format, and place in users set
-rw-r--r--passport.coffee6
-rw-r--r--routes/users.coffee41
2 files changed, 25 insertions, 22 deletions
diff --git a/passport.coffee b/passport.coffee
index 426c4db7..12913424 100644
--- a/passport.coffee
+++ b/passport.coffee
@@ -9,19 +9,19 @@ passport.serializeUser((user, done) ->
)
passport.deserializeUser((username, done) ->
- db.hgetall(username, (err, user) ->
+ db.hgetall("user:"+username, (err, user) ->
return done(null, user)
)
)
passport.use(new LocalStrategy(
(username, password, done) ->
- db.hget(username, 'password', (err, hash) ->
+ db.hget("user:"+username, 'password', (err, hash) ->
return done(err) if err
if hash
bcrypt.compare(password, hash, (err, match) ->
if match
- db.hgetall(username, (err, user) ->
+ db.hgetall("user:"+username, (err, user) ->
return done(null, user)
)
else
diff --git a/routes/users.coffee b/routes/users.coffee
index f34c3fd6..631ea2be 100644
--- a/routes/users.coffee
+++ b/routes/users.coffee
@@ -3,13 +3,14 @@ bcrypt = require('bcrypt')
module.exports = (sessions) ->
exists: (req, res) ->
- db.hgetall(req.params.user, (err, obj) ->
+
+ db.hgetall("user:"+req.params.user, (err, obj) ->
if obj? then res.write('true') else res.write('false')
res.end()
)
json: (req, res) ->
- db.hgetall(req.params.user, (err, obj) ->
+ db.hgetall("user:"+req.params.user, (err, obj) ->
delete obj['password']
res.write(JSON.stringify(obj))
res.end()
@@ -29,28 +30,30 @@ module.exports = (sessions) ->
)
create: (req, res) ->
- db.hgetall(req.body.username, (err, obj) ->
+ userkey = "user:"+req.body.username
+ db.hgetall(userkey, (err, obj) ->
if obj
res.redirect(req.body.username)
else
bcrypt.hash(req.body.password, 12, (err, hash) ->
+ db.sadd("users",userkey)
db.hmset(
- req.body.username,
+ userkey,
{
- username: req.body.username,
- password: hash,
- email: req.body.email,
- firstname: req.body.firstname,
- lastname: req.body.lastname,
- company: req.body.company,
- email: req.body.email,
- companytype: req.body.companytype,
- address1: req.body.address1,
- address2: req.body.address2,
- city: req.body.city,
- postcode: req.body.postcode,
- state: req.body.state,
- country: req.body.country
+ username: req.body.username,
+ password: hash,
+ email: req.body.email,
+ firstname: req.body.firstname,
+ lastname: req.body.lastname,
+ company: req.body.company,
+ email: req.body.email,
+ companytype: req.body.companytype,
+ address1: req.body.address1,
+ address2: req.body.address2,
+ city: req.body.city,
+ postcode: req.body.postcode,
+ state: req.body.state,
+ country: req.body.country
}
,
->
@@ -70,6 +73,6 @@ module.exports = (sessions) ->
update: (req, res) ->
return unless req.params.user is req.user.username or
req.user.username is 'admin'
- db.hmset(req.params.user, req.body, ->
+ db.hmset("user:"+req.params.user, req.body, ->
res.redirect("/#{req.params.user}")
)