}
// Use custom fields plugin if it is enabled.
-if (in_array('cf', explode(',', $user->plugins))) {
+if ($user->isPluginEnabled('cf')) {
require_once('plugins/CustomFields.class.php');
$custom_fields = new CustomFields($user->team_id);
}
$type = $request->getParameter('type');
// Also, there are 2 variations of report: totals only, or normal. Totals only means that the report
-// is grouped by (either date, user, client, project, task or cf_1) and user only needs to see subtotals by group.
+// is grouped by (either date, user, client, project, task, or cf_1) and user only needs to see subtotals by group.
$totals_only = $bean->getAttribute('chtotalsonly');
// Obtain items.
else
$items = ttReportHelper::getItems($bean);
+// Build a string to use as filename for the files being downloaded.
+$filename = strtolower($i18n->getKey('title.report')).'_'.$bean->mValues['start_date'].'_'.$bean->mValues['end_date'];
+
header('Pragma: public'); // This is needed for IE8 to download files over https.
header('Content-Type: text/html; charset=utf-8');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
// 1) entries exported to xml
if ('xml' == $type) {
header('Content-Type: application/xml');
- header('Content-Disposition: attachment; filename="timesheet.xml"');
+ header('Content-Disposition: attachment; filename="'.$filename.'.xml"');
print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
print "<rows>\n";
print $item['expense'];
print "]]></cost>\n";
}
+ if ($bean->getAttribute('chpaid')) print "\t<paid><![CDATA[".$item['paid']."]]></paid>\n";
if ($bean->getAttribute('chinvoice')) print "\t<invoice><![CDATA[".$item['invoice']."]]></invoice>\n";
print "</row>\n";
// 2) entries exported to csv
if ('csv' == $type) {
header('Content-Type: application/csv');
- header('Content-Disposition: attachment; filename="timesheet.csv"');
+ header('Content-Disposition: attachment; filename="'.$filename.'.csv"');
// Print UTF8 BOM first to identify encoding.
$bom = chr(239).chr(187).chr(191); // 0xEF 0xBB 0xBF in the beginning of the file is UTF8 BOM.
if ($bean->getAttribute('chduration')) print ',"'.$i18n->getKey('label.duration').'"';
if ($bean->getAttribute('chnote')) print ',"'.$i18n->getKey('label.note').'"';
if ($bean->getAttribute('chcost')) print ',"'.$i18n->getKey('label.cost').'"';
+ if ($bean->getAttribute('chpaid')) print ',"'.$i18n->getKey('label.paid').'"';
if ($bean->getAttribute('chinvoice')) print ',"'.$i18n->getKey('label.invoice').'"';
print "\n";
else
print ',"'.$item['expense'].'"';
}
+ if ($bean->getAttribute('chpaid')) print ',"'.$item['paid'].'"';
if ($bean->getAttribute('chinvoice')) print ',"'.str_replace('"','""',$item['invoice']).'"';
print "\n";
}