Merge pull request #30 from matiu/feat/confirm

Feat/confirm
This commit is contained in:
Ivan Socolsky 2015-02-18 11:22:44 -03:00
commit 8ffefa73a2
3 changed files with 39 additions and 1 deletions

34
bit-wallet/bit-confirm Executable file
View File

@ -0,0 +1,34 @@
#!/usr/bin/env node
var _ = require('lodash');
var program = require('commander');
var Client = require('../lib/client');
var utils = require('./cli-utils');
program
.version('0.0.1')
.option('-c, --config [file]', 'Wallet config filename')
.option('-h, --host [host]', 'Bitcore Wallet Service URL (eg: http://localhost:3001/copay/api')
.option('-v, --verbose', 'be verbose')
.parse(process.argv);
var client = utils.getClient(program);
client.getStatus(function(err, x, myCopayerId) {
utils.die(err);
console.log('\n To be sure that none Copayer has joined more that once to this wallet, you can asked them their confirmation number. They can grab them using this (bit confirm) command.');
console.log('\n * Copayer confirmations ids:');
var myConfirmationId;
_.each(x.wallet.copayers, function(x) {
var confirmationId = utils.confirmationId(x);
if (x.id != myCopayerId)
console.log('\t\t* %s : %s', x.name, confirmationId);
else
myConfirmationId = confirmationId;
});
console.log('\t\t---');
console.log('\t\tYour confirmation ID: %s', myConfirmationId);
});

View File

@ -31,6 +31,10 @@ Utils.shortID = function(id) {
return id.substr(id.length - 4);
};
Utils.confirmationId = function(copayer) {
return parseInt(copayer.xPubKeySignature.substr(-4), 16).toString().substr(-4);
}
Utils.getClient = function(args) {
var storage = new Client.FileStorage({
filename: args.config || process.env['BIT_FILE'],

View File

@ -241,7 +241,7 @@ API.prototype.getStatus = function(cb) {
var url = '/v1/wallets/';
self._doGetRequest(url, data, function(err, body) {
return cb(err, body);
return cb(err, body, data.copayerId);
});
});
};