diff options
| author | Adam Soltys <[email protected]> | 2016-10-14 22:02:20 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2016-10-14 22:02:20 -0700 |
| commit | a4adc19e1e8cbe1e91afc5d81a5c844a8e92cb18 (patch) | |
| tree | 17cd0e8cf91e3902e4d584dc28621d4258370d80 /routes | |
| parent | 6f906c289422c9d655e194390bb871b2e276f326 (diff) | |
| download | coinos-server-a4adc19e1e8cbe1e91afc5d81a5c844a8e92cb18.tar.gz coinos-server-a4adc19e1e8cbe1e91afc5d81a5c844a8e92cb18.zip | |
List users
Diffstat (limited to 'routes')
| -rw-r--r-- | routes/users.js | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/routes/users.js b/routes/users.js index 04574c18..315287e2 100644 --- a/routes/users.js +++ b/routes/users.js @@ -1,5 +1,7 @@ (function() { - var bcrypt, config, db, fs, request; + var Promise, bcrypt, config, db, fs, request; + + Promise = require('bluebird'); db = require("../redis"); @@ -23,11 +25,31 @@ return res.end(); }); }, + index: function(req, res) { + var result; + result = { + 'users': [] + }; + return db.keysAsync("user:*").then(function(users) { + return Promise.all(users.map(function(key) { + return db.hgetallAsync(key).then(function(user) { + delete user['password']; + return result.users.push(user); + }); + })); + }).then(function() { + res.writeHead(200, { + "Content-Type": "application/json" + }); + res.write(JSON.stringify(result)); + return res.end(); + }); + }, json: function(req, res) { if (!req.params.user) { res.end(); } - return db.llen("" + (req.params.user.toLowerCase()) + ":transactions", function(err, len) { + return db.llen((req.params.user.toLowerCase()) + ":transactions", function(err, len) { return db.hgetall("user:" + (req.params.user.toLowerCase()), function(err, obj) { delete obj['password']; obj['index'] = len; @@ -64,7 +86,7 @@ if ((ext === 'jpg' || ext === 'png' || ext === 'gif') && (err || !stats.isFile())) { try { return request("" + obj.logo).pipe(fs.createWriteStream(path)); - } catch (_error) {} + } catch (undefined) {} } }); } @@ -141,7 +163,7 @@ if (host === 'localhost') { host += ':3000'; } - url = "" + req.protocol + "://" + host + "/verify/" + token; + url = req.protocol + "://" + host + "/verify/" + token; return res.render('users/welcome', { user: req.body.username.toLowerCase(), layout: 'mail', |
