Merge pull request #183 from cmgustavo/ref/design-50

Bug fixes. Split contacts and wallets from send
This commit is contained in:
Gustavo Maximiliano Cortez 2016-09-23 17:12:00 -03:00 committed by GitHub
commit 1b2b49ce2b
8 changed files with 36 additions and 16 deletions

View File

@ -13,7 +13,8 @@
<div class="item item-no-bottom-border" translate>Recipient</div>
<div class="item item-text-wrap item-icon-left bitcoin-address">
<gravatar class="send-gravatar" name="{{toName}}" width="30" email="{{toEmail}}"></gravatar>
<i ng-if="isWallet" class="icon ion-briefcase size-21"></i>
<gravatar ng-if="!isWallet" class="send-gravatar" name="{{toName}}" width="30" email="{{toEmail}}"></gravatar>
<span>{{toName || toAddress}}</span>
</div>
</div>

View File

@ -25,7 +25,8 @@
</div>
<div class="item item-icon-left">
<gravatar class="send-gravatar" name="{{toName}}" width="30" email="{{toEmail}}"></gravatar>
<i ng-if="isWallet" class="icon ion-briefcase size-21"></i>
<gravatar ng-if="!isWallet" class="send-gravatar" name="{{toName}}" width="30" email="{{toEmail}}"></gravatar>
<span translate>To</span>: {{toAddress}}
<p ng-show="toName">{{toName}}</p>

View File

@ -16,12 +16,26 @@
</label>
</div>
<div class="card" ng-if="list[0]">
<div class="card">
<div class="item item-heading">
<span translate>Contacts &amp; Wallets</span>
<span translate>Contacts</span>
</div>
<div class="item text-center" ng-show="!list[0]" translate>No Wallet - Contact</div>
<a class="item item-icon-left" ng-repeat="item in list" ng-click="goToAmount(item)">
<a class="item item-icon-left ng-hide" ng-show="!hasContacts" ui-sref="tabs.send.addressbook">
<gravatar class="send-gravatar" name="" width="30" email=""></gravatar>
<span translate>Add a Contact</span>
</a>
<a class="item item-icon-left" ng-repeat="item in list" ng-show="hasContacts && !item.isWallet" ng-click="goToAmount(item)">
<gravatar class="send-gravatar" name="{{item.name}}" width="30" email="{{item.email}}"></gravatar>
{{item.name}}
</a>
</div>
<div class="card">
<div class="item item-heading">
<span translate>Transfer to Wallet</span>
</div>
<div class="item text-center ng-hide" ng-show="!hasWallets" translate>No Wallet</div>
<a class="item item-icon-left" ng-repeat="item in list" ng-show="hasWallets && item.isWallet" ng-click="goToAmount(item)">
<i ng-show="item.isWallet" class="icon ion-briefcase size-21" ng-style="{'color':item.color}"></i>
<gravatar class="send-gravatar" ng-show="!item.isWallet" name="{{item.name}}" width="30" email="{{item.email}}"></gravatar>
{{item.name}}

View File

@ -31,7 +31,7 @@ angular.module('copayApp.controllers').controller('addressbookAddController', fu
return;
}
if ($scope.fromSendTab) $scope.goHome();
else $state.go('tabs.addressbook');
else $ionicHistory.goBack();
});
}, 100);
};

View File

@ -10,10 +10,15 @@ angular.module('copayApp.controllers').controller('amountController', function($
var SMALL_FONT_SIZE_LIMIT = 13;
var LENGTH_EXPRESSION_LIMIT = 19;
$scope.isWallet = $stateParams.isWallet;
$scope.toAddress = $stateParams.toAddress;
$scope.toName = $stateParams.toName;
$scope.toEmail = $stateParams.toEmail;
$scope.$on('$ionicView.beforeLeave', function() {
angular.element($window).off('keydown');
});
$scope.$on("$ionicView.beforeEnter", function(event, data) {
if (!$stateParams.toAddress) {
@ -24,7 +29,6 @@ angular.module('copayApp.controllers').controller('amountController', function($
var reNr = /^[1234567890\.]$/;
var reOp = /^[\*\+\-\/]$/;
var disableKeys = angular.element($window).on('keydown', function(e) {
if (e.which === 8) { // you can add others here inside brackets.
e.preventDefault();
@ -46,10 +50,6 @@ angular.module('copayApp.controllers').controller('amountController', function($
});
$scope.$on('$destroy', function() {
angular.element($window).off('keydown');
});
var config = configService.getSync().wallet.settings;
$scope.unitName = config.unitName;
$scope.alternativeIsoCode = config.alternativeIsoCode;
@ -65,7 +65,6 @@ angular.module('copayApp.controllers').controller('amountController', function($
$scope.amount = (($stateParams.toAmount) * satToUnit).toFixed(unitDecimals);
}
processAmount($scope.amount);
$timeout(function() {
@ -187,6 +186,7 @@ angular.module('copayApp.controllers').controller('amountController', function($
var amount = $scope.showAlternativeAmount ? fromFiat(_amount).toFixed(unitDecimals) : _amount.toFixed(unitDecimals);
$state.transitionTo('tabs.send.confirm', {
isWallet: $scope.isWallet,
toAmount: amount * unitToSatoshi,
toAddress: $scope.toAddress,
toName: $scope.toName,

View File

@ -4,6 +4,7 @@ angular.module('copayApp.controllers').controller('confirmController', function(
var cachedTxp = {};
var isChromeApp = platformInfo.isChromeApp;
$scope.isWallet = $stateParams.isWallet;
$scope.toAddress = $stateParams.toAddress;
$scope.toName = $stateParams.toName;
$scope.toEmail = $stateParams.toEmail;

View File

@ -10,6 +10,7 @@ angular.module('copayApp.controllers').controller('tabSendController', function(
var wallets = profileService.getWallets({
onlyComplete: true
});
$scope.hasWallets = lodash.isEmpty(wallets) ? false : true;
lodash.each(wallets, function(v) {
originalList.push({
@ -25,6 +26,7 @@ angular.module('copayApp.controllers').controller('tabSendController', function(
addressbookService.list(function(err, ab) {
if (err) $log.error(err);
$scope.hasContacts = lodash.isEmpty(ab) ? false : true;
var contacts = [];
lodash.each(ab, function(v, k) {
contacts.push({
@ -76,6 +78,7 @@ angular.module('copayApp.controllers').controller('tabSendController', function(
}
$log.debug('Got toAddress:' + addr + ' | ' + item.name);
return $state.transitionTo('tabs.send.amount', {
isWallet: item.isWallet,
toAddress: addr,
toName: item.name,
toEmail: item.email

View File

@ -236,8 +236,8 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr
*
*/
.state('tabs.send.amount', {
url: '/amount/:toAddress/:toName/:toEmail',
.state('tabs.send.amount', {
url: '/amount/:isWallet/:toAddress/:toName/:toEmail',
views: {
'tab-send@tabs': {
controller: 'amountController',
@ -246,7 +246,7 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr
}
})
.state('tabs.send.confirm', {
url: '/confirm/:toAddress/:toName/:toAmount/:toEmail/:description/:paypro',
url: '/confirm/:isWallet/:toAddress/:toName/:toAmount/:toEmail/:description/:paypro',
views: {
'tab-send@tabs': {
controller: 'confirmController',