From 5f56885676a5004de82919add3d309575514be1b Mon Sep 17 00:00:00 2001 From: Nik Okuntseff Date: Sun, 28 Oct 2018 21:21:49 +0000 Subject: [PATCH] A bit more work in progress on multiple levels of grouping by in reports. --- WEB-INF/lib/ttExportHelper.class.php | 2 ++ WEB-INF/lib/ttFavReportHelper.class.php | 13 +++++++++++-- WEB-INF/lib/ttImportHelper.class.php | 2 ++ WEB-INF/templates/footer.tpl | 2 +- 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/WEB-INF/lib/ttExportHelper.class.php b/WEB-INF/lib/ttExportHelper.class.php index 0c30b2f7..d40ce452 100644 --- a/WEB-INF/lib/ttExportHelper.class.php +++ b/WEB-INF/lib/ttExportHelper.class.php @@ -305,6 +305,8 @@ class ttExportHelper { " show_custom_field_1=\"".$fav_report['show_custom_field_1']."\"". " show_work_units=\"".$fav_report['show_work_units']."\"". " group_by1=\"".$fav_report['group_by1']."\"". + " group_by2=\"".$fav_report['group_by2']."\"". + " group_by3=\"".$fav_report['group_by3']."\"". " show_totals_only=\"".$fav_report['show_totals_only']."\">\n"); fwrite($file, " \n"); fwrite($file, " \n"); diff --git a/WEB-INF/lib/ttFavReportHelper.class.php b/WEB-INF/lib/ttFavReportHelper.class.php index 96188f22..305a4fc8 100644 --- a/WEB-INF/lib/ttFavReportHelper.class.php +++ b/WEB-INF/lib/ttFavReportHelper.class.php @@ -84,7 +84,7 @@ class ttFavReportHelper { show_client, show_invoice, show_paid, show_ip, show_project, show_start, show_duration, show_cost, show_task, show_end, show_note, show_custom_field_1, show_work_units, - group_by1, show_totals_only) + group_by1, group_by2, group_by3, show_totals_only) values(". $mdb2->quote($fields['name']).", ".$fields['user_id'].", ". $mdb2->quote($fields['client']).", ".$mdb2->quote($fields['option']).", ". @@ -96,7 +96,8 @@ class ttFavReportHelper { $fields['chclient'].", ".$fields['chinvoice'].", ".$fields['chpaid'].", ".$fields['chip'].", ". $fields['chproject'].", ".$fields['chstart'].", ".$fields['chduration'].", ".$fields['chcost'].", ". $fields['chtask'].", ".$fields['chfinish'].", ".$fields['chnote'].", ".$fields['chcf_1'].", ".$fields['chunits'].", ". - $mdb2->quote($fields['group_by1']).", ".$fields['chtotalsonly'].")"; + $mdb2->quote($fields['group_by1']).", ".$mdb2->quote($fields['group_by2']).", ". + $mdb2->quote($fields['group_by3']).", ".$fields['chtotalsonly'].")"; $affected = $mdb2->exec($sql); if (is_a($affected, 'PEAR_Error')) return false; @@ -140,6 +141,8 @@ class ttFavReportHelper { "show_custom_field_1 = ".$fields['chcf_1'].", ". "show_work_units = ".$fields['chunits'].", ". "group_by1 = ".$mdb2->quote($fields['group_by1']).", ". + "group_by2 = ".$mdb2->quote($fields['group_by2']).", ". + "group_by3 = ".$mdb2->quote($fields['group_by3']).", ". "show_totals_only = ".$fields['chtotalsonly']. " where id = ".$fields['id']; $affected = $mdb2->exec($sql); @@ -210,6 +213,8 @@ class ttFavReportHelper { 'chcf_1'=>$bean->getAttribute('chcf_1'), 'chunits'=>$bean->getAttribute('chunits'), 'group_by1'=>$bean->getAttribute('group_by1'), + 'group_by2'=>$bean->getAttribute('group_by2'), + 'group_by3'=>$bean->getAttribute('group_by3'), 'chtotalsonly'=>$bean->getAttribute('chtotalsonly')); $id = false; @@ -271,6 +276,8 @@ class ttFavReportHelper { $bean->setAttribute('chcf_1', $val['show_custom_field_1']); $bean->setAttribute('chunits', $val['show_work_units']); $bean->setAttribute('group_by1', $val['group_by1']); + $bean->setAttribute('group_by2', $val['group_by2']); + $bean->setAttribute('group_by3', $val['group_by3']); $bean->setAttribute('chtotalsonly', $val['show_totals_only']); $bean->setAttribute('new_fav_report', $val['name']); } else { @@ -296,6 +303,8 @@ class ttFavReportHelper { 'chcf_1'=>'', 'chunits'=>'', 'group_by1'=>'', + 'group_by2'=>'', + 'group_by3'=>'', 'chtotalsonly'=>'', 'new_fav_report'=>'')); $bean->setAttributes($attrs); diff --git a/WEB-INF/lib/ttImportHelper.class.php b/WEB-INF/lib/ttImportHelper.class.php index c59f5e3f..d966f896 100644 --- a/WEB-INF/lib/ttImportHelper.class.php +++ b/WEB-INF/lib/ttImportHelper.class.php @@ -336,6 +336,8 @@ class ttImportHelper { 'chcf_1' => (int) $this->currentElement['SHOW_CUSTOM_FIELD_1'], 'chunits' => (int) $this->currentElement['SHOW_WORK_UNITS'], 'group_by1' => $this->currentElement['GROUP_BY1'], + 'group_by2' => $this->currentElement['GROUP_BY2'], + 'group_by3' => $this->currentElement['GROUP_BY3'], 'chtotalsonly' => (int) $this->currentElement['SHOW_TOTALS_ONLY'])); } $this->currentTag = ''; diff --git a/WEB-INF/templates/footer.tpl b/WEB-INF/templates/footer.tpl index 5d3d36a6..818b4275 100644 --- a/WEB-INF/templates/footer.tpl +++ b/WEB-INF/templates/footer.tpl @@ -12,7 +12,7 @@
-
 Anuko Time Tracker 1.18.01.4327 | Copyright © Anuko | +  Anuko Time Tracker 1.18.01.4328 | Copyright © Anuko | {$i18n.footer.credits} | {$i18n.footer.license} | {$i18n.footer.improve} -- 2.20.1