Skip to content

Commit df19530

Browse files
committed
Merge pull request #718 from braydonf/bitcoind
bitcoind: change to use bitcoind/addresstxid event
2 parents 923c596 + d7c161d commit df19530

File tree

6 files changed

+32
-19
lines changed

6 files changed

+32
-19
lines changed

public/js/angularjs-all.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/js/main.min.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/js/vendors.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/src/js/controllers/address.js

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,34 @@ angular.module('insight.address').controller('AddressController',
44
function($scope, $rootScope, $routeParams, $location, Global, Address, getSocket) {
55
$scope.global = Global;
66

7-
87
var socket = getSocket($scope);
9-
10-
var _startSocket = function () {
11-
socket.emit('subscribe', $routeParams.addrStr);
12-
socket.on($routeParams.addrStr, function(tx) {
13-
$rootScope.$broadcast('tx', tx);
14-
var beep = new Audio('/sound/transaction.mp3');
15-
beep.play();
8+
var addrStr = $routeParams.addrStr;
9+
10+
var _startSocket = function() {
11+
socket.on('bitcoind/addresstxid', function(data) {
12+
if (data.address === addrStr) {
13+
$rootScope.$broadcast('tx', data.txid);
14+
var base = document.querySelector('base');
15+
var beep = new Audio(base.href + '/sound/transaction.mp3');
16+
beep.play();
17+
}
1618
});
19+
socket.emit('subscribe', 'bitcoind/addresstxid', [addrStr]);
20+
};
21+
22+
var _stopSocket = function () {
23+
socket.emit('unsubscribe', 'bitcoind/addresstxid', [addrStr]);
1724
};
1825

1926
socket.on('connect', function() {
2027
_startSocket();
2128
});
2229

23-
$scope.params = $routeParams;
30+
$scope.$on('$destroy', function(){
31+
_stopSocket();
32+
});
2433

34+
$scope.params = $routeParams;
2535

2636
$scope.findOne = function() {
2737
$rootScope.currentAddr = $routeParams.addrStr;

public/src/js/services/socket.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,18 @@ ScopedSocket.prototype.on = function(event, callback) {
3939
ScopedSocket.prototype.emit = function(event, data, callback) {
4040
var socket = this.socket;
4141
var $rootScope = this.$rootScope;
42+
var args = Array.prototype.slice.call(arguments);
4243

43-
socket.emit(event, data, function() {
44+
args.push(function() {
4445
var args = arguments;
4546
$rootScope.$apply(function() {
4647
if (callback) {
4748
callback.apply(socket, args);
4849
}
4950
});
5051
});
52+
53+
socket.emit.apply(socket, args);
5154
};
5255

5356
angular.module('insight.socket').factory('getSocket',

public/src/js/translations.js

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)