3declare(strict_types=1);
40 private \ILIAS\DI\Container
$dic;
47 $DIC->language()->loadLanguageModule(
'cmix');
57 $this->thisRunTS = time();
64 $this->lastRunTS = (
int)
$settings->get(self::LAST_RUN_TS_SETTING_NAME,
"0");
70 $settings->set(self::LAST_RUN_TS_SETTING_NAME, (
string) $this->thisRunTS);
85 return 'xapi_results_evaluation';
90 return $this->dic->language()->txt(
"cron_xapi_results_evaluation");
95 return $this->dic->language()->txt(
"cron_xapi_results_evaluation_desc");
123 foreach ($objects as
$objId) {
124 $this->log->debug(
'handle object (' .
$objId .
')');
133 $this->log->debug(
'skipped object due to launch mode (' .
$objId .
')');
139 $evaluation->evaluateReport($report);
163 $filter->setActivityId($object->getActivityId());
167 $object->getLrsType()->getLrsEndpointStatementsAggregationLink(),
172 $object->getLrsType()->getBasicAuth(),
176 return $request->queryReport($object->
getId());
183 $start = $end =
null;
185 if ($this->getLastRunTS() !== 0) {
193 $this->log->debug(
"use filter from ($start) until ($end)");
203 return array_unique(array_merge(
setStartDate(\ilCmiXapiDateTime $startDate)
setEndDate(\ilCmiXapiDateTime $endDate)
static updateFetchedUntilForObjects(ilCmiXapiDateTime $fetchedUntil, array $objectIds)
static getCmixObjectsHavingUsersMissingProxySuccess()
const SCHEDULE_TYPE_DAILY
@depracated This will be replaced with an ENUM in ILIAS 9
static getLogger(string $a_component_id)
Get component logger.
Component logger with individual log levels by component id.
static getObjectsHavingBypassProxyEnabledAndRegisteredUsers()
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
hasAutoActivation()
Is to be activated on "installation", does only work for ILIAS core cron jobs.
getXapiStatementsReport(ilObject $object, ilCmiXapiStatementsReportFilter $filter)
getDefaultScheduleValue()
const LAST_RUN_TS_SETTING_NAME