54         return \ilObjLearningModule::class;
    63         $this->
ctrl = $DIC->ctrl();
    65         $this->uiFactory = $DIC->ui()->factory();
    66         $this->uiRenderer = $DIC->ui()->renderer();
    67         $this->httpRequest = $DIC->http()->request();
    68         $this->
tabs = $DIC->tabs();
    69         $this->
user = $DIC->user();
    80                     $this->current_page_id = $parameter;
    81                     $state = $state->
withValueFor(
"current_page", (
string) $this->current_page_id);
    84             case self::CMD_TOGGLE_LEARNING_PROGRESS:
    97         if (is_object($this->lm_pres)) {
   105             [
"ref_id" => $this->lm->getRefId(),
   106              "obj_id" => (
int) $current_page],
   110         $this->lm_pres_service = $this->lm_pres->getService();
   115         return $this->
access->checkAccess(
'read', 
'', $this->lm->getRefId());
   129         $main_tpl = $DIC->ui()->mainTemplate();
   135         $nav_stat = $this->lm_pres_service->getNavigationStatus();
   138         $succ_id = $nav_stat->getSuccessorPageId();
   140             $builder->
next(
"layout", $succ_id);
   144         $prev_id = $nav_stat->getPredecessorPageId();
   146             $builder->
previous(
"layout", $prev_id);
   149         $toc = $builder->
tableOfContent($this->lm->getTitle(), 
'layout', 0);
   151         $lm_toc_renderer->renderLSToc($toc);
   158             if (is_object($entry[
"signal"])) {
   164             if ($entry[
"on_load"] != 
"") {
   165                 $main_tpl->addOnLoadCode($entry[
"on_load"]);
   176         if (is_null($this->menu_entries)) {
   177             $menu = new \ILIAS\LearningModule\Menu\ilLMMenuGUI($this->lm_pres_service);
   178             $this->menu_entries = $menu->getEntries();
   190             $this->
lng->loadLanguageModule(
'lm');
   191             $learningProgressToggleCtrlLabel = $this->
lng->txt(
'lm_btn_lp_toggle_state_completed');
   193                 $learningProgressToggleCtrlLabel = $this->
lng->txt(
'lm_btn_lp_toggle_state_not_completed');
   196                 $learningProgressToggleCtrlLabel,
   197                 self::CMD_TOGGLE_LEARNING_PROGRESS,
   207         if (self::CMD_TOGGLE_LEARNING_PROGRESS === $command) {
   210                 $marks = new \ilLPMarks($this->lm->getId(), $this->
user->getId());
   211                 $marks->setCompleted(!$marks->getCompleted());
   216                 $this->
lng->loadLanguageModule(
'trac');
   217                 $this->messages[] = $this->uiFactory->messageBox()->success(
   218                     $this->
lng->txt(
'trac_updated_status')
   240         $additional_content = [];
   242             if (is_object($entry[
"modal"])) {
   243                 $additional_content[] = $entry[
"modal"];
   247         $this->
ctrl->setParameterByClass(
"illmpresentationgui", 
'ref_id', $this->lm->getRefId());
   248         $content = $this->uiRenderer->render($this->messages);
   249         $content .= $this->
ctrl->getHTML($this->lm_pres, [
"cmd" => 
"layout"], [
"illmpresentationgui"]);
   250         $content .= $this->uiRenderer->render($additional_content);
   251         return $factory->
legacy($content);
 
An entity that renders components to a string output. 
 
ServerRequestInterface $httpRequest
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
Base class to be implemented and put in class-directory of module with the name il$MODULEKioskModeVie...
 
toggleLearningProgress(string $command)
 
hasPermissionToAccessKioskMode()
 
withValueFor(string $key, string $value)
Set a value for a key of the state. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
next(string $command, int $parameter=null)
A next control allows the user to progress to the next item in the object. 
 
getValueFor(string $key)
Get the value for the given key. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
ilGlobalTemplateInterface $mainTemplate
 
initLMService(?int $current_page)
 
tableOfContent(string $label, string $command, int $parameter=null, $state=null)
A table of content allows the user to get an overview over the generally available content in the obj...
 
legacy(string $content)
 description: purpose: > This component is used to wrap an existing ILIAS UI element into a UI compon...
 
buildInitialState(State $empty_state)
Build an initial state based on the Provided empty state. 
 
Keeps the state of a view in a simple stringly type key-value store. 
 
genericWithSignal(string $label, UI\Component\Signal $signal)
A genericWithSignal will trigger the Signal rather than refreshing the View. 
 
static _hasCompleted(int $a_usr_id, int $a_obj_id)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setObject(ilObject $object)
Set the object for this view. 
 
render(State $state, Factory $factory, URLBuilder $url_builder, array $post=null)
 
Class ilPageObject Handles PageObjects of ILIAS Learning Modules (see ILIAS DTD) 
 
ilPageObject $contentPageObject
 
maybeBuildLearningProgressToggleControl(ControlBuilder $builder)
 
const CMD_TOGGLE_LEARNING_PROGRESS
 
Class ilLearningModuleKioskModeView. 
 
updatePost(State $state, string $command, array $post)
Update the state and the object based on the provided command and post-data. 
 
ilLMPresentationService $lm_pres_service
 
The URLBuilder allows views to get links that are used somewhere inline in the content. 
 
buildControls(State $state, ControlBuilder $builder)
Construct the controls for the view based on the current state. 
 
ilLMPresentationGUI $lm_pres
 
previous(string $command, int $parameter=null)
A previous control allows the user to go back to the previous item in the object. ...
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
updateGet(State $state, string $command, int $parameter=null)
Update the state based on the provided command. 
 
Build controls for the view. 
 
array $additional_content
 
static getInstance(int $obj_id)
 
generic(string $label, string $command, int $parameter=null)
A generic control needs to have a label that tells what it does. 
 
static _updateStatus(int $a_obj_id, int $a_usr_id, ?object $a_obj=null, bool $a_percentage=false, bool $a_force_raise=false)
 
Main service init and factory.