deployment->registration; if ($registration->status === RegistrationStatus::Inactive->value) { PageLayout::postError(sprintf( _('Die LTI-Registrierung ā€ž%sā€œ ist deaktiviert.'), htmlReady($registration->name) )); $this->redirect('course/lti'); return false; } return true; } public function validateUserConsent(ResourceLink $resourceLink): bool { $registration = $resourceLink->deployment->registration; $registrationConfigs = $registration->getConfigValues(); $dataProtectionConsent = RegistrationPrivacySettings::countBySQL( "`registration_id` = :registration_id AND `user_id` = :user_id AND `accepted` = 1", [ 'registration_id' => $registration->id, 'user_id' => User::findCurrent()->id ] ); $launchContainer = $resourceLink->launch_container ?? $registrationConfigs['launch_container']; if (!$dataProtectionConsent) { $this->redirect('lti/consent/edit/' . $resourceLink->id, [ 'redirect' => 'launch', 'launch_container' => $launchContainer ]); return false; } return true; } }