2014-01-06 08:33:58 -08:00
|
|
|
'use strict';
|
|
|
|
|
2014-02-24 20:44:19 -08:00
|
|
|
/**
|
|
|
|
* Module dependencies.
|
|
|
|
*/
|
|
|
|
var config = require('./config');
|
|
|
|
|
2014-01-31 09:20:56 -08:00
|
|
|
module.exports = function(app) {
|
2014-01-06 08:33:58 -08:00
|
|
|
|
2014-02-24 20:44:19 -08:00
|
|
|
var apiPrefix = config.apiPrefix;
|
|
|
|
|
2014-01-06 14:02:33 -08:00
|
|
|
//Block routes
|
2014-01-07 04:48:31 -08:00
|
|
|
var blocks = require('../app/controllers/blocks');
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/blocks', blocks.list);
|
2014-01-09 12:30:29 -08:00
|
|
|
|
|
|
|
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/block/:blockHash', blocks.show);
|
2014-01-07 04:48:31 -08:00
|
|
|
app.param('blockHash', blocks.block);
|
2014-01-09 12:30:29 -08:00
|
|
|
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/block-index/:height', blocks.blockindex);
|
2014-01-20 13:52:28 -08:00
|
|
|
app.param('height', blocks.blockindex);
|
|
|
|
|
2014-01-14 15:34:01 -08:00
|
|
|
// Transaction routes
|
2014-01-07 20:47:20 -08:00
|
|
|
var transactions = require('../app/controllers/transactions');
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/tx/:txid', transactions.show);
|
2014-01-07 20:47:20 -08:00
|
|
|
app.param('txid', transactions.transaction);
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/txs', transactions.list);
|
2014-02-27 09:11:05 -08:00
|
|
|
app.post(apiPrefix + '/tx/send', transactions.send);
|
2014-01-14 15:34:01 -08:00
|
|
|
|
2014-01-15 05:22:07 -08:00
|
|
|
// Address routes
|
2014-01-13 12:21:42 -08:00
|
|
|
var addresses = require('../app/controllers/addresses');
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/addr/:addr', addresses.show);
|
|
|
|
app.get(apiPrefix + '/addr/:addr/utxo', addresses.utxo);
|
2014-05-12 14:23:15 -07:00
|
|
|
app.get(apiPrefix + '/addrs/:addrs/utxo', addresses.multiutxo);
|
2014-05-20 07:10:23 -07:00
|
|
|
app.post(apiPrefix + '/addrs/utxo', addresses.multiutxo);
|
2014-01-13 12:21:42 -08:00
|
|
|
|
2014-03-20 18:57:34 -07:00
|
|
|
// Address property routes
|
2014-03-26 14:39:13 -07:00
|
|
|
app.get(apiPrefix + '/addr/:addr/balance', addresses.balance);
|
|
|
|
app.get(apiPrefix + '/addr/:addr/totalReceived', addresses.totalReceived);
|
|
|
|
app.get(apiPrefix + '/addr/:addr/totalSent', addresses.totalSent);
|
|
|
|
app.get(apiPrefix + '/addr/:addr/unconfirmedBalance', addresses.unconfirmedBalance);
|
2014-03-20 18:57:34 -07:00
|
|
|
|
2014-01-16 05:54:21 -08:00
|
|
|
// Status route
|
|
|
|
var st = require('../app/controllers/status');
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/status', st.show);
|
2014-01-16 05:54:21 -08:00
|
|
|
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/sync', st.sync);
|
|
|
|
app.get(apiPrefix + '/peer', st.peer);
|
2014-01-24 13:04:08 -08:00
|
|
|
|
2014-02-03 10:09:24 -08:00
|
|
|
// Currency
|
|
|
|
var currency = require('../app/controllers/currency');
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/currency', currency.index);
|
2014-02-03 10:09:24 -08:00
|
|
|
|
2014-01-30 12:33:58 -08:00
|
|
|
//Home route
|
|
|
|
var index = require('../app/controllers/index');
|
2014-02-24 20:44:19 -08:00
|
|
|
app.get(apiPrefix + '/version', index.version);
|
2014-02-26 13:57:51 -08:00
|
|
|
app.get('*', index.render);
|
2014-01-06 08:33:58 -08:00
|
|
|
};
|