XAPI: save object ID in internal log

pull/4035/head
Angel Fernando Quiroz Campos 4 years ago
parent 5737d79604
commit 669f41c6b2
  1. 2
      plugin/xapi/README.md
  2. 15
      plugin/xapi/src/Entity/InternalLog.php
  3. 5
      plugin/xapi/src/Lrs/Utils/InternalLogUtil.php

@ -74,6 +74,6 @@ With the LRS an internal log is registered based on the actor mbox's email or th
To update, execute this queries: To update, execute this queries:
```sql ```sql
CREATE TABLE xapi_internal_log (id INT AUTO_INCREMENT NOT NULL, user_id INT DEFAULT NULL, statement_id VARCHAR(255) NOT NULL, verb VARCHAR(255) NOT NULL, activity_id VARCHAR(255) NOT NULL, activity_name VARCHAR(255) DEFAULT NULL, activity_description VARCHAR(255) DEFAULT NULL, score_scaled DOUBLE PRECISION DEFAULT NULL, score_raw DOUBLE PRECISION DEFAULT NULL, score_min DOUBLE PRECISION DEFAULT NULL, score_max DOUBLE PRECISION DEFAULT NULL, created_at DATETIME DEFAULT NULL, INDEX IDX_C1C667ACA76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB; CREATE TABLE xapi_internal_log (id INT AUTO_INCREMENT NOT NULL, user_id INT DEFAULT NULL, statement_id VARCHAR(255) NOT NULL, verb VARCHAR(255) NOT NULL, object_id VARCHAR(255) NOT NULL, activity_name VARCHAR(255) DEFAULT NULL, activity_description VARCHAR(255) DEFAULT NULL, score_scaled DOUBLE PRECISION DEFAULT NULL, score_raw DOUBLE PRECISION DEFAULT NULL, score_min DOUBLE PRECISION DEFAULT NULL, score_max DOUBLE PRECISION DEFAULT NULL, created_at DATETIME DEFAULT NULL, INDEX IDX_C1C667ACA76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB;
ALTER TABLE xapi_internal_log ADD CONSTRAINT FK_C1C667ACA76ED395 FOREIGN KEY (user_id) REFERENCES user (id); ALTER TABLE xapi_internal_log ADD CONSTRAINT FK_C1C667ACA76ED395 FOREIGN KEY (user_id) REFERENCES user (id);
``` ```

@ -42,9 +42,9 @@ class InternalLog
/** /**
* @var string * @var string
* *
* @ORM\Column(name="activity_id", type="string") * @ORM\Column(name="object_id", type="string")
*/ */
private $activityId; private $objectId;
/** /**
* @var string|null * @var string|null
* *
@ -129,14 +129,14 @@ class InternalLog
return $this; return $this;
} }
public function getActivityId(): string public function getObjectId(): string
{ {
return $this->activityId; return $this->objectId;
} }
public function setActivityId(string $activityId): InternalLog public function setObjectId(string $objectId): InternalLog
{ {
$this->activityId = $activityId; $this->objectId = $objectId;
return $this; return $this;
} }
@ -153,9 +153,6 @@ class InternalLog
return $this; return $this;
} }
/**
* @return string|null
*/
public function getActivityDescription(): ?string public function getActivityDescription(): ?string
{ {
return $this->activityDescription; return $this->activityDescription;

@ -38,13 +38,10 @@ class InternalLogUtil
return; return;
} }
$internalLog->setObjectId($statementObject->getId()->getValue());
$internalLog->setStatementId($statement->getId()->getValue()); $internalLog->setStatementId($statement->getId()->getValue());
if (null !== $definition = $statementObject->getDefinition()) { if (null !== $definition = $statementObject->getDefinition()) {
$internalLog->setActivityId(
$statementObject->getId()->getValue()
);
if (null !== $nameInLanguages = $definition->getName()) { if (null !== $nameInLanguages = $definition->getName()) {
$internalLog->setActivityName( $internalLog->setActivityName(
XApiPlugin::extractVerbInLanguage($nameInLanguages, $languageIso) XApiPlugin::extractVerbInLanguage($nameInLanguages, $languageIso)

Loading…
Cancel
Save