X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/timetracker.git/blobdiff_plain/eb300930267977a1caac0355200467e4bdf8b655..9fa13d0babab9e51a19824ec7ef64830cf530fb2:/reports.php diff --git a/reports.php b/reports.php index 892b117e..febfad79 100644 --- a/reports.php +++ b/reports.php @@ -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(); } @@ -178,18 +178,38 @@ if ($showPaidStatus) { )); } +// Add approved / not approved selector. +$showApproved = $user->isPluginEnabled('ap') && + ($user->can('view_own_reports') || $user->can('view_reports') || + $user->can('view_all_reports') || ($user->can('view_client_reports') && $user->can('view_client_unapproved'))); +if ($showApproved) { + $form->addInput(array('type'=>'combobox', + 'name'=>'approved', + 'style'=>'width: 250px;', + 'data'=>array('1'=>$i18n->get('dropdown.approved'),'2'=>$i18n->get('dropdown.not_approved')), + 'empty'=>array(''=>$i18n->get('dropdown.all')) + )); +} + // 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')); -if ($showTimesheet) { +$showTimesheetDropdown = $user->isPluginEnabled('ts') && + ($user->can('view_own_timesheets') || $user->can('view_timesheets') || + $user->can('view_all_timesheets') || ($user->can('view_client_timesheets') && $user->can('view_client_unapproved'))); +if ($showTimesheetDropdown) { $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('dropdown.approved'), + TIMESHEET_NOT_APPROVED=>$i18n->get('dropdown.not_approved')), 'empty'=>array(''=>$i18n->get('dropdown.all')) )); } +$showTimesheetCheckbox = $user->isPluginEnabled('ts') && + ($user->can('view_own_timesheets') || $user->can('view_timesheets') || + $user->can('view_all_timesheets') || $user->can('view_client_timesheets')); // Add user table. $showUsers = $user->can('view_reports') || $user->can('view_all_reports') || $user->isClient(); @@ -270,11 +290,13 @@ $form->addInput(array('type'=>'checkbox','name'=>'chcost')); $showWorkUnits = $user->isPluginEnabled('wu'); if ($showWorkUnits) $form->addInput(array('type'=>'checkbox','name'=>'chunits')); -if ($showTimesheet) +if ($showTimesheetCheckbox) $form->addInput(array('type'=>'checkbox','name'=>'chtimesheet')); +if ($showApproved) + $form->addInput(array('type'=>'checkbox','name'=>'chapproved')); // Add a hidden control for timesheet_user_id (who to generate a timesheet for). -if ($showTimesheet) +if ($showTimesheetCheckbox) $form->addInput(array('type'=>'hidden','name'=>'timesheet_user_id')); // Add group by control. @@ -421,10 +443,12 @@ $smarty->assign('show_cf_1_checkbox', $showCustomFieldCheckbox); $smarty->assign('show_project', $showProject); $smarty->assign('show_task', $showTask); $smarty->assign('show_billable', $showBillable); +$smarty->assign('show_approved', $showApproved); $smarty->assign('show_invoice_dropdown', $showInvoiceDropdown); $smarty->assign('show_invoice_checkbox', $showInvoiceCheckbox); $smarty->assign('show_paid_status', $showPaidStatus); -$smarty->assign('show_timesheet', $showTimesheet); +$smarty->assign('show_timesheet_dropdown', $showTimesheetDropdown); +$smarty->assign('show_timesheet_checkbox', $showTimesheetCheckbox); $smarty->assign('show_users', $showUsers); $smarty->assign('show_start', $showStart); $smarty->assign('show_finish', $showFinish);