37 $this->main_tpl->addJavaScript(
"./Services/COPage/js/ilCOPagePres.js");
38 $this->main_tpl->addJavaScript(
"./Services/COPage/js/ilCOPagePCInteractiveImage.js");
46 return "InteractiveImage";
53 return $lng->
txt(
"cont_pc_iim");
66 $ilToolbar->addText(
$lng->
txt(
"cont_drag_element_click_save"));
67 $ilToolbar->setId(
"drag_toolbar");
68 $ilToolbar->setHidden(
true);
69 $ilToolbar->addButton(
$lng->
txt(
"save"),
"#",
"",
null,
"",
"save_pos_button");
71 $ilToolbar->addButton(
73 $ilCtrl->getLinkTarget($this,
"editMapAreas")
82 return $image_map_table->getHTML();
92 $tb->setFormAction($ilCtrl->getFormAction($this));
94 "Rect" =>
$lng->
txt(
"cont_Rect"),
95 "Circle" =>
$lng->
txt(
"cont_Circle"),
96 "Poly" =>
$lng->
txt(
"cont_Poly"),
97 "Marker" =>
$lng->
txt(
"cont_marker")
100 $si->setOptions($options);
101 $tb->addInputItem($si,
true);
102 $tb->addFormButton(
$lng->
txt(
"add"),
"addNewArea");
112 if ($this->edit_request->getString(
"shape") ==
"Marker") {
113 $this->content_obj->addTriggerMarker();
114 $this->page->update();
115 $this->main_tpl->setOnScreenMessage(
'success',
$lng->
txt(
"cont_saved_map_data"),
true);
116 $ilCtrl->redirect($this,
"editMapAreas");
118 return parent::addNewArea();
127 string $a_edit_property
131 $form->setOpenTag(
false);
132 $form->setCloseTag(
false);
135 if ($a_edit_property !=
"link" && $a_edit_property !=
"shape") {
137 $ti->setMaxLength(200);
144 if ($a_edit_property ==
"") {
145 $form->setTitle(
$lng->
txt(
"cont_new_trigger_area"));
147 $form->setTitle(
$lng->
txt(
"cont_new_area"));
149 $form->addCommandButton(
"saveArea",
$lng->
txt(
"save"));
160 $ilCtrl = $this->ctrl;
162 switch ($this->map_repo->getMode()) {
165 $this->std_alias_item->setShape(
166 $this->map->getAreaNr(),
167 $this->map->getAreaType(),
168 $this->map->getCoords()
170 $this->page->update();
175 $area_type = $this->map->getAreaType();
176 $coords = $this->map->getCoords();
177 $this->content_obj->addTriggerArea(
178 $this->std_alias_item,
181 $this->edit_request->getString(
"area_name")
183 $this->page->update();
188 $this->main_tpl->setOnScreenMessage(
'success',
$lng->txt(
"cont_saved_map_area"),
true);
189 $ilCtrl->redirect($this,
"editMapAreas");
199 $ilCtrl = $this->ctrl;
201 $this->content_obj->setTriggerOverlays(
202 $this->edit_request->getStringArray(
"ov")
204 $this->content_obj->setTriggerPopups(
205 $this->edit_request->getStringArray(
"pop")
207 $this->content_obj->setTriggerOverlayPositions(
208 $this->edit_request->getStringArray(
"ovpos")
210 $this->content_obj->setTriggerMarkerPositions(
211 $this->edit_request->getStringArray(
"markpos")
213 $this->content_obj->setTriggerPopupPositions(
214 $this->edit_request->getStringArray(
"poppos")
216 $this->content_obj->setTriggerPopupSize(
217 $this->edit_request->getStringArray(
"popsize")
219 $this->content_obj->setTriggerTitles(
220 $this->edit_request->getStringArray(
"title")
222 $this->page->update();
223 $this->main_tpl->setOnScreenMessage(
'success',
$lng->txt(
"msg_obj_modified"),
true);
224 $ilCtrl->redirect($this,
"editMapAreas");
232 $ilCtrl = $this->ctrl;
233 $main_tpl = $this->main_tpl;
236 $trigger = $this->edit_request->getStringArray(
"tr");
237 $titles = $this->edit_request->getStringArray(
"title");
239 if (count($trigger) == 0) {
240 $this->main_tpl->setOnScreenMessage(
'failure',
$lng->txt(
"no_checkbox"),
true);
241 $ilCtrl->redirect($this,
"editMapAreas");
244 $cgui->setFormAction($ilCtrl->getFormAction($this));
245 $cgui->setHeaderText(
$lng->txt(
"cont_really_delete_triggers"));
246 $cgui->setCancel(
$lng->txt(
"cancel"),
"editMapAreas");
247 $cgui->setConfirm(
$lng->txt(
"delete"),
"deleteTrigger");
249 foreach ($trigger as
$i) {
250 $cgui->addItem(
"tr[]",
$i, $titles[
$i]);
252 $main_tpl->setContent($cgui->getHTML());
262 $ilCtrl = $this->ctrl;
265 $trigger = $this->edit_request->getStringArray(
"tr");
267 if (count($trigger) > 0) {
268 foreach ($trigger as $tr_nr) {
269 $this->content_obj->deleteTrigger($this->std_alias_item, $tr_nr);
271 $this->page->update();
272 $this->main_tpl->setOnScreenMessage(
'success',
$lng->txt(
"cont_areas_deleted"),
true);
275 $ilCtrl->redirect($this,
"editMapAreas");
283 return $this->page->getMultimediaXML();
290 $pg_gui =
new ilPageObjectGUI($this->page->getParentType(), $this->page->getId());
292 $pg_gui->getPageConfig()->setEnableSelfAssessment(
true);
294 $qhtml = $pg_gui->getQuestionHTML();
295 if (is_array($qhtml)) {
296 foreach ($qhtml as $k => $h) {
297 $a_output = str_replace($pg_gui->pl_start .
"Question;il__qst_$k" . $pg_gui->pl_end,
" " . $h, $a_output);
Page component editing request.
static addJavaScript(ilGlobalTemplate $main_tpl=null)
Add javascript files that are necessary to run accordion.
static addCss()
Add required css.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
ImageMapGUIRequest $request
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
User interface class for page content map editor.
initAreaEditingForm(string $a_edit_property)
Init area editing form.
deleteTrigger()
Delete trigger.
outputPostProcessing(string $a_output)
__construct(ilPCInteractiveImage $a_content_obj, ilPageObject $a_page, EditGUIRequest $request)
confirmDeleteTrigger()
Confirm trigger deletion.
updateTrigger()
Update trigger.
getImageMapTableHTML()
Get trigger table.
getAdditionalPageXML()
Get additional page xml (to be overwritten)
saveArea()
Save new or updated map area.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
User interface class for page content map editor.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Class ilPageObject Handles PageObjects of ILIAS Learning Modules (see ILIAS DTD)
This class represents a text property in a property form.
static initjQueryUI(ilGlobalTemplateInterface $a_tpl=null)
inits and adds the jQuery-UI JS-File to the global template (see included_components....
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc