X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=expenses.php;h=2c25bde66e0c91b254fc7be13f5bcf0c9f945524;hb=HEAD;hp=fa844a22b3923f9a16e5019276c35951e9ba1236;hpb=03e3d32869aa0791e1d841be69cf5c0c84a5450f;p=timetracker.git diff --git a/expenses.php b/expenses.php index fa844a22..2c25bde6 100644 --- a/expenses.php +++ b/expenses.php @@ -31,6 +31,7 @@ import('form.Form'); import('ttUserHelper'); import('ttGroupHelper'); import('DateAndTime'); +import('ttTimeHelper'); import('ttExpenseHelper'); // Access checks. @@ -42,6 +43,10 @@ if (!$user->isPluginEnabled('ex')) { header('Location: feature_disabled.php'); exit(); } +if (!$user->exists()) { + header('Location: access_denied.php'); // Nobody to enter expenses for. + exit(); +} if ($user->behalf_id && (!$user->can('track_expenses') || !$user->checkBehalfId())) { header('Location: access_denied.php'); // Trying on behalf, but no right or wrong user. exit(); @@ -65,9 +70,6 @@ if ($request->isPost() && $userChanged) { $user->setOnBehalfUser($user_id); } else { $user_id = $user->getUser(); - // Handle a situation for no users in on behalf group. - if ($user->behalfGroup && $user_id == $user->id) - $user_id = null; } // Initialize and store date in session. @@ -188,7 +190,7 @@ $form->addInput(array('type'=>'submit','name'=>'btn_submit','onclick'=>'browser_ if ($request->isPost()) { if ($request->getParameter('btn_submit')) { // Validate user input. - if ($user->isPluginEnabled('cl') && $user->isPluginEnabled('cm') && !$cl_client) + if ($user->isPluginEnabled('cl') && $user->isOptionEnabled('client_required') && !$cl_client) $err->add($i18n->get('error.client')); if ($show_project && !$cl_project) $err->add($i18n->get('error.project')); @@ -201,6 +203,7 @@ if ($request->isPost()) { if ($selected_date->after($browser_today)) $err->add($i18n->get('error.future_date')); } + if (!ttTimeHelper::canAdd()) $err->add($i18n->get('error.expired')); // Finished validating input data. // Prohibit creating entries in locked range. @@ -219,13 +222,14 @@ if ($request->isPost()) { } } +$smarty->assign('forms', array($form->getName()=>$form->toArray())); +$smarty->assign('show_project', $show_project); $smarty->assign('day_total', ttExpenseHelper::getTotalForDay($cl_date)); $smarty->assign('expense_items', ttExpenseHelper::getItems($cl_date)); $smarty->assign('predefined_expenses', $predefined_expenses); $smarty->assign('client_list', $client_list); $smarty->assign('project_list', $project_list); -$smarty->assign('forms', array($form->getName()=>$form->toArray())); -$smarty->assign('timestring', $selected_date->toString($user->date_format)); +$smarty->assign('timestring', $selected_date->toString($user->getDateFormat())); $smarty->assign('title', $i18n->get('title.expenses')); $smarty->assign('content_page_name', 'expenses.tpl'); $smarty->display('index.tpl');