aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/transactions.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2014-07-31 21:06:23 -0700
committerAdam Soltys <[email protected]>2014-07-31 21:06:23 -0700
commit7c5dfc8d51efe4df4e67f86f33c489a320fcb8f9 (patch)
treef387c3d4e3ce9ed0c464659a787b99d8c6e90fb9 /src/routes/transactions.js
parentde1cdd2e3f9d9f36ce3d8e97335341cc3237e829 (diff)
downloadcoinos-server-7c5dfc8d51efe4df4e67f86f33c489a320fcb8f9.tar.gz
coinos-server-7c5dfc8d51efe4df4e67f86f33c489a320fcb8f9.zip
Move coffee files to src/ folder
Diffstat (limited to 'src/routes/transactions.js')
-rw-r--r--src/routes/transactions.js48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/routes/transactions.js b/src/routes/transactions.js
new file mode 100644
index 00000000..97fc5659
--- /dev/null
+++ b/src/routes/transactions.js
@@ -0,0 +1,48 @@
+(function() {
+ var db;
+
+ db = require('../redis');
+
+ module.exports = {
+ json: function(req, res) {
+ var r, user;
+ user = req.params.user;
+ r = {
+ 'transactions': []
+ };
+ return db.lrange("" + user + ":transactions", 0, -1, function(err, transactions) {
+ var i, process;
+ process = function(err, t) {
+ r.transactions.push(t);
+ if (i >= transactions.length) {
+ res.write(JSON.stringify(r));
+ return res.end();
+ } else {
+ return db.hgetall("" + user + ":transactions:" + transactions[i++], process);
+ }
+ };
+ i = 0;
+ return db.hgetall("" + user + ":transactions:" + transactions[i++], process);
+ });
+ },
+ create: function(req, res) {
+ var user;
+ user = req.params.user;
+ return db.incr('transactions', function(err, id) {
+ return db.hmset("" + user + ":transactions:" + id, req.body, function() {
+ return db.rpush("" + user + ":transactions", id, function() {
+ res.write(JSON.stringify(req.body));
+ return res.end();
+ });
+ });
+ });
+ },
+ index: function(req, res) {
+ return res.render('transactions/index', {
+ user: req.params.user,
+ layout: 'layout'
+ });
+ }
+ };
+
+}).call(this);