From 0eff46168b0d7f6cdf2a0aa780d413ebea42c509 Mon Sep 17 00:00:00 2001 From: David Siegfried Date: Mon, 4 Nov 2024 14:16:05 +0000 Subject: prevent warnings in restapi, fixes #4813 Merge request studip/studip!3602 --- lib/classes/restapi/RouteMap.php | 4 ++-- lib/classes/restapi/consumer/HTTP.php | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/classes/restapi/RouteMap.php b/lib/classes/restapi/RouteMap.php index b8ad2f4..6e1b77e 100644 --- a/lib/classes/restapi/RouteMap.php +++ b/lib/classes/restapi/RouteMap.php @@ -878,13 +878,13 @@ abstract class RouteMap $this->contentType(get_mime_type($path)); } - if ($opts['disposition'] === 'attachment' || isset($opts['filename'])) { + if ((isset($opts['disposition']) && $opts['disposition'] === 'attachment') || isset($opts['filename'])) { $this->response['Content-Disposition'] = 'attachment; '; $filename = $opts['filename'] ?: $path; $this->response['Content-Disposition'] .= encode_header_parameter('filename', basename($filename)); } - elseif ($opts['disposition'] === 'inline') { + elseif (isset($opts['disposition']) && $opts['disposition'] === 'inline') { $this->response['Content-Disposition'] = 'inline'; } diff --git a/lib/classes/restapi/consumer/HTTP.php b/lib/classes/restapi/consumer/HTTP.php index 97b0657..6d66c23 100644 --- a/lib/classes/restapi/consumer/HTTP.php +++ b/lib/classes/restapi/consumer/HTTP.php @@ -31,12 +31,15 @@ class HTTP extends Base || isset($_SERVER['HTTP_AUTHORIZATION']) ) { $user_id = false; - + $username = ''; + $password = ''; if (isset($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])) { $username = $_SERVER['PHP_AUTH_USER']; $password = $_SERVER['PHP_AUTH_PW']; } elseif (isset($_SERVER['HTTP_AUTHORIZATION'])) { - list($username, $password) = explode(':', base64_decode(mb_substr($_SERVER['HTTP_AUTHORIZATION'], 6))); + $chunks = explode(':', base64_decode(mb_substr($_SERVER['HTTP_AUTHORIZATION'], 6))); + $username = $chunks[0] ?? ''; + $password = $chunks[1] ?? ''; } $check = StudipAuthAbstract::CheckAuthentication($username, $password); -- cgit v1.0