projects
/
timetracker.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Some more work in progress on timesheet reporting.
[timetracker.git]
/
tofile.php
diff --git
a/tofile.php
b/tofile.php
index
a40dbf0
..
f4d5b29
100644
(file)
--- a/
tofile.php
+++ b/
tofile.php
@@
-32,7
+32,7
@@
import('form.ActionForm');
import('ttReportHelper');
// Access checks.
import('ttReportHelper');
// Access checks.
-if (!(ttAccessAllowed('view_own_reports') || ttAccessAllowed('view_reports'))) {
+if (!(ttAccessAllowed('view_own_reports') || ttAccessAllowed('view_reports')
|| ttAccessAllowed('view_all_reports') || ttAccessAllowed('view_client_reports')
)) {
header('Location: access_denied.php');
exit();
}
header('Location: access_denied.php');
exit();
}
@@
-41,7
+41,7
@@
if (!(ttAccessAllowed('view_own_reports') || ttAccessAllowed('view_reports'))) {
// Use custom fields plugin if it is enabled.
if ($user->isPluginEnabled('cf')) {
require_once('plugins/CustomFields.class.php');
// Use custom fields plugin if it is enabled.
if ($user->isPluginEnabled('cf')) {
require_once('plugins/CustomFields.class.php');
- $custom_fields = new CustomFields(
$user->group_id
);
+ $custom_fields = new CustomFields();
}
// Report settings are stored in session bean before we get here.
}
// Report settings are stored in session bean before we get here.
@@
-84,15
+84,17
@@
if ('xml' == $type) {
print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
print "<rows>\n";
print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
print "<rows>\n";
- $group_by = $bean->getAttribute('group_by');
if ($totals_only) {
if ($totals_only) {
- // Totals only report. Print subtotals.
+ // Totals only report.
+ $group_by_tag = ttReportHelper::makeGroupByXmlTag($options);
+
+ // Print subtotals.
foreach ($subtotals as $subtotal) {
print "<row>\n";
foreach ($subtotals as $subtotal) {
print "<row>\n";
- print "\t<".$group_by
."><![CDATA[".$subtotal['name']."]]></".$group_by
.">\n";
+ print "\t<".$group_by
_tag."><![CDATA[".$subtotal['name']."]]></".$group_by_tag
.">\n";
if ($bean->getAttribute('chduration')) {
$val = $subtotal['time'];
if ($bean->getAttribute('chduration')) {
$val = $subtotal['time'];
- if($val &&
defined('EXPORT_DECIMAL_DURATION') && isTrue(EXPORT_DECIMAL_DURATION
))
+ if($val &&
isTrue('EXPORT_DECIMAL_DURATION'
))
$val = time_to_decimal($val);
print "\t<duration><![CDATA[".$val."]]></duration>\n";
}
$val = time_to_decimal($val);
print "\t<duration><![CDATA[".$val."]]></duration>\n";
}
@@
-124,7
+126,7
@@
if ('xml' == $type) {
if ($bean->getAttribute('chfinish')) print "\t<finish><![CDATA[".$item['finish']."]]></finish>\n";
if ($bean->getAttribute('chduration')) {
$duration = $item['duration'];
if ($bean->getAttribute('chfinish')) print "\t<finish><![CDATA[".$item['finish']."]]></finish>\n";
if ($bean->getAttribute('chduration')) {
$duration = $item['duration'];
- if($duration &&
defined('EXPORT_DECIMAL_DURATION') && isTrue(EXPORT_DECIMAL_DURATION
))
+ if($duration &&
isTrue('EXPORT_DECIMAL_DURATION'
))
$duration = time_to_decimal($duration);
print "\t<duration><![CDATA[".$duration."]]></duration>\n";
}
$duration = time_to_decimal($duration);
print "\t<duration><![CDATA[".$duration."]]></duration>\n";
}
@@
-144,6
+146,7
@@
if ('xml' == $type) {
print "\t<ip><![CDATA[".$ip."]]></ip>\n";
}
if ($bean->getAttribute('chinvoice')) print "\t<invoice><![CDATA[".$item['invoice']."]]></invoice>\n";
print "\t<ip><![CDATA[".$ip."]]></ip>\n";
}
if ($bean->getAttribute('chinvoice')) print "\t<invoice><![CDATA[".$item['invoice']."]]></invoice>\n";
+ if ($bean->getAttribute('chtimesheet')) print "\t<timesheet><![CDATA[".$item['timesheet_name']."]]></timesheet>\n";
print "</row>\n";
}
print "</row>\n";
}
@@
-161,17
+164,9
@@
if ('csv' == $type) {
$bom = chr(239).chr(187).chr(191); // 0xEF 0xBB 0xBF in the beginning of the file is UTF8 BOM.
print $bom; // Without this Excel does not display UTF8 characters properly.
$bom = chr(239).chr(187).chr(191); // 0xEF 0xBB 0xBF in the beginning of the file is UTF8 BOM.
print $bom; // Without this Excel does not display UTF8 characters properly.
- $group_by = $bean->getAttribute('group_by');
if ($totals_only) {
// Totals only report.
if ($totals_only) {
// Totals only report.
-
- // Determine group_by header.
- if ('cf_1' == $group_by)
- $group_by_header = $custom_fields->fields[0]['label'];
- else {
- $key = 'label.'.$group_by;
- $group_by_header = $i18n->get($key);
- }
+ $group_by_header = ttReportHelper::makeGroupByHeader($options);
// Print headers.
print '"'.$group_by_header.'"';
// Print headers.
print '"'.$group_by_header.'"';
@@
-185,7
+180,7
@@
if ('csv' == $type) {
print '"'.$subtotal['name'].'"';
if ($bean->getAttribute('chduration')) {
$val = $subtotal['time'];
print '"'.$subtotal['name'].'"';
if ($bean->getAttribute('chduration')) {
$val = $subtotal['time'];
- if($val &&
defined('EXPORT_DECIMAL_DURATION') && isTrue(EXPORT_DECIMAL_DURATION
))
+ if($val &&
isTrue('EXPORT_DECIMAL_DURATION'
))
$val = time_to_decimal($val);
print ',"'.$val.'"';
}
$val = time_to_decimal($val);
print ',"'.$val.'"';
}
@@
-215,6
+210,7
@@
if ('csv' == $type) {
if ($bean->getAttribute('chpaid')) print ',"'.$i18n->get('label.paid').'"';
if ($bean->getAttribute('chip')) print ',"'.$i18n->get('label.ip').'"';
if ($bean->getAttribute('chinvoice')) print ',"'.$i18n->get('label.invoice').'"';
if ($bean->getAttribute('chpaid')) print ',"'.$i18n->get('label.paid').'"';
if ($bean->getAttribute('chip')) print ',"'.$i18n->get('label.ip').'"';
if ($bean->getAttribute('chinvoice')) print ',"'.$i18n->get('label.invoice').'"';
+ if ($bean->getAttribute('chtimesheet')) print ',"'.$i18n->get('label.timesheet').'"';
print "\n";
// Print items.
print "\n";
// Print items.
@@
-229,7
+225,7
@@
if ('csv' == $type) {
if ($bean->getAttribute('chfinish')) print ',"'.$item['finish'].'"';
if ($bean->getAttribute('chduration')) {
$val = $item['duration'];
if ($bean->getAttribute('chfinish')) print ',"'.$item['finish'].'"';
if ($bean->getAttribute('chduration')) {
$val = $item['duration'];
- if($val &&
defined('EXPORT_DECIMAL_DURATION') && isTrue(EXPORT_DECIMAL_DURATION
))
+ if($val &&
isTrue('EXPORT_DECIMAL_DURATION'
))
$val = time_to_decimal($val);
print ',"'.$val.'"';
}
$val = time_to_decimal($val);
print ',"'.$val.'"';
}
@@
-247,6
+243,7
@@
if ('csv' == $type) {
print ',"'.$ip.'"';
}
if ($bean->getAttribute('chinvoice')) print ',"'.str_replace('"','""',$item['invoice']).'"';
print ',"'.$ip.'"';
}
if ($bean->getAttribute('chinvoice')) print ',"'.str_replace('"','""',$item['invoice']).'"';
+ if ($bean->getAttribute('chtimesheet')) print ',"'.str_replace('"','""',$item['timesheet_name']).'"';
print "\n";
}
}
print "\n";
}
}