From 6445c2a4b9c45bcfbf38a89c30f45c6be720a5d3 Mon Sep 17 00:00:00 2001
From: Reinhold Kainhofer <reinhold@kainhofer.com>
Date: Sun, 3 Apr 2016 00:10:55 +0200
Subject: [PATCH] V0.2: Show a summary line of all taxes summed

---
 .../en-GB/en-GB.plg_vmextended_taxreport.ini  |   2 ++
 .../en-GB.plg_vmextended_taxreport.sys.ini    |   2 ++
 releases/plg_vmextended_taxreport_v0.2.zip    | Bin 22880 -> 23043 bytes
 views/taxreport/tmpl/default.php              |  19 +++++++++++++++++-
 4 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/language/en-GB/en-GB.plg_vmextended_taxreport.ini b/language/en-GB/en-GB.plg_vmextended_taxreport.ini
index e63715c..384333b 100644
--- a/language/en-GB/en-GB.plg_vmextended_taxreport.ini
+++ b/language/en-GB/en-GB.plg_vmextended_taxreport.ini
@@ -13,3 +13,5 @@ VMEXT_TAXREPORT_TAXRATE="Tax Rate"
 VMEXT_TAXREPORT_ORDERS="Orders"
 VMEXT_TAXREPORT_ORDERREVENUENET="Net revenue"
 VMEXT_TAXREPORT_ORDERTAXES="Taxes"
+
+VMEXT_TAXREPORT_SUMMARY="Tax Total"
diff --git a/language/en-GB/en-GB.plg_vmextended_taxreport.sys.ini b/language/en-GB/en-GB.plg_vmextended_taxreport.sys.ini
index e63715c..384333b 100644
--- a/language/en-GB/en-GB.plg_vmextended_taxreport.sys.ini
+++ b/language/en-GB/en-GB.plg_vmextended_taxreport.sys.ini
@@ -13,3 +13,5 @@ VMEXT_TAXREPORT_TAXRATE="Tax Rate"
 VMEXT_TAXREPORT_ORDERS="Orders"
 VMEXT_TAXREPORT_ORDERREVENUENET="Net revenue"
 VMEXT_TAXREPORT_ORDERTAXES="Taxes"
+
+VMEXT_TAXREPORT_SUMMARY="Tax Total"
diff --git a/releases/plg_vmextended_taxreport_v0.2.zip b/releases/plg_vmextended_taxreport_v0.2.zip
index f0da977bf3c416300abb0e9d2c27cb45789a5a0f..1e73e829782e6a0dd00470ba4ad0ff2f5d78c436 100644
GIT binary patch
delta 2205
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
LNK>|Lfgqazc&O;D

delta 2083
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

diff --git a/views/taxreport/tmpl/default.php b/views/taxreport/tmpl/default.php
index 0f3aacc..85e32a3 100644
--- a/views/taxreport/tmpl/default.php
+++ b/views/taxreport/tmpl/default.php
@@ -48,20 +48,37 @@ $myCurrencyDisplay = CurrencyDisplay::getInstance();
             <tbody>
                 <?php
         $i = 0;
+        $nr_taxes = 0;
+        $nr_orders = 0;
+        $sum_revenue = 0.0;
+        $sum_tax = 0.0;
+        $tax_rate = 0;
         foreach ($this->report as $r) { ?>
                 <tr class="row<?php echo $i;?>">
                     <td align="center"><?php echo $r['country']; ?></td>
                     <td align="left"><?php echo $r['taxrule']; ?></td>
-                    <td align="center"><?php echo round($r['taxrate'], 4) . " %"; ?></td>
+                    <td align="center"><?php echo round($r['taxrate'], 2) . " %"; ?></td>
                     <td align="center"><?php echo $r['ordercount']; ?></td>
                     <td align="right"><?php echo $myCurrencyDisplay->priceDisplay($r['sum_revenue_net']); ?></td>
                     <td align="right"><?php echo $myCurrencyDisplay->priceDisplay($r['sum_order_tax']); ?></td>
                 </tr>
                 <?php 
+                ++$nr_taxes;
+                $nr_orders += $r['ordercount'];
+                $sum_revenue += $r['sum_revenue_net'];
+                $sum_tax += $r['sum_order_tax'];
                 $i = 1-$i; 
 	    } ?>
             </tbody>
             <tfoot>
+                <tr>
+                    <th align="center"></th>
+                    <th align="left"><?php echo vmText::_('VMEXT_TAXREPORT_SUMMARY'); ?></th>
+                    <th align="center"><?php echo round($sum_tax/$sum_revenue*100, 4) . " %"; ?></th>
+                    <th align="center"><?php echo $nr_orders; ?></th>
+                    <th align="right"><?php echo $myCurrencyDisplay->priceDisplay($sum_revenue); ?></th>
+                    <th align="right"><?php echo $myCurrencyDisplay->priceDisplay($sum_tax); ?></th>
+                </tr>
                 <tr>
                     <td colspan="10">
                         <?php if ($this->pagination) echo $this->pagination->getListFooter(); ?>
-- 
GitLab