move data sorting to begin
This commit is contained in:
parent
6c4bb0da31
commit
4407604793
|
@ -43,13 +43,11 @@ function room_controller() {
|
|||
$shiftsFilterRenderer = new ShiftsFilterRenderer($shiftsFilter);
|
||||
$shiftsFilterRenderer->enableDaySelection($days);
|
||||
|
||||
$shifts = Shifts_by_ShiftsFilter($shiftsFilter);
|
||||
$needed_angeltypes = NeededAngeltypes_by_ShiftsFilter($shiftsFilter);
|
||||
$shift_entries = ShiftEntries_by_ShiftsFilter($shiftsFilter);
|
||||
$shiftCalendarRenderer = shiftCalendarRendererByShiftFilter($shiftsFilter);
|
||||
|
||||
return [
|
||||
$room['Name'],
|
||||
Room_view($room, $shiftsFilterRenderer, new ShiftCalendarRenderer($shifts, $needed_angeltypes, $shift_entries, $shiftsFilter))
|
||||
Room_view($room, $shiftsFilterRenderer, $shiftCalendarRenderer)
|
||||
];
|
||||
}
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
<?php
|
||||
use Engelsystem\ShiftsFilter;
|
||||
use Engelsystem\ShiftCalendarRenderer;
|
||||
|
||||
/**
|
||||
* Route user actions.
|
||||
|
@ -313,4 +315,27 @@ function load_user() {
|
|||
return $user;
|
||||
}
|
||||
|
||||
function shiftCalendarRendererByShiftFilter(ShiftsFilter $shiftsFilter) {
|
||||
$shifts = Shifts_by_ShiftsFilter($shiftsFilter);
|
||||
$needed_angeltypes_source = NeededAngeltypes_by_ShiftsFilter($shiftsFilter);
|
||||
$shift_entries_source = ShiftEntries_by_ShiftsFilter($shiftsFilter);
|
||||
|
||||
$needed_angeltypes = [];
|
||||
$shift_entries = [];
|
||||
foreach ($shifts as $shift) {
|
||||
$needed_angeltypes[$shift['SID']] = [];
|
||||
$shift_entries[$shift['SID']] = [];
|
||||
}
|
||||
foreach ($needed_angeltypes_source as $needed_angeltype) {
|
||||
$needed_angeltypes[$needed_angeltype['SID']][] = $needed_angeltype;
|
||||
}
|
||||
foreach ($shift_entries_source as $shift_entry) {
|
||||
$shift_entries[$shift_entry['SID']][] = $shift_entry;
|
||||
}
|
||||
unset($needed_angeltypes_source);
|
||||
unset($shift_entries_source);
|
||||
|
||||
return new ShiftCalendarRenderer($shifts, $needed_angeltypes, $shift_entries, $shiftsFilter);
|
||||
}
|
||||
|
||||
?>
|
||||
|
|
|
@ -131,26 +131,7 @@ function view_user_shifts() {
|
|||
update_ShiftsFilter($_SESSION['ShiftsFilter'], in_array('user_shifts_admin', $privileges), $days);
|
||||
$shiftsFilter = $_SESSION['ShiftsFilter'];
|
||||
|
||||
$shifts = Shifts_by_ShiftsFilter($shiftsFilter);
|
||||
$needed_angeltypes_source = NeededAngeltypes_by_ShiftsFilter($shiftsFilter);
|
||||
$shift_entries_source = ShiftEntries_by_ShiftsFilter($shiftsFilter);
|
||||
|
||||
$needed_angeltypes = [];
|
||||
$shift_entries = [];
|
||||
foreach ($shifts as $shift) {
|
||||
$needed_angeltypes[$shift['SID']] = [];
|
||||
$shift_entries[$shift['SID']] = [];
|
||||
}
|
||||
foreach ($needed_angeltypes_source as $needed_angeltype) {
|
||||
$needed_angeltypes[$needed_angeltype['SID']][] = $needed_angeltype;
|
||||
}
|
||||
foreach ($shift_entries_source as $shift_entry) {
|
||||
$shift_entries[$shift_entry['SID']][] = $shift_entry;
|
||||
}
|
||||
unset($needed_angeltypes_source);
|
||||
unset($shift_entries_source);
|
||||
|
||||
$shiftCalendarRenderer = new ShiftCalendarRenderer($shifts, $needed_angeltypes, $shift_entries, $shiftsFilter);
|
||||
$shiftCalendarRenderer = shiftCalendarRendererByShiftFilter($shiftsFilter);
|
||||
|
||||
if ($user['api_key'] == "") {
|
||||
User_reset_api_key($user, false);
|
||||
|
|
Loading…
Reference in New Issue