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')),
});