diff options
| author | Adam Soltys <[email protected]> | 2014-08-08 11:33:43 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2014-08-08 11:33:43 -0700 |
| commit | 2cc86381a6f79cd729048b34a72b70562a7b0ace (patch) | |
| tree | c42dda997719ce544a4dea2bf15937d293ebfd59 /routes | |
| parent | 3082e274b70a93fdac8a9a63934252ed914fe406 (diff) | |
| parent | 6d5c3a56067b96bb5d97cca4a80bacbf78395b2c (diff) | |
| download | coinos-server-2cc86381a6f79cd729048b34a72b70562a7b0ace.tar.gz coinos-server-2cc86381a6f79cd729048b34a72b70562a7b0ace.zip | |
Merge branch 'code_reorg'
Diffstat (limited to 'routes')
| -rw-r--r-- | routes/calculator.coffee | 28 | ||||
| -rw-r--r-- | routes/calculator.js | 18 | ||||
| -rw-r--r-- | routes/sessions.coffee | 21 | ||||
| -rw-r--r-- | routes/sessions.js | 23 | ||||
| -rw-r--r-- | routes/transactions.coffee | 38 | ||||
| -rw-r--r-- | routes/transactions.js | 9 | ||||
| -rw-r--r-- | routes/users.coffee | 98 | ||||
| -rw-r--r-- | routes/users.js | 47 |
8 files changed, 65 insertions, 217 deletions
diff --git a/routes/calculator.coffee b/routes/calculator.coffee deleted file mode 100644 index 891fdce8..00000000 --- a/routes/calculator.coffee +++ /dev/null @@ -1,28 +0,0 @@ -exports.new = (req, res) -> - res.render('calculator/setup') - -exports.sweep = (req, res) -> - res.render('calculator/sweep', layout: 'layout') - -exports.show = (req, res) -> - res.render('calculator/show', layout: 'layout', x: 'meow') - -exports.ticker = (req, res) -> - fs = require('fs') - fs.readFile("./public/js/rates.json", (err, data) -> - req.query.currency ||= 'CAD' - req.query.symbol ||= 'quadrigacx' - req.query.type ||= 'bid' - - try - exchange = JSON.parse(data)[req.query.currency][req.query.symbol]['rates'][req.query.type].toString() - catch e - exchange = "0" - - res.writeHead(200, - 'Content-Length': exchange.length, - 'Content-Type': 'text/plain') - res.write(exchange) - res.end() - ) - diff --git a/routes/calculator.js b/routes/calculator.js index 3e067df6..6c9517f3 100644 --- a/routes/calculator.js +++ b/routes/calculator.js @@ -1,18 +1,14 @@ (function() { - exports["new"] = function(req, res) { - return res.render('calculator/setup'); - }; - exports.sweep = function(req, res) { return res.render('calculator/sweep', { - layout: 'layout' - }); - }; - - exports.show = function(req, res) { - return res.render('calculator/show', { layout: 'layout', - x: 'meow' + navigation: true, + js: (function() { + return global.js; + }), + css: (function() { + return global.css; + }) }); }; diff --git a/routes/sessions.coffee b/routes/sessions.coffee deleted file mode 100644 index 775c52ac..00000000 --- a/routes/sessions.coffee +++ /dev/null @@ -1,21 +0,0 @@ -module.exports = (passport) -> - new: (req, res) -> - res.render('sessions/new') - - create: (req, res, next) -> - passport.authenticate('local', (err, user, info) -> - if (err) - return next(err) - if (!user) - return res.render('sessions/new', badpw: true) - req.login(user, (err) -> - if (err) - return next(err) - url = "/#{user.username}/edit" - return res.redirect(url) - ) - )(req, res, next) - - destroy: (req, res) -> - req.logout() - res.redirect('/login') diff --git a/routes/sessions.js b/routes/sessions.js index f038b484..6f04d2fd 100644 --- a/routes/sessions.js +++ b/routes/sessions.js @@ -2,7 +2,15 @@ module.exports = function(passport) { return { "new": function(req, res) { - return res.render('sessions/new'); + return res.render('sessions/new', { + layout: 'layout', + js: (function() { + return global.js; + }), + css: (function() { + return global.css; + }) + }); }, create: function(req, res, next) { return passport.authenticate('local', function(err, user, info) { @@ -11,6 +19,13 @@ } if (!user) { return res.render('sessions/new', { + layout: 'layout', + js: (function() { + return global.js; + }), + css: (function() { + return global.css; + }), badpw: true }); } @@ -19,7 +34,11 @@ if (err) { return next(err); } - url = "/" + user.username + "/edit"; + if (/edit/.test(req.headers['referer'])) { + url = "/" + user.username + "/edit"; + } else { + url = "/" + user.username; + } return res.redirect(url); }); })(req, res, next); diff --git a/routes/transactions.coffee b/routes/transactions.coffee deleted file mode 100644 index 0bdaeed6..00000000 --- a/routes/transactions.coffee +++ /dev/null @@ -1,38 +0,0 @@ -db = require('../redis') - -module.exports = - json: (req, res) -> - user = req.params.user - r = 'transactions': [] - - db.lrange("#{user}:transactions", 0, -1, (err, transactions) -> - process = (err, t) -> - r.transactions.push t - - if i >= transactions.length - res.write(JSON.stringify(r)) - res.end() - else - db.hgetall("#{user}:transactions:#{transactions[i++]}", process) - - i = 0 - db.hgetall("#{user}:transactions:#{transactions[i++]}", process) - ) - - create: (req, res) -> - user = req.params.user - db.incr('transactions', (err, id) -> - db.hmset("#{user}:transactions:#{id}", req.body, -> - db.rpush("#{user}:transactions", id, -> - res.write(JSON.stringify(req.body)) - res.end() - ) - ) - ) - - index: (req, res) -> - res.render('transactions/index', - user: req.params.user, - layout: 'layout' - ) - diff --git a/routes/transactions.js b/routes/transactions.js index 97fc5659..25d6fc14 100644 --- a/routes/transactions.js +++ b/routes/transactions.js @@ -40,7 +40,14 @@ index: function(req, res) { return res.render('transactions/index', { user: req.params.user, - layout: 'layout' + layout: 'layout', + navigation: true, + js: (function() { + return global.js; + }), + css: (function() { + return global.css; + }) }); } }; diff --git a/routes/users.coffee b/routes/users.coffee deleted file mode 100644 index db4dde03..00000000 --- a/routes/users.coffee +++ /dev/null @@ -1,98 +0,0 @@ -db = require("../redis") -bcrypt = require('bcrypt') - -module.exports = (sessions) -> - exists: (req, res) -> - 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("user:"+req.params.user, (err, obj) -> - delete obj['password'] - res.writeHead(200, {"Content-Type": "application/json"}); - res.write(JSON.stringify(obj)) - res.end() - ) - - index: (req, res) -> - return - db.keys('*', (err, obj) -> - res.write(JSON.stringify(obj)) - res.end() - ) - - list: (req, res) -> - res.render('users/index', - layout: 'layout' - ) - - show: (req, res) -> - db.hgetall("user:"+req.params.user, (err, obj) -> - if obj - res.render('calculator/show', - user: req.params.user, - layout: 'layout' - ) - else - res.render('sessions/new', - notice: true - ) - ) - - new: (req, res) -> - res.render('users/new', - js: (-> global.js), - css: (-> global.css) - ) - - create: (req, res) -> - errormsg = "" - userkey = "user:"+req.body.username - db.hgetall(userkey, (err, obj) -> - if obj - res.redirect(req.body.username) - else - if req.body.confirm != req.body.password - errormsg += "Passwords must match" - return res.render('users/new', - js: (-> global.js), - css: (-> global.css), - error: errormsg - ) - - bcrypt.hash(req.body.password, 12, (err, hash) -> - db.sadd("users",userkey) - db.hmset(userkey, - username: req.body.username, - password: hash, - email: req.body.email - , -> - req.headers['referer'] = "/#{req.body.username}/edit" - sessions.create(req, res) - ) - ) - ) - - edit: (req, res) -> - res.render('calculator/setup', - user: req.params.user, - layout: 'layout' - ) - - update: (req, res) -> - return unless req.params.user is req.user.username or - req.user.username is 'admin' or req.user.username is 'ben' - if req.body.password is '' - delete req.body.password - db.hmset("user:"+req.params.user, req.body, -> - if not req.body.password? - res.redirect("/#{req.params.user}") - else - bcrypt.hash(req.body.password, 12, (err, hash) -> - db.hmset("user:"+req.params.user,password: hash, -> - res.redirect("/#{req.params.user}") - ) - ) - ) diff --git a/routes/users.js b/routes/users.js index 137d5bb9..8065e4f1 100644 --- a/routes/users.js +++ b/routes/users.js @@ -27,34 +27,37 @@ return res.end(); }); }, - index: function(req, res) { - return; - return db.keys('*', function(err, obj) { - res.write(JSON.stringify(obj)); - return res.end(); - }); - }, - list: function(req, res) { - return res.render('users/index', { - layout: 'layout' - }); - }, show: function(req, res) { return db.hgetall("user:" + req.params.user, function(err, obj) { if (obj) { - return res.render('calculator/show', { + return res.render('users/show', { user: req.params.user, - layout: 'layout' + layout: 'layout', + navigation: true, + js: (function() { + return global.js; + }), + css: (function() { + return global.css; + }) }); } else { return res.render('sessions/new', { - notice: true + notice: true, + layout: 'layout', + js: (function() { + return global.js; + }), + css: (function() { + return global.css; + }) }); } }); }, "new": function(req, res) { return res.render('users/new', { + layout: 'layout', js: (function() { return global.js; }), @@ -74,6 +77,7 @@ if (req.body.confirm !== req.body.password) { errormsg += "Passwords must match"; return res.render('users/new', { + layout: 'layout', js: (function() { return global.js; }), @@ -98,13 +102,20 @@ }); }, edit: function(req, res) { - return res.render('calculator/setup', { + return res.render('users/edit', { user: req.params.user, - layout: 'layout' + layout: 'layout', + navigation: true, + js: (function() { + return global.js; + }), + css: (function() { + return global.css; + }) }); }, update: function(req, res) { - if (!(req.params.user === req.user.username || req.user.username === 'admin' || req.user.username === 'ben')) { + if (!(req.params.user === req.user.username || req.user.username === 'admin')) { return; } if (req.body.password === '') { |
