diff options
| author | Murtaza Sultani <sultani@data-quest.de> | 2026-02-04 13:10:48 +0100 |
|---|---|---|
| committer | Murtaza Sultani <sultani@data-quest.de> | 2026-02-04 13:10:48 +0100 |
| commit | f2395cb6f7d9019bd3cb15a94c941ec10c95aa4f (patch) | |
| tree | 25879d91c323d8e83b1fdb31cc13f4fc9187f503 | |
| parent | c6ee9d8b88942d063e879ecbc1220e8baad232bd (diff) | |
Resolve "LTI 1.1: Fehler beim Exportieren der Ergebnisse"
Closes #6219
Merge request studip/studip!4706
| -rw-r--r-- | app/views/course/lti/grades.php | 2 | ||||
| -rw-r--r-- | lib/models/LtiDeployment.php | 6 | ||||
| -rw-r--r-- | lib/models/LtiResourceLink.php | 7 |
3 files changed, 9 insertions, 6 deletions
diff --git a/app/views/course/lti/grades.php b/app/views/course/lti/grades.php index 48df9e9..e9b0b40 100644 --- a/app/views/course/lti/grades.php +++ b/app/views/course/lti/grades.php @@ -27,7 +27,7 @@ </td> <? foreach ($lti_data_array as $lti_data): ?> <td style="text-align: right;"> - <? if ($grade = $lti_data->deployment->grades->findOneBy('user_id', $member->user_id)): ?> + <? if ($grade = $lti_data->grades->findOneBy('user_id', $member->user_id)): ?> <?= sprintf('%.0f%%', $grade->score * 100) ?> <? else: ?> – diff --git a/lib/models/LtiDeployment.php b/lib/models/LtiDeployment.php index 86f18a0..1125a0c 100644 --- a/lib/models/LtiDeployment.php +++ b/lib/models/LtiDeployment.php @@ -32,16 +32,12 @@ class LtiDeployment extends SimpleORMap 'class_name' => LtiTool::class, 'foreign_key' => 'tool_id' ]; + $config['has_many']['resource_links'] = [ 'class_name' => LtiResourceLink::class, 'assoc_foreign_key' => 'deployment_id', 'on_delete' => 'delete' ]; - $config['has_many']['grades'] = [ - 'class_name' => LtiGrade::class, - 'assoc_foreign_key' => 'link_id', - 'on_delete' => 'delete' - ]; parent::configure($config); } diff --git a/lib/models/LtiResourceLink.php b/lib/models/LtiResourceLink.php index 0ea15aa..af8e97a 100644 --- a/lib/models/LtiResourceLink.php +++ b/lib/models/LtiResourceLink.php @@ -45,11 +45,18 @@ class LtiResourceLink extends \SimpleORMap implements LtiResourceLinkInterface 'class_name' => Course::class, 'foreign_key' => 'course_id' ]; + $config['belongs_to']['deployment'] = [ 'class_name' => LtiDeployment::class, 'foreign_key' => 'deployment_id' ]; + $config['has_many']['grades'] = [ + 'class_name' => LtiGrade::class, + 'assoc_foreign_key' => 'link_id', + 'on_delete' => 'delete' + ]; + $config['registered_callbacks']['before_create'] = ['cbCalculatePosition']; parent::configure($config); |
