aboutsummaryrefslogtreecommitdiffstats
path: root/routes
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2014-08-08 11:33:43 -0700
committerAdam Soltys <[email protected]>2014-08-08 11:33:43 -0700
commit2cc86381a6f79cd729048b34a72b70562a7b0ace (patch)
treec42dda997719ce544a4dea2bf15937d293ebfd59 /routes
parent3082e274b70a93fdac8a9a63934252ed914fe406 (diff)
parent6d5c3a56067b96bb5d97cca4a80bacbf78395b2c (diff)
downloadcoinos-server-2cc86381a6f79cd729048b34a72b70562a7b0ace.tar.gz
coinos-server-2cc86381a6f79cd729048b34a72b70562a7b0ace.zip
Merge branch 'code_reorg'
Diffstat (limited to 'routes')
-rw-r--r--routes/calculator.coffee28
-rw-r--r--routes/calculator.js18
-rw-r--r--routes/sessions.coffee21
-rw-r--r--routes/sessions.js23
-rw-r--r--routes/transactions.coffee38
-rw-r--r--routes/transactions.js9
-rw-r--r--routes/users.coffee98
-rw-r--r--routes/users.js47
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 === '') {