diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index ceb740a39..66bdefc97 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -11,6 +11,8 @@ check for privileges. - fix: RSS From Parent having no icon - fix: HttpProxy now handles styles appropriately. + - fix: op=viewPurchaseHistory prices are now formatted correctly + - fix: A minor bug in the default viewPurchaseHistory template 7.2.1 - Made a change to version tag commits to deal with unusually long commit diff --git a/docs/upgrades/templates-7.2.2/viewPurchaseHistory.tmpl b/docs/upgrades/templates-7.2.2/viewPurchaseHistory.tmpl new file mode 100755 index 000000000..4b4f989a7 --- /dev/null +++ b/docs/upgrades/templates-7.2.2/viewPurchaseHistory.tmpl @@ -0,0 +1,19 @@ +#PBtmpl0000000000000019 + + + + + + + + + + + + + + + + + +
$ Cancel
x
diff --git a/lib/WebGUI/Operation/TransactionLog.pm b/lib/WebGUI/Operation/TransactionLog.pm index b0a61ca78..bf86256a1 100644 --- a/lib/WebGUI/Operation/TransactionLog.pm +++ b/lib/WebGUI/Operation/TransactionLog.pm @@ -37,13 +37,24 @@ sub www_viewPurchaseHistory { $var{errorMessage} = shift; @history = @{WebGUI::Commerce::Transaction->new($session)->transactionsByUser($session->user->userId)}; - foreach (@history) { - %properties = %{$_->get}; + for my $transaction (@history) { + %properties = %{$transaction->get}; $properties{initDate} = $session->datetime->epochToHuman($properties{initDate}); - $properties{completionDate} = $session->datetime->epochToHuman($properties{completionDate}) if ($properties{completionDate}); + $properties{completionDate} = $session->datetime->epochToHuman($properties{completionDate}) + if ($properties{completionDate}); + + # Format dollar amounts + $properties{amount} = sprintf("%.2f",$properties{amount}); + $properties{shippingCost} = sprintf("%.2f",$properties{shippingCost}); + + my $items = $transaction->getItems; + for my $item (@$items) { + $item->{amount} = sprintf("%.2f",$item->{amount}); + } + push(@historyLoop, { (%properties), - itemLoop => $_->getItems, + itemLoop => $items, cancelUrl => $session->url->page('op=cancelRecurringTransaction;tid='.$properties{transactionId}), canCancel => ($properties{recurring} && ($properties{status} eq 'Completed')), });