crash backup
Some checks failed
Image optimization / general_image_workflow (push) Has been cancelled
CI / general_module_workflow_php (push) Has been cancelled
CI / general_module_workflow_js (push) Has been cancelled

This commit is contained in:
Dennis Eichhorn 2025-03-21 02:48:18 +00:00
parent bf9a78b535
commit be9c6dbae4
3 changed files with 17 additions and 13 deletions

View File

@ -196,7 +196,7 @@ final class ApiClockingTypeController extends Controller
}
/** @var ClockingType $old */
$old = ClockingTypeMapper::get()->where('id', (int) $request->getData('id'));
$old = ClockingTypeMapper::get()->where('id', $request->getDataInt('id') ?? 0);
$new = $this->updateClockingTypeFromRequest($request, clone $old);
$this->updateModel($request->header->account, $old, $new, ClockingTypeMapper::class, 'clocking_type', $request->getOrigin());
@ -264,7 +264,7 @@ final class ApiClockingTypeController extends Controller
}
/** @var \Modules\HumanResourceTimeRecording\Models\ClockingType $clockingType */
$clockingType = ClockingTypeMapper::get()->where('id', (int) $request->getData('id'))->execute();
$clockingType = ClockingTypeMapper::get()->where('id', $request->getDataInt('id') ?? 0)->execute();
$this->deleteModel($request->header->account, $clockingType, ClockingTypeMapper::class, 'clocking_type', $request->getOrigin());
$this->createStandardDeleteResponse($request, $response, $clockingType);
}
@ -311,7 +311,7 @@ final class ApiClockingTypeController extends Controller
}
/** @var BaseStringL11n $old */
$old = ClockingTypeL11nMapper::get()->where('id', (int) $request->getData('id'));
$old = ClockingTypeL11nMapper::get()->where('id', $request->getDataInt('id') ?? 0);
$new = $this->updateClockingTypeL11nFromRequest($request, clone $old);
$this->updateModel($request->header->account, $old, $new, ClockingTypeL11nMapper::class, 'clocking_type_l11n', $request->getOrigin());
@ -379,7 +379,7 @@ final class ApiClockingTypeController extends Controller
}
/** @var BaseStringL11n $clockingTypeL11n */
$clockingTypeL11n = ClockingTypeL11nMapper::get()->where('id', (int) $request->getData('id'))->execute();
$clockingTypeL11n = ClockingTypeL11nMapper::get()->where('id', $request->getDataInt('id') ?? 0)->execute();
$this->deleteModel($request->header->account, $clockingTypeL11n, ClockingTypeL11nMapper::class, 'clocking_type_l11n', $request->getOrigin());
$this->createStandardDeleteResponse($request, $response, $clockingTypeL11n);
}

View File

@ -104,6 +104,11 @@ final class BackendController extends Controller implements DashboardElementInte
/** @var \Modules\HumanResourceTimeRecording\Models\Session $lastOpenSession */
$lastOpenSession = SessionMapper::getMostPlausibleOpenSessionForEmployee($employee->profile->account->id);
$view->data['session_types'] = ClockingTypeMapper::getAll()
->with('l11n')
->where('l11n/language', $response->header->l11n->language)
->executeGetArray();
$start = new SmartDateTime('now');
$start = $start->getEndOfDay();
$limit = $start->getEndOfMonth();
@ -142,7 +147,7 @@ final class BackendController extends Controller implements DashboardElementInte
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1006303001, $request, $response);
/** @var \Modules\HumanResourceTimeRecording\Models\Session $session */
$session = SessionMapper::get()->where('id', (int) $request->getData('id'))->execute();
$session = SessionMapper::get()->where('id', $request->getDataInt('id') ?? 0)->execute();
/** @var \Modules\HumanResourceManagement\Models\Employee $employee */
$employee = EmployeeMapper::get()

View File

@ -24,9 +24,11 @@ $sessionCount = \count($sessions);
/** @var \Modules\HumanResourceTimeRecording\Models\Session $lastOpenSession */
$lastOpenSession = $this->data['lastSession'];
$type = $lastOpenSession !== null ? $lastOpenSession->type : ClockingType::OFFICE;
$current_type = $lastOpenSession !== null ? $lastOpenSession->type : null;
$status = $lastOpenSession !== null ? $lastOpenSession->getStatus() : ClockingStatus::END;
$types = $this->data['session_types'] ?? [];
/** @var \phpOMS\Stdlib\Base\SmartDateTime $startWeek */
$startWeek = new SmartDateTime('now');
$startWeek = $startWeek->getStartOfWeek();
@ -52,14 +54,11 @@ echo $this->data['nav']->render(); ?>
<tr><td><label for="iType"><?= $this->getHtml('Type'); ?></label>
<tr><td>
<select id="iType" name="type">
<option value="<?= ClockingType::OFFICE; ?>"<?= $type === ClockingType::OFFICE ? ' selected': ''; ?>><?= $this->getHtml(':CT1'); ?>
<option value="<?= ClockingType::REMOTE; ?>"<?= $type === ClockingType::REMOTE ? ' selected': ''; ?>><?= $this->getHtml(':CT3'); ?>
<option value="<?= ClockingType::HOME; ?>"<?= $type === ClockingType::HOME ? ' selected': ''; ?>><?= $this->getHtml(':CT2'); ?>
<option value="<?= ClockingType::VACATION; ?>"<?= $type === ClockingType::VACATION ? ' selected': ''; ?>><?= $this->getHtml(':CT4'); ?>
<option value="<?= ClockingType::SICK; ?>"<?= $type === ClockingType::SICK ? ' selected': ''; ?>><?= $this->getHtml(':CT5'); ?>
<option value="<?= ClockingType::ON_THE_MOVE; ?>"<?= $type === ClockingType::ON_THE_MOVE ? ' selected': ''; ?>><?= $this->getHtml(':CT6'); ?>
<?php foreach ($types as $type) : ?>
<option value="<?= $type->id; ?>"<?= $current_type === $type->id ? ' selected': ''; ?>><?= $this->printHtml($type->getL11n() ?? ''); ?>
<?php endforeach; ?>
</select>
<tr><td><label for="iStatus"><?= $this->getHtml(':Status'); ?></label>
<tr><td><label for="iStatus"><?= $this->getHtml('Status'); ?></label>
<tr><td>
<select id="iStatus" name="status">
<option value="<?= ClockingStatus::START; ?>"<?= $status === ClockingStatus::END ? ' selected' : ''; ?>><?= $this->getHtml(':CS1'); ?>