X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=time.php;h=2dc8606d02f98316516fca3221b0ee369b1ee4cf;hb=97bc3daf3d32a73d2b614eecacfe1abc0639a271;hp=a08e343f299d96e0129ca65985aae0629a1c407e;hpb=48ba99d8257be57e5e43a03e80ab5d8c782b5295;p=timetracker.git diff --git a/time.php b/time.php index a08e343f..2dc8606d 100644 --- a/time.php +++ b/time.php @@ -33,6 +33,7 @@ import('ttUserHelper'); import('ttGroupHelper'); import('ttClientHelper'); import('ttTimeHelper'); +import('ttFileHelper'); import('DateAndTime'); // Access checks. @@ -255,6 +256,8 @@ if ($showStart) { } if ($showDuration) $form->addInput(array('type'=>'text','name'=>'duration','value'=>$cl_duration,'onchange'=>"formDisable('duration');")); +if ($showFiles) + $form->addInput(array('type'=>'upload','name'=>'newfile','value'=>$i18n->get('button.submit'))); if (!defined('NOTE_INPUT_HEIGHT')) define('NOTE_INPUT_HEIGHT', 40); $form->addInput(array('type'=>'textarea','name'=>'note','style'=>'width: 600px; height:'.NOTE_INPUT_HEIGHT.'px;','value'=>$cl_note)); @@ -303,7 +306,7 @@ if ($request->isPost()) { if ($request->getParameter('btn_submit')) { // Validate user input. - if ($showClient && $user->isPluginEnabled('cm') && !$cl_client) + if ($showClient && $user->isOptionEnabled('client_required') && !$cl_client) $err->add($i18n->get('error.client')); if ($custom_fields) { if (!ttValidString($cl_cf_1, !$custom_fields->fields[0]['required'])) $err->add($i18n->get('error.field'), $custom_fields->fields[0]['label']); @@ -390,7 +393,17 @@ if ($request->isPost()) { elseif ($custom_fields->fields[0]['type'] == CustomFields::TYPE_DROPDOWN) $result = $custom_fields->insert($id, $custom_fields->fields[0]['id'], $cl_cf_1, null); } - if ($id && $result) { + + // Put a new file in storage if we have it. + if ($id && $showFiles && $_FILES['newfile']['name']) { + $fileHelper = new ttFileHelper($err); + $fields = array('entity_type'=>'time', + 'entity_id' => $id, + 'file_name' => $_FILES['newfile']['name']); + $fileHelper->putFile($fields); + } + + if ($id && $result && $err->no()) { header('Location: time.php'); exit(); } @@ -429,12 +442,13 @@ if ($request->isPost()) { } // isPost $week_total = ttTimeHelper::getTimeForWeek($selected_date); -$timeRecords = $showFiles? ttTimeHelper::getRecordsWithFiles($user_id, $cl_date) : ttTimeHelper::getRecords($user_id, $cl_date); +$timeRecords = ttTimeHelper::getRecords($cl_date, $showFiles); $smarty->assign('selected_date', $selected_date); $smarty->assign('week_total', $week_total); $smarty->assign('day_total', ttTimeHelper::getTimeForDay($cl_date)); $smarty->assign('time_records', $timeRecords); +$smarty->assign('show_navigation', $user->isPluginEnabled('wv') && !$user->isOptionEnabled('week_menu')); $smarty->assign('show_client', $showClient); $smarty->assign('show_cf_1', $user->isPluginEnabled('cf')); $smarty->assign('show_project', $showProject);