5 require_once(
"./Services/COPage/classes/class.ilPageContent.php");
 
   51                 $this->iim_node = $a_node->first_child();
 
   52                 $this->med_alias_node = $this->iim_node->first_child();
 
   53                 if (is_object($this->med_alias_node) && $this->med_alias_node->myDOMNode != null)
 
   55                         $id = $this->med_alias_node->get_attribute(
"OriginId");
 
   62                 include_once(
"./Services/COPage/classes/class.ilMediaAliasItem.php");
 
   83                 $this->mediaobject = $a_mediaobject;
 
   93                 return $this->mediaobject;
 
  127                 return $this->std_alias_item;
 
  138                 return $this->
getMediaObject()->getMediaItem(
"Standard")->getThumbnailTarget();
 
  150                 $this->node =& $this->dom->create_element(
"PageContent");
 
  151                 $a_pg_obj->insertContent($this, $a_hier_id, 
IL_INSERT_AFTER, $a_pc_id);
 
  152                 $this->iim_node =& $this->dom->create_element(
"InteractiveImage");
 
  153                 $this->iim_node =& $this->node->append_child($this->iim_node);
 
  154                 $this->mal_node =& $this->dom->create_element(
"MediaAlias");
 
  155                 $this->mal_node =& $this->iim_node->append_child($this->mal_node);
 
  156                 $this->mal_node->set_attribute(
"OriginId", 
"il__mob_".$this->
getMediaObject()->getId());
 
  159                 $item_node =& $this->dom->create_element(
"MediaAliasItem");
 
  160                 $item_node =& $this->iim_node->append_child($item_node);
 
  161                 $item_node->set_attribute(
"Purpose", 
"Standard");
 
  164                 $layout_node =& $this->dom->create_element(
"Layout");
 
  165                 $layout_node =& $item_node->append_child($layout_node);
 
  166                 if ($media_item->getWidth() > 0)
 
  170                 if ($media_item->getHeight() > 0)
 
  174                 $layout_node->set_attribute(
"HorizontalAlign", 
"Left");
 
  177                 if ($media_item->getCaption() != 
"")
 
  179                         $cap_node =& $this->dom->create_element(
"Caption");
 
  180                         $cap_node =& $item_node->append_child($cap_node);
 
  181                         $cap_node->set_attribute(
"Align", 
"bottom");
 
  182                         $cap_node->set_content($media_item->getCaption());
 
  186                 if ($media_item->getTextRepresentation() != 
"")
 
  188                         $tr_node =& $this->dom->create_element(
"TextRepresentation");
 
  189                         $tr_node =& $item_node->append_child($tr_node);
 
  190                         $tr_node->set_content($media_item->getTextRepresentation());
 
  199                 $xml = $this->dom->dump_node($this->node);
 
  211 die(
"pcinteractiveimage: setstyleclass");
 
  212                 if (is_object($this->iim_node))
 
  214                         $mal_node = $this->iim_node->first_child();
 
  215                         if (is_object($mal_node))
 
  217                                 if (!empty($a_class))
 
  219                                         $mal_node->set_attribute(
"Class", $a_class);
 
  223                                         if ($mal_node->has_attribute(
"Class"))
 
  225                                                 $mal_node->remove_attribute(
"Class");
 
  239                 if (is_object($this->iim_node))
 
  241                         $mal_node = $this->iim_node->first_child();
 
  242                         if (is_object($mal_node))
 
  244                                 $class =  $mal_node->get_attribute(
"Class");
 
  265                 foreach ($popups as $p)
 
  267                         $max = max($max, (
int) $p[
"nr"]);
 
  270                 $new_item = $this->dom->create_element(
"ContentPopup");
 
  271                 $new_item->set_attribute(
"Title", $lng->txt(
"cont_new_popup"));
 
  272                 $new_item->set_attribute(
"Nr", $max + 1);
 
  273                 $new_item = $this->iim_node->append_child($new_item);
 
  282                 $childs = $this->iim_node->child_nodes();
 
  284                 for($i = 0; $i < count($childs); $i++)
 
  286                         if ($childs[$i]->node_name() == 
"ContentPopup")
 
  288                                 $pc_id = $childs[$i]->get_attribute(
"PCID");
 
  289                                 $hier_id = $childs[$i]->get_attribute(
"HierId");
 
  290                                 $title = $childs[$i]->get_attribute(
"Title");
 
  291                                 $nr = $childs[$i]->get_attribute(
"Nr");
 
  293                                 $titles[] = array(
"title" => 
$title, 
"nr" => $nr,
 
  294                                         "pc_id" => $pc_id, 
"hier_id" => 
$hier_id);
 
  306                 $childs = $this->iim_node->child_nodes();
 
  307                 for($i = 0; $i < count($childs); $i++)
 
  309                         if ($childs[$i]->node_name() == 
"ContentPopup")
 
  311                                 $pc_id = $childs[$i]->get_attribute(
"PCID");
 
  312                                 $hier_id = $childs[$i]->get_attribute(
"HierId");
 
  314                                 $childs[$i]->set_attribute(
"Title", $a_popups[$k]);
 
  325                 $childs = $this->iim_node->child_nodes();
 
  327                 for ($i=0; $i<count($childs); $i++)
 
  329                         if ($childs[$i]->node_name() == 
"ContentPopup")
 
  331                                 if ($a_pc_id == $childs[$i]->get_attribute(
"PCID") &&
 
  332                                         $a_hier_id == $childs[$i]->get_attribute(
"HierId"))
 
  334                                         $childs[$i]->unlink($childs[$i]);
 
  439                 foreach ($triggers as 
$t)
 
  441                         $max = max($max, (
int) $t[
"Nr"]);
 
  448                 $a_alias_item->addMapArea(
 
  449                         $a_shape_type, $a_coords,
 
  452                 $attributes = array(
"Type" => self::AREA,
 
  455                         "OverlayX" => 
"0", 
"OverlayY" => 
"0", 
"Overlay" => 
"", 
"PopupNr" => 
"",
 
  456                         "PopupX" => 
"0", 
"PopupY" => 
"0", 
"PopupWidth" => 
"150", 
"PopupHeight" => 
"200");
 
  458                         "Trigger", array(
"ContentPopup"), 
"", $attributes);
 
  470                 foreach ($triggers as 
$t)
 
  472                         $max = max($max, (
int) $t[
"Nr"]);
 
  475                 $attributes = array(
"Type" => self::MARKER,
 
  476                         "Title" => $lng->txt(
"cont_new_marker"),
 
  477                         "Nr" => $max + 1, 
"OverlayX" => 
"0", 
"OverlayY" => 
"0",
 
  478                         "MarkerX" => 
"0", 
"MarkerY" => 
"0", 
"PopupNr" => 
"",
 
  479                         "PopupX" => 
"0", 
"PopupY" => 
"0", 
"PopupWidth" => 
"150", 
"PopupHeight" => 
"200");
 
  481                         "Trigger", array(
"ContentPopup"), 
"", $attributes);
 
  492                         $path = 
"//PageContent[@PCID = '".$a_pc_id.
"']/InteractiveImage/Trigger";
 
  494                         if (count(
$res->nodeset) > 0)
 
  496                                 return $res->nodeset;
 
  502                 $path = 
"//PageContent[@HierId = '".$a_hier_id.
"']/InteractiveImage/Trigger";
 
  504                 if (count(
$res->nodeset) > 0)
 
  506                         return $res->nodeset;
 
  517                 $trigger_arr = array();
 
  518                 for($i=0; $i < count($tr_nodes); $i++)
 
  520                         $tr_node = $tr_nodes[$i];
 
  521                         $childs = $tr_node->child_nodes();
 
  522                         $trigger_arr[] = array(
 
  523                                 "Nr" => $tr_node->get_attribute(
"Nr"),
 
  524                                 "Type" => $tr_node->get_attribute(
"Type"),
 
  525                                 "Title" => $tr_node->get_attribute(
"Title"),
 
  526                                 "OverlayX" => $tr_node->get_attribute(
"OverlayX"),
 
  527                                 "OverlayY" => $tr_node->get_attribute(
"OverlayY"),
 
  528                                 "MarkerX" => $tr_node->get_attribute(
"MarkerX"),
 
  529                                 "MarkerY" => $tr_node->get_attribute(
"MarkerY"),
 
  530                                 "Overlay" => $tr_node->get_attribute(
"Overlay"),
 
  531                                 "PopupNr" => $tr_node->get_attribute(
"PopupNr"),
 
  532                                 "PopupX" => $tr_node->get_attribute(
"PopupX"),
 
  533                                 "PopupY" => $tr_node->get_attribute(
"PopupY"),
 
  534                                 "PopupWidth" => $tr_node->get_attribute(
"PopupWidth"),
 
  535                                 "PopupHeight" => $tr_node->get_attribute(
"PopupHeight")
 
  548                 $childs = $this->iim_node->child_nodes();
 
  550                 for ($i=0; $i<count($childs); $i++)
 
  552                         if ($childs[$i]->node_name() == 
"Trigger")
 
  554                                 if ($a_nr == $childs[$i]->get_attribute(
"Nr"))
 
  556                                         $childs[$i]->unlink($childs[$i]);
 
  560                 $a_alias_item->deleteMapAreaById($a_nr);
 
  572                 for($i=0; $i < count($tr_nodes); $i++)
 
  574                         $tr_node = $tr_nodes[$i];
 
  575                         if (isset($a_ovs[
"".$tr_node->get_attribute(
"Nr")]))
 
  577                                 $tr_node->set_attribute(
"Overlay",
 
  578                                         $a_ovs[
"".$tr_node->get_attribute(
"Nr")]);
 
  591                 for($i=0; $i < count($tr_nodes); $i++)
 
  593                         $tr_node = $tr_nodes[$i];
 
  594                         if (isset($a_pos[
"".$tr_node->get_attribute(
"Nr")]))
 
  596                                 $pos = explode(
",", $a_pos[
"".$tr_node->get_attribute(
"Nr")]);
 
  597                                 $tr_node->set_attribute(
"OverlayX", (
int) $pos[0]);
 
  598                                 $tr_node->set_attribute(
"OverlayY", (
int) $pos[1]);
 
  611                 for($i=0; $i < count($tr_nodes); $i++)
 
  613                         $tr_node = $tr_nodes[$i];
 
  616                                 if (isset($a_pos[
"".$tr_node->get_attribute(
"Nr")]))
 
  618                                         $pos = explode(
",", $a_pos[
"".$tr_node->get_attribute(
"Nr")]);
 
  619                                         $tr_node->set_attribute(
"MarkerX", (
int) $pos[0]);
 
  620                                         $tr_node->set_attribute(
"MarkerY", (
int) $pos[1]);
 
  634                 for($i=0; $i < count($tr_nodes); $i++)
 
  636                         $tr_node = $tr_nodes[$i];
 
  637                         if (isset($a_pos[
"".$tr_node->get_attribute(
"Nr")]))
 
  639                                 $pos = explode(
",", $a_pos[
"".$tr_node->get_attribute(
"Nr")]);
 
  640                                 $tr_node->set_attribute(
"PopupX", (
int) $pos[0]);
 
  641                                 $tr_node->set_attribute(
"PopupY", (
int) $pos[1]);
 
  654                 for($i=0; $i < count($tr_nodes); $i++)
 
  656                         $tr_node = $tr_nodes[$i];
 
  657                         if (isset($a_size[
"".$tr_node->get_attribute(
"Nr")]))
 
  659                                 $size = explode(
",", $a_size[
"".$tr_node->get_attribute(
"Nr")]);
 
  660                                 $tr_node->set_attribute(
"PopupWidth", (
int) 
$size[0]);
 
  661                                 $tr_node->set_attribute(
"PopupHeight", (
int) $size[1]);
 
  674                 for($i=0; $i < count($tr_nodes); $i++)
 
  676                         $tr_node = $tr_nodes[$i];
 
  677                         if (isset($a_pops[
"".$tr_node->get_attribute(
"Nr")]))
 
  679                                 $pop = $a_pops[
"".$tr_node->get_attribute(
"Nr")];
 
  680                                 $tr_node->set_attribute(
"PopupNr", $pop);
 
  693                 for($i=0; $i < count($tr_nodes); $i++)
 
  695                         $tr_node = $tr_nodes[$i];
 
  696                         if (isset($a_titles[
"".$tr_node->get_attribute(
"Nr")]))
 
  698                                 $tr_node->set_attribute(
"Title",
 
  699                                         $a_titles[
"".$tr_node->get_attribute(
"Nr")]);
 
  701                                         $a_titles[
"".$tr_node->get_attribute(
"Nr")]);
 
  714                 if ($this->getPcId() != 
"")
 
  717                         $path = 
"//PageContent[@PCID = '".$this->getPcId().
"']/InteractiveImage/MediaAliasItem/MapArea[@Id='".$a_nr.
"']/ExtLink";
 
  719                         if (count(
$res->nodeset) > 0)
 
  721                                 $res->nodeset[0]->set_content($a_title);
 
  727                 $path = 
"//PageContent[@HierId = '".$this->hier_id.
"']/InteractiveImage/MediaAliasItem/MapArea[@Id='".$a_nr.
"']/ExtLink";
 
  729                 if (count(
$res->nodeset) > 0)
 
  731                         $res->nodeset[0]->set_content($a_title);