19 declare(strict_types=1);
    30     protected Entry\ComponentEntry 
$entry;
    39         ?
string $current_opened_node_id
    42         $this->
ctrl = $ilCtrl;
    44         if ($current_opened_node_id) {
    45             $this->
ctrl->setParameterByClass(
'ilsystemstyledocumentationgui', 
'node_id', $current_opened_node_id);
    46             $this->entry = $entries->getEntryById($current_opened_node_id);
    48             $this->entry = $entries->getRootEntry();
    57         $feature_wiki_links = [];
    58         foreach ($this->entry->getFeatureWikiReferences() as $href) {
    59             $feature_wiki_links[] = $href;
    62         $sub_panels[] = $this->f->panel()->sub(
    65                 $this->f->listing()->descriptive(
    67                         'Purpose' => $this->entry->getDescription()->getProperty(
'purpose'),
    68                         'Composition' => $this->entry->getDescription()->getProperty(
'composition'),
    69                         'Effect' => $this->entry->getDescription()->getProperty(
'effect'),
    73                 $this->f->listing()->descriptive(
    75                         'Background' => $this->entry->getBackground(),
    76                         'Context' => $this->f->listing()->ordered($this->entry->getContext()),
    77                         'Feature Wiki References' => $this->f->listing()->ordered($feature_wiki_links)
    83         if (
sizeof($this->entry->getDescription()->getProperty(
'rivals'))) {
    84             $sub_panels[] = $this->f->panel()->sub(
    86                 $this->f->listing()->descriptive(
    87                     $this->entry->getDescription()->getProperty(
'rivals')
    92         if ($this->entry->getRules() && $this->entry->getRules()->hasRules()) {
    94             foreach ($this->entry->getRulesAsArray() as $categoery => $category_rules) {
    95                 $rule_listings[ucfirst($categoery)] = $this->f->listing()->ordered($category_rules);
    98             $sub_panels[] = $this->f->panel()->sub(
   100                 $this->f->listing()->descriptive($rule_listings)
   104         $examples = $this->entry->getExamples();
   105         if (count($examples) > 0) {
   107             foreach ($this->entry->getExamples() as $name => 
$path) {
   109                 $title = 
'Example ' . $nr . 
': ' . ucfirst(str_replace(
'_', 
' ', $name));
   111                 $examples_function_name = $this->entry->getExamplesNamespace() . 
'\\' . $name;
   113                     $example = 
"<div class='well'>" . $examples_function_name() . 
'</div>'; 
   114                 } 
catch (\
ILIAS\
UI\NotImplementedException 
$e) {
   115                     $example = 
"<div class='well'>This component is not yet fully implemented.</div>";
   117                 $content_part_1 = $this->f->legacy($example);
   118                 $code = str_replace(
'<?php\n', 
'', file_get_contents(
$path));
   119                 $geshi = 
new GeSHi($code, 
'php');
   121                 $code_html = 
"<div class='code-container'>" . $geshi->parse_code() . 
'</div>';
   122                 $content_part_2 = $this->f->legacy($code_html);
   123                 $content = [$content_part_1, $content_part_2];
   124                 $sub_panels[] = $this->f->panel()->sub($title, $content);
   127         $sub_panels[] = $this->f->panel()->sub(
'Relations', [
   128             $this->f->listing()->descriptive(
   130                     'Parents' => $this->f->listing()->ordered(
   131                         $this->entries->getParentsOfEntryTitles($this->entry->getId())
   133                     'Descendants' => $this->f->listing()->unordered(
   134                         $this->entries->getDescendantsOfEntryTitles($this->entry->getId())
   140         return $this->f->panel()
   141                        ->report($this->entry->getTitle(), $sub_panels);
 
Entry ComponentEntry $entry
 
__construct(ILIAS\UI\Factory $factory, ilCtrl $ilCtrl, Entries $entries, ?string $current_opened_node_id)
 
Class ChatMainBarProvider . 
 
Container storing a list of UI Component Entries, can act as Iterator, countable and is serializable...
 
Entry ComponentEntries $entries
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
This describes how a Report could be modified during construction of UI. 
 
Renders the Overview of one Example in the Administration. 
 
createUIComponentOfEntry()