aboutsummaryrefslogtreecommitdiffstats
path: root/routes
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2018-03-15 22:25:40 -0700
committerAdam Soltys <[email protected]>2018-03-15 22:25:40 -0700
commit112e9ec9b71c1930ca51d52db58acc58ee36088c (patch)
treeb0b74c065b202a97f6ed0316a1e5bb54d77ff2a3 /routes
parent869b33813e72689c053ba8505c8806129ec3c7d5 (diff)
downloadcoinos-server-112e9ec9b71c1930ca51d52db58acc58ee36088c.tar.gz
coinos-server-112e9ec9b71c1930ca51d52db58acc58ee36088c.zip
clean up unused files
Diffstat (limited to 'routes')
-rw-r--r--routes/addresses.js18
-rw-r--r--routes/transactions.js110
-rw-r--r--routes/users.js175
3 files changed, 0 insertions, 303 deletions
diff --git a/routes/addresses.js b/routes/addresses.js
deleted file mode 100644
index 744c907f..00000000
--- a/routes/addresses.js
+++ /dev/null
@@ -1,18 +0,0 @@
-(function() {
- module.exports = function(sessions) {
- return {
- "new": function(req, res) {
- return res.render('addresses/new', {
- layout: 'layout',
- js: (function() {
- return global.js;
- }),
- css: (function() {
- return global.css;
- })
- });
- }
- };
- };
-
-}).call(this);
diff --git a/routes/transactions.js b/routes/transactions.js
deleted file mode 100644
index fdb4c00f..00000000
--- a/routes/transactions.js
+++ /dev/null
@@ -1,110 +0,0 @@
-(function() {
- const Promise = require('bluebird')
- const db = require('../redis')
- const moment = require('moment')
-
- const txid = function(transaction, user) {
- if (transaction.match(/[a-z]/i)) {
- return transaction
- }
- return user + ":transactions:" + transaction
- }
-
- module.exports = {
- index: function(req, res) {
- console.log('yep')
- const result = {
- 'transactions': []
- }
- const promises = []
- const pattern = req.params.user
- if (req.session.user.username === 'admin') {
- x = '*'
- }
- return db.keysAsync(pattern + ":transactions").then(function(keys) {
- return Promise.all(keys.map(function(key) {
- var user
- user = key.substr(0, key.indexOf(':'))
- return db.lrangeAsync(key, 0, -1).then(function(transactions) {
- return Promise.all(transactions.map(function(transaction) {
- return db.hgetallAsync(txid(transaction, user)).then(function(transaction) {
- if (transaction) {
- transaction.user = user
- return result.transactions.push(transaction)
- }
- })
- }))
- })
- }))
- }).then(function() {
- res.send(result)
- })
- },
- create: function(req, res) {
- var finish
- finish = function() {
- db.hgetall("user:" + req.params.user.toLowerCase(), function(err, user) {
- return res.render('transactions/notification', {
- layout: 'mail',
- amount: (req.body.received * req.body.exchange).toFixed(2).toString() + ' ' + user.currency,
- address: req.body.address,
- txid: req.body.txid,
- js: (function() {
- return global.js
- }),
- css: (function() {
- return global.css
- })
- }, function(err, html) {
- var content, from_email, helper, mail, request, sg, subject, to_email
- helper = require('sendgrid').mail
- from_email = new helper.Email('[email protected]')
- to_email = new helper.Email(user.email)
- subject = 'Payment Received'
- content = new helper.Content('text/html', html)
- mail = new helper.Mail(from_email, subject, to_email, content)
- sg = require('sendgrid')(process.env.SENDGRID_TOKEN)
- request = sg.emptyRequest({
- method: 'POST',
- path: '/v3/mail/send',
- body: mail.toJSON()
- })
- return sg.API(request, function(error, response) {
- console.log(response.statusCode)
- console.log(response.body)
- return console.log(response.headers)
- })
- })
- })
- res.write(JSON.stringify(req.body))
- return res.end()
- }
- db.watch(req.body.txid)
- return db.exists(req.body.txid, function(err, result) {
- var multi
- if (result) {
- return finish()
- }
- multi = db.multi()
- multi.hmset(req.body.txid, req.body)
- multi.rpush(req.params.user + ":transactions", req.body.txid)
- return multi.exec(function(err, replies) {
- return finish()
- })
- })
- },
- update: function(req, res) {
- return db.hset(req.params.txid, 'notes', req.body.notes, function() {
- return res.end()
- })
- },
- "delete": function(req, res) {
- return db.del(req.params.txid, function() {
- return db.lrem(req.params.user + ":transactions", 0, req.params.txid, function() {
- return res.end()
- })
- })
- }
- }
-
-}).call(this)
diff --git a/routes/users.js b/routes/users.js
deleted file mode 100644
index bd90f707..00000000
--- a/routes/users.js
+++ /dev/null
@@ -1,175 +0,0 @@
-const Promise = require('bluebird')
-const db = require("../redis")
-const bcrypt = require('bcrypt')
-const fs = require('fs')
-const request = require('request')
-const jwt = require('jsonwebtoken')
-const l = console.log
-
-module.exports = {
- login (req, res) {
- db.hgetallAsync('user:' + req.body.username).then((user) => {
- bcrypt.compare(req.body.password, user.password).then((result) => {
- if (result) {
- let payload = { username: user.username }
- let token = jwt.sign(payload, process.env.SECRET)
- res.cookie('token', token, { expires: new Date(Date.now() + 9999999) })
- res.json({ token: token })
- } else {
- res.status(401).end()
- }
- }).catch((err) => {
- console.log(err)
- res.status(401).end()
- })
- }).catch((err) => {
- console.log(err)
- res.status(401).end()
- })
- },
- secret (req, res) {
- res.json({message: 'Success! You can not see this without a token'})
- },
- 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.status(200).json(JSON.stringify(result))
- })
- },
- json: function(req, res) {
- if (!req.params.user) {
- res.end()
- }
- 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
- res.status(200).json(JSON.stringify(obj))
- return res.end()
- })
- })
- },
- create: function(req, res) {
- const userkey = "user:" + req.body.username
-
- db.hgetallAsync(userkey).then((obj) => {
- if (obj) {
- error = { message: 'user exists' }
- res.status(400).json(error)
- throw error
- }
- }).then(() => {
- if (req.body.passconfirm !== req.body.password) {
- error = { message: 'passwords must match' }
- res.status(400).json(error)
- throw error
- }
-
- bcrypt.hash(req.body.password, 1).then(function(hash) {
- db.sadd("users", userkey)
- let user = {
- username: req.body.username,
- password: hash,
- email: req.body.email,
- commission: req.body.commission || '',
- unit: req.body.unit || 'CAD',
- pubkey: req.body.pubkey || '',
- privkey: req.body.privkey || ''
- }
- db.hmset(userkey, user, function() {
- res.status(200)
- require('crypto').randomBytes(48, function(ex, buf) {
- const token = buf.toString('base64').replace(/\//g, '').replace(/\+/g, '')
- db.set("token:" + token, req.body.username)
- host = req.get('Host')
- url = req.protocol + "://" + host + "/verify/" + token
- const helper = require('sendgrid').mail
- const from_email = new helper.Email('[email protected]')
- const to_email = new helper.Email(req.body.email)
- const subject = 'Welcome to CoinOS'
- const content = new helper.Content('text/html', req.body.privkey)
- const mail = new helper.Mail(from_email, subject, to_email, content)
- const sg = require('sendgrid')(process.env.SENDGRID_TOKEN)
- const ereq = sg.emptyRequest({
- method: 'POST',
- path: '/v3/mail/send',
- body: mail.toJSON()
- })
- sg.API(ereq, function(error, response) {
- console.log(response.statusCode)
- console.log(response.body)
- console.log(response.headers)
- })
- })
- })
- })
- }).catch((e) => {})
- },
- update: function(req, res) {
- if (req.body.password === '') {
- delete req.body.password
- }
- db.hmset("user:" + req.params.user.toLowerCase(), req.body, function() {
- req.session.user = req.body
- delete req.session.user.password
- if (req.body.password != null) {
- bcrypt.hash(req.body.password).then(function(err, password) {
- db.hmset("user:" + (req.params.user.toLowerCase()), {
- email: email,
- password: password,
- phone: phone
- }, function() {
- res.status(200).json({ message: 'User updated' })
- })
- })
- } else {
- res.status(200).json({ message: 'User updated' })
- }
- })
- if (process.env.NODE_ENV === 'production' &&
- (req.body.privkey != null) &&
- req.body.privkey !== '' &&
- req.body.email !== '')
- {
- const helper = require('sendgrid').mail
- const from_email = new helper.Email('[email protected]')
- const to_email = new helper.Email(req.body.email)
- const subject = 'CoinOS Wallet Key'
- const content = new helper.Content('text/html', req.body.privkey)
- const mail = new helper.Mail(from_email, subject, to_email, content)
- const sg = require('sendgrid')(config.sendgrid_token)
- const ereq = sg.emptyRequest({
- method: 'POST',
- path: '/v3/mail/send',
- body: mail.toJSON()
- })
- sg.API(ereq, function(err, res) {
- if (err) {
- console.log(error)
- }
- })
- }
- },
- verify: function(req, res) {
- return db.get("token:" + req.params.token, function(err, reply) {
- if (err || !reply) {
- res.write("Invalid Verification Token")
- return res.end()
- } else {
- db.hset("user:" + (reply.toString()), "verified", "true", function() {
- res.status(200)
- })
- }
- })
- }
-}