From 3ef173d67e060714f60acca4c6e4e141a89faf3c Mon Sep 17 00:00:00 2001
From: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Date: Tue, 7 Mar 2023 08:18:14 +0000
Subject: [PATCH] prevent php8 warning, fixes #2269

Closes #2269

Merge request studip/studip!1496
---
 lib/activities/Stream.php            | 2 +-
 lib/classes/ForumActivity.php        | 2 +-
 lib/classes/StudipMail.class.php     | 8 ++++----
 lib/language.inc.php                 | 2 +-
 lib/phplib/Seminar_Session.class.php | 4 ++--
 5 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/lib/activities/Stream.php b/lib/activities/Stream.php
index 27daf76a965..c63e238f4c9 100644
--- a/lib/activities/Stream.php
+++ b/lib/activities/Stream.php
@@ -59,7 +59,7 @@ class Stream implements \ArrayAccess, \Countable, \IteratorAggregate
             $id = md5($activity->provider . $activity->content .
                     $activity->verb . $activity->object_type . $activity->mkdate);
 
-            if ($new_activities[$id]) {
+            if (isset($new_activities[$id])) {
                 $url = key($activity->object_url);
                 $name = current($activity->object_url);
                 next($activity->object_url);
diff --git a/lib/classes/ForumActivity.php b/lib/classes/ForumActivity.php
index 63dcbf282a6..bc00cf19313 100644
--- a/lib/classes/ForumActivity.php
+++ b/lib/classes/ForumActivity.php
@@ -121,7 +121,7 @@ class ForumActivity
             'verb'         => $verb,              // the activity type
             'object_id'    => $post['topic_id'],  // the id of the referenced object
             'object_type'  => 'forum',            // type of activity object
-            'mkdate'       => $post['mkdate'] ?: time()
+            'mkdate'       => $post['mkdate'] ?? time()
         ];
 
         if ($post['anonymous']) {
diff --git a/lib/classes/StudipMail.class.php b/lib/classes/StudipMail.class.php
index 1aaba8edd89..1ee0db77b77 100644
--- a/lib/classes/StudipMail.class.php
+++ b/lib/classes/StudipMail.class.php
@@ -36,7 +36,7 @@ class StudipMail
      */
     private $attachments = [];
     /**
-     * @var string
+     * @var array
      */
     private $sender;
     /**
@@ -45,7 +45,7 @@ class StudipMail
      */
     private $recipients = [];
     /**
-     * @var string
+     * @var array
      */
     private $reply_to;
 
@@ -175,7 +175,7 @@ class StudipMail
      */
     public function getReplyToEmail()
     {
-        return $this->reply_to['mail'];
+        return $this->reply_to['mail'] ?? '';
     }
 
     /**
@@ -193,7 +193,7 @@ class StudipMail
      */
     public function getReplyToName()
     {
-        return $this->reply_to['name'];
+        return $this->reply_to['name'] ?? '';
     }
 
     /**
diff --git a/lib/language.inc.php b/lib/language.inc.php
index fbe84717554..392629048bb 100644
--- a/lib/language.inc.php
+++ b/lib/language.inc.php
@@ -50,7 +50,7 @@ use Negotiation\AcceptHeader;
 function get_accepted_languages(Psr\Http\Message\RequestInterface $request = null) {
     $accepted_languages = null;
     if ($request === null) {
-        $accepted_languages = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
+        $accepted_languages = $_SERVER['HTTP_ACCEPT_LANGUAGE'] ?? null;
     } elseif ($request->hasHeader('Accept-Language')) {
         $accepted_languages = $request->getHeaderLine('Accept-Language');
     }
diff --git a/lib/phplib/Seminar_Session.class.php b/lib/phplib/Seminar_Session.class.php
index 937a865a10a..8fdb61c7abf 100644
--- a/lib/phplib/Seminar_Session.class.php
+++ b/lib/phplib/Seminar_Session.class.php
@@ -130,7 +130,7 @@ class Seminar_Session
             return self::$current_session_state;
         }
         $state = false;
-        if (is_object($GLOBALS['user'])) {
+        if (isset($GLOBALS['user']) && is_object($GLOBALS['user'])) {
             $state = in_array($GLOBALS['user']->id, ['nobody', 'form']) ? 'nobody' : 'authenticated';
         } else {
             $sid = $_COOKIE[__CLASS__];
@@ -157,7 +157,7 @@ class Seminar_Session
      */
     public static function get_session_vars($sid)
     {
-        $sess = $GLOBALS['sess'];
+        $sess = $GLOBALS['sess'] ?? null;
         if (!is_object($sess)) {
             $sess = new self();
         }
-- 
GitLab