X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=profile_edit.php;h=ba157a9cad3b0cf1fbfb0a03f6691edbbea67038;hb=7916f561fed6b50348f144fc411ca82ee9bd5ebb;hp=eaa9b2ae3d7716f65152afeac0a0001b39a4a3e6;hpb=8f7f616dc5fafe49038c6eaff25f6fe6f55ca635;p=timetracker.git diff --git a/profile_edit.php b/profile_edit.php index eaa9b2ae..ba157a9c 100644 --- a/profile_edit.php +++ b/profile_edit.php @@ -29,9 +29,10 @@ require_once('initialize.php'); import('form.Form'); import('ttUserHelper'); +import('ttRoleHelper'); // Access check. -if (!ttAccessCheck(right_data_entry|right_view_reports)) { +if (!ttAccessAllowed('manage_own_settings')) { header('Location: access_denied.php'); exit(); } @@ -62,6 +63,9 @@ if ($request->isPost()) { $cl_project_required = $request->getParameter('project_required'); $cl_task_required = $request->getParameter('task_required'); $cl_record_type = $request->getParameter('record_type'); + $cl_punch_mode = $request->getParameter('punch_mode'); + $cl_allow_overlap = $request->getParameter('allow_overlap'); + $cl_future_entries = $request->getParameter('future_entries'); $cl_uncompleted_indicators = $request->getParameter('uncompleted_indicators'); $cl_bcc_email = trim($request->getParameter('bcc_email')); @@ -96,6 +100,9 @@ if ($request->isPost()) { $cl_project_required = $user->project_required; $cl_task_required = $user->task_required; $cl_record_type = $user->record_type; + $cl_punch_mode = $user->punch_mode; + $cl_allow_overlap = $user->allow_overlap; + $cl_future_entries = $user->future_entries; $cl_uncompleted_indicators = $user->uncompleted_indicators; $cl_bcc_email = $user->bcc_email; @@ -144,7 +151,7 @@ if ($user->canManageTeam()) { $longname_lang[] = array('id'=>I18n::getLangFromFilename($lfile),'name'=>$lname); } $longname_lang = mu_sort($longname_lang, 'name'); - $form->addInput(array('type'=>'combobox','name'=>'lang','style'=>'width: 150px','data'=>$longname_lang,'datakeys'=>array('id','name'),'value'=>$cl_lang)); + $form->addInput(array('type'=>'combobox','name'=>'lang','style'=>'width: 200px','data'=>$longname_lang,'datakeys'=>array('id','name'),'value'=>$cl_lang)); $DECIMAL_MARK_OPTIONS = array(array('id'=>'.','name'=>'.'),array('id'=>',','name'=>',')); $form->addInput(array('type'=>'combobox','name'=>'decimal_mark','style'=>'width: 150px','data'=>$DECIMAL_MARK_OPTIONS,'datakeys'=>array('id','name'),'value'=>$cl_decimal_mark, @@ -189,11 +196,17 @@ if ($user->canManageTeam()) { $record_type_options[TYPE_DURATION] = $i18n->getKey('form.profile.type_duration'); $form->addInput(array('type'=>'combobox','name'=>'record_type','style'=>'width: 150px;','data'=>$record_type_options,'value'=>$cl_record_type)); - // Prepare uncompleted indicators choices. - $uncompleted_indicators_options = array(); - $uncompleted_indicators_options[UNCOMPLETED_INDICATORS_NONE] = $i18n->getKey('form.profile.uncompleted_indicators_none'); - $uncompleted_indicators_options[UNCOMPLETED_INDICATORS] = $i18n->getKey('form.profile.uncompleted_indicators_show'); - $form->addInput(array('type'=>'combobox','name'=>'uncompleted_indicators','style'=>'width: 150px;','data'=>$uncompleted_indicators_options,'value'=>$cl_uncompleted_indicators)); + // Punch mode checkbox. + $form->addInput(array('type'=>'checkbox','name'=>'punch_mode','value'=>$cl_punch_mode)); + + // Allow overlap checkbox. + $form->addInput(array('type'=>'checkbox','name'=>'allow_overlap','value'=>$cl_allow_overlap)); + + // Future entries checkbox. + $form->addInput(array('type'=>'checkbox','name'=>'future_entries','value'=>$cl_future_entries)); + + // Uncompleted indicators checkbox. + $form->addInput(array('type'=>'checkbox','name'=>'uncompleted_indicators','value'=>$cl_uncompleted_indicators)); // Add bcc email control, for manager only. if ($user->isManager()) { @@ -283,9 +296,17 @@ if ($request->isPost()) { $plugins = trim($plugins, ','); - // Prepare config string. At this time we only handle show_holidays here. + // Prepare config string. if ($cl_show_holidays) $config .= ',show_holidays'; + if ($cl_punch_mode) + $config .= ',punch_mode'; + if ($cl_allow_overlap) + $config .= ',allow_overlap'; + if ($cl_future_entries) + $config .= ',future_entries'; + if ($cl_uncompleted_indicators) + $config .= ',uncompleted_indicators'; $config = trim($config, ','); $update_result = ttTeamHelper::update($user->team_id, array(