Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0c8d78f6ae | ||
|
|
36d2008962 | ||
|
|
ea4ead21ca | ||
|
|
e6ced26b51 | ||
|
|
f63922b84e | ||
|
|
503eaf70cf | ||
|
|
285ccb1471 |
@ -30,9 +30,10 @@ AddressController.prototype.show = function(req, res) {
|
|||||||
options.to = parseInt(req.query.to);
|
options.to = parseInt(req.query.to);
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
if (req.query.after) {
|
if (req.query.after)
|
||||||
options.after = req.query.after;
|
options.after = req.query.after;
|
||||||
}
|
if (req.query.before)
|
||||||
|
options.before = req.query.before;
|
||||||
|
|
||||||
self._address.getAddressSummary(req.addr, options, function(err, data) {
|
self._address.getAddressSummary(req.addr, options, function(err, data) {
|
||||||
if(err) {
|
if(err) {
|
||||||
@ -51,9 +52,10 @@ AddressController.prototype.show_ws = function(ws, req) {
|
|||||||
var self = this;
|
var self = this;
|
||||||
var options = { noTxList: true };
|
var options = { noTxList: true };
|
||||||
|
|
||||||
if (req.query.after) {
|
if (req.query.after)
|
||||||
options.after = req.query.after;
|
options.after = req.query.after;
|
||||||
}
|
if (req.query.before)
|
||||||
|
options.before = req.query.before;
|
||||||
|
|
||||||
self.common.bindStopFlagOnClose(ws, options);
|
self.common.bindStopFlagOnClose(ws, options);
|
||||||
|
|
||||||
@ -97,13 +99,22 @@ AddressController.prototype.unconfirmedBalance = function(req, res) {
|
|||||||
AddressController.prototype.addressSummarySubQuery = function(req, res, param) {
|
AddressController.prototype.addressSummarySubQuery = function(req, res, param) {
|
||||||
var self = this;
|
var self = this;
|
||||||
var options = { noTxList: true };
|
var options = { noTxList: true };
|
||||||
|
|
||||||
|
if (req.query.after)
|
||||||
|
options.after = req.query.after;
|
||||||
|
if (req.query.before)
|
||||||
|
options.before = req.query.before;
|
||||||
|
|
||||||
self.common.bindStopFlagOnClose(res, options);
|
self.common.bindStopFlagOnClose(res, options);
|
||||||
|
|
||||||
self.getAddressSummary(req.addr, options, function(err, data) {
|
self._address.getAddressSummary(req.addr, options, function(err, data) {
|
||||||
if(err) {
|
if(err) {
|
||||||
return self.common.handleErrors(err, res);
|
return self.common.handleErrors(err, res);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(data.incomplete)
|
||||||
|
res.jsonp({lastItem: data.lastItem, data: data[param]});
|
||||||
|
else
|
||||||
res.jsonp(data[param]);
|
res.jsonp(data[param]);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@ -289,6 +300,37 @@ AddressController.prototype.multitxs = function(req, res) {
|
|||||||
var options = {};
|
var options = {};
|
||||||
|
|
||||||
options.after = req.query.after || req.body.after || undefined;
|
options.after = req.query.after || req.body.after || undefined;
|
||||||
|
options.before = req.query.before || req.body.before || undefined;
|
||||||
|
|
||||||
|
//mempool options
|
||||||
|
if(!_.isUndefined(req.query.mempool) || !_.isUndefined(req.body.mempool)){
|
||||||
|
var mempool = !_.isUndefined(req.query.mempool) ? req.query.mempool : req.body.mempool;
|
||||||
|
if(mempool == 'true') { //DEFAULT config in query fn
|
||||||
|
options.mempoolOnly = false;
|
||||||
|
options.queryMempool = true;
|
||||||
|
} else if(mempool == 'false') {
|
||||||
|
options.mempoolOnly = false;
|
||||||
|
options.queryMempool = false;
|
||||||
|
} else if(mempool == 'only') {
|
||||||
|
options.mempoolOnly = true;
|
||||||
|
options.queryMempool = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!_.isUndefined(req.query.latest)) {
|
||||||
|
let latest_query_int = parseInt(req.query.latest);
|
||||||
|
if(!isNaN(latest_query_int))
|
||||||
|
options.reverse = ( latest_query_int ? true : false);
|
||||||
|
else if(req.query.latest == 'true' || req.query.latest == '') //empty string (ie, ?latest)
|
||||||
|
options.reverse = true;
|
||||||
|
else if(req.query.latest == 'false')
|
||||||
|
options.reverse = false;
|
||||||
|
} else if(!_.isUndefined(req.body.latest)) {
|
||||||
|
if(req.body.latest)
|
||||||
|
options.reverse = true;
|
||||||
|
else
|
||||||
|
options.reverse = false;
|
||||||
|
}
|
||||||
|
|
||||||
//Temporary support
|
//Temporary support
|
||||||
if(req.query.from || req.body.from) {
|
if(req.query.from || req.body.from) {
|
||||||
@ -316,12 +358,17 @@ AddressController.prototype.multitxs = function(req, res) {
|
|||||||
return self.common.handleErrors(err, res);
|
return self.common.handleErrors(err, res);
|
||||||
}
|
}
|
||||||
|
|
||||||
var lastItem = items.find(a => a.confirmations !== 0), //assuming items is recent tx first order
|
var lastItem = items.find(a => a.confirmations !== 0); //assuming items is recent tx first order
|
||||||
lastItem = typeof lastItem === 'object' ? lastItem.txid: undefined
|
lastItem = typeof lastItem === 'object' ? lastItem.txid: undefined;
|
||||||
|
|
||||||
|
var initItem = items[items.length -1]; //oldest tx in array
|
||||||
|
initItem = (typeof initItem === 'object' && initItem.confirmations !== 0) ? initItem.txid : undefined;
|
||||||
|
|
||||||
var ret = {
|
var ret = {
|
||||||
totalItems: result.totalCount,
|
totalItems: result.totalCount,
|
||||||
lastItem: lastItem,
|
lastItem: lastItem,
|
||||||
|
initItem: initItem,
|
||||||
|
incomplete: result.incomplete,
|
||||||
//from: options.from,
|
//from: options.from,
|
||||||
//to: Math.min(options.to, result.totalCount),
|
//to: Math.min(options.to, result.totalCount),
|
||||||
items: items
|
items: items
|
||||||
@ -338,8 +385,34 @@ AddressController.prototype.multitxs_ws = function(ws, req) {
|
|||||||
|
|
||||||
var options = {};
|
var options = {};
|
||||||
|
|
||||||
if (req.query.after) {
|
if (req.query.after)
|
||||||
options.after = req.query.after;
|
options.after = req.query.after;
|
||||||
|
if (req.query.before)
|
||||||
|
options.before = req.query.before;
|
||||||
|
|
||||||
|
//mempool options
|
||||||
|
if(!_.isUndefined(req.query.mempool) || !_.isUndefined(req.body.mempool)){
|
||||||
|
var mempool = !_.isUndefined(req.query.mempool) ? req.query.mempool : req.body.mempool;
|
||||||
|
if(mempool == 'true') { //DEFAULT config in query fn
|
||||||
|
options.mempoolOnly = false;
|
||||||
|
options.queryMempool = true;
|
||||||
|
} else if(mempool == 'false') {
|
||||||
|
options.mempoolOnly = false;
|
||||||
|
options.queryMempool = false;
|
||||||
|
} else if(mempool == 'only') {
|
||||||
|
options.mempoolOnly = true;
|
||||||
|
options.queryMempool = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!_.isUndefined(req.query.latest)){
|
||||||
|
let latest_query_int = parseInt(req.query.latest);
|
||||||
|
if(!isNaN(latest_query_int))
|
||||||
|
options.reverse = ( latest_query_int ? true : false);
|
||||||
|
else if(req.query.latest == 'true' || req.query.latest == '') //empty string (ie, ?latest)
|
||||||
|
options.reverse = true;
|
||||||
|
else if(req.query.latest == 'false')
|
||||||
|
options.reverse = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
options.txNotNeeded = true;
|
options.txNotNeeded = true;
|
||||||
@ -361,7 +434,7 @@ AddressController.prototype.multitxs_ws = function(ws, req) {
|
|||||||
return self.common.handleErrors_ws(err, ws, false);
|
return self.common.handleErrors_ws(err, ws, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
//finding the last key (useful for `after` option on next request call)
|
//finding the last key (useful for `after`/'before' option on next request call)
|
||||||
if(tx.confirmations)
|
if(tx.confirmations)
|
||||||
if(lastItem.height < tx.blockheight || (lastItem.height == tx.blockheight && lastItem.id < tx.txid)){
|
if(lastItem.height < tx.blockheight || (lastItem.height == tx.blockheight && lastItem.id < tx.txid)){
|
||||||
lastItem.id = tx.txid;
|
lastItem.id = tx.txid;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user