19 declare(strict_types=1);
    38         $this->log = $DIC->copage()->internal()->domain()->log();
    48         $a_hier_id = $node->getAttribute(
"HierId");
    49         $a_pc_id = $node->getAttribute(
"PCID");
    51         if (!is_object($node)) {
    52             $this->log->debug(
"No node passed.");
    55         $node_name = $node->nodeName;
    56         if (in_array($node_name, [
"PageObject", 
"TableRow"])) {
    57             $this->log->debug(
"$node_name -> return.");
    60         if ($node_name == 
"PageContent") {
    61             $child_node = $node->firstChild;
    62             $node_name = $child_node->nodeName;
    66         if ($node_name == 
"Table") {
    67             if ($child_node->getAttribute(
"DataTable") == 
"y") {
    68                 $tab = new \ilPCDataTable($page_object);
    70                 $tab = new \ilPCTable($page_object);
    72             $tab->setDomNode($node);
    73             $tab->setHierId($a_hier_id);
    74             $tab->setPcId($a_pc_id);
    75             $this->log->debug(
"return table.");
    80         if ($node_name == 
"MediaObject") {
    81             $mal_node = $child_node->firstChild;
    83             $id_arr = explode(
"_", $mal_node->getAttribute(
"OriginId"));
    84             $mob_id = (
int) $id_arr[count($id_arr) - 1];
    92             $mob = new \ilPCMediaObject($page_object);
    93             $mob->readMediaObject($mob_id);
    96             $mob->setDomNode($node);
    97             $mob->setHierId($a_hier_id);
    98             $mob->setPcId($a_pc_id);
    99             $this->log->debug(
"return media.");
   107         $pc_def = $this->pc_definition->getPCDefinitionByName($node_name);
   110         if (!is_array($pc_def)) {
   111             throw new \ilCOPageUnknownPCTypeException(
'Unknown PC Name "' . $node_name . 
'".');
   113         $pc_class = 
"ilPC" . $pc_def[
"name"];
   114         $pc_path = 
"./" . $pc_def[
"component"] . 
"/" . $pc_def[
"directory"] . 
"/class." . $pc_class . 
".php";
   116         $pc = 
new (
"\\" . $pc_class)($page_object);
   119             [
"PageContent", 
"TableData", 
"FileItem", 
"ListItem"]
   121             $this->log->debug(
"returning null.");
   124         $pc->setDomNode($node);
   125         $pc->setHierId($a_hier_id);
   126         $pc->setPcId($a_pc_id);
 PCDefinition $pc_definition
 
Content object of ilPageObject (see ILIAS DTD). 
 
__construct(PCDefinition $pc_definition)
 
Class ilPageObject Handles PageObjects of ILIAS Learning Modules (see ILIAS DTD) 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
getByNode(?\DOMNode $node, \ilPageObject $page_object)
 
Component logger with individual log levels by component id. 
 
static _lookupType(int $id, bool $reference=false)