blob: 06cf452f6eb80b1d3e64f738c3194730f029f5a9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
<?php
namespace Studip\LTI13a;
use OAT\Library\Lti1p3Ags\Model\Score\ScoreInterface;
use OAT\Library\Lti1p3Ags\Repository\ScoreRepositoryInterface;
class ScoreRepository implements ScoreRepositoryInterface
{
public function save(ScoreInterface $score): ScoreInterface
{
$user_id = $score->getUserIdentifier();
$definition_id = $score->getLineItemIdentifier();
$grade = \Grading\Instance::findOneBySQL(
'`definition_id` = :definition_id AND `user_id` = :user_id',
['definition_id' => $definition_id, 'user_id' => $user_id]
);
if (!$grade) {
$grade = new \Grading\Instance();
$grade->definition_id = $definition_id;
$grade->user_id = $user_id;
}
$grade->rawgrade = $score->getScoreGiven();
$grade->feedback = $score->getComment();
$grade->store();
return $score;
}
}
|