X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/timetracker.git/blobdiff_plain/abfd3bbc6a72c55b30d48466b2719804ebee6733..9d9131123acc4790f51cf844144ca144bbef9a28:/WEB-INF/lib/ttGroupExportHelper.class.php diff --git a/WEB-INF/lib/ttGroupExportHelper.class.php b/WEB-INF/lib/ttGroupExportHelper.class.php index 9ac4464a..59a19be2 100644 --- a/WEB-INF/lib/ttGroupExportHelper.class.php +++ b/WEB-INF/lib/ttGroupExportHelper.class.php @@ -33,24 +33,44 @@ // 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. function writeData() { // TODO: write code here. - // + + // Write group info. Something dummy for now to test... + 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"); } }