3 declare(strict_types=1);
48 private \ILIAS\DI\Container
$dic;
54 $this->main_tpl = $DIC->ui()->mainTemplate();
65 if (!$this->
access->hasHighscoreAccess()) {
69 switch ($this->dic->ctrl()->getNextClass($this)) {
71 $cmd = $this->dic->ctrl()->getCmd(
'show') .
'Cmd';
79 $table->resetFilter();
80 $table->resetOffset();
87 $table->writeFilterToSession();
88 $table->resetOffset();
96 ->initHighScoreTable()
101 $this->main_tpl->setOnScreenMessage(
'failure', $e->getMessage());
103 $table->setData(array());
104 $table->setMaxCount(0);
105 $table->resetOffset();
106 $this->tableHtml = $table->getHTML();
109 $this->dic->ui()->mainTemplate()->setContent($this->tableHtml);
115 $filter->setActivityId($this->
object->getActivityId());
119 $this->
object->getLrsType()->getLrsEndpointStatementsAggregationLink(),
124 $this->
object->getLrsType()->getBasicAuth(),
128 $scoringReport = $request->queryReport($this->
object->getId());
129 if (
true === $scoringReport->initTableData()) {
130 $this->tableData = $scoringReport->getTableData();
131 $this->userRank = $scoringReport->getUserRank();
138 if (
false === $scopeUserRank) {
139 return array_slice($this->tableData, 0, $this->
object->getHighscoreTopNum());
141 $offset = $this->userRank - 2 < 0 ? 0 : $this->userRank - 2;
143 return array_slice($this->tableData, $offset, $length);
149 if (!$this->
object->getHighscoreTopTable() || !$this->
object->getHighscoreEnabled()) {
150 $this->tableHtml .=
'';
155 $this->tableHtml .= $table->getHTML();
161 if (!$this->
object->getHighscoreOwnTable() || !$this->
object->getHighscoreEnabled()) {
162 $this->tableHtml .=
'';
167 $this->tableHtml .= $table->getHTML();
173 $isMultiActorReport = $this->
access->hasOutcomesAccess();
179 $this->
access->hasOutcomesAccess()
static getInstance(ilObjCmiXapi $object)
const PART_FILTER_INACTIVE_ONLY
__construct(ilObjCmiXapi $object)
const PART_FILTER_ALL_USERS
ilGlobalTemplateInterface $main_tpl
const PART_FILTER_MANSCORING_NONE
getTableDataRange(bool $scopeUserRank=false)
const PART_FILTER_MANSCORING_DONE
const PART_FILTER_ACTIVE_ONLY
buildTableGUI(string $tableId)