Work in progress on remote work plugin.
[timetracker.git] / reports.php
index d8bf409..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,26 +179,6 @@ if ($showPaidStatus) {
  ));
 }
 
-// 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')));
-if ($showTimesheetDropdown) {
-  $form->addInput(array('type'=>'combobox',
-   'name'=>'timesheet',
-   'style'=>'width: 250px;',
-   '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'))
-  ));
-}
-$showTimesheetCheckbox = $user->isPluginEnabled('ts') &&
-  ($user->can('view_own_timesheets') || $user->can('view_timesheets') ||
-   $user->can('view_all_timesheets') || $user->can('view_client_timesheets'));
-
 // Add approved / not approved selector.
 $showApproved = $user->isPluginEnabled('ap') &&
   ($user->can('view_own_reports') || $user->can('view_reports') ||
@@ -206,11 +187,27 @@ if ($showApproved) {
   $form->addInput(array('type'=>'combobox',
    'name'=>'approved',
    'style'=>'width: 250px;',
-   'data'=>array('1'=>$i18n->get('form.reports.include_approved'),'2'=>$i18n->get('form.reports.include_not_approved')),
+   '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');
+if ($showTimesheetDropdown) {
+  $form->addInput(array('type'=>'combobox',
+   'name'=>'timesheet',
+   'style'=>'width: 250px;',
+   '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');
+
 // Add user table.
 $showUsers = $user->can('view_reports') || $user->can('view_all_reports') || $user->isClient();
 $user_list = array();
@@ -294,6 +291,9 @@ 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)
@@ -336,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');
 }
 
@@ -437,6 +444,7 @@ 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);
@@ -454,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);