aboutsummaryrefslogtreecommitdiffstats
path: root/routes/rates.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2017-04-14 19:56:41 -0700
committerAdam Soltys <[email protected]>2017-04-14 19:56:41 -0700
commit7c5601109ae170cacb8b0df936c97e4006adbb03 (patch)
tree4aeb3346d33c5ae30c6b7e8ab7f22f5e079f3c53 /routes/rates.js
parentb7a4332e9487659532ea50cd8063d0cd44011dce (diff)
downloadcoinos-server-7c5601109ae170cacb8b0df936c97e4006adbb03.tar.gz
coinos-server-7c5601109ae170cacb8b0df936c97e4006adbb03.zip
server refactor and jwt auth
Diffstat (limited to 'routes/rates.js')
-rw-r--r--routes/rates.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/routes/rates.js b/routes/rates.js
new file mode 100644
index 00000000..f81085e3
--- /dev/null
+++ b/routes/rates.js
@@ -0,0 +1,37 @@
+const request = require('request')
+
+module.exports = (function (app) {
+ return {
+ fetchRates () {
+ request("https://api.bitcoinaverage.com/exchanges/all", function(error, response, body) {
+ try {
+ require('util').isDate(JSON.parse(body).timestamp)
+ app.set('rates', body)
+ } catch (undefined) {}
+ })
+ return setTimeout(this.fetchRates, 120000)
+ },
+ index (req, res) {
+ res.write(app.get('rates'))
+ },
+ ticker (req, res) {
+ fs = require('fs')
+ var base, base1, base2, e, error1, exchange
+ (base = req.query).currency || (base.currency = 'CAD')
+ (base1 = req.query).symbol || (base1.symbol = 'quadrigacx')
+ (base2 = req.query).type || (base2.type = 'bid')
+ try {
+ exchange = JSON.parse(app.get('rates'))[req.query.currency][req.query.symbol]['rates'][req.query.type].toString()
+ } catch (error1) {
+ e = error1
+ exchange = "0"
+ }
+ res.writeHead(200, {
+ 'Content-Length': exchange.length,
+ 'Content-Type': 'text/plain'
+ })
+ res.write(exchange)
+ return res.end()
+ }
+ }
+}).call(this)