diff --git a/public/views/walletHome.html b/public/views/walletHome.html
index a9353d02c..57f28cd22 100644
--- a/public/views/walletHome.html
+++ b/public/views/walletHome.html
@@ -431,7 +431,7 @@
Fee policy for this transaction
-
+ ng-click="home.setFee(fee.level)" class="line-b p20">
{{index.feeOpts[fee.level]|translate}}
diff --git a/src/js/controllers/index.js b/src/js/controllers/index.js
index e8a820836..6559dbd7f 100644
--- a/src/js/controllers/index.js
+++ b/src/js/controllers/index.js
@@ -278,7 +278,7 @@ angular.module('copayApp.controllers').controller('indexController', function($r
}
$log.debug('Wallet Status:', walletStatus);
self.setPendingTxps(walletStatus.pendingTxps);
- self.setFees();
+ self.setFeesOpts();
self.setSpendUnconfirmed();
// Status Shortcuts
@@ -311,17 +311,40 @@ angular.module('copayApp.controllers').controller('indexController', function($r
self.spendUnconfirmed = configService.getSync().wallet.spendUnconfirmed;
};
- self.setCurrentFeeLevel = function(level) {
- self.currentFeeLevel = level || configService.getSync().wallet.settings.feeLevel || 'priority';
+ self.setSendMax = function() {
+
+ // Set Send max
+ if (self.currentFeeLevel && self.totalBytesToSendMax) {
+ feeService.getCurrentFeeValue(self.currentFeeLevel, function(err, feePerKb) {
+
+ // KB to send max
+ if (self.totalBytesToSendMax) {
+ var feeToSendMaxSat = parseInt(((self.totalBytesToSendMax * feePerKb ) / 1000.).toFixed(0));
+ self.availableMaxBalance = strip((self.availableBalanceSat - feeToSendMaxSat) * self.satToUnit);
+ self.feeToSendMaxStr = profileService.formatAmount(feeToSendMaxSat) + ' ' + self.unitName;
+
+console.log('[index.js.595]', self.currentFeeLevel, feePerKb, self.totalBytesToSendMax, feeToSendMaxSat, self.feeToSendMaxStr, "AVAIL", self.availableBalanceSat,self.availableMaxBalance); //TODO
+
+ } else {
+ self.feeToSendMaxStr = null;
+ }
+ });
+ }
+
};
- self.setFees = function() {
+ self.setCurrentFeeLevel = function(level) {
+ self.currentFeeLevel = level || configService.getSync().wallet.settings.feeLevel || 'priority';
+ self.setSendMax();
+ };
+
+
+ self.setFeesOpts = function() {
var fc = profileService.focusedClient;
if (!fc) return;
$timeout(function() {
feeService.getFeeLevels(function(levels) {
self.feeLevels = levels;
- self.setCurrentFeeLevel();
$rootScope.$apply();
});
});
@@ -550,6 +573,7 @@ angular.module('copayApp.controllers').controller('indexController', function($r
var config = configService.getSync().wallet.settings;
var COIN = 1e8;
+
// Address with Balance
self.balanceByAddress = balance.byAddress;
@@ -572,17 +596,6 @@ angular.module('copayApp.controllers').controller('indexController', function($r
self.lockedBalanceBTC = strip(self.lockedBalanceSat / COIN);
self.availableBalanceBTC = strip(self.availableBalanceBTC / COIN);
- // KB to send max
- self.feePerKbSat = config.feeValue || 10000;
- if (balance.totalKbToSendMax) {
- var feeToSendMaxSat = balance.totalKbToSendMax * self.feePerKbSat;
-
- self.availableMaxBalance = strip((self.availableBalanceSat - feeToSendMaxSat) * self.satToUnit);
- self.feeToSendMaxStr = profileService.formatAmount(feeToSendMaxSat) + ' ' + self.unitName;
- } else {
- self.feeToSendMaxStr = null;
- }
-
//STR
self.totalBalanceStr = profileService.formatAmount(self.totalBalanceSat) + ' ' + self.unitName;
self.lockedBalanceStr = profileService.formatAmount(self.lockedBalanceSat) + ' ' + self.unitName;
@@ -591,6 +604,11 @@ angular.module('copayApp.controllers').controller('indexController', function($r
self.alternativeName = config.alternativeName;
self.alternativeIsoCode = config.alternativeIsoCode;
+ // Other
+ self.totalBytesToSendMax = balance.totalBytesToSendMax;
+
+ self.setCurrentFeeLevel();
+
// Check address
addressService.isUsed(self.walletId, balance.byAddress, function(err, used) {
if (used) {
diff --git a/src/js/controllers/walletHome.js b/src/js/controllers/walletHome.js
index ec96ba394..ff1d59536 100644
--- a/src/js/controllers/walletHome.js
+++ b/src/js/controllers/walletHome.js
@@ -714,6 +714,10 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
};
};
+ this.setFee = function(level) {
+ this.currentSendFeeLevel = level;
+ };
+
this.submitForm = function() {
var fc = profileService.focusedClient;
var unitToSat = this.unitToSatoshi;
@@ -748,6 +752,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
feeService.getCurrentFeeValue(self.currentSendFeeLevel, function(err, feePerKb) {
if (err) $log.debug(err);
+console.log('[walletHome.js.757:amount:]',amount, feePerKb); //TODO
fc.sendTxProposal({
toAddress: address,
amount: amount,
diff --git a/src/js/services/feeService.js b/src/js/services/feeService.js
index 3b7f810ce..1924d0ac8 100644
--- a/src/js/services/feeService.js
+++ b/src/js/services/feeService.js
@@ -22,7 +22,7 @@ angular.module('copayApp.services').factory('feeService', function($log, profile
}
else {
fee = lodash.find(levels, { level: feeLevel }).feePerKB;
- $log.debug('Dynamic fee for ' + feeLevel + ': ' + fee);
+ $log.debug('Dynamic fee for:' + feeLevel + ': ' + fee + ' SAT');
return cb(null, fee);
}
});