From 41b1e86439064721c803814b53cd09c84f22f23d Mon Sep 17 00:00:00 2001 From: Stefan Thomas Date: Wed, 6 Mar 2013 16:45:20 +0100 Subject: [PATCH 1/2] JS: Correctly route account events after change from account -> transaction. --- src/js/remote.js | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/js/remote.js b/src/js/remote.js index c241a8b33e..e0906e7d88 100644 --- a/src/js/remote.js +++ b/src/js/remote.js @@ -617,9 +617,14 @@ Remote.prototype._connect_message = function (ws, json) { this.emit('ledger_closed', message); break; - case 'account': + case 'transaction': + // To get these events, just subscribe to them. A subscribes and + // unsubscribes will be added as needed. // XXX If not trusted, need proof. - if (this.trace) utils.logObject("remote: account: %s", message); + + // XXX Should de-duplicate transaction events + + if (this.trace) utils.logObject("remote: tx: %s", message); // Process metadata message.mmeta = new Meta(message.meta); @@ -637,14 +642,6 @@ Remote.prototype._connect_message = function (ws, json) { } } - this.emit('account', message); - break; - - case 'transaction': - // To get these events, just subscribe to them. A subscribes and - // unsubscribes will be added as needed. - // XXX If not trusted, need proof. - this.emit('transaction', message); break; From b4514b5225d6a8b98e591c3119fab633f3178e49 Mon Sep 17 00:00:00 2001 From: Stefan Thomas Date: Wed, 6 Mar 2013 16:46:30 +0100 Subject: [PATCH 2/2] JS: Add Remote#request_book_offers. --- src/js/remote.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/js/remote.js b/src/js/remote.js index e0906e7d88..8805ee6543 100644 --- a/src/js/remote.js +++ b/src/js/remote.js @@ -940,6 +940,30 @@ Remote.prototype.request_account_tx = function (accountID, ledger_min, ledger_ma return request; }; +Remote.prototype.request_book_offers = function (gets, pays, taker) { + var request = new Request(this, 'book_offers'); + + request.message.taker_gets = { + currency: Currency.json_rewrite(gets.currency) + }; + + if (request.message.taker_gets.currency !== 'XRP') { + request.message.taker_gets.issuer = UInt160.json_rewrite(gets.issuer); + } + + request.message.taker_pays = { + currency: Currency.json_rewrite(pays.currency) + }; + + if (request.message.taker_pays.currency !== 'XRP') { + request.message.taker_pays.issuer = UInt160.json_rewrite(pays.issuer); + } + + request.message.taker = taker ? taker : UInt160.ACCOUNT_ONE; + + return request; +}; + Remote.prototype.request_ledger = function (ledger, full) { var request = new Request(this, 'ledger');