5 * Copyright 2003-2004 (c) GForge LLC
6 * http://fusionforge.org
8 * This file is part of FusionForge.
10 * FusionForge is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
15 * FusionForge is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with FusionForge; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 require_once('../env.inc.php');
26 require_once $gfcommon.'include/pre.php';
27 require_once $gfcommon.'reporting/report_utils.php';
28 require_once $gfcommon.'reporting/ReportSiteTime.class.php';
30 session_require_global_perm ('forge_stats', 'read') ;
33 if ($report->isError()) {
34 exit_error($report->getErrorMessage());
37 $typ = getStringFromRequest('typ');
38 $type = getStringFromRequest('type');
39 $start = getIntFromRequest('start');
40 $end = getIntFromRequest('end');
42 if (!$start || !$end) $z =& $report->getMonthStartArr();
48 $end = $z[count($z)-1];
50 if ($end < $start) list($start, $end) = array($end, $start);
52 if ($typ != 'r' && $start == $end) {
53 $error_msg .= _('Start and end dates must be different');
56 report_header(_('Site-Wide Time Tracking'));
59 $a[]=_('By Category');
60 $a[]=_('By Subproject');
69 <h2><?php echo _('Site-Wide Time Tracking'); ?></h2>
71 <form action="<?php echo getStringFromServer('PHP_SELF'); ?>" method="get">
72 <input type="hidden" name="typ" value="<?php echo $typ; ?>" />
74 <td><strong><?php echo _('Type'); ?>:</strong><br /><?php echo html_build_select_box_from_arrays($a2,$a,'type',$type,false); ?></td>
75 <td><strong><?php echo _('Start'); ?>:</strong><br /><?php echo report_months_box($report, 'start', $start); ?></td>
76 <td><strong><?php echo _('End'); ?>:</strong><br /><?php echo report_months_box($report, 'end', $end); ?></td>
77 <td><input type="submit" name="submit" value="<?php echo _('Refresh'); ?>" /></td>
83 $report=new ReportSiteTime($type,$start,$end);
84 $labels = $report->labels;
85 $data = $report->getData();
87 echo $HTML->listTableTop (array(_('Type'), _('Time')));
89 for ($i=0; $i<count($labels); $i++) {
90 echo '<tr '. $HTML->boxGetAltRowStyle($i) .'>'.
91 '<td>'. $labels[$i] .'</td><td>'. $data[$i] .'</td></tr>';
94 echo $HTML->listTableBottom ();
95 } elseif ($start != $end) { ?>
97 <img src="sitetime_graph.php?<?php echo "start=$start&end=$end&type=$type"; ?>" width="640" height="480" alt="" />
105 // c-file-style: "bsd"