From e4729fa40c5862d06586d7cc1df3912292d317bb Mon Sep 17 00:00:00 2001 From: Gustavo Maximiliano Cortez Date: Wed, 2 Dec 2015 11:57:13 -0300 Subject: [PATCH 1/2] Removes AdvSend and Ref getFeeLevels before send --- public/views/buyGlidera.html | 2 +- public/views/preferencesGlidera.html | 2 +- public/views/sellGlidera.html | 4 +- public/views/walletHome.html | 33 +------- src/js/controllers/sellGlidera.js | 114 +++++++++++++-------------- src/js/controllers/walletHome.js | 106 +++++++++---------------- 6 files changed, 98 insertions(+), 163 deletions(-) diff --git a/public/views/buyGlidera.html b/public/views/buyGlidera.html index 73c04ad2b..b5b76e254 100644 --- a/public/views/buyGlidera.html +++ b/public/views/buyGlidera.html @@ -1,7 +1,7 @@
+ ng-init="titleSection='Buy'; goBackToState = 'glidera'; noColor = true">
diff --git a/public/views/preferencesGlidera.html b/public/views/preferencesGlidera.html index 8b39ece6e..7336059b5 100644 --- a/public/views/preferencesGlidera.html +++ b/public/views/preferencesGlidera.html @@ -1,7 +1,7 @@
+ ng-init="titleSection='Preferences'; goBackToState = 'glidera'; noColor = true">
diff --git a/public/views/sellGlidera.html b/public/views/sellGlidera.html index 95c4acc02..63f8c5ecd 100644 --- a/public/views/sellGlidera.html +++ b/public/views/sellGlidera.html @@ -1,7 +1,7 @@
+ ng-init="titleSection='Sell'; goBackToState = 'glidera'; noColor = true">
@@ -111,7 +111,7 @@ Please, enter the code below

+ ng-submit="sell.createTx(index.glideraToken, index.glideraPermissions, twoFaCode, index.feeRateToSendMax)" novalidate> Send All @@ -280,7 +280,7 @@
- +
{{home.error|translate}} @@ -377,35 +377,6 @@
-
- - - Show advanced options - Hide advanced options - - - -
-
-

Fee policy for this transaction

-
    -
  • - {{index.feeOpts[fee.level]|translate}} - -
  • -
-
-

 

-
- Use Unconfirmed Funds - -
-
-
- -
Cancel diff --git a/src/js/controllers/sellGlidera.js b/src/js/controllers/sellGlidera.js index 616892aa7..4904d4c21 100644 --- a/src/js/controllers/sellGlidera.js +++ b/src/js/controllers/sellGlidera.js @@ -1,7 +1,7 @@ 'use strict'; angular.module('copayApp.controllers').controller('sellGlideraController', - function($scope, $timeout, $log, $modal, configService, profileService, addressService, feeService, glideraService, bwsError, lodash, isChromeApp, animationService) { + function($scope, $timeout, $log, $modal, configService, profileService, addressService, glideraService, bwsError, lodash, isChromeApp, animationService) { var self = this; var config = configService.getSync(); @@ -11,7 +11,6 @@ angular.module('copayApp.controllers').controller('sellGlideraController', this.error = null; this.loading = null; this.currentSpendUnconfirmed = config.wallet.spendUnconfirmed; - this.currentFeeLevel = config.wallet.settings.feeLevel || 'normal'; var fc; var otherWallets = function(testnet) { @@ -123,7 +122,7 @@ angular.module('copayApp.controllers').controller('sellGlideraController', }, 100); }; - this.createTx = function(token, permissions, twoFaCode) { + this.createTx = function(token, permissions, twoFaCode, currentFeePerKb) { var self = this; self.error = null; @@ -143,65 +142,62 @@ angular.module('copayApp.controllers').controller('sellGlideraController', } var amount = parseInt((self.sellPrice.qty * 100000000).toFixed(0)); - feeService.getCurrentFeeValue(self.currentFeeLevel, function(err, feePerKb) { - if (err) $log.debug(err); - fc.sendTxProposal({ - toAddress: sellAddress, - amount: amount, - message: 'Glidera transaction', - customData: {'glideraToken': token}, - payProUrl: null, - feePerKb: feePerKb, - excludeUnconfirmedUtxos: self.currentSpendUnconfirmed ? false : true - }, function(err, txp) { - if (err) { - profileService.lockFC(); - $log.error(err); - $timeout(function() { - self.loading = null; - self.error = bwsError.msg(err, 'Error'); - }, 1); - return; - } - - if (!fc.canSign()) { + fc.sendTxProposal({ + toAddress: sellAddress, + amount: amount, + message: 'Glidera transaction', + customData: {'glideraToken': token}, + payProUrl: null, + feePerKb: currentFeePerKb, + excludeUnconfirmedUtxos: self.currentSpendUnconfirmed ? false : true + }, function(err, txp) { + if (err) { + profileService.lockFC(); + $log.error(err); + $timeout(function() { self.loading = null; - $log.info('No signing proposal: No private key'); - return; - } + self.error = bwsError.msg(err, 'Error'); + }, 1); + return; + } - _signTx(txp, function(err, txp, rawTx) { - profileService.lockFC(); - if (err) { + if (!fc.canSign()) { + self.loading = null; + $log.info('No signing proposal: No private key'); + return; + } + + _signTx(txp, function(err, txp, rawTx) { + profileService.lockFC(); + if (err) { + self.loading = null; + self.error = err; + $scope.$apply(); + } + else { + var data = { + refundAddress: refundAddress, + signedTransaction: rawTx, + priceUuid: self.sellPrice.priceUuid, + useCurrentPrice: self.sellPrice.priceUuid ? false : true, + ip: null + }; + glideraService.sell(token, twoFaCode, data, function(err, data) { self.loading = null; - self.error = err; - $scope.$apply(); - } - else { - var data = { - refundAddress: refundAddress, - signedTransaction: rawTx, - priceUuid: self.sellPrice.priceUuid, - useCurrentPrice: self.sellPrice.priceUuid ? false : true, - ip: null - }; - glideraService.sell(token, twoFaCode, data, function(err, data) { - self.loading = null; - if (err) { - self.error = err; - fc.removeTxProposal(txp, function(err, txpb) { - $timeout(function() { - $scope.$emit('Local/GlideraError'); - }, 100); - }); - } - else { - self.success = data; - $scope.$emit('Local/GlideraTx'); - } - }); - } - }); + if (err) { + self.error = err; + fc.removeTxProposal(txp, function(err, txpb) { + $timeout(function() { + $scope.$emit('Local/GlideraError'); + }, 100); + }); + } + else { + self.success = data; + $scope.$emit('Local/GlideraTx'); + } + }); + } }); }); }); diff --git a/src/js/controllers/walletHome.js b/src/js/controllers/walletHome.js index 1163521b8..44f60e2fc 100644 --- a/src/js/controllers/walletHome.js +++ b/src/js/controllers/walletHome.js @@ -1,13 +1,12 @@ 'use strict'; -angular.module('copayApp.controllers').controller('walletHomeController', function($scope, $rootScope, $timeout, $filter, $modal, $log, notification, txStatus, isCordova, profileService, lodash, configService, rateService, storageService, bitcore, isChromeApp, gettext, gettextCatalog, nodeWebkit, addressService, ledger, feeService, bwsError, confirmDialog, txFormatService, animationService, addressbookService, go) { +angular.module('copayApp.controllers').controller('walletHomeController', function($scope, $rootScope, $timeout, $filter, $modal, $log, notification, txStatus, isCordova, profileService, lodash, configService, rateService, storageService, bitcore, isChromeApp, gettext, gettextCatalog, nodeWebkit, addressService, ledger, bwsError, confirmDialog, txFormatService, animationService, addressbookService, go) { var self = this; $rootScope.hideMenuBar = false; $rootScope.wpInputFocused = false; var config = configService.getSync(); var configWallet = config.wallet; - $scope.currentSpendUnconfirmed = configWallet.spendUnconfirmed; // INIT var walletSettings = configWallet.settings; @@ -23,7 +22,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi this.isMobile = isMobile.any(); this.isWindowsPhoneApp = isMobile.Windows() && isCordova; this.blockUx = false; - this.disableAdvSend = false; this.isRateAvailable = false; this.showScanner = false; this.isMobile = isMobile.any(); @@ -272,7 +270,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi $rootScope.modalOpened = true; var fc = profileService.focusedClient; var refreshUntilItChanges = false; - var currentSpendUnconfirmed = $scope.currentSpendUnconfirmed; + var currentSpendUnconfirmed = configWallet.spendUnconfirmed; var ModalInstanceCtrl = function($scope, $modalInstance) { $scope.error = null; $scope.copayers = copayers @@ -662,15 +660,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi // Send - var unwatchSpendUnconfirmed = $scope.$watch('currentSpendUnconfirmed', function(newVal, oldVal) { - if (newVal == oldVal) return; - $scope.currentSpendUnconfirmed = newVal; - }); - - $scope.$on('$destroy', function() { - unwatchSpendUnconfirmed(); - }); - this.canShowAlternative = function() { return $scope.showAlternative; }; @@ -838,13 +827,10 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi }; }; - this.setFee = function(level) { - this.currentSendFeeLevel = level; - }; - - this.submitForm = function() { + this.submitForm = function(currentFeePerKb) { var fc = profileService.focusedClient; var unitToSat = this.unitToSatoshi; + var currentSpendUnconfirmed = configWallet.spendUnconfirmed; if (isCordova && this.isWindowsPhoneApp) { this.hideAddress = false; @@ -882,14 +868,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi address = form.address.$modelValue; amount = parseInt((form.amount.$modelValue * unitToSat).toFixed(0)); - var getFee = function(cb) { - if (form.feePerKb) { - cb(null, form.feePerKb); - } else { - feeService.getCurrentFeeValue(self.currentSendFeeLevel, cb); - } - }; - requestTouchid(function(err) { if (err) { profileService.lockFC(); @@ -901,43 +879,40 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi return; } - getFee(function(err, feePerKb) { - if (err) $log.debug(err); - fc.sendTxProposal({ - toAddress: address, - amount: amount, - message: comment, - payProUrl: paypro ? paypro.url : null, - feePerKb: feePerKb, - excludeUnconfirmedUtxos: $scope.currentSpendUnconfirmed ? false : true - }, function(err, txp) { - if (err) { - self.setOngoingProcess(); - profileService.lockFC(); - return self.setSendError(err); - } + fc.sendTxProposal({ + toAddress: address, + amount: amount, + message: comment, + payProUrl: paypro ? paypro.url : null, + feePerKb: currentFeePerKb, + excludeUnconfirmedUtxos: currentSpendUnconfirmed ? false : true + }, function(err, txp) { + if (err) { + self.setOngoingProcess(); + profileService.lockFC(); + return self.setSendError(err); + } - if (!fc.canSign() && !fc.isPrivKeyExternal()) { - $log.info('No signing proposal: No private key') - self.setOngoingProcess(); - self.resetForm(); - txStatus.notify(txp, function() { - return $scope.$emit('Local/TxProposalAction'); - }); - return; - } - - self.signAndBroadcast(txp, function(err) { - self.setOngoingProcess(); - self.resetForm(); - if (err) { - self.error = err.message ? err.message : gettext('The payment was created but could not be completed. Please try again from home screen'); - $scope.$emit('Local/TxProposalAction'); - $timeout(function() { - $scope.$digest(); - }, 1); - } + if (!fc.canSign() && !fc.isPrivKeyExternal()) { + $log.info('No signing proposal: No private key') + self.setOngoingProcess(); + self.resetForm(); + txStatus.notify(txp, function() { + return $scope.$emit('Local/TxProposalAction'); }); + return; + } + + self.signAndBroadcast(txp, function(err) { + self.setOngoingProcess(); + self.resetForm(); + if (err) { + self.error = err.message ? err.message : gettext('The payment was created but could not be completed. Please try again from home screen'); + $scope.$emit('Local/TxProposalAction'); + $timeout(function() { + $scope.$digest(); + }, 1); + } }); }); }); @@ -1029,10 +1004,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi this.lockAddress = false; this.lockAmount = false; - this.currentSendFeeLevel = null; - this.hideAdvSend = true; - this.disableAdvSend = false; - $scope.currentSpendUnconfirmed = configService.getSync().wallet.spendUnconfirmed; this._amount = this._address = null; @@ -1295,7 +1266,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi this.setForm(null, amount, null, feeRate); }; - this.sendAll = function(amount, feeStr, feeRate, currentFeeLevel) { + this.sendAll = function(amount, feeStr, feeRate) { var self = this; var msg = gettextCatalog.getString("{{fee}} will be deducted for bitcoin networking fees", { fee: feeStr @@ -1304,9 +1275,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi confirmDialog.show(msg, function(confirmed) { if (confirmed) { self._doSendAll(amount, feeRate); - self.disableAdvSend = true; - self.currentSendFeeLevel = currentFeeLevel; - $scope.currentSpendUnconfirmed = configService.getSync().wallet.spendUnconfirmed; } }); }; From 4cbee7261e1164c02596df34e04e5347ca6ee096 Mon Sep 17 00:00:00 2001 From: Gustavo Maximiliano Cortez Date: Wed, 2 Dec 2015 12:21:26 -0300 Subject: [PATCH 2/2] Removes unused fee rate variable --- public/views/walletHome.html | 4 ++-- src/js/controllers/walletHome.js | 23 ++++++++--------------- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/public/views/walletHome.html b/public/views/walletHome.html index cc27cc5fb..c555ec419 100644 --- a/public/views/walletHome.html +++ b/public/views/walletHome.html @@ -270,7 +270,7 @@ Send All @@ -311,7 +311,7 @@
+ ng-click="home.openDestinationAddressModal(index.otherWallets, _address)">
diff --git a/src/js/controllers/walletHome.js b/src/js/controllers/walletHome.js index 44f60e2fc..a931f5ce7 100644 --- a/src/js/controllers/walletHome.js +++ b/src/js/controllers/walletHome.js @@ -113,10 +113,11 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi var cancel_msg = gettextCatalog.getString('Cancel'); var confirm_msg = gettextCatalog.getString('Confirm'); - $scope.openDestinationAddressModal = function(wallets, address) { + this.openDestinationAddressModal = function(wallets, address) { $rootScope.modalOpened = true; var fc = profileService.focusedClient; - self.resetForm(); + self.lockAddress = false; + self._address = null; var ModalInstanceCtrl = function($scope, $modalInstance) { $scope.wallets = wallets; @@ -969,7 +970,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi }); }; - this.setForm = function(to, amount, comment, feeRate) { + this.setForm = function(to, amount, comment) { var form = $scope.sendForm; if (to) { form.address.$setViewValue(to); @@ -990,10 +991,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi form.comment.$isValid = true; form.comment.$render(); } - - if (feeRate) { - form.feeRate = feeRate; - } }; @@ -1009,10 +1006,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi var form = $scope.sendForm; - if (form && form.feeRate) { - form.feeRate = null; - } - if (form && form.amount) { form.amount.$pristine = true; form.amount.$setViewValue(''); @@ -1262,11 +1255,11 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi return actions.hasOwnProperty('create'); }; - this._doSendAll = function(amount, feeRate) { - this.setForm(null, amount, null, feeRate); + this._doSendAll = function(amount) { + this.setForm(null, amount, null); }; - this.sendAll = function(amount, feeStr, feeRate) { + this.sendAll = function(amount, feeStr) { var self = this; var msg = gettextCatalog.getString("{{fee}} will be deducted for bitcoin networking fees", { fee: feeStr @@ -1274,7 +1267,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi confirmDialog.show(msg, function(confirmed) { if (confirmed) { - self._doSendAll(amount, feeRate); + self._doSendAll(amount); } }); };