Set fees in preferences. First step for advanced send
This commit is contained in:
parent
075206cd8f
commit
e7a98d44f9
10 changed files with 82 additions and 64 deletions
|
|
@ -877,6 +877,7 @@ input.ng-invalid-match, input.ng-invalid-match:focus {
|
|||
.text-alert {color: red;}
|
||||
.text-success {color: #1ABC9C;}
|
||||
.text-spacing {letter-spacing:2px;}
|
||||
.text-capitalize {text-transform: capitalize;}
|
||||
|
||||
.panel {
|
||||
background: #FFFFFF;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ angular.module('copayApp.controllers').controller('preferencesController',
|
|||
function($scope, $rootScope, $filter, $timeout, $modal, $log, lodash, configService, profileService) {
|
||||
var config = configService.getSync();
|
||||
this.unitName = config.wallet.settings.unitName;
|
||||
this.feeName = config.wallet.settings.feeName || 'Priority';
|
||||
this.bwsurl = config.bws.url;
|
||||
this.selectedAlternative = {
|
||||
name: config.wallet.settings.alternativeName,
|
||||
|
|
|
|||
21
src/js/controllers/preferencesFee.js
Normal file
21
src/js/controllers/preferencesFee.js
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('preferencesFeeController',
|
||||
function($rootScope, configService) {
|
||||
|
||||
this.save = function(newFee) {
|
||||
var opts = {
|
||||
wallet: {
|
||||
settings: {
|
||||
feeLevel: newFee
|
||||
}
|
||||
}
|
||||
};
|
||||
$rootScope.$emit('Local/FeeLevelUpdated', newFee);
|
||||
|
||||
configService.set(opts, function(err) {
|
||||
if (err) $log.debug(err);
|
||||
});
|
||||
|
||||
};
|
||||
});
|
||||
|
|
@ -973,7 +973,8 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
|
|||
}
|
||||
};
|
||||
|
||||
this.openFeeLevelsModal = function(feeLevels, currentFeeLevel) {
|
||||
// Advanced SEND: set temporary fee policy for each transaction
|
||||
this.openAdvancedSendModal = function(feeLevels, currentFeeLevel) {
|
||||
var fc = profileService.focusedClient;
|
||||
|
||||
var ModalInstanceCtrl = function($scope, $modalInstance) {
|
||||
|
|
@ -981,21 +982,8 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
|
|||
$scope.currentFeeLevel = currentFeeLevel
|
||||
$scope.network = fc.credentials.network;
|
||||
$scope.color = fc.backgroundColor;
|
||||
|
||||
$scope.save = function(level) {
|
||||
var opts = {
|
||||
wallet: {
|
||||
settings: {
|
||||
feeLevel: level
|
||||
}
|
||||
}
|
||||
};
|
||||
$scope.currentFeeLevel = level;
|
||||
$rootScope.$emit('Local/FeeLevelUpdated', level);
|
||||
|
||||
configService.set(opts, function(err) {
|
||||
if (err) $log.debug(err);
|
||||
});
|
||||
};
|
||||
|
||||
$scope.cancel = function() {
|
||||
|
|
@ -1003,7 +991,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
|
|||
};
|
||||
};
|
||||
var modalInstance = $modal.open({
|
||||
templateUrl: 'views/modals/fee.html',
|
||||
templateUrl: 'views/modals/advancedSend.html',
|
||||
windowClass: 'full animated slideInUp',
|
||||
controller: ModalInstanceCtrl
|
||||
});
|
||||
|
|
|
|||
|
|
@ -252,6 +252,17 @@ angular
|
|||
},
|
||||
}
|
||||
})
|
||||
.state('preferencesFee', {
|
||||
url: '/preferencesFee',
|
||||
templateUrl: 'views/preferencesFee.html',
|
||||
walletShouldBeComplete: true,
|
||||
needProfile: true,
|
||||
views: {
|
||||
'main': {
|
||||
templateUrl: 'views/preferencesFee.html'
|
||||
},
|
||||
}
|
||||
})
|
||||
|
||||
.state('preferencesAdvanced', {
|
||||
url: '/preferencesAdvanced',
|
||||
|
|
@ -458,6 +469,7 @@ angular
|
|||
delete: 13,
|
||||
preferencesLanguage: 12,
|
||||
preferencesUnit: 12,
|
||||
preferencesFee: 12,
|
||||
preferencesAltCurrency: 12,
|
||||
preferencesBwsUrl: 12,
|
||||
preferencesAlias: 12,
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.services').factory('feeService', function($log, lodash, profileService, configService, gettext) {
|
||||
angular.module('copayApp.services').factory('feeService', function($log, profileService, configService) {
|
||||
var root = {};
|
||||
|
||||
root.getCurrentFeeValue = function(cb) {
|
||||
var fc = profileService.focusedClient;
|
||||
var config = configService.getSync().wallet.settings;
|
||||
var feeLevel = config.feeLevel || 'priority';
|
||||
var feeLevel = config.feeLevel || 'normal';
|
||||
// static fee
|
||||
var fee = 10000;
|
||||
fc.getFeeLevels(fc.credentials.network, function(err, levels) {
|
||||
if (err) {
|
||||
return cb({message: 'Could not get dynamic fee'}, fee);
|
||||
return cb({message: 'Could not get dynamic fee. Using static 10000sat'}, fee);
|
||||
}
|
||||
else {
|
||||
for (var i = 0; i < 3; i++) {
|
||||
|
|
@ -25,30 +25,10 @@ angular.module('copayApp.services').factory('feeService', function($log, lodash,
|
|||
});
|
||||
};
|
||||
|
||||
var checkCompatibility = function(config) {
|
||||
if (config.feeName && !config.feeLevel) {
|
||||
// Migrate to new dynamic fee values
|
||||
var level = config.feeName.toLowerCase();
|
||||
if (level == 'emergency') level = 'priority';
|
||||
|
||||
var opts = {
|
||||
wallet: {
|
||||
settings: {
|
||||
feeLevel: level
|
||||
}
|
||||
}
|
||||
};
|
||||
configService.set(opts, function(err) {
|
||||
if (err) $log.debug(err);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
root.getFeeLevels = function(cb) {
|
||||
var fc = profileService.focusedClient;
|
||||
var config = configService.getSync().wallet.settings;
|
||||
var unitName = config.unitName;
|
||||
checkCompatibility(config);
|
||||
|
||||
fc.getFeeLevels('livenet', function(errLivenet, levelsLivenet) {
|
||||
fc.getFeeLevels('testnet', function(errTestnet, levelsTestnet) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue