diff --git a/src/js/controllers/copayers.js b/src/js/controllers/copayers.js
index 9e52e635a..b95a22121 100644
--- a/src/js/controllers/copayers.js
+++ b/src/js/controllers/copayers.js
@@ -1,13 +1,15 @@
'use strict';
angular.module('copayApp.controllers').controller('copayersController',
- function($scope, $log, $ionicPopup, profileService, platformInfo, gettextCatalog, $stateParams, ongoingProcess, $state) {
+ function($scope, $log, $ionicNavBarDelegate, $stateParams, $state, profileService, popupService, platformInfo, gettextCatalog, ongoingProcess) {
if (!$stateParams.walletId) {
$log.debug('No wallet provided...back to home');
- return $state.transitionTo('tabs.home');
+ return $state.go('tabs.home');
}
var wallet = profileService.getWallet($stateParams.walletId);
+ $ionicNavBarDelegate.title(wallet.name);
+
var secret;
try {
secret = wallet.status.wallet.secret;
@@ -15,28 +17,12 @@ angular.module('copayApp.controllers').controller('copayersController',
$scope.wallet = wallet;
$scope.secret = secret;
+ $scope.copayers = wallet.status.wallet.copayers;
$scope.isCordova = platformInfo.isCordova;
$scope.showDeletePopup = function() {
- var popup = $ionicPopup.show({
- template: '' + gettextCatalog.getString('Are you sure you want to delete this wallet?') + '',
- title: gettextCatalog.getString('Confirm'),
- buttons: [
- {
- text: gettextCatalog.getString('Cancel'),
- onTap: function(e) {
- popup.close();
- }
- },
- {
- text: gettextCatalog.getString('Accept'),
- type: 'button-positive',
- onTap: function(e) {
- deleteWallet();
- popup.close();
- }
- }
- ]
+ popupService.showConfirm(gettextCatalog.getString('Confirm'), gettextCatalog.getString('Are you sure you want to delete this wallet?'), function(res) {
+ if (res) deleteWallet();
});
};
@@ -47,7 +33,7 @@ angular.module('copayApp.controllers').controller('copayersController',
if (err) {
popupService.showAlert(gettextCatalog.getString('Error'), err.message || err);
} else {
- $state.transitionTo('tabs.home');
+ $state.go('tabs.home');
}
});
};
diff --git a/src/js/controllers/tab-home.js b/src/js/controllers/tab-home.js
index 3abf9f157..24899dd56 100644
--- a/src/js/controllers/tab-home.js
+++ b/src/js/controllers/tab-home.js
@@ -1,19 +1,37 @@
'use strict';
angular.module('copayApp.controllers').controller('tabHomeController',
- function($rootScope, $timeout, $scope, $state, $ionicScrollDelegate, lodash, profileService, walletService, configService, txFormatService, $ionicModal, $log, platformInfo, storageService, txpModalService, $window) {
-
+ function($rootScope, $timeout, $scope, $state, $ionicScrollDelegate, lodash, profileService, walletService, configService, $log, platformInfo, storageService, txpModalService, $window) {
$scope.externalServices = {};
$scope.bitpayCardEnabled = true; // TODO
+ $scope.openTxpModal = txpModalService.open;
+ $scope.version = $window.version;
+ $scope.name = $window.appConfig.nameCase;
+ configService.whenAvailable(function() {
+ var config = configService.getSync();
+ var isWindowsPhoneApp = platformInfo.isWP && isCordova;
+ $scope.glideraEnabled = config.glidera.enabled && !isWindowsPhoneApp;
+ $scope.coinbaseEnabled = config.coinbase.enabled && !isWindowsPhoneApp;
+ });
+
+ $scope.openWallet = function(wallet) {
+ if (!wallet.isComplete()) {
+ return $state.go('tabs.copayers', {
+ walletId: wallet.credentials.walletId
+ });
+ }
+
+ $state.go('tabs.details', {
+ walletId: wallet.credentials.walletId
+ });
+ };
function updateTxps() {
profileService.getTxps({
limit: 3
}, function(err, txps, n) {
- if (err) {
- console.log('[tab-home.js.35:err:]', $log.error(err)); //TODO
- }
+ if (err) $log.error(err);
$scope.txps = txps;
$scope.txpsN = n;
$ionicScrollDelegate.resize();
@@ -24,7 +42,6 @@ angular.module('copayApp.controllers').controller('tabHomeController',
})
};
-
$scope.updateAllWallets = function() {
$scope.wallets = profileService.getWallets();
if (lodash.isEmpty($scope.wallets)) return;
@@ -41,7 +58,7 @@ angular.module('copayApp.controllers').controller('tabHomeController',
} else {
wallet.status = status;
}
- if (++j==i) {
+ if (++j == i) {
updateTxps();
}
});
@@ -106,7 +123,7 @@ angular.module('copayApp.controllers').controller('tabHomeController',
$scope.updateWallet(wallet);
}),
$rootScope.$on('Local/TxAction', function(e, walletId) {
- $log.debug('Got action for wallet '+ walletId);
+ $log.debug('Got action for wallet ' + walletId);
var wallet = profileService.getWallet(walletId);
$scope.updateWallet(wallet);
}),
@@ -117,19 +134,4 @@ angular.module('copayApp.controllers').controller('tabHomeController',
x();
});
});
-
- configService.whenAvailable(function() {
- var config = configService.getSync();
- var isWindowsPhoneApp = platformInfo.isWP && isCordova;
- $scope.glideraEnabled = config.glidera.enabled && !isWindowsPhoneApp;
- $scope.coinbaseEnabled = config.coinbase.enabled && !isWindowsPhoneApp;
- });
-
- $scope.openTxpModal = txpModalService.open;
-
- $scope.version = $window.version;
- $scope.name = $window.appConfig.nameCase;
-
-
-
});
diff --git a/src/js/controllers/walletDetails.js b/src/js/controllers/walletDetails.js
index 6e8f7b078..fa6ea0d47 100644
--- a/src/js/controllers/walletDetails.js
+++ b/src/js/controllers/walletDetails.js
@@ -1,21 +1,58 @@
'use strict';
angular.module('copayApp.controllers').controller('walletDetailsController', function($scope, $rootScope, $interval, $timeout, $filter, $log, $ionicModal, $ionicPopover, $ionicNavBarDelegate, $state, $stateParams, bwcError, profileService, lodash, configService, gettext, gettextCatalog, platformInfo, walletService, $ionicPopup, txpModalService, externalLinkService) {
-
- var isCordova = platformInfo.isCordova;
- var isWP = platformInfo.isWP;
- var isAndroid = platformInfo.isAndroid;
- var isChromeApp = platformInfo.isChromeApp;
-
- var errorPopup;
-
var HISTORY_SHOW_LIMIT = 10;
+ var currentTxHistoryPage;
+ var wallet;
$scope.txps = [];
$scope.openExternalLink = function(url, target) {
externalLinkService.open(url, target);
};
+ $scope.init = function() {
+ currentTxHistoryPage = 0;
+ $scope.completeTxHistory = [];
+
+ wallet = profileService.getWallet($stateParams.walletId);
+
+ /* Set color for header bar */
+ $rootScope.walletDetailsColor = wallet.color;
+ $rootScope.walletDetailsName = wallet.name;
+ $scope.wallet = wallet;
+
+ $scope.requiresMultipleSignatures = wallet.credentials.m > 1;
+ $scope.newTx = false;
+
+ $ionicNavBarDelegate.title(wallet.name);
+
+ $scope.updateAll(function() {
+ if ($stateParams.txid) {
+ var tx = lodash.find($scope.completeTxHistory, {
+ txid: $stateParams.txid
+ });
+ if (tx) {
+ $scope.openTxModal(tx);
+ } else {
+ $ionicPopup.alert({
+ title: gettext('TX not available'),
+ });
+ }
+ } else if ($stateParams.txpId) {
+ var txp = lodash.find($scope.txps, {
+ id: $stateParams.txpId
+ });
+ if (txp) {
+ $scope.openTxpModal(txp);
+ } else {
+ $ionicPopup.alert({
+ title: gettext('Proposal not longer available'),
+ });
+ }
+ }
+ });
+ }
+
var setPendingTxps = function(txps) {
if (!txps) {
$scope.txps = [];
@@ -169,54 +206,4 @@ angular.module('copayApp.controllers').controller('walletDetailsController', fun
if (err) $log.error(err);
});
}
-
- var currentTxHistoryPage;
- var wallet;
-
- $scope.init = function() {
- currentTxHistoryPage = 0;
- $scope.completeTxHistory = [];
-
- wallet = profileService.getWallet($stateParams.walletId);
-
- if (!wallet.isComplete()) {
- return $state.go('wallet.copayers');
- };
-
- /* Set color for header bar */
- $rootScope.walletDetailsColor = wallet.color;
- $rootScope.walletDetailsName = wallet.name;
-
- $scope.wallet = wallet;
- $scope.requiresMultipleSignatures = wallet.credentials.m > 1;
- $scope.newTx = false;
-
- $ionicNavBarDelegate.title(wallet.name);
-
- $scope.updateAll(function() {
- if ($stateParams.txid) {
- var tx = lodash.find($scope.completeTxHistory, {
- txid: $stateParams.txid
- });
- if (tx) {
- $scope.openTxModal(tx);
- } else {
- $ionicPopup.alert({
- title: gettext('TX not available'),
- });
- }
- } else if ($stateParams.txpId) {
- var txp = lodash.find($scope.txps, {
- id: $stateParams.txpId
- });
- if (txp) {
- $scope.openTxpModal(txp);
- } else {
- $ionicPopup.alert({
- title: gettext('Proposal not longer available'),
- });
- }
- }
- });
- }
});
diff --git a/src/js/routes.js b/src/js/routes.js
index bde25a606..1b8f754d0 100644
--- a/src/js/routes.js
+++ b/src/js/routes.js
@@ -533,9 +533,9 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr
*/
.state('tabs.copayers', {
- url: '/copayers',
+ url: '/copayers/:walletId',
views: {
- 'wallet': {
+ 'tab-home': {
templateUrl: 'views/copayers.html'
}
}