From 80fcb757898f46618efb6ea8f85dde505ed35bd6 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms <tleilax+studip@gmail.com> Date: Sat, 11 Mar 2023 11:54:01 +0000 Subject: [PATCH] prevent php8 warnings, fixes #2279 Closes #2279 Merge request studip/studip!1504 --- lib/classes/JsonApi/Schemas/Courseware/Instance.php | 2 ++ lib/models/Courseware/Instance.php | 10 +++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/classes/JsonApi/Schemas/Courseware/Instance.php b/lib/classes/JsonApi/Schemas/Courseware/Instance.php index ff109661a41..c5224756844 100644 --- a/lib/classes/JsonApi/Schemas/Courseware/Instance.php +++ b/lib/classes/JsonApi/Schemas/Courseware/Instance.php @@ -26,6 +26,8 @@ class Instance extends SchemaProvider /** * {@inheritdoc} + * + * @param \Courseware\Instance $resource */ public function getAttributes($resource, ContextInterface $context): iterable { diff --git a/lib/models/Courseware/Instance.php b/lib/models/Courseware/Instance.php index 5cff95314bd..97990f6a58a 100644 --- a/lib/models/Courseware/Instance.php +++ b/lib/models/Courseware/Instance.php @@ -284,7 +284,11 @@ class Instance */ public function isValidCertificateSettings($certificateSettings): bool { - return (int) $certificateSettings['threshold'] >= 0 && (int) $certificateSettings['threshold'] <= 100; + return !isset($certificateSettings['threshold']) + || ( + $certificateSettings['threshold'] >= 0 + && $certificateSettings['threshold'] <= 100 + ); } private function validateCertificateSettings($certificateSettings): void @@ -335,7 +339,7 @@ class Instance */ public function isValidReminderSettings($reminderSettings): bool { - $valid = in_array($reminderSettings['interval'], [0, 7, 14, 30, 90, 180, 365]); + $valid = in_array($reminderSettings['interval'] ?? 0, [0, 7, 14, 30, 90, 180, 365]); return $valid; } @@ -388,7 +392,7 @@ class Instance */ public function isValidResetProgressSettings($resetProgressSettings): bool { - $valid = in_array($resetProgressSettings['interval'], [0, 14, 30, 90, 180, 365]); + $valid = in_array($resetProgressSettings['interval'] ?? 0, [0, 14, 30, 90, 180, 365]); return $valid; } -- GitLab