]> wagnertech.de Git - timetracker.git/blobdiff - reports.php
Some more work in progress on timesheet reporting.
[timetracker.git] / reports.php
index 10df36483c1a7f1ae920905f799a96e9875ad61e..f652027b1008acfd2fe8537b19f7dbd69ddea598 100644 (file)
@@ -38,7 +38,7 @@ import('ttClientHelper');
 import('ttReportHelper');
 
 // Access check.
-if (!(ttAccessAllowed('view_own_reports') || ttAccessAllowed('view_reports') || ttAccessAllowed('view_all_reports'))) {
+if (!(ttAccessAllowed('view_own_reports') || ttAccessAllowed('view_reports') || ttAccessAllowed('view_all_reports') || ttAccessAllowed('view_client_reports'))) {
   header('Location: access_denied.php');
   exit();
 }
@@ -180,13 +180,17 @@ if ($showPaidStatus) {
 
 // Add timesheet assignment selector.
 $showTimesheet = $user->isPluginEnabled('ts') &&
-  ($user->can('view_own_timesheets') || $user->can('manage_own_timesheets') ||
-  $user->can('view_timesheets') || $user->can('manage_timesheets') || $user->can('approve_timesheets'));
+  ($user->can('view_own_timesheets') || $user->can('view_timesheets') ||
+   $user->can('view_all_timesheets') || $user->can('view_client_timesheets'));
 if ($showTimesheet) {
   $form->addInput(array('type'=>'combobox',
    'name'=>'timesheet',
    'style'=>'width: 250px;',
-   'data'=>array('1'=>$i18n->get('form.reports.include_assigned'),'2'=>$i18n->get('form.reports.include_not_assigned')),
+   'data'=>array(TIMESHEET_NOT_ASSIGNED=>$i18n->get('form.reports.include_not_assigned'),
+     TIMESHEET_ASSIGNED=>$i18n->get('form.reports.include_assigned'),
+     TIMESHEET_PENDING=>$i18n->get('form.reports.include_pending'),
+     TIMESHEET_APPROVED=>$i18n->get('form.reports.include_approved'),
+     TIMESHEET_NOT_APPROVED=>$i18n->get('form.reports.include_not_approved')),
    'empty'=>array(''=>$i18n->get('dropdown.all'))
   ));
 }
@@ -273,6 +277,10 @@ if ($showWorkUnits)
 if ($showTimesheet)
   $form->addInput(array('type'=>'checkbox','name'=>'chtimesheet'));
 
+// Add a hidden control for timesheet_user_id (who to generate a timesheet for).
+if ($showTimesheet)
+  $form->addInput(array('type'=>'hidden','name'=>'timesheet_user_id'));
+
 // Add group by control.
 $group_by_options['no_grouping'] = $i18n->get('form.reports.group_by_no');
 $group_by_options['date'] = $i18n->get('form.reports.group_by_date');