diff --git a/lib/classes/JsonApi/Schemas/Courseware/Instance.php b/lib/classes/JsonApi/Schemas/Courseware/Instance.php index ff109661a41c393e1075ead13d261de059994f22..c5224756844e161515901ec7fe04ac732b0c550a 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 5cff95314bd02bd07808e816b7d234083179eed1..97990f6a58aa376f5087577086bfe92363936be5 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; }