From b36ad0f14fad5aeb03e34fd02a2bfee19a1baa0d Mon Sep 17 00:00:00 2001
From: onli <onli@paskuda.biz>
Date: Mon, 15 Mar 2021 23:13:28 +0100
Subject: [PATCH] php8 compat: fix undefined key

---
 include/functions_config.inc.php | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/include/functions_config.inc.php b/include/functions_config.inc.php
index fd9b6a59..e9d1dcf3 100644
--- a/include/functions_config.inc.php
+++ b/include/functions_config.inc.php
@@ -1263,7 +1263,7 @@ function serendipity_checkPermission($permName, $authorid = null, $returnMyGroup
     }
 
     if ($authorid === null) {
-        $authorid = $serendipity['authorid'];
+        $authorid = $serendipity['authorid'] ?? null;
     }
 
     if (!isset($group[$authorid])) {
@@ -1278,7 +1278,7 @@ function serendipity_checkPermission($permName, $authorid = null, $returnMyGroup
         }
     }
 
-    if ($authorid == $serendipity['authorid'] && $serendipity['no_create']) {
+    if ($authorid == ($serendipity['authorid'] ?? null) && (isset($serendipity['no_create']) && $serendipity['no_create'])) {
         // This no_create user privilege overrides other permissions.
         return false;
     }
@@ -1299,7 +1299,7 @@ function serendipity_checkPermission($permName, $authorid = null, $returnMyGroup
 
     // If the function did not yet return it means there's a check for a permission which is not defined anywhere.
     // Let's use a backwards compatible way.
-    if ($return && isset($permissions[$permName]) && in_array($serendipity['serendipityUserlevel'], $permissions[$permName])) {
+    if ($return && isset($permissions[$permName]) && in_array($serendipity['serendipityUserlevel'] ?? null, $permissions[$permName])) {
         return true;
     }