diff --git a/public/views/backup.html b/public/views/backup.html index bd9cc6173..d572c9129 100644 --- a/public/views/backup.html +++ b/public/views/backup.html @@ -1,17 +1,17 @@ -
+
-<<<<<<< 41f76292fef879856ea30ae58291f333a5e83415 -
-======= -
-
- - Validating recovery phrase... -
-
- -
->>>>>>> Replace $root.go directive for href ui-sref +
- {{backupC.error|translate}} + {{error|translate}}
@@ -41,8 +30,8 @@ -->
-
-
+
+
Write your wallet recovery phrase
@@ -67,37 +56,37 @@
-
+
Wallet recovery phrase not available. You can still export it from Advanced > Export.
-
-

+

+

You need the wallet recovery phrase to restore this personal wallet. Write it down and keep them somewhere safe.

-
+ -
+
- {{word}}  + {{word}} 
-
-
+
+
This recovery phrase was created with a password. To recover this wallet both the recovery phrase and password are needed. @@ -107,11 +96,11 @@
@@ -121,19 +110,19 @@ ## STEP 2 --> -
+
Confirm your wallet recovery phrase

Please tap the words in order to confirm your backup phrase is correctly written.

- +
- + @@ -143,10 +132,10 @@
@@ -156,7 +145,7 @@ ## STEP 3 --> -
+
Enter your password

@@ -172,7 +161,7 @@ ng-disabled="!passphrase" ng-style="{'background-color':index.backgroundColor}" class="button round expand m0" - ng-click="backupC.goToStep(4);" + ng-click="goToStep(4);" translate>Continue

@@ -182,8 +171,8 @@ ## STEP 4 --> -
-
+
+
@@ -212,7 +201,7 @@
-
+
@@ -233,7 +222,7 @@
diff --git a/public/views/export.html b/public/views/export.html index 7e8a818ab..1927e402d 100644 --- a/public/views/export.html +++ b/public/views/export.html @@ -4,17 +4,17 @@ ng-init="titleSection='Export Wallet'; goBackToState = 'preferencesAdvanced'">
-
+

-
-
+
+
Failed to export
-
+
A spending password is set for this wallet. Exporting keeps the spending password in the export archive.
@@ -26,12 +26,12 @@
- +
- +
@@ -68,25 +68,25 @@
- -

Export options

- -
@@ -94,11 +94,11 @@
-
+

Wallet Export

- +
diff --git a/public/views/preferences.html b/public/views/preferences.html index 97c55ec42..49ac017d6 100644 --- a/public/views/preferences.html +++ b/public/views/preferences.html @@ -6,7 +6,7 @@
-
+

@@ -39,7 +39,7 @@
  • - {{preferences.externalSource}} + {{externalSource}}
    Hardware wallet
    @@ -71,7 +71,7 @@ Request Spending Password - + Scan Fingerprint
  • diff --git a/public/views/preferencesAdvanced.html b/public/views/preferencesAdvanced.html index 1c2c557ff..6db820e7e 100644 --- a/public/views/preferencesAdvanced.html +++ b/public/views/preferencesAdvanced.html @@ -4,7 +4,7 @@ ng-init="titleSection='Advanced'; goBackToState = 'preferences'">
    -
    +

    @@ -20,7 +20,7 @@
    Sweep paper wallet
    -
  • +
  • Export Wallet
  • diff --git a/public/views/preferencesAlias.html b/public/views/preferencesAlias.html index 150fa4d10..1f7e4c02e 100644 --- a/public/views/preferencesAlias.html +++ b/public/views/preferencesAlias.html @@ -4,13 +4,12 @@ ng-init="titleSection='Alias'; goBackToState = 'preferences'">
    -
    - +

    -
    + - +
    diff --git a/public/views/preferencesBwsUrl.html b/public/views/preferencesBwsUrl.html index c5dabeb7c..63fb44c72 100644 --- a/public/views/preferencesBwsUrl.html +++ b/public/views/preferencesBwsUrl.html @@ -4,14 +4,12 @@ ng-init="titleSection='Wallet Service URL'; goBackToState = 'preferencesAdvanced';">
    - - -
    +

    -
    + - Set default url - + Set default url +
    diff --git a/public/views/preferencesDeleteWallet.html b/public/views/preferencesDeleteWallet.html index 2f7d06544..302a82ef1 100644 --- a/public/views/preferencesDeleteWallet.html +++ b/public/views/preferencesDeleteWallet.html @@ -4,15 +4,15 @@ ng-init="titleSection='Delete Wallet'; goBackToState = 'preferencesAdvanced'">
    - -
    +
    Warning!
    Permanently delete this wallet. THIS ACTION CANNOT BE REVERSED
    +
      -
    • -
      +
    • +
      {{index.walletName}} ({{index.alias}})
      Delete wallet
      diff --git a/public/views/preferencesDeleteWords.html b/public/views/preferencesDeleteWords.html index 41af7ff8e..c7efc4670 100644 --- a/public/views/preferencesDeleteWords.html +++ b/public/views/preferencesDeleteWords.html @@ -5,19 +5,19 @@
    -
    +
    -
    +
    -
    - {{preferences.error|translate}} +
    + {{error|translate}}
    Warning!
    Once you have copied your wallet recovery phrase down, it is recommended to delete it from this device.
    Need to do backup
      -
    • +
    • {{index.walletName}} ({{index.alias}})
      @@ -26,7 +26,7 @@
    -
    +
    Wallet recovery phrase not available. You can still export it from Advanced > Export.
    diff --git a/public/views/preferencesEmail.html b/public/views/preferencesEmail.html index d2277a762..765586654 100644 --- a/public/views/preferencesEmail.html +++ b/public/views/preferencesEmail.html @@ -4,25 +4,22 @@ ng-init="titleSection='Email Notifications'; goBackToState = 'preferences'">
    - - -
    - +

    -
    -
    + +
    - {{prefEmail.error|translate}} + {{error|translate}}
    - + -
    Setting up email notifications could weaken your privacy, if the wallet service provider is compromised. Information available to an attacker would include your wallet addresses and its balance, but no more. +
    Setting up email notifications could weaken your privacy, if the wallet service provider is compromised. Information available to an attacker would include your wallet addresses and its balance, but no more.
    diff --git a/public/views/preferencesHistory.html b/public/views/preferencesHistory.html index 562362f7e..f53667b15 100644 --- a/public/views/preferencesHistory.html +++ b/public/views/preferencesHistory.html @@ -3,25 +3,18 @@ ng-include="'views/includes/topbar.html'" ng-init="titleSection='Transaction History'; goBackToState = 'preferencesAdvanced'">
    -
    + -
    +

    Wallet Information

      @@ -15,8 +15,6 @@ - -
    • Wallet Name (at creation) @@ -24,7 +22,6 @@
    • -
    • Wallet Id @@ -39,8 +36,6 @@
    • - -
    • Wallet Network @@ -48,7 +43,6 @@
    • -
    • Address Type @@ -56,7 +50,6 @@
    • -
    • Derivation Strategy @@ -85,9 +78,7 @@
    • - - -

      Copayers

      +

      Copayers

    • {{copayer.name}} ({{'Me'|translate}}) @@ -97,7 +88,7 @@
    • -

      Extended Public Keys

      +

      Extended Public Keys

    • Copayer {{$index}}
      @@ -131,7 +122,7 @@
    • Scan addresses for funds
    • -
    • +
    • Send addresses by email
    @@ -151,8 +142,6 @@
    -

    -
    diff --git a/src/js/controllers/backup.js b/src/js/controllers/backup.js index a05f881dc..c1c22fe8e 100644 --- a/src/js/controllers/backup.js +++ b/src/js/controllers/backup.js @@ -3,10 +3,9 @@ angular.module('copayApp.controllers').controller('backupController', function($rootScope, $scope, $timeout, $log, lodash, profileService, gettext, bwcService, bwsError, walletService, ongoingProcess) { - var self = this; var fc = profileService.focusedClient; - self.customWords = []; - self.walletName = fc.credentials.walletName; + $scope.customWords = []; + $scope.walletName = fc.credentials.walletName; var handleEncryptedWallet = function(client, cb) { if (!walletService.isEncrypted(client)) return cb(); @@ -17,24 +16,22 @@ angular.module('copayApp.controllers').controller('backupController', }; if (fc.isPrivKeyEncrypted() && !isDeletedSeed()) { - self.credentialsEncrypted = true; + $scope.credentialsEncrypted = true; passwordRequest(); } else { if (!isDeletedSeed()) initWords(); } - init(); - - function init() { + $scope.init = function() { $scope.passphrase = ''; - self.shuffledMnemonicWords = shuffledWords(self.mnemonicWords); - self.customWords = []; - self.step = 1; - self.deleted = isDeletedSeed(); - self.credentialsEncrypted = false; - self.selectComplete = false; - self.backupError = false; + $scope.shuffledMnemonicWords = shuffledWords($scope.mnemonicWords); + $scope.customWords = []; + $scope.step = 1; + $scope.deleted = isDeletedSeed(); + $scope.credentialsEncrypted = false; + $scope.selectComplete = false; + $scope.backupError = false; }; function isDeletedSeed() { @@ -43,7 +40,7 @@ angular.module('copayApp.controllers').controller('backupController', return false; }; - self.backTo = function(state) { + $scope.backTo = function(state) { console.log(state); if (state == 'walletHome') go.walletHome(); @@ -51,16 +48,16 @@ angular.module('copayApp.controllers').controller('backupController', go.preferences(); }; - self.goToStep = function(n) { + $scope.goToStep = function(n) { if (n == 1) - init(); + $scope.init(); if (n == 2) - self.step = 2; + $scope.step = 2; if (n == 3) { - if (!self.mnemonicHasPassphrase) + if (!$scope.mnemonicHasPassphrase) finalStep(); else - self.step = 3; + $scope.step = 3; } if (n == 4) finalStep(); @@ -73,7 +70,7 @@ angular.module('copayApp.controllers').controller('backupController', backupError(err); } $timeout(function() { - self.step = 4; + $scope.step = 4; return; }, 1); }); @@ -82,12 +79,12 @@ angular.module('copayApp.controllers').controller('backupController', function initWords() { var words = fc.getMnemonic(); - self.xPrivKey = fc.credentials.xPrivKey; + $scope.xPrivKey = fc.credentials.xPrivKey; walletService.lock(fc); - self.mnemonicWords = words.split(/[\u3000\s]+/); - self.shuffledMnemonicWords = shuffledWords(self.mnemonicWords); - self.mnemonicHasPassphrase = fc.mnemonicHasPassphrase(); - self.useIdeograms = words.indexOf("\u3000") >= 0; + $scope.mnemonicWords = words.split(/[\u3000\s]+/); + $scope.shuffledMnemonicWords = shuffledWords($scope.mnemonicWords); + $scope.mnemonicHasPassphrase = fc.mnemonicHasPassphrase(); + $scope.useIdeograms = words.indexOf("\u3000") >= 0; }; function shuffledWords(words) { @@ -101,10 +98,10 @@ angular.module('copayApp.controllers').controller('backupController', }); }; - self.toggle = function() { - self.error = ""; + $scope.toggle = function() { + $scope.error = ""; - if (self.credentialsEncrypted) + if ($scope.credentialsEncrypted) passwordRequest(); $timeout(function() { @@ -124,12 +121,12 @@ angular.module('copayApp.controllers').controller('backupController', handleEncryptedWallet(fc, function(err) { if (err) { - self.error = bwsError.msg(err, gettext('Could not decrypt')); - $log.warn('Error decrypting credentials:', self.error); //TODO + $scope.error = bwsError.msg(err, gettext('Could not decrypt')); + $log.warn('Error decrypting credentials:', $scope.error); //TODO return; } - self.credentialsEncrypted = false; + $scope.credentialsEncrypted = false; initWords(); $timeout(function() { @@ -145,37 +142,38 @@ angular.module('copayApp.controllers').controller('backupController', word: item.word, prevIndex: index }; - self.customWords.push(newWord); - self.shuffledMnemonicWords[index].selected = true; - self.shouldContinue(); + $scope.customWords.push(newWord); + $scope.shuffledMnemonicWords[index].selected = true; + $scope.shouldContinue(); }; $scope.removeButton = function(index, item) { - self.customWords.splice(index, 1); - self.shuffledMnemonicWords[item.prevIndex].selected = false; - self.shouldContinue(); + if ($scope.loading) return; + $scope.customWords.splice(index, 1); + $scope.shuffledMnemonicWords[item.prevIndex].selected = false; + $scope.shouldContinue(); }; - self.shouldContinue = function() { - if (self.customWords.length == 12) - self.selectComplete = true; + $scope.shouldContinue = function() { + if ($scope.customWords.length == 12) + $scope.selectComplete = true; else - self.selectComplete = false; + $scope.selectComplete = false; }; function confirm(cb) { - self.backupError = false; + $scope.backupError = false; - var customWordList = lodash.pluck(self.customWords, 'word'); + var customWordList = lodash.pluck($scope.customWords, 'word'); - if (!lodash.isEqual(self.mnemonicWords, customWordList)) { + if (!lodash.isEqual($scope.mnemonicWords, customWordList)) { return cb('Mnemonic string mismatch'); } $timeout(function() { - if (self.mnemonicHasPassphrase) { + if ($scope.mnemonicHasPassphrase) { var walletClient = bwcService.getClient(); - var separator = self.useIdeograms ? '\u3000' : ' '; + var separator = $scope.useIdeograms ? '\u3000' : ' '; var customSentence = customWordList.join(separator); var passphrase = $scope.passphrase || ''; @@ -189,7 +187,7 @@ angular.module('copayApp.controllers').controller('backupController', return cb(err); } - if (walletClient.credentials.xPrivKey != self.xPrivKey) { + if (walletClient.credentials.xPrivKey != $scope.xPrivKey) { return cb('Private key mismatch'); } } @@ -202,7 +200,7 @@ angular.module('copayApp.controllers').controller('backupController', function backupError(err) { ongoingProcess.set('validatingWords', false); $log.debug('Failed to verify backup: ', err); - self.backupError = true; + $scope.backupError = true; $timeout(function() { $scope.$apply(); diff --git a/src/js/controllers/export.js b/src/js/controllers/export.js index d5110de52..5714f609e 100644 --- a/src/js/controllers/export.js +++ b/src/js/controllers/export.js @@ -2,20 +2,19 @@ angular.module('copayApp.controllers').controller('exportController', function($rootScope, $scope, $timeout, $log, backupService, storageService, profileService, platformInfo, notification, go, gettext, gettextCatalog) { - var self = this; var isWP = platformInfo.isWP; var isAndroid = platformInfo.isAndroid; - self.error = null; - self.success = null; + $scope.error = null; + $scope.success = null; $scope.metaDataEnabled = true; var fc = profileService.focusedClient; - self.isEncrypted = fc.isPrivKeyEncrypted(); + $scope.isEncrypted = fc.isPrivKeyEncrypted(); - self.downloadWalletBackup = function() { - self.getMetaData($scope.metaDataEnabled, function(err, txsFromLocal, localAddressBook) { + $scope.downloadWalletBackup = function() { + $scope.getMetaData($scope.metaDataEnabled, function(err, txsFromLocal, localAddressBook) { if (err) { - self.error = true; + $scope.error = true; return; } var opts = { @@ -24,9 +23,9 @@ angular.module('copayApp.controllers').controller('exportController', addressBook: localAddressBook }; - backupService.walletDownload(self.password, opts, function(err) { + backupService.walletDownload($scope.password, opts, function(err) { if (err) { - self.error = true; + $scope.error = true; return; } $rootScope.$emit('Local/BackupDone'); @@ -36,12 +35,12 @@ angular.module('copayApp.controllers').controller('exportController', }); }; - self.getMetaData = function(metaData, cb) { + $scope.getMetaData = function(metaData, cb) { if (metaData == false) return cb(); - self.getHistoryCache(function(err, txsFromLocal) { + $scope.getHistoryCache(function(err, txsFromLocal) { if (err) return cb(err); - self.getAddressbook(function(err, localAddressBook) { + $scope.getAddressbook(function(err, localAddressBook) { if (err) return cb(err); return cb(null, txsFromLocal, localAddressBook) @@ -49,7 +48,7 @@ angular.module('copayApp.controllers').controller('exportController', }); } - self.getHistoryCache = function(cb) { + $scope.getHistoryCache = function(cb) { storageService.getTxHistory(fc.credentials.walletId, function(err, txs) { if (err) return cb(err); @@ -66,7 +65,7 @@ angular.module('copayApp.controllers').controller('exportController', }); } - self.getAddressbook = function(cb) { + $scope.getAddressbook = function(cb) { storageService.getAddressbook(fc.credentials.network, function(err, addressBook) { if (err) return cb(err); @@ -81,10 +80,10 @@ angular.module('copayApp.controllers').controller('exportController', }); } - self.getBackup = function(cb) { - self.getMetaData($scope.metaDataEnabled, function(err, txsFromLocal, localAddressBook) { + $scope.getBackup = function(cb) { + $scope.getMetaData($scope.metaDataEnabled, function(err, txsFromLocal, localAddressBook) { if (err) { - self.error = true; + $scope.error = true; return cb(null); } var opts = { @@ -93,30 +92,29 @@ angular.module('copayApp.controllers').controller('exportController', addressBook: localAddressBook }; - var ew = backupService.walletExport(self.password, opts); + var ew = backupService.walletExport($scope.password, opts); if (!ew) { - self.error = true; + $scope.error = true; } else { - self.error = false; + $scope.error = false; $rootScope.$emit('Local/BackupDone'); } return cb(ew); }); } - self.viewWalletBackup = function() { - var self = this; + $scope.viewWalletBackup = function() { $timeout(function() { - self.getBackup(function(backup) { + $scope.getBackup(function(backup) { var ew = backup; if (!ew) return; - self.backupWalletPlainText = ew; + $scope.backupWalletPlainText = ew; }); }, 100); }; - self.copyWalletBackup = function() { - self.getBackup(function(backup) { + $scope.copyWalletBackup = function() { + $scope.getBackup(function(backup) { var ew = backup; if (!ew) return; window.cordova.plugins.clipboard.copy(ew); @@ -124,14 +122,14 @@ angular.module('copayApp.controllers').controller('exportController', }); }; - self.sendWalletBackup = function() { + $scope.sendWalletBackup = function() { var fc = profileService.focusedClient; window.plugins.toast.showShortCenter(gettextCatalog.getString('Preparing backup...')); var name = (fc.credentials.walletName || fc.credentials.walletId); if (fc.alias) { name = fc.alias + ' [' + name + ']'; } - self.getBackup(function(backup) { + $scope.getBackup(function(backup) { var ew = backup; if (!ew) return; diff --git a/src/js/controllers/preferences.js b/src/js/controllers/preferences.js index 58f5f4650..f02cac712 100644 --- a/src/js/controllers/preferences.js +++ b/src/js/controllers/preferences.js @@ -3,28 +3,27 @@ angular.module('copayApp.controllers').controller('preferencesController', function($scope, $rootScope, $timeout, $log, configService, profileService, fingerprintService, walletService) { - var self = this; var fc; var config = configService.getSync(); var disableFocusListener = $rootScope.$on('Local/NewFocusedWalletReady', function() { - self.init(); + $scope.init(); }); $scope.$on('$destroy', function() { disableFocusListener(); }); - this.init = function() { + $scope.init = function() { fc = profileService.focusedClient; if (fc) { $scope.encryptEnabled = walletService.isEncrypted(fc); - this.externalSource = fc.getPrivKeyExternalSourceName() == 'ledger' ? "Ledger" : null; + $scope.externalSource = fc.getPrivKeyExternalSourceName() == 'ledger' ? "Ledger" : null; // TODO externalAccount //this.externalIndex = fc.getExternalIndex(); } - this.touchidAvailable = fingerprintService.isAvailable(); + $scope.touchidAvailable = fingerprintService.isAvailable(); $scope.touchidEnabled = config.touchIdFor ? config.touchIdFor[fc.credentials.walletId] : null; $scope.deleted = false; @@ -41,7 +40,6 @@ angular.module('copayApp.controllers').controller('preferencesController', }; $scope.encryptChange = function() { - var self = this; if (!fc) return; var val = $scope.encryptEnabled; diff --git a/src/js/controllers/preferencesAdvanced.js b/src/js/controllers/preferencesAdvanced.js deleted file mode 100644 index 30616e803..000000000 --- a/src/js/controllers/preferencesAdvanced.js +++ /dev/null @@ -1,6 +0,0 @@ -'use strict'; - -angular.module('copayApp.controllers').controller('preferencesAdvancedController', - function($scope) { - - }); \ No newline at end of file diff --git a/src/js/controllers/preferencesAlias.js b/src/js/controllers/preferencesAlias.js index 385f4e258..14cb02f25 100644 --- a/src/js/controllers/preferencesAlias.js +++ b/src/js/controllers/preferencesAlias.js @@ -2,20 +2,18 @@ angular.module('copayApp.controllers').controller('preferencesAliasController', function($scope, $timeout, configService, profileService, go) { - var config = configService.getSync(); var fc = profileService.focusedClient; var walletId = fc.credentials.walletId; - var config = configService.getSync(); - config.aliasFor = config.aliasFor || {}; - this.alias = config.aliasFor[walletId] || fc.credentials.walletName; - this.save = function() { - var self = this; + config.aliasFor = config.aliasFor || {}; + $scope.alias = config.aliasFor[walletId] || fc.credentials.walletName; + + $scope.save = function() { var opts = { aliasFor: {} }; - opts.aliasFor[walletId] = self.alias; + opts.aliasFor[walletId] = $scope.alias; configService.set(opts, function(err) { if (err) { @@ -23,10 +21,9 @@ angular.module('copayApp.controllers').controller('preferencesAliasController', return; } $scope.$emit('Local/AliasUpdated'); - $timeout(function(){ + $timeout(function() { go.path('preferences'); }, 50); }); - }; }); diff --git a/src/js/controllers/preferencesBwsUrl.js b/src/js/controllers/preferencesBwsUrl.js index d7d4afc6d..515ba365a 100644 --- a/src/js/controllers/preferencesBwsUrl.js +++ b/src/js/controllers/preferencesBwsUrl.js @@ -2,24 +2,24 @@ angular.module('copayApp.controllers').controller('preferencesBwsUrlController', function($scope, $log, configService, go, applicationService, profileService, storageService) { - this.error = null; - this.success = null; + $scope.error = null; + $scope.success = null; var fc = profileService.focusedClient; var walletId = fc.credentials.walletId; var defaults = configService.getDefaults(); var config = configService.getSync(); - this.bwsurl = (config.bwsFor && config.bwsFor[walletId]) || defaults.bws.url; + $scope.bwsurl = (config.bwsFor && config.bwsFor[walletId]) || defaults.bws.url; - this.resetDefaultUrl = function() { - this.bwsurl = defaults.bws.url; + $scope.resetDefaultUrl = function() { + $scope.bwsurl = defaults.bws.url; }; - this.save = function() { + $scope.save = function() { var bws; - switch (this.bwsurl) { + switch ($scope.bwsurl) { case 'prod': case 'production': bws = 'https://bws.bitpay.com/bws/api' @@ -35,13 +35,13 @@ angular.module('copayApp.controllers').controller('preferencesBwsUrlController', }; if (bws) { $log.info('Using BWS URL Alias to ' + bws); - this.bwsurl = bws; + $scope.bwsurl = bws; } var opts = { bwsFor: {} }; - opts.bwsFor[walletId] = this.bwsurl; + opts.bwsFor[walletId] = $scope.bwsurl; configService.set(opts, function(err) { if (err) console.log(err); diff --git a/src/js/controllers/preferencesDelete.js b/src/js/controllers/preferencesDelete.js index 9f6ab6fa0..5dc6cf9d4 100644 --- a/src/js/controllers/preferencesDelete.js +++ b/src/js/controllers/preferencesDelete.js @@ -3,8 +3,8 @@ angular.module('copayApp.controllers').controller('preferencesDeleteWalletController', function($scope, $rootScope, $filter, $timeout, $modal, $log, $ionicModal, storageService, notification, profileService, platformInfo, go, gettext, gettextCatalog, applicationService, ongoingProcess) { var isCordova = platformInfo.isCordova; - this.isCordova = isCordova; - this.error = null; + $scope.isCordova = isCordova; + $scope.error = null; var delete_msg = gettextCatalog.getString('Are you sure you want to delete this wallet?'); var accept_msg = gettextCatalog.getString('Accept'); @@ -20,8 +20,7 @@ angular.module('copayApp.controllers').controller('preferencesDeleteWalletContro $scope.loading = false; $ionicModal.fromTemplateUrl('views/modals/confirmation.html', { - scope: $scope, - animation: 'slide-in-up' + scope: $scope }).then(function(modal) { $scope.confirmationModal = modal; $scope.confirmationModal.show(); @@ -33,12 +32,11 @@ angular.module('copayApp.controllers').controller('preferencesDeleteWalletContro var fc = profileService.focusedClient; var name = fc.credentials.walletName; var walletName = (fc.alias || '') + ' [' + name + ']'; - var self = this; profileService.deleteWalletClient(fc, function(err) { ongoingProcess.set('deletingWallet', false); if (err) { - self.error = err.message || err; + $scope.error = err.message || err; } else { notification.success(gettextCatalog.getString('Success'), gettextCatalog.getString('The wallet "{{walletName}}" was deleted', { walletName: walletName @@ -48,7 +46,7 @@ angular.module('copayApp.controllers').controller('preferencesDeleteWalletContro }); }; - this.deleteWallet = function() { + $scope.deleteWallet = function() { if (isCordova) { navigator.notification.confirm( delete_msg, diff --git a/src/js/controllers/preferencesDeleteWords.js b/src/js/controllers/preferencesDeleteWords.js index 405d5d6ca..7355e4bcc 100644 --- a/src/js/controllers/preferencesDeleteWords.js +++ b/src/js/controllers/preferencesDeleteWords.js @@ -1,15 +1,14 @@ 'use strict'; angular.module('copayApp.controllers').controller('preferencesDeleteWordsController', function(confirmDialog, lodash, notification, profileService, go, gettext) { - var self = this; var fc = profileService.focusedClient; var msg = gettext('Are you sure you want to delete the recovery phrase?'); var successMsg = gettext('Recovery phrase deleted'); if (lodash.isEmpty(fc.credentials.mnemonic) && lodash.isEmpty(fc.credentials.mnemonicEncrypted)) - self.deleted = true; + $scope.deleted = true; - self.delete = function() { + $scope.delete = function() { confirmDialog.show(msg, function(ok) { if (ok) { fc.clearMnemonic(); diff --git a/src/js/controllers/preferencesEmail.js b/src/js/controllers/preferencesEmail.js index b41981e13..84f8cf2d3 100644 --- a/src/js/controllers/preferencesEmail.js +++ b/src/js/controllers/preferencesEmail.js @@ -1,21 +1,19 @@ 'use strict'; -angular.module('copayApp.controllers').controller('preferencesEmailController', - function($rootScope, go, profileService, gettext, $log, walletService) { - this.save = function(form) { - var self = this; - this.error = null; +angular.module('copayApp.controllers').controller('preferencesEmailController', function($rootScope, go, profileService, walletService) { + $scope.save = function(form) { + $scope.error = null; + $scope.saving = true; + var fc = profileService.focusedClient; + var email = $scope.email || ''; - var fc = profileService.focusedClient; - var email = self.email || ''; - - walletService.updateRemotePreferences(fc, { - email: email, - }, function(err) { - if (!err) - $rootScope.$emit('Local/EmailUpdated', email); - - go.path('preferences'); - }); - }; - }); + walletService.updateRemotePreferences(fc, { + email: email, + }, function(err) { + $scope.saving = false; + if (!err) + $rootScope.$emit('Local/EmailUpdated', email); + go.path('preferences'); + }); + }; +}); diff --git a/src/js/controllers/preferencesHistory.js b/src/js/controllers/preferencesHistory.js index 321e1ade2..e3285b9e5 100644 --- a/src/js/controllers/preferencesHistory.js +++ b/src/js/controllers/preferencesHistory.js @@ -4,26 +4,13 @@ angular.module('copayApp.controllers').controller('preferencesHistory', function($scope, $log, $timeout, storageService, go, profileService, lodash) { var fc = profileService.focusedClient; var c = fc.credentials; - this.csvReady = false; + $scope.csvReady = false; + $scope.csvHistory = function(isUpdating, cb) { + if (isUpdating) return; - this.csvHistory = function(cb) { + var allTxs = []; - function formatDate(date) { - var dateObj = new Date(date); - if (!dateObj) { - $log.debug('Error formating a date'); - return 'DateError' - } - if (!dateObj.toJSON()) { - return ''; - } - - return dateObj.toJSON(); - } - - var step = 6; - var unique = {}; function getHistory(cb) { storageService.getTxHistory(c.walletId, function(err, txs) { if (err) return cb(err); @@ -38,16 +25,7 @@ angular.module('copayApp.controllers').controller('preferencesHistory', allTxs.push(txsFromLocal); return cb(null, lodash.flatten(allTxs)); }); - } - - var fc = profileService.focusedClient; - var c = fc.credentials; - - if (!fc.isComplete()) - return; - - var self = this; - var allTxs = []; + }; $log.debug('Generating CSV from History'); getHistory(function(err, txs) { @@ -59,12 +37,12 @@ angular.module('copayApp.controllers').controller('preferencesHistory', $log.debug('Wallet Transaction History Length:', txs.length); - self.satToUnit = 1 / self.unitToSatoshi; + $scope.satToUnit = 1 / $scope.unitToSatoshi; var data = txs; var satToBtc = 1 / 100000000; - self.csvContent = []; - self.csvFilename = 'Copay-' + (self.alias || self.walletName) + '.csv'; - self.csvHeader = ['Date', 'Destination', 'Description', 'Amount', 'Currency', 'Txid', 'Creator', 'Copayers', 'Comment']; + $scope.csvContent = []; + $scope.csvFilename = 'Copay-' + ($scope.alias || $scope.walletName) + '.csv'; + $scope.csvHeader = ['Date', 'Destination', 'Description', 'Amount', 'Currency', 'Txid', 'Creator', 'Copayers', 'Comment']; var _amount, _note, _copayers, _creator, _comment; data.forEach(function(it, index) { @@ -89,7 +67,7 @@ angular.module('copayApp.controllers').controller('preferencesHistory', if (it.action == 'moved') _note += ' Moved:' + (it.amount * satToBtc).toFixed(8) - self.csvContent.push({ + $scope.csvContent.push({ 'Date': formatDate(it.time * 1000), 'Destination': it.addressTo || '', 'Description': _note, @@ -103,7 +81,7 @@ angular.module('copayApp.controllers').controller('preferencesHistory', if (it.fees && (it.action == 'moved' || it.action == 'sent')) { var _fee = (it.fees * satToBtc).toFixed(8) - self.csvContent.push({ + $scope.csvContent.push({ 'Date': formatDate(it.time * 1000), 'Destination': 'Bitcoin Network Fees', 'Description': '', @@ -116,16 +94,31 @@ angular.module('copayApp.controllers').controller('preferencesHistory', } }); - self.csvReady = true; + $scope.csvReady = true; + $timeout(function() { + $scope.$apply(); + }, 100); + if (cb) return cb(); return; - }); + + function formatDate(date) { + var dateObj = new Date(date); + if (!dateObj) { + $log.debug('Error formating a date'); + return 'DateError' + } + if (!dateObj.toJSON()) { + return ''; + } + + return dateObj.toJSON(); + }; }; - - this.clearTransactionHistory = function() { + $scope.clearTransactionHistory = function() { storageService.removeTxHistory(c.walletId, function(err) { if (err) { $log.error(err); @@ -137,5 +130,5 @@ angular.module('copayApp.controllers').controller('preferencesHistory', go.walletHome(); }, 100); }); - } + }; }); diff --git a/src/js/controllers/preferencesInformation.js b/src/js/controllers/preferencesInformation.js index 8f31255b1..6edfa4df1 100644 --- a/src/js/controllers/preferencesInformation.js +++ b/src/js/controllers/preferencesInformation.js @@ -6,7 +6,7 @@ angular.module('copayApp.controllers').controller('preferencesInformation', var fc = profileService.focusedClient; var c = fc.credentials; - this.init = function() { + $scope.init = function() { var basePath = c.getBaseAddressDerivationPath(); $scope.walletName = c.walletName; @@ -43,11 +43,7 @@ angular.module('copayApp.controllers').controller('preferencesInformation', }); }; - this.sendAddrs = function() { - var self = this; - - self.loading = true; - + $scope.sendAddrs = function() { function formatDate(ts) { var dateObj = new Date(ts * 1000); if (!dateObj) { @@ -64,7 +60,6 @@ angular.module('copayApp.controllers').controller('preferencesInformation', fc.getMainAddresses({ doNotVerify: true }, function(err, addrs) { - self.loading = false; if (err) { $log.warn(err); return;