diff --git a/public/views/confirm.html b/public/views/confirm.html index dac9298d6..d6669bbc3 100644 --- a/public/views/confirm.html +++ b/public/views/confirm.html @@ -23,7 +23,7 @@
-
Fee: {{feeLevel}} +
Fee: {{feeLevel}} {{fee || '...'}} @@ -49,7 +49,7 @@
  • - {{item.name || item.id}} + {{item.name || item.id}} {{item.availableBalanceStr}} @@ -61,9 +61,11 @@
-
- Add Description (not yet working...) - +
+ Add Description + {{description}} + +
diff --git a/public/views/includes/note.html b/public/views/includes/note.html index a4af02532..e52beba85 100644 --- a/public/views/includes/note.html +++ b/public/views/includes/note.html @@ -1,15 +1,11 @@ -
- +
-
-
- +
+
+
-
- +
+
diff --git a/src/js/controllers/confirm.js b/src/js/controllers/confirm.js index e793c2709..383a7ba56 100644 --- a/src/js/controllers/confirm.js +++ b/src/js/controllers/confirm.js @@ -1,12 +1,12 @@ 'use strict'; -angular.module('copayApp.controllers').controller('confirmController', function($rootScope, $scope, $filter, $timeout, $ionicScrollDelegate, walletService, platformInfo, lodash, configService, rateService, $stateParams, $window, $state, $log, profileService, bitcore, $ionicPopup, txStatus, gettext, txFormatService) { +angular.module('copayApp.controllers').controller('confirmController', function($rootScope, $scope, $filter, $timeout, $ionicScrollDelegate, gettextCatalog, walletService, platformInfo, lodash, configService, rateService, $stateParams, $window, $state, $log, profileService, bitcore, $ionicPopup, txStatus, gettext, txFormatService) { var cachedTxp = {}; // An alert dialog var showAlert = function(title, msg, cb) { - $log.warn(title + ":" + msg); + $log.warn(title + ": " + msg); var alertPopup = $ionicPopup.alert({ title: title, template: msg @@ -17,6 +17,29 @@ angular.module('copayApp.controllers').controller('confirmController', function( alertPopup.then(cb); }; + $scope.showDescriptionPopup = function() { + var commentPopup = $ionicPopup.show({ + templateUrl: "views/includes/note.html", + title: gettextCatalog.getString('Set description'), + scope: $scope, + }); + $scope.commentPopupClose = function() { + commentPopup.close(); + }; + $scope.commentPopupSave = function() { + $log.debug('Saving description: ' + $scope.data.comment); + $scope.description = $scope.data.comment; + $scope.txp = null; + + createTx($scope.wallet, $scope.toAddress, $scope.toAmount, $scope.data.comment, function(err, txp) { + if (err) return; + cachedTxp[$scope.wallet.id] = txp; + apply(txp); + }); + commentPopup.close(); + }; + }; + $scope.init = function() { // TODO (URL , etc) @@ -67,17 +90,11 @@ angular.module('copayApp.controllers').controller('confirmController', function( stop = null; } - function apply(txp) { - $scope.fee = txFormatService.formatAmountStr(txp.fee); - $scope.txp = txp; - $scope.$apply(); - }; - if (cachedTxp[wallet.id]) { apply(cachedTxp[wallet.id]); } else { stop = $timeout(function() { - createTx(wallet, $scope.toAddress, $scope.toAmount, $scope.comment, function(err, txp) { + createTx(wallet, $scope.toAddress, $scope.toAmount, $scope.description, function(err, txp) { if (err) return; cachedTxp[wallet.id] = txp; apply(txp); @@ -106,7 +123,13 @@ angular.module('copayApp.controllers').controller('confirmController', function( showAlert(gettext('Error creating transaction'), msg); }; - var createTx = function(wallet, toAddress, toAmount, comment, cb) { + function apply(txp) { + $scope.fee = txFormatService.formatAmountStr(txp.fee); + $scope.txp = txp; + $scope.$apply(); + }; + + var createTx = function(wallet, toAddress, toAmount, description, cb) { var config = configService.getSync().wallet; // @@ -117,7 +140,7 @@ angular.module('copayApp.controllers').controller('confirmController', function( var paypro = $scope.paypro; // ToDo: use a credential's (or fc's) function for this - if (comment && !wallet.credentials.sharedEncryptingKey) { + if (description && !wallet.credentials.sharedEncryptingKey) { var msg = 'Could not add message to imported wallet without shared encrypting key'; $log.warn(msg); return setSendError(gettext(msg)); @@ -132,7 +155,7 @@ angular.module('copayApp.controllers').controller('confirmController', function( outputs.push({ 'toAddress': toAddress, 'amount': toAmount, - 'message': comment + 'message': description }); var txp = {}; @@ -145,7 +168,7 @@ angular.module('copayApp.controllers').controller('confirmController', function( } txp.outputs = outputs; - txp.message = comment; + txp.message = description; txp.payProUrl = paypro ? paypro.url : null; txp.excludeUnconfirmedUtxos = config.spendUnconfirmed ? false : true; txp.feeLevel = config.settings.feeLevel || 'normal';