diff --git a/app/controllers/lvgruppen/lvgruppen.php b/app/controllers/lvgruppen/lvgruppen.php index 5bac0fdd1f37f0d7bcbdd259f17bd884ddf52a22..8562836dc36466bbfa0cf4bd7fd21cb084e87a0d 100644 --- a/app/controllers/lvgruppen/lvgruppen.php +++ b/app/controllers/lvgruppen/lvgruppen.php @@ -149,10 +149,12 @@ class Lvgruppen_LvgruppenController extends MVVController $semester = Semester::find($this->semester_filter); if ($semester && $semester->isCurrent()) { $this->next_sem = Semester::findNext(); - $this->display_semesters[] = $this->next_sem; - $this->courses = array_merge($this->courses, - $this->lvgruppe->getAllAssignedCourses(false, $this->next_sem->id) - ); + if ($this->next_sem) { + $this->display_semesters[] = $this->next_sem; + $this->courses = array_merge($this->courses, + $this->lvgruppe->getAllAssignedCourses(false, $this->next_sem->id) + ); + } } $this->current_sem = $semester; $this->display_semesters[] = $semester; @@ -451,7 +453,7 @@ class Lvgruppen_LvgruppenController extends MVVController ); $widget->class = 'nested-select'; $widget->addElement( - new SelectElement('select-none', _('Alle'), $selected_abschlussh === '') + new SelectElement('select-none', _('Alle'), $selected_abschluss === '') ); $abschluesse = Abschluss::findBySQL(' 1 ORDER BY `name`'); foreach ($abschluesse as $abschluss) { @@ -533,11 +535,12 @@ class Lvgruppen_LvgruppenController extends MVVController private function set_trails_filter($start, $end) { // show only pathes with modules valid in the selected semester - ModuleManagementModelTreeItem::setObjectFilter('Modulteil', + ModuleManagementModelTreeItem::setObjectFilter( + Modulteil::class, function ($mt) use ($start, $end) { - $modul_start = Semester::find($mt->modul->start)->beginn ?: 0; - $modul_end = Semester::find($mt->modul->end)->ende ?: PHP_INT_MAX; - return ($modul_start <= $end && $modul_end >= $start); + $modul_start = Semester::find($mt->modul->start)->beginn ?? 0; + $modul_end = Semester::find($mt->modul->end)->ende ?? PHP_INT_MAX; + return $modul_start <= $end && $modul_end >= $start; } ); } diff --git a/app/controllers/module/module.php b/app/controllers/module/module.php index 2f6ba4cc5f10815be875cb8d6f30bdf95d75c21b..e57156fa4306b0049cbf14d2dcdc2e14dd7ee256 100644 --- a/app/controllers/module/module.php +++ b/app/controllers/module/module.php @@ -53,7 +53,7 @@ class Module_ModuleController extends MVVController if (count($search_result) > 0) { $module_ids = $search_result; } else { - if ($_SESSION['mvv_filter_module_fach_id']) { + if (!empty($_SESSION['mvv_filter_module_fach_id'])) { $module_ids = $this->findModuleIdsByFach($_SESSION['mvv_filter_module_fach_id']); } if (!empty($_SESSION['mvv_filter_module_abschluss_id'])) { diff --git a/app/controllers/resources/ajax.php b/app/controllers/resources/ajax.php index 6ff3942f734391a90ebbf5dfb937c0cd7fc58b59..998acaf5b21cd0f75557783c4d9a250f5e195adb 100644 --- a/app/controllers/resources/ajax.php +++ b/app/controllers/resources/ajax.php @@ -190,7 +190,7 @@ class Resources_AjaxController extends AuthenticatedController 'resource_id' => $resource->id ]; if (!$display_all_requests) { - $requests_sql .= "AND user_id = :user_id "; + $requests_sql .= " AND user_id = :user_id "; $requests_sql_params['user_id'] = $current_user->id; } diff --git a/app/controllers/room_management/planning.php b/app/controllers/room_management/planning.php index c450c642ee84bd8fa7979801239f9587c2db3a44..1484bbbb6a434d9077eaacfc588a4446ec6366e4 100644 --- a/app/controllers/room_management/planning.php +++ b/app/controllers/room_management/planning.php @@ -38,7 +38,7 @@ class RoomManagement_PlanningController extends AuthenticatedController if ($selected_clipboard_id) { $_SESSION['selected_clipboard_id'] = $selected_clipboard_id; } else { - $selected_clipboard_id = $_SESSION['selected_clipboard_id']; + $selected_clipboard_id = $_SESSION['selected_clipboard_id'] ?? null; } $this->display_all_requests = Request::get('display_all_requests'); @@ -282,7 +282,7 @@ class RoomManagement_PlanningController extends AuthenticatedController if ($selected_clipboard_id) { $_SESSION['selected_clipboard_id'] = $selected_clipboard_id; } else { - $selected_clipboard_id = $_SESSION['selected_clipboard_id']; + $selected_clipboard_id = $_SESSION['selected_clipboard_id'] ?? null; } $this->display_all_requests = Request::get('display_all_requests'); @@ -411,7 +411,7 @@ class RoomManagement_PlanningController extends AuthenticatedController } //Check if a clipboard is selected: - $selected_clipboard_id = $_SESSION['selected_clipboard_id']; + $selected_clipboard_id = $_SESSION['selected_clipboard_id'] ?? null; $rooms = []; if ($selected_clipboard_id) { $clipboard = Clipboard::find($selected_clipboard_id); @@ -1075,7 +1075,7 @@ class RoomManagement_PlanningController extends AuthenticatedController if ($selected_clipboard_id) { $_SESSION['selected_clipboard_id'] = $selected_clipboard_id; } else { - $selected_clipboard_id = $_SESSION['selected_clipboard_id']; + $selected_clipboard_id = $_SESSION['selected_clipboard_id'] ?? null; } //Get the selected date or use the current date, if none specified: diff --git a/app/controllers/search/studiengaenge.php b/app/controllers/search/studiengaenge.php index a075ce9e1b56ec19e383f8412ebd4797cbb91603..ae271061e3cb25b0258ab974290c05881c3a1ea0 100644 --- a/app/controllers/search/studiengaenge.php +++ b/app/controllers/search/studiengaenge.php @@ -228,7 +228,7 @@ class Search_StudiengaengeController extends MVVController } else { $this->active_sem = Semester::find($this->sessGet('selected_semester', Semester::findCurrent()->id)); } - $this->active_sem = $this->semesters[$this->active_sem->id] ? $this->active_sem : null; + $this->active_sem = !empty($this->semesters[$this->active_sem->id]) ? $this->active_sem : null; if (!$this->active_sem && count($this->semesters)) { $active_sem = reset($this->semesters); $this->active_sem = Semester::find($active_sem['semester_id']); diff --git a/app/controllers/shared/contacts.php b/app/controllers/shared/contacts.php index 98670f4b9bd58cf90a3ce7d9ef7a0bbc571f5d01..62dd7a88816158b230351267539ab33029114df2 100644 --- a/app/controllers/shared/contacts.php +++ b/app/controllers/shared/contacts.php @@ -725,7 +725,7 @@ class Shared_ContactsController extends MVVController $this->mvvcontact_id = $user_id; $this->selected_sem_end = $this->filter['end_sem.ende']; - $this->selected_inst = $this->filter['mvv_studiengang.institut_id']; + $this->selected_inst = $this->filter['mvv_studiengang.institut_id'] ?? null; if (Request::submitted('store')) { $selected = Request::getArray('ranges'); @@ -871,7 +871,7 @@ class Shared_ContactsController extends MVVController )); $filter = [ 'mvv_modul.stat' => $stat, - 'mvv_modul_inst.institut_id' => $this->filter['mvv_modul_inst.institut_id'], + 'mvv_modul_inst.institut_id' => $this->filter['mvv_modul_inst.institut_id'] ?? '', 'start_sem.beginn' => $this->filter['start_sem.beginn'], 'end_sem.ende' => $this->filter['end_sem.ende'] ]; diff --git a/app/views/course/wizard/steps/lvgroups/_node.php b/app/views/course/wizard/steps/lvgroups/_node.php index 8b159bd7d0bd3a1f168bda8fa320885f80bfe992..78db2f19092d256bec3666c075a78c65da002e31 100644 --- a/app/views/course/wizard/steps/lvgroups/_node.php +++ b/app/views/course/wizard/steps/lvgroups/_node.php @@ -1,4 +1,4 @@ -<? if (!$search_result || in_array($node->id, $search_result)) : ?> +<? if (empty($search_result) || in_array($node->id, $search_result)) : ?> <? $id = $node->id . '-' . $pos_id; ?> <? if (!count($children)) : ?> <li><?= _('Keine Module verfügbar') ?></li> diff --git a/app/views/fachabschluss/abschluesse/index.php b/app/views/fachabschluss/abschluesse/index.php index 6750a76c015dcea1da48063611a0e3534a4084b3..2b390001d1cdcb8aa7a0a3d1474764892082ae58 100644 --- a/app/views/fachabschluss/abschluesse/index.php +++ b/app/views/fachabschluss/abschluesse/index.php @@ -14,7 +14,7 @@ </tr> </thead> <? foreach ($abschluesse as $abschluss) : ?> - <tbody class="<?= $abschluss->count_faecher ? '' : 'empty' ?> <?= ($abschluss_id ? 'not-collapsed' : 'collapsed') ?>"> + <tbody class="<?= $abschluss->count_faecher ? '' : 'empty' ?> <?= !empty($abschluss_id) ? 'not-collapsed' : 'collapsed' ?>"> <tr class="header-row"> <td class="toggle-indicator"> <? if ($abschluss->count_faecher) : ?> diff --git a/app/views/fachabschluss/faecher/fachbereiche.php b/app/views/fachabschluss/faecher/fachbereiche.php index 5a4f6f1027131c05c63a2049eec160ef555ead17..844440cf0adf1634e010884e335138bbc08d8731 100644 --- a/app/views/fachabschluss/faecher/fachbereiche.php +++ b/app/views/fachabschluss/faecher/fachbereiche.php @@ -10,7 +10,7 @@ </thead> <? foreach ($fachbereiche as $fachbereich): ?> <? if ($fachbereich['faecher']) : ?> - <tbody class="<?= ($fachbereich_id === $fachbereich['institut_id'] ? 'not-collapsed' : 'collapsed') ?>"> + <tbody class="<?= isset($fachbereich_id) && $fachbereich_id === $fachbereich['institut_id'] ? 'not-collapsed' : 'collapsed' ?>"> <tr class="header-row"> <td class="toggle-indicator"> <a class="mvv-load-in-new-row" @@ -18,7 +18,7 @@ </td> <td style="text-align: center;" class="dont-hide"><?= htmlReady($fachbereich['faecher']) ?> </td> </tr> - <? if ($fachbereich_id === $fachbereich['institut_id']) : ?> + <? if (isset($fachbereich_id) && $fachbereich_id === $fachbereich['institut_id']): ?> <tr class="loaded-details nohover"> <?= $this->render_partial('fachabschluss/faecher/details_fachbereich', compact('fach')) ?> </tr> diff --git a/app/views/lvgruppen/lvgruppen/details.php b/app/views/lvgruppen/lvgruppen/details.php index 073d552d180a0afe019afc727c991274b79a5508..6a9c3afc690da1e3d23202b1baeeb545e74f01e1 100644 --- a/app/views/lvgruppen/lvgruppen/details.php +++ b/app/views/lvgruppen/lvgruppen/details.php @@ -92,7 +92,7 @@ <? else : ?> <ul style="list-style-type:none;" id="mvv-lvgruppen-semester"> <? foreach ($display_semesters as $semester) : ?> - <? if ($courses[$semester->id]) : ?> + <? if (!empty($courses[$semester->id])) : ?> <li> <strong><?= htmlReady($semester->name) ?></strong> <ul style="list-style-type:none;"> diff --git a/app/views/materialien/files/add_dokument.php b/app/views/materialien/files/add_dokument.php index e53d917170104238db94f3770a54e7ee9ac3b3ba..3b706e90b473d03664c54dcb639b47b872b3e788 100644 --- a/app/views/materialien/files/add_dokument.php +++ b/app/views/materialien/files/add_dokument.php @@ -35,7 +35,7 @@ </tr> <tr> <td> - <div class="attachments" style="<?= (!$documents || !key_exists($key, $documents)) ? '' : 'display: none;'?>"> + <div class="attachments" style="<?= (empty($documents) || !array_key_exists($key, $documents)) ? '' : 'display: none;'?>"> <span style="cursor:pointer;" onClick="$('#fileselector_<?= $key; ?>').toggle();$(this).toggle();"> <?= Icon::create('add', Icon::ROLE_CLICKABLE, ['title' => _("Datei hinzufügen"), 'class' => 'text-bottom']); ?> <?= _("Datei hinzufügen") ?> @@ -43,11 +43,11 @@ <div id="fileselector_<?= $key; ?>" style="display:none;"> <ul class="stgfiles list-unstyled"> <li style="display: none;" class="stgfile"> - <input type="hidden" name="document_id" id="document_id" value="<?= htmlReady($document_id) ?>"> + <input type="hidden" name="document_id" id="document_id" value="<?= htmlReady($document_id ?? '') ?>"> <span class="icon"></span> <span class="name"></span> <span class="size"></span> - <a class="remove_attachment"><?= Icon::create('trash', 'clickable')->asImg(['class' => "text-bottom"]) ?></a> + <a class="remove_attachment"><?= Icon::create('trash')->asImg(['class' => 'text-bottom']) ?></a> </li> </ul> <div id="statusbar_container"> diff --git a/app/views/questionnaire/assign.php b/app/views/questionnaire/assign.php index 4bf7fc51374722290035d8cb67fee46020c22d37..5299a83ca2609de7b4d6d225668a4ecb0e9fd0dc 100644 --- a/app/views/questionnaire/assign.php +++ b/app/views/questionnaire/assign.php @@ -10,8 +10,8 @@ <select name="semester_id"> <? foreach ($available_semesters as $available_semester): ?> <option value="<?= htmlReady($available_semester->id) ?>" - <?= ($available_semester->id == $semester_id) - ? 'selected="selected"' + <?= isset($semester_id) && $available_semester->id == $semester_id + ? 'selected' : '' ?>> <?= htmlReady($available_semester->name) ?> @@ -24,13 +24,13 @@ (<?= _('optional') ?>) <select name="institute_id"> <option value="" - <?= ($institute_id == '' ? 'selected="selected"' : '') ?>> + <?= empty($institute_id) ? 'selected' : '' ?>> <?= _('(bitte wählen)') ?> </option> <? foreach ($available_institutes as $available_institute): ?> <option value="<?= htmlReady($available_institute['Institut_id']) ?>" - <?= ($available_institute['Institut_id'] == $institute_id) - ? 'selected="selected"' + <?= isset($institute_id) && $available_institute['Institut_id'] == $institute_id + ? 'selected' : '' ?>> <?= htmlReady($available_institute['Name']) ?> @@ -43,13 +43,13 @@ (<?= _('optional') ?>) <select name="course_type_id"> <option value="" - <?= ($course_type_id == '' ? 'selected="selected"' : '') ?>> + <?= empty($course_type_id) ? 'selected' : '' ?>> <?= dgettext('AskALotPlugin', '(bitte wählen)') ?> </option> <? foreach ($available_course_types as $available_course_type): ?> <option value="<?= htmlReady($available_course_type['id']) ?>" - <?= ($available_course_type['id'] == $course_type_id) - ? 'selected="selected"' + <?= isset($course_type_id) && $available_course_type['id'] == $course_type_id + ? 'selected' : '' ?>> <?= htmlReady($available_course_type['name']) ?> diff --git a/app/views/resources/_common/_grouped_room_list.php b/app/views/resources/_common/_grouped_room_list.php index f3d6b627d0f4348d8126440ee778e812a00e8c04..a27af17a8dfae3afce63d29031b0df1aa59847a2 100644 --- a/app/views/resources/_common/_grouped_room_list.php +++ b/app/views/resources/_common/_grouped_room_list.php @@ -64,7 +64,7 @@ <? if ($user) :?> <? $perms = [ - 'show_global_admin_actions' => $show_global_admin_actions, + 'show_global_admin_actions' => $show_global_admin_actions ?? false, 'show_admin_actions' => $resource->userHasPermission($user, 'admin'), 'show_tutor_actions' => $resource->userHasPermission($user, 'tutor'), 'show_autor_actions' => $resource->userHasPermission($user, 'autor'), diff --git a/app/views/shared/contacts/add_ranges_to_contact.php b/app/views/shared/contacts/add_ranges_to_contact.php index 389e72cf65730feec0640892e0802908df509948..0f4ae3f5095e5dc028d49b21883d42a9c8f0c8f9 100644 --- a/app/views/shared/contacts/add_ranges_to_contact.php +++ b/app/views/shared/contacts/add_ranges_to_contact.php @@ -16,7 +16,7 @@ <select style="display: inline-block;" name="ansp_typ"> <option value=""<?= empty($ansp_typ) ? ' selected' : '' ?>></option> <? foreach ($GLOBALS['MVV_CONTACTS']['TYPE']['values'] as $key => $entry) : ?> - <option value="<?= $key ?>"<?= $key == $ansp_typ ? ' selected' : '' ?>><?= htmlReady($entry['name']) ?></option> + <option value="<?= $key ?>"<?= isset($ansp_typ) && $key == $ansp_typ ? ' selected' : '' ?>><?= htmlReady($entry['name']) ?></option> <? endforeach; ?> </select> </label> @@ -26,7 +26,7 @@ <?= _('Kategorie') ?> <select style="display: inline-block;" name="ansp_kat"> <? foreach (MvvContactRange::getCategoriesByRangetype($range_type) as $key => $entry) : ?> - <option value="<?= $key ?>"<?= $key == $ansp_kat ? ' selected' : '' ?>><?= htmlReady($entry['name']) ?></option> + <option value="<?= $key ?>"<?= isset($ansp_kat) && $key == $ansp_kat ? ' selected' : '' ?>><?= htmlReady($entry['name']) ?></option> <? endforeach; ?> </select> </label> diff --git a/app/views/shared/contacts/details.php b/app/views/shared/contacts/details.php index f39d2001e51a7fed1fb40c1dc41cb1775698292f..a4605ce915e4a2dda0b650ab41a9faa6712d2599 100644 --- a/app/views/shared/contacts/details.php +++ b/app/views/shared/contacts/details.php @@ -45,7 +45,7 @@ </td> <? if ($object_type === 'Studiengang') : ?> <td> - <?= htmlReady($GLOBALS['MVV_CONTACTS']['TYPE']['values'][$rel['type']]['name']); ?> + <?= htmlReady($GLOBALS['MVV_CONTACTS']['TYPE']['values'][$rel['type']]['name'] ?? ''); ?> </td> <? endif; ?> <td> diff --git a/app/views/shared/contacts/range.php b/app/views/shared/contacts/range.php index d66c494430fb10911af0a9bff22eacc0911bc10e..f58b286503b79e93140b39987a896b1da7b5d110 100644 --- a/app/views/shared/contacts/range.php +++ b/app/views/shared/contacts/range.php @@ -40,7 +40,7 @@ <td><?= htmlReady($mvv_contact->position); ?></td> <td><?= htmlReady($mvv_contact->name) ?></td> <? if($range_type !== 'Modul'): ?> - <td><?= htmlReady($GLOBALS['MVV_CONTACTS']['TYPE']['values'][$mvv_contact->type]['name']) ?></td> + <td><?= htmlReady($GLOBALS['MVV_CONTACTS']['TYPE']['values'][$mvv_contact->type]['name'] ?? '') ?></td> <? endif; ?> <td><?= htmlReady($mvv_contact->getCategoryDisplayname()); ?></td> <td ><?= htmlReady($mvv_contact->count_relations); ?></td> diff --git a/lib/classes/MVV.class.php b/lib/classes/MVV.class.php index 67bbbebb167d6094b1085f110400425a0be287fa..517514c289c61976c2827e86cbefccd6965bc2bc 100644 --- a/lib/classes/MVV.class.php +++ b/lib/classes/MVV.class.php @@ -843,7 +843,7 @@ class MVV implements Loggable { public static function getContentLanguageImagePath($language): string { $content_language = $GLOBALS['MVV_MODUL_DESKRIPTOR']['SPRACHE']['values'][$language]['content_language']; - return 'languages/' . ($GLOBALS['CONTENT_LANGUAGES'][$content_language]?$GLOBALS['CONTENT_LANGUAGES'][$content_language]['picture']:'lang_' . mb_strtolower($language) . '.gif'); + return 'languages/' . ($GLOBALS['CONTENT_LANGUAGES'][$content_language]['picture'] ?? 'lang_' . mb_strtolower($language) . '.gif'); } } diff --git a/lib/classes/coursewizardsteps/BasicDataWizardStep.php b/lib/classes/coursewizardsteps/BasicDataWizardStep.php index 58fb09fb3b9f4b29abb8596869dcce015f0c3a53..6a1438fe1a88b6ae31c6ff78b10c78fecebd3205 100644 --- a/lib/classes/coursewizardsteps/BasicDataWizardStep.php +++ b/lib/classes/coursewizardsteps/BasicDataWizardStep.php @@ -620,7 +620,10 @@ class BasicDataWizardStep implements CourseWizardStep } } - + } else { + foreach ($indices as $index) { + $values[$index] = $values[$index] ?? ''; + } } return $values;