2014-07-16 13:59:28 -07:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
angular.module('copayApp.controllers').controller('VideoController',
|
|
|
|
function($scope, $rootScope, $sce) {
|
|
|
|
|
2014-07-23 13:10:02 -07:00
|
|
|
$rootScope.videoInfo = {};
|
|
|
|
|
2014-07-18 14:38:28 -07:00
|
|
|
// Cached list of copayers
|
|
|
|
$scope.copayers = $rootScope.wallet.getRegisteredPeerIds();
|
|
|
|
|
|
|
|
$scope.copayersList = function() {
|
|
|
|
return $rootScope.wallet.getRegisteredPeerIds();
|
|
|
|
}
|
|
|
|
|
|
|
|
$scope.hasVideo = function(copayer) {
|
|
|
|
return $rootScope.videoInfo[copayer.peerId];
|
|
|
|
}
|
|
|
|
|
|
|
|
$scope.isConnected = function(copayer) {
|
|
|
|
return $rootScope.wallet.getOnlinePeerIDs().indexOf(copayer.peerId) != -1;
|
|
|
|
}
|
|
|
|
|
|
|
|
$scope.isBackupReady = function(copayer) {
|
|
|
|
return $rootScope.wallet.publicKeyRing.isBackupReady(copayer.copayerId);
|
|
|
|
}
|
|
|
|
|
2014-07-16 13:59:28 -07:00
|
|
|
$scope.getVideoURL = function(copayer) {
|
|
|
|
if (config.disableVideo) return;
|
|
|
|
|
2014-07-18 14:38:28 -07:00
|
|
|
var vi = $scope.videoInfo[copayer.peerId];
|
|
|
|
if (!vi) return;
|
2014-07-16 13:59:28 -07:00
|
|
|
|
2014-07-18 14:38:28 -07:00
|
|
|
if ($scope.isConnected(copayer)) {
|
2014-07-16 13:59:28 -07:00
|
|
|
// peer disconnected, remove his video
|
2014-07-18 14:38:28 -07:00
|
|
|
delete $rootScope.videoInfo[copayer.peerId];
|
|
|
|
return;
|
2014-07-16 13:59:28 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
var encoded = vi.url;
|
|
|
|
var url = decodeURI(encoded);
|
|
|
|
var trusted = $sce.trustAsResourceUrl(url);
|
|
|
|
return trusted;
|
|
|
|
};
|
|
|
|
|
|
|
|
});
|
|
|
|
|