if only one recipient, do not summarize in views

This commit is contained in:
Gregg Zigler 2015-07-16 13:31:46 -07:00
commit c18fca0d7a
3 changed files with 26 additions and 24 deletions

View file

@ -1,10 +1,11 @@
<div class="ng-animate-disabled row collapse line-b" ng-class="text-gray">
<li ng-if="output.summary" class="line-b p10 oh" ng-click="expand(output.parent)">
<span class="text-gray" translate>To</span>:
<span class="right enable_text_select">{{output.summary.length}}
<span class="right enable_text_select" ng-if="output.summary.length>1">{{output.summary.length}}
<span class="enable_text_select" translate>recipients</span>
<i class="icon-arrow-down size-24"></i>
</span>
<span class="right enable_text_select" ng-if="output.summary.length==1">{{output.summary[0].toAddress}}</span>
</li>
<li ng-if="!output.summary" class="line-b p10 oh" ng-click="copyAddress(output.toAddress)">
<span class="text-gray" translate>To</span>:
@ -16,6 +17,10 @@
<span class="label gray radius enable_text_select">{{output.alternativeAmountStr}}</span>
</span>
</li>
<li class="line-b p10 oh" ng-if="output.summary && output.summary.length==1 && output.summary[0].message" ng-click="expand(output.parent)">
<span class="text-gray" translate>Note</span>:
<span class="right enable_text_select">{{output.summary[0].message}}</span>
</li>
<li class="line-b p10 oh" ng-click="expand(output.parent)">
<span class="text-gray" translate>Note</span>:
<span class="right enable_text_select">{{output.message}}</span>

View file

@ -16,10 +16,14 @@
<span ng-show="tx.merchant.pr.ca"><i class="fi-lock"></i> {{tx.merchant.domain}}</span>
<span ng-show="!tx.merchant.pr.ca"><i class="fi-unlock"></i> {{tx.merchant.domain}}</span>
</span>
<span ng-if="tx.outputs">
<span ng-if="tx.outputs && tx.outputs.recipientCount>1">
<span>{{tx.outputs.recipientCount}}</span>
<span translate>recipients</span>
</span>
<span ng-if="tx.outputs && tx.outputs.recipientCount==1">
<contact address="{{tx.outputs[0].summary[0].toAddress}}" ng-hide="tx.merchant"> </contact>
{{tx.outputs[0].summary[0].toAddress}}
</span>
<span ng-if="!tx.outputs">
<contact address="{{tx.toAddress}}" ng-hide="tx.merchant"> </contact>
{{tx.toAddress}}

View file

@ -436,28 +436,21 @@ angular.module('copayApp.controllers').controller('indexController', function($r
};
if (tx.outputs) {
if (tx.outputs.length === 1) {
tx.amount = tx.outputs[0].amount;
tx.toAddress = tx.outputs[0].toAddress;
tx.message += (' ' + tx.outputs[0].message);
delete tx.outputs;
} else {
tx.amount = lodash.reduce(tx.outputs, function(total, o) {
formatAmount(o, o.amount * self.satToUnit);
return total + o.amount;
}, 0);
var summary = tx.outputs;
tx.outputs = [{
amount: tx.amount,
message: tx.message,
summary: summary
}];
tx.outputs[0].parent = tx.outputs;
tx.outputs.transform = formatAmount;
tx.outputs.accumulator = 'amount';
tx.outputs.recipientCount = summary.length;
formatAmount(tx.outputs[0], tx.amount * self.satToUnit);
}
tx.amount = lodash.reduce(tx.outputs, function(total, o) {
formatAmount(o, o.amount * self.satToUnit);
return total + o.amount;
}, 0);
var summary = tx.outputs;
tx.outputs = [{
amount: tx.amount,
message: tx.message,
summary: summary
}];
tx.outputs[0].parent = tx.outputs;
tx.outputs.transform = formatAmount;
tx.outputs.accumulator = 'amount';
tx.outputs.recipientCount = summary.length;
formatAmount(tx.outputs[0], tx.amount * self.satToUnit);
}
formatAmount(tx, tx.amount * self.satToUnit);