From cc042da1e9864256191b4a28671059a08d5efa91 Mon Sep 17 00:00:00 2001 From: anuko Date: Sun, 12 Feb 2017 15:55:37 +0000 Subject: [PATCH] Added an edit form for predefined expenses. --- WEB-INF/templates/footer.tpl | 2 +- WEB-INF/templates/predefined_expense_edit.tpl | 26 +++++++ predefined_expense_edit.php | 76 +++++++++++++++++++ 3 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 WEB-INF/templates/predefined_expense_edit.tpl create mode 100644 predefined_expense_edit.php diff --git a/WEB-INF/templates/footer.tpl b/WEB-INF/templates/footer.tpl index a0d2b857..b599e308 100644 --- a/WEB-INF/templates/footer.tpl +++ b/WEB-INF/templates/footer.tpl @@ -12,7 +12,7 @@
-
 Anuko Time Tracker 1.9.37.3577 | Copyright © Anuko | +  Anuko Time Tracker 1.9.37.3578 | Copyright © Anuko | {$i18n.footer.credits} | {$i18n.footer.license} | {$i18n.footer.improve} diff --git a/WEB-INF/templates/predefined_expense_edit.tpl b/WEB-INF/templates/predefined_expense_edit.tpl new file mode 100644 index 00000000..c9947aec --- /dev/null +++ b/WEB-INF/templates/predefined_expense_edit.tpl @@ -0,0 +1,26 @@ +{$forms.predefinedExpenseForm.open} + + + + +
+ + + + + + + + + + + + + + + + + +
{$i18n.label.thing_name} (*):{$forms.predefinedExpenseForm.name.control}
{$i18n.label.cost} (*):{$forms.predefinedExpenseForm.cost.control} {$user->currency|escape}
{$i18n.label.required_fields}
 
{$forms.predefinedExpenseForm.btn_submit.control}
+
+{$forms.predefinedExpenseForm.close} diff --git a/predefined_expense_edit.php b/predefined_expense_edit.php new file mode 100644 index 00000000..83f3fddf --- /dev/null +++ b/predefined_expense_edit.php @@ -0,0 +1,76 @@ +isPluginEnabled('ex')) { + header('Location: access_denied.php'); + exit(); +} + +$predefined_expense_id = (int) $request->getParameter('id'); + +if ($request->isPost()) { + $cl_name = trim($request->getParameter('name')); + $cl_cost = trim($request->getParameter('cost')); +} else { + $predefined_expense = ttPredefinedExpenseHelper::get($predefined_expense_id); + $cl_name = $predefined_expense['name']; + $cl_cost = $predefined_expense['cost']; +} + +$form = new Form('predefinedExpenseForm'); +$form->addInput(array('type'=>'hidden','name'=>'id','value'=>$predefined_expense_id)); +$form->addInput(array('type'=>'text','maxlength'=>'100','name'=>'name','style'=>'width: 250px;','value'=>$cl_name)); +$form->addInput(array('type'=>'text','maxlength'=>'40','name'=>'cost','style'=>'width: 100px;','value'=>$cl_cost)); +$form->addInput(array('type'=>'submit','name'=>'btn_submit','value'=>$i18n->getKey('button.submit'))); + +if ($request->isPost()) { + // Validate user input. + if (!ttValidString($cl_name)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.thing_name')); + if (!ttValidFloat($cl_cost)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.cost')); + if ($err->no()) { + if (ttPredefinedExpenseHelper::update(array( + 'id' => $predefined_expense_id, + 'team_id' => $user->team_id, + 'name' => $cl_name, + 'cost' => $cl_cost))) { + header('Location: predefined_expenses.php'); + exit(); + } else + $err->add($i18n->getKey('error.db')); + } +} // isPost + +$smarty->assign('forms', array($form->getName()=>$form->toArray())); +$smarty->assign('title', $i18n->getKey('title.edit_predefined_expense')); +$smarty->assign('content_page_name', 'predefined_expense_edit.tpl'); +$smarty->display('index.tpl'); -- 2.20.1