Adjusted header.tpl for Work plugin.
[timetracker.git] / reports.php
index fdb2d2e..c191de9 100644 (file)
@@ -89,6 +89,7 @@ if ($showClient) {
 }
 if ($showClient) {
   $form->addInput(array('type'=>'combobox',
+    'onchange'=>'fillProjectDropdown(this.value);',
     'name'=>'client',
     'style'=>'width: 250px;',
     'data'=>$client_list,
@@ -178,10 +179,21 @@ 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.
-$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')));
+$showTimesheetDropdown = $user->isPluginEnabled('ts');
 if ($showTimesheetDropdown) {
   $form->addInput(array('type'=>'combobox',
    'name'=>'timesheet',
@@ -189,14 +201,12 @@ if ($showTimesheetDropdown) {
    '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')),
+     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'));
+$showTimesheetCheckbox = $user->isPluginEnabled('ts');
 
 // Add user table.
 $showUsers = $user->can('view_reports') || $user->can('view_all_reports') || $user->isClient();
@@ -279,6 +289,11 @@ if ($showWorkUnits)
   $form->addInput(array('type'=>'checkbox','name'=>'chunits'));
 if ($showTimesheetCheckbox)
   $form->addInput(array('type'=>'checkbox','name'=>'chtimesheet'));
+if ($showApproved)
+  $form->addInput(array('type'=>'checkbox','name'=>'chapproved'));
+$showFiles = $user->isPluginEnabled('at');
+if ($showFiles)
+  $form->addInput(array('type'=>'checkbox','name'=>'chfiles'));
 
 // Add a hidden control for timesheet_user_id (who to generate a timesheet for).
 if ($showTimesheetCheckbox)
@@ -321,20 +336,27 @@ if ($request->isGet() && !$bean->isSaved()) {
   $period = new Period(INTERVAL_THIS_MONTH, new DateAndTime($user->getDateFormat()));
   $form->setValueByElement('start_date', $period->getStartDate());
   $form->setValueByElement('end_date', $period->getEndDate());
+
   $form->setValueByElement('chclient', '1');
-  $form->setValueByElement('chinvoice', '0');
-  $form->setValueByElement('chpaid', '0');
-  $form->setValueByElement('chip', '0');
-  $form->setValueByElement('chproject', '1');
   $form->setValueByElement('chstart', '1');
+  $form->setValueByElement('chfinish', '1');
   $form->setValueByElement('chduration', '1');
-  $form->setValueByElement('chcost', '0');
+
+  $form->setValueByElement('chproject', '1');
   $form->setValueByElement('chtask', '1');
-  $form->setValueByElement('chfinish', '1');
   $form->setValueByElement('chnote', '1');
+  $form->setValueByElement('chcost', '0');
+
+  $form->setValueByElement('chtimesheet', '0');
+  $form->setValueByElement('chip', '0');
+  $form->setValueByElement('chapproved', '0');
+  $form->setValueByElement('chpaid', '0');
+
   $form->setValueByElement('chcf_1', '0');
   $form->setValueByElement('chunits', '0');
-  $form->setValueByElement('chtimesheet', '0');
+  $form->setValueByElement('chinvoice', '0');
+  $form->setValueByElement('chfiles', '1');
+
   $form->setValueByElement('chtotalsonly', '0');
 }
 
@@ -422,12 +444,14 @@ if ($request->isPost()) {
   }
 } // isPost
 
+$smarty->assign('client_list', $client_list);
 $smarty->assign('show_client', $showClient);
 $smarty->assign('show_cf_1_dropdown', $showCustomFieldDropdown);
 $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);
@@ -438,6 +462,7 @@ $smarty->assign('show_start', $showStart);
 $smarty->assign('show_finish', $showFinish);
 $smarty->assign('show_work_units', $showWorkUnits);
 $smarty->assign('show_ip', $showIP);
+$smarty->assign('show_files', $showFiles);
 $smarty->assign('project_list', $project_list);
 $smarty->assign('task_list', $task_list);
 $smarty->assign('assigned_projects', $assigned_projects);