diff --git a/app/controllers/studiengaenge/fachbereichestgteile.php b/app/controllers/studiengaenge/fachbereichestgteile.php
index 3f8e29bf71010b9694f81b98a9380322fe2bd36e..c8037dc1fc5cf5aea1e20b2e07fed674afa11bd7 100644
--- a/app/controllers/studiengaenge/fachbereichestgteile.php
+++ b/app/controllers/studiengaenge/fachbereichestgteile.php
@@ -55,7 +55,7 @@ class Studiengaenge_FachbereichestgteileController extends Studiengaenge_Studien
         if (Request::isXhr()) {
             $this->render_template('studiengaenge/studiengangteile/details_grouped');
         } else {
-            $this->performe_relayed('index');
+            $this->perform_relayed('index');
         }
     }
 
diff --git a/app/controllers/studiengaenge/faecher.php b/app/controllers/studiengaenge/faecher.php
index 7674dde355ff1c180460185dd0ffe4c0eef7f007..c9546a3bddb003bec0ec558a652e2f25dc56967b 100644
--- a/app/controllers/studiengaenge/faecher.php
+++ b/app/controllers/studiengaenge/faecher.php
@@ -46,9 +46,6 @@ class Studiengaenge_FaecherController extends Studiengaenge_StudiengangteileCont
             }
             $this->count = StudiengangTeil::getCountAssignedFaecher($filter);
         }
-        if (!isset($this->fach_id)) {
-            $this->fach_id = null;
-        }
         $this->show_sidebar_search = true;
         $this->setSidebar();
     }
diff --git a/app/views/calendar/single/_select_calendar.php b/app/views/calendar/single/_select_calendar.php
index 6b8ee1a0af23e690f4df85228c50e89defd3a80a..e67d62ffc7eb2d46e2ddf16662dfa9c8e1a1ab21 100644
--- a/app/views/calendar/single/_select_calendar.php
+++ b/app/views/calendar/single/_select_calendar.php
@@ -3,7 +3,7 @@
     <section class="hgroup">
         <?= _('Kalender') ?>
         <select class="sidebar-selectlist submit-upon-select" style="width: 16em;" name="range_id">
-            <option value="user.<?= get_username() ?>"<?= (get_userid() == $calendar_id ? ' selected' : '') ?>>
+            <option value="user.<?= get_username() ?>"<?= get_userid() === $range_id ? ' selected' : '' ?>>
                     <?= _("Eigener Kalender") ?>
             </option>
             <? $groups = Calendar::getGroups($GLOBALS['user']->id); ?>
diff --git a/app/views/calendar/single/manage_access.php b/app/views/calendar/single/manage_access.php
index 5aa5ca6a9a5507553108003df0102b9fe094095d..4f7be8f86b8e952f36d73493981b59ba15b50fae 100644
--- a/app/views/calendar/single/manage_access.php
+++ b/app/views/calendar/single/manage_access.php
@@ -8,7 +8,7 @@
     <? $perms = [1 => _('Keine'), 2 => _('Lesen'), 4 => _('Schreiben')] ?>
     <table class="default">
         <caption>
-            <?= htmlReady($title) ?>
+            <?= _('Bestehende Freigaben') ?>
             <span class="actions" style="font-size: 0.8em;">
                 <label>
                     <?= _('Auswahl') ?>:
@@ -81,7 +81,7 @@
                             <?= $perms[$own_perms[$user->user_id]] ?>
                         </td>
                         <td class="actions">
-                            <a title="<?= _('Benutzer entfernen') ?>" onClick="STUDIP.CalendarDialog.removeUser(this);" href="<?= $controller->url_for('calendar/single/remove_user/' . $calendar->getRangeId() . $filter, ['user_id' => $user->user_id]) ?>">
+                            <a title="<?= _('Benutzer entfernen') ?>" onClick="STUDIP.CalendarDialog.removeUser(this);" href="<?= $controller->url_for('calendar/single/remove_user/' . $calendar->getRangeId(), ['user_id' => $user->user_id]) ?>">
                                 <?= Icon::create('trash', 'clickable')->asImg() ?>
                             </a>
                         </td>
diff --git a/app/views/news/admin_news.php b/app/views/news/admin_news.php
index 590becae3a0b2a0240dd7e525f03f59cdb6b1771..30b99a3e917b5229f55a38020e7ba5005195bdb1 100644
--- a/app/views/news/admin_news.php
+++ b/app/views/news/admin_news.php
@@ -66,7 +66,7 @@
 <? if ($news_items && count($news_items)) : ?>
     <? foreach ($area_structure as $type => $area_data) : ?>
         <? $last_title = 'none' ?>
-        <? if (is_array($news_items[$type]) && count($news_items[$type])) : ?>
+        <? if (isset($news_items[$type]) && is_array($news_items[$type]) && count($news_items[$type]) > 0) : ?>
             <table class="default">
             <? if (!$area_type) : ?>
                 <caption>
diff --git a/app/views/studiengaenge/abschluesse/index.php b/app/views/studiengaenge/abschluesse/index.php
index f123e0ef86de4c0c4580bb360e760ae3ac3d4f5b..51cd7335afb1fe4d828f782fffca57b7c004a333 100644
--- a/app/views/studiengaenge/abschluesse/index.php
+++ b/app/views/studiengaenge/abschluesse/index.php
@@ -41,7 +41,7 @@
             <td style="text-align: center;" class="dont-hide"><?= $abschluss->count_studiengaenge ?></td>
             <td></td>
         </tr>
-        <? if ($abschluss_id === $abschluss->id) : ?>
+        <? if (isset($abschluss_id) && $abschluss_id === $abschluss->id) : ?>
             <tr class="loaded-details nohover">
                 <?= $this->render_partial('studiengaenge/studiengaenge/details') ?>
             </tr>
diff --git a/app/views/studiengaenge/fachbereiche/index.php b/app/views/studiengaenge/fachbereiche/index.php
index 54c73c7922a1cd878dc3399aecfe969bcc42a03f..bfdad37d01bb9c2349a8fb8f15ff18a29443e54a 100644
--- a/app/views/studiengaenge/fachbereiche/index.php
+++ b/app/views/studiengaenge/fachbereiche/index.php
@@ -42,7 +42,7 @@
                 <td style="text-align: center;" class="dont-hide"><?= $fachbereich->count_objects ?></td>
                 <td></td>
             </tr>
-            <? if ($fachbereich_id === $fachbereich->id) : ?>
+            <? if (isset($fachbereich_id) && $fachbereich_id === $fachbereich->id) : ?>
                 <tr class="loaded-details nohover">
                     <?= $this->render_partial('studiengaenge/studiengaenge/details') ?>
                 </tr>
diff --git a/app/views/studiengaenge/fachbereichestgteile/index.php b/app/views/studiengaenge/fachbereichestgteile/index.php
index bdd741fbb690b536c16b98d384f8402c48eb2243..0fe3cfca56c7882cecd6d20fe0261d5a7db29c9e 100644
--- a/app/views/studiengaenge/fachbereichestgteile/index.php
+++ b/app/views/studiengaenge/fachbereichestgteile/index.php
@@ -35,12 +35,13 @@
                             </a>
                         <? endif; ?>
                     </td>
-                    <? if ($details_id === $fachbereich['institut_id'] || count($stgteil_ids)) : ?>
-                    <? $stgteile = StudiengangTeil::findByFachbereich($fachbereich['institut_id'], ['mvv_stgteil.stgteil_id' => $stgteil_ids], 'fach_name,zusatz,kp', 'ASC'); ?>
+                </tr>
+            <? if (isset($details_id) && $details_id === $fachbereich['institut_id'] || count($stgteil_ids)) : ?>
+                <? $stgteile = StudiengangTeil::findByFachbereich($fachbereich['institut_id'], ['mvv_stgteil.stgteil_id' => $stgteil_ids], 'fach_name,zusatz,kp', 'ASC'); ?>
                 <tr class="loaded-details nohover">
                     <?= $this->render_partial('studiengaenge/studiengangteile/details_grouped', compact('stgteile')) ?>
                 </tr>
-                <? endif; ?>
+            <? endif; ?>
             </tbody>
         <? endforeach ?>
     </table>
diff --git a/app/views/studiengaenge/kategorien/index.php b/app/views/studiengaenge/kategorien/index.php
index 36d33095b5b0a0bbf2e8d5091224e3e242127aed..e949a825f440eb24629200b2ad75aa8d923510c8 100644
--- a/app/views/studiengaenge/kategorien/index.php
+++ b/app/views/studiengaenge/kategorien/index.php
@@ -42,7 +42,7 @@
                 <td style="text-align: center;" class="dont-hide"><?= $kategorie->count_studiengaenge ?></td>
                 <td></td>
             </tr>
-            <? if ($kategorie_id == $kategorie->id) : ?>
+            <? if (isset($kategorie_id) && $kategorie_id == $kategorie->id) : ?>
                 <tr class="loaded-details nohover">
                     <?= $this->render_partial('studiengaenge/studiengaenge/details') ?>
                 </tr>
diff --git a/app/views/studiengaenge/studiengangteile/stgteil.php b/app/views/studiengaenge/studiengangteile/stgteil.php
index a56d0310b2adeb929655342724f6589173b8424a..77b73aa30650a680953da6d0ff9cf9ab70244ceb 100644
--- a/app/views/studiengaenge/studiengangteile/stgteil.php
+++ b/app/views/studiengaenge/studiengangteile/stgteil.php
@@ -21,7 +21,7 @@ use Studip\Button, Studip\LinkButton;
         <legend>
             <?= _('Fach') ?>
         </legend>
-        <? if (is_array($faecher)) : ?>
+        <? if (isset($faecher) && is_array($faecher)) : ?>
             <label>
                 <?= sprintf(_('Mögliche Fächer im gewählten Fachbereich %s:'), '<strong>' . htmlReady($fachbereich->name) . '</strong>') ?>
                 <select name="fach_item">
diff --git a/lib/classes/ModulesNotification.class.php b/lib/classes/ModulesNotification.class.php
index 7a8b0ef269a0b79faf23600603a9d37a42fbc8d2..324b5c5d61ade3d8d3a7569c94a5540fdffa3292 100644
--- a/lib/classes/ModulesNotification.class.php
+++ b/lib/classes/ModulesNotification.class.php
@@ -51,7 +51,7 @@ class ModulesNotification
             $metadata = $module->getMetadata();
 
             $this->registered_notification_modules[$id] = [
-                'icon' => $metadata['icon'],
+                'icon' => !empty($metadata['icon']) ? $metadata['icon'] : null,
                 'name' => !empty($metadata['displayname'])  ? $metadata['displayname'] : $module->getPluginName(),
             ];
             if ($module instanceof CoreOverview) {
diff --git a/lib/filesystem/FileManager.php b/lib/filesystem/FileManager.php
index 6d4d95eb21daf926948b7b2a8ee159367140e62f..1f790be5f7e1024966381284e89a0142d5c60c21 100644
--- a/lib/filesystem/FileManager.php
+++ b/lib/filesystem/FileManager.php
@@ -111,7 +111,7 @@ class FileManager
             return 'file-generic';
         }
 
-        [$category, $type] = explode('/', $mime_type, 2);
+        list($category, $type) = explode('/', $mime_type, 2);
 
         switch($category) {
             case 'image':
@@ -1639,9 +1639,9 @@ class FileManager
             $header_parts = explode(';', $disposition_header);
             foreach ($header_parts as $part) {
                 $part = trim($part);
-                [$key, $value] = explode('=', $part, 2);
-                if (mb_strtolower($key) === 'filename') {
-                    $header['filename'] = trim($value, '"');
+                $chunks = explode('=', $part, 2);
+                if (count($chunks) === 2 && mb_strtolower($chunks[0]) === 'filename') {
+                    $header['filename'] = trim($chunks[1], '"');
                 }
             }
         } else {
diff --git a/lib/models/Studiengang.php b/lib/models/Studiengang.php
index ad2173c1c000e3b42cbebc9cf199f1ade23a8e47..eccd0cd4f853b84db4669a38f866234ac1c11d89 100644
--- a/lib/models/Studiengang.php
+++ b/lib/models/Studiengang.php
@@ -608,7 +608,7 @@ class Studiengang extends ModuleManagementModelTreeItem
         $result = [];
         foreach ($stmt->fetchAll(PDO::FETCH_ASSOC) as $status) {
             $result[$status['stat']] = [
-                'name' => $GLOBALS['MVV_STUDIENGANG']['STATUS']['values'][$status['stat']]['name'],
+                'name' => $GLOBALS['MVV_STUDIENGANG']['STATUS']['values'][$status['stat']]['name'] ?? _('Undefinierter Status'),
                 'count_objects' => $status['count_objects']
             ];
         }