2016-09-12 11:57:20 -03:00
|
|
|
'use strict';
|
|
|
|
|
|
2018-08-09 11:10:26 +12:00
|
|
|
angular.module('copayApp.controllers').controller('addressbookViewController', function($scope, sendFlowService, $state, $timeout, lodash, addressbookService, popupService, $ionicHistory, platformInfo, gettextCatalog, configService, bitcoinCashJsService) {
|
2017-11-02 16:31:34 +09:00
|
|
|
|
|
|
|
|
var config = configService.getSync();
|
|
|
|
|
var defaults = configService.getDefaults();
|
|
|
|
|
|
2017-01-05 16:58:58 -03:00
|
|
|
$scope.isChromeApp = platformInfo.isChromeApp;
|
2016-10-13 16:53:15 -03:00
|
|
|
$scope.addressbookEntry = {};
|
2017-09-19 10:58:58 -04:00
|
|
|
|
|
|
|
|
$scope.$on("$ionicView.beforeEnter", function(event, data) {
|
|
|
|
|
$scope.addressbookEntry = {};
|
|
|
|
|
$scope.addressbookEntry.name = data.stateParams.name;
|
|
|
|
|
$scope.addressbookEntry.email = data.stateParams.email;
|
|
|
|
|
$scope.addressbookEntry.address = data.stateParams.address;
|
2017-11-02 16:31:34 +09:00
|
|
|
$scope.addressbookEntry.coin = data.stateParams.coin;
|
2017-09-19 10:58:58 -04:00
|
|
|
|
2017-11-02 16:31:34 +09:00
|
|
|
var bitcoinAlias = (config.bitcoinAlias || defaults.bitcoinAlias).toUpperCase();
|
|
|
|
|
var bitcoinCashAlias = (config.bitcoinCashAlias || defaults.bitcoinCashAlias).toUpperCase();
|
|
|
|
|
$scope.coinAlias = data.stateParams.coin == 'bch' ? bitcoinCashAlias : bitcoinAlias;
|
2017-09-19 10:58:58 -04:00
|
|
|
});
|
2016-09-12 11:57:20 -03:00
|
|
|
|
|
|
|
|
$scope.sendTo = function() {
|
2016-09-22 16:43:35 -03:00
|
|
|
$ionicHistory.removeBackView();
|
2018-08-09 11:10:26 +12:00
|
|
|
sendFlowService.clear();
|
2016-09-17 18:04:54 -03:00
|
|
|
$state.go('tabs.send');
|
2016-09-12 11:57:20 -03:00
|
|
|
$timeout(function() {
|
2018-01-11 19:07:12 +09:00
|
|
|
var to = '';
|
|
|
|
|
if ($scope.addressbookEntry.coin == 'bch') {
|
|
|
|
|
var a = 'bitcoincash:' + $scope.addressbookEntry.address;
|
|
|
|
|
to = bitcoinCashJsService.readAddress(a).legacy;
|
|
|
|
|
} else {
|
|
|
|
|
to = $scope.addressbookEntry.address;
|
|
|
|
|
}
|
2018-08-09 12:35:39 +09:00
|
|
|
|
|
|
|
|
var stateParams = {
|
2018-01-11 19:07:12 +09:00
|
|
|
toAddress: to,
|
2016-09-16 21:01:19 -03:00
|
|
|
toName: $scope.addressbookEntry.name,
|
2017-09-19 10:58:58 -04:00
|
|
|
toEmail: $scope.addressbookEntry.email,
|
2017-11-02 16:31:34 +09:00
|
|
|
coin: $scope.addressbookEntry.coin
|
2018-08-09 12:35:39 +09:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
sendFlowService.pushState(stateParams);
|
|
|
|
|
$state.transitionTo('tabs.send.origin');
|
2016-09-12 11:57:20 -03:00
|
|
|
}, 100);
|
|
|
|
|
};
|
|
|
|
|
|
2018-04-30 16:50:38 +09:00
|
|
|
$scope.remove = function(addressbookEntry) {
|
2017-05-30 12:58:41 -03:00
|
|
|
var title = gettextCatalog.getString('Warning!');
|
|
|
|
|
var message = gettextCatalog.getString('Are you sure you want to delete this contact?');
|
|
|
|
|
popupService.showConfirm(title, message, null, null, function(res) {
|
|
|
|
|
if (!res) return;
|
2018-04-30 16:50:38 +09:00
|
|
|
|
|
|
|
|
addressbookService.remove(addressbookEntry, function(err, ab) {
|
2017-05-30 12:58:41 -03:00
|
|
|
if (err) {
|
|
|
|
|
popupService.showAlert(gettextCatalog.getString('Error'), err);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
$ionicHistory.goBack();
|
|
|
|
|
});
|
2017-09-19 10:58:58 -04:00
|
|
|
});
|
2017-05-24 16:40:07 -03:00
|
|
|
};
|
|
|
|
|
|
2016-09-12 11:57:20 -03:00
|
|
|
});
|