Browse Source

rescan handling

all-modes
pbca26 8 years ago
parent
commit
4645e6f8e9
  1. 4
      gui/startup/app-settings.html
  2. 48
      routes/shepherd.js

4
gui/startup/app-settings.html

@ -41,7 +41,7 @@
<div class="settings-buttons-block">
<button
onClick="testBins('komodod')"
class="btn btn-info pull-left">Test binaries</button>
class="btn btn-info pull-left hide">Test binaries</button>
<button
onClick="handleSaveSettings()"
class="btn btn-primary margin-right-20">Save</button>
@ -64,7 +64,7 @@
<div class="toast-message"></div>
</div>
</div>
<button onClick="reloadSettingsWindow()" class="btn btn-primary" style="margin-top: 20px">Reload</button>
<button onClick="reloadSettingsWindow()" class="btn btn-primary hide" style="margin-top: 20px">Reload</button>
</div>
<script>initSettingsForm()</script>
</div>

48
routes/shepherd.js

@ -220,7 +220,12 @@ shepherd.post('/native/dashboard/update', function(req, res, next) {
_type === 'public' ? 'getaddressesbyaccount' : 'z_listaddresses',
['']
).then(function(_json) {
resolve(JSON.parse(_json).result);
if (_json === 'Work queue depth exceeded' ||
!_json) {
resolve({ error: 'daemon is busy' });
} else {
resolve(JSON.parse(_json).result);
}
});
});
}))
@ -340,12 +345,22 @@ shepherd.post('/native/dashboard/update', function(req, res, next) {
_bitcoinRPC(coin, 'listunspent')
.then(function(__json) {
_returnObj.listunspent = JSON.parse(__json);
if (__json === 'Work queue depth exceeded' ||
!__json) {
const returnObj = {
msg: 'success',
result: _returnObj,
};
calcBalance(
result,
JSON.parse(__json).result
);
res.end(JSON.stringify(returnObj));
} else {
_returnObj.listunspent = JSON.parse(__json);
calcBalance(
result,
JSON.parse(__json).result
);
}
});
})
}
@ -375,7 +390,8 @@ shepherd.post('/native/dashboard/update', function(req, res, next) {
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ payload: _payload })
body: JSON.stringify({ payload: _payload }),
timeout: 5000,
};
request(options, function(error, response, body) {
@ -391,13 +407,27 @@ shepherd.post('/native/dashboard/update', function(req, res, next) {
}
Promise.all(_promiseStack.map((_call, index) => {
let _params;
if (_call === 'listtransactions') {
_params = [
'',
300,
0
];
}
return new Promise((resolve, reject) => {
_bitcoinRPC(
_coin,
_call
_call,
_params
)
.then(function(json) {
_returnObj[_call] = JSON.parse(json);
if (json === 'Work queue depth exceeded' ||
!json) {
_returnObj[_call] = { error: 'daemon is busy' };
} else {
_returnObj[_call] = JSON.parse(json);
}
resolve(json);
});
});

Loading…
Cancel
Save