From 9d9131123acc4790f51cf844144ca144bbef9a28 Mon Sep 17 00:00:00 2001 From: Nik Okuntseff Date: Mon, 5 Nov 2018 15:40:55 +0000 Subject: [PATCH] A bit more progress on new export. --- WEB-INF/lib/ttGroupExportHelper.class.php | 29 +++++++++++++++++------ WEB-INF/templates/footer.tpl | 2 +- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/WEB-INF/lib/ttGroupExportHelper.class.php b/WEB-INF/lib/ttGroupExportHelper.class.php index 33138546..59a19be2 100644 --- a/WEB-INF/lib/ttGroupExportHelper.class.php +++ b/WEB-INF/lib/ttGroupExportHelper.class.php @@ -33,18 +33,29 @@ // When done, it should handle export of organizations containing multiple groups. class ttGroupExportHelper { - var $group_id = null; // Group we are exporting. - var $file = null; // File to write to. - var $indentation = null; // A string consisting of a number of spaces. + var $group_id = null; // Group we are exporting. + var $file = null; // File to write to. + var $indentation = null; // A string consisting of a number of spaces. + var $subgroups = array(); // Immediate subgroups. // Constructor. function __construct($group_id, $file, $indentation) { + global $user; $this->group_id = $group_id; $this->file = $file; $this->indentation = $indentation; - // TODO: Build a list of subgroups here. + // Build a list of subgroups. + $mdb2 = getConnection(); + $sql = "select id from tt_groups". + " where status = 1 and parent_id = $this->group_id and org_id = $user->org_id order by id desc"; + $res = $mdb2->query($sql); + if (!is_a($res, 'PEAR_Error')) { + while ($val = $res->fetchRow()) { + $this->subgroups[] = $val; + } + } } // writeData writes group data into file. @@ -53,9 +64,13 @@ class ttGroupExportHelper { // Write group info. Something dummy for now to test... fwrite($this->file, $this->indentation."\n"); - fwrite($this->file, $this->indentation."\n"); - // - // + // Call itself recursively for all subgroups. + foreach ($this->subgroups as $subgroup) { + $subgroup_helper = new ttGroupExportHelper($subgroup['id'], $this->file, $this->indentation.' '); + $subgroup_helper->writeData(); + } + + fwrite($this->file, $this->indentation."\n"); } } diff --git a/WEB-INF/templates/footer.tpl b/WEB-INF/templates/footer.tpl index af3f176f..5b275168 100644 --- a/WEB-INF/templates/footer.tpl +++ b/WEB-INF/templates/footer.tpl @@ -12,7 +12,7 @@
-
 Anuko Time Tracker 1.18.07.4366 | Copyright © Anuko | +  Anuko Time Tracker 1.18.07.4367 | Copyright © Anuko | {$i18n.footer.credits} | {$i18n.footer.license} | {$i18n.footer.improve} -- 2.20.1