This commit is contained in:
Josh Harvey 2016-03-27 18:13:09 +02:00
parent c8ba96515f
commit ed1376fc6f
2 changed files with 52 additions and 9 deletions

View file

@ -20,9 +20,37 @@ var STALE_BALANCE = 180000;
var pids = {}
var reboots = {}
function buildRates () {
var cryptoCoins = plugins.getCryptoCoins();
var cashInCommission = settings.commission;
var cashOutCommission = settings.fiatCommission || cashInCommission;
var rates = {}
cryptoCoins.forEach(function (coin) {
var rate = plugins.getDeviceRate(coin).rates
rates[coin] = {
cashIn: rate.ask.times(cashInCommission),
cashOut: rate.bid.div(cashOutCommission)
}
})
return rates
}
function buildBalances () {
var cryptoCoins = plugins.getCryptoCoins();
var balances = {}
cryptoCoins.forEach(function (coin) {
var balance = plugins.fiatBalance(coin)
balances[coin] = balance
})
return balance
}
function poll(req, res) {
var rateRec = plugins.getDeviceRate();
var balanceRec = plugins.getBalance();
var fingerprint = getFingerprint(req)
var pid = req.query.pid
@ -30,6 +58,12 @@ function poll(req, res) {
logger.debug('poll request from: %s', fingerprint);
var rateRec = plugins.getDeviceRate();
var balanceRec = plugins.getBalance();
var rates = buildRates()
var balances = buildBalances()
// `rateRec` and `balanceRec` are both objects, so there's no danger
// of misinterpreting rate or balance === 0 as 'Server initializing'.
if (!rateRec || !balanceRec) {
@ -81,7 +115,9 @@ function poll(req, res) {
twoWayMode: cartridges ? true : false,
zeroConfLimit: settings.zeroConfLimit,
fiatTxLimit: settings.fiatTxLimit,
reboot: reboot
reboot: reboot,
rates: rates,
balances: balances
};
if (response.idVerificationEnabled)
@ -99,7 +135,7 @@ function trade(req, res) {
}
function send(req, res) {
plugins.sendBitcoins(session(req), req.body, function(err, status) {
plugins.sendCoins(session(req), req.body, function(err, status) {
// TODO: use status.statusCode here after confirming machine compatibility
// FIX: (joshm) set txHash to status.txId instead of previous status.txHash which wasn't being set
// Need to clean up txHash vs txId