Initial implementation of predefined expenses.
[timetracker.git] / expense_edit.php
index db26f1b..7a256d6 100644 (file)
@@ -119,6 +119,19 @@ if (MODE_PROJECTS == $user->tracking_mode || MODE_PROJECTS_AND_TASKS == $user->t
       'empty'=>array(''=>$i18n->getKey('dropdown.select'))));
   }
 }
+// If predefined expenses are configured, add controls to select an expense and quantity.
+$predefined_expenses = ttTeamHelper::getPredefinedExpenses($user->team_id);
+if ($predefined_expenses) {
+    $form->addInput(array('type'=>'combobox',
+      'onchange'=>'recalculateCost();',
+      'name'=>'predefined_expense',
+      'style'=>'width: 250px;',
+      'value'=>$cl_predefined_expense,
+      'data'=>$predefined_expenses,
+      'datakeys'=>array('id', 'name'),
+      'empty'=>array(''=>$i18n->getKey('dropdown.select'))));
+    $form->addInput(array('type'=>'text','onchange'=>'recalculateCost();','maxlength'=>'40','name'=>'quantity','style'=>'width: 100px;','value'=>$cl_quantity));
+}
 $form->addInput(array('type'=>'textarea','maxlength'=>'800','name'=>'item_name','style'=>'width: 250px; height:'.NOTE_INPUT_HEIGHT.'px;','value'=>$cl_item_name));
 $form->addInput(array('type'=>'text','maxlength'=>'40','name'=>'cost','style'=>'width: 100px;','value'=>$cl_cost));
 $form->addInput(array('type'=>'datefield','name'=>'date','maxlength'=>'20','value'=>$cl_date));
@@ -198,6 +211,7 @@ if ($request->isPost()) {
   }
 } // isPost
 
+$smarty->assign('predefined_expenses', $predefined_expenses);
 $smarty->assign('client_list', $client_list);
 $smarty->assign('project_list', $project_list);
 $smarty->assign('task_list', $task_list);