ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler Class Reference
+ Inheritance diagram for ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler:
+ Collaboration diagram for ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler:

Public Member Functions

 __construct (\ilPageObjectGUI $page_gui)
 
 handle (array $query, array $body)
 

Protected Member Functions

 insertCommand (array $body)
 
 getStandardResponse ($updated, \ilPCInteractiveImage $pc)
 
 deleteOverlay (string $pc_id, array $body)
 
 getPCInteractiveImage (string $pc_id)
 
 getPCInteractiveImageGUI (string $pc_id)
 
 savePopup (string $pc_id, array $body)
 
 deletePopup (string $pc_id, array $body)
 
 deleteTrigger (string $pc_id, array $body)
 

Protected Attributes

ILIAS DI UIServices $ui
 
ilLanguage $lng
 
ilPageObjectGUI $page_gui
 
ilObjUser $user
 
Server UIWrapper $ui_wrapper
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::__construct ( \ilPageObjectGUI  $page_gui)

Definition at line 37 of file class.InteractiveImageCommandActionHandler.php.

38 {
39 global $DIC;
40
41 $this->ui = $DIC->ui();
42 $this->lng = $DIC->language();
43 $this->page_gui = $page_gui;
44 $this->user = $DIC->user();
45
46 $this->ui_wrapper = new Server\UIWrapper($this->ui, $this->lng);
47 }
global $DIC
Definition: shib_login.php:26

References $DIC, ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\$page_gui, ILIAS\Repository\lng(), ILIAS\Repository\ui(), and ILIAS\Repository\user().

+ Here is the call graph for this function:

Member Function Documentation

◆ deleteOverlay()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::deleteOverlay ( string  $pc_id,
array  $body 
)
protected

Definition at line 190 of file class.InteractiveImageCommandActionHandler.php.

190 : Server\Response
191 {
192 $page = $this->page_gui->getPageObject();
193 $pc = $this->getPCInteractiveImage($pc_id);
194 $pc->deleteOverlay($body["data"]["overlay"]);
195 $updated = $page->update();
196
197 return $this->getStandardResponse($updated, $pc);
198 }

References ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getPCInteractiveImage(), and ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getStandardResponse().

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\handle().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deletePopup()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::deletePopup ( string  $pc_id,
array  $body 
)
protected

Definition at line 234 of file class.InteractiveImageCommandActionHandler.php.

234 : Server\Response
235 {
236 $page = $this->page_gui->getPageObject();
237 $pc = $this->getPCInteractiveImage($pc_id);
238 $pc->deletePopupByNr($body["data"]["nr"]);
239 $updated = $page->update();
240
241 return $this->getStandardResponse($updated, $pc);
242 }

References ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getPCInteractiveImage(), and ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getStandardResponse().

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\handle().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deleteTrigger()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::deleteTrigger ( string  $pc_id,
array  $body 
)
protected

Definition at line 244 of file class.InteractiveImageCommandActionHandler.php.

244 : Server\Response
245 {
246 $page = $this->page_gui->getPageObject();
247 $pc = $this->getPCInteractiveImage($pc_id);
248 $std_alias_item = $pc->getStandardAliasItem();
249 $pc->deleteTrigger($std_alias_item, (int) $body["data"]["nr"]);
250 $updated = $page->update();
251 return $this->getStandardResponse($updated, $pc);
252 }

References ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getPCInteractiveImage(), and ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getStandardResponse().

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\handle().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPCInteractiveImage()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::getPCInteractiveImage ( string  $pc_id)
protected

Definition at line 200 of file class.InteractiveImageCommandActionHandler.php.

201 {
202 $pg = $this->page_gui->getPageObject();
203 return $this->page_gui->getPageObject()->getContentObjectForPcId($pc_id);
204 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deleteOverlay(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deletePopup(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deleteTrigger(), and ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\savePopup().

+ Here is the caller graph for this function:

◆ getPCInteractiveImageGUI()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::getPCInteractiveImageGUI ( string  $pc_id)
protected

Definition at line 206 of file class.InteractiveImageCommandActionHandler.php.

207 {
208 $pg = $this->page_gui->getPageObject();
209 $iim = $this->page_gui->getPageObject()->getContentObjectForPcId($pc_id);
210 $iim_gui = new \ilPCInteractiveImageGUI($pg, $iim, "", $pc_id);
211 $iim_gui->setPageConfig($pg->getPageConfig());
212 return $iim_gui;
213 }
User interface class for interactive images.

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\savePopup().

+ Here is the caller graph for this function:

◆ getStandardResponse()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::getStandardResponse (   $updated,
\ilPCInteractiveImage  $pc 
)
protected

Definition at line 159 of file class.InteractiveImageCommandActionHandler.php.

159 : Server\Response
160 {
161 $error = false;
162 if ($updated !== true) {
163 if (is_array($updated)) {
164 $error = implode("<br />", $updated);
165 } elseif (is_string($updated)) {
166 $error = $updated;
167 } else {
168 $error = print_r($updated, true);
169 }
170 }
171
172 $data = new \stdClass();
173 $data->error = $error;
174 $data->model = $pc->getIIMModel();
175 $data->backgroundImage = $pc->getBackgroundImage();
176 return new Server\Response($data);
177 }
ilErrorHandling $error
Definition: class.ilias.php:69

References $data, ILIAS\$error, ilPCInteractiveImage\getBackgroundImage(), and ilPCInteractiveImage\getIIMModel().

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deleteOverlay(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deletePopup(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deleteTrigger(), and ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\savePopup().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ handle()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::handle ( array  $query,
array  $body 
)

Definition at line 49 of file class.InteractiveImageCommandActionHandler.php.

49 : Server\Response
50 {
51 switch ($body["action"]) {
52 case "insert":
53 return $this->insertCommand($body);
54
55 case "save.trigger.properties":
56 return $this->saveTriggerProperties($query['pc_id'], $body);
57
58 case "save.trigger.overlay":
59 return $this->saveTriggerOverlay($query['pc_id'], $body);
60
61 case "save.trigger.popup":
62 return $this->saveTriggerPopup($query['pc_id'], $body);
63
64 case "upload.overlay":
65 return $this->uploadOverlay($query['pc_id'], $body);
66
67 case "delete.overlay":
68 return $this->deleteOverlay($query['pc_id'], $body);
69
70 case "save.popup":
71 return $this->savePopup($query['pc_id'], $body);
72
73 case "delete.popup":
74 return $this->deletePopup($query['pc_id'], $body);
75
76 case "delete.trigger":
77 return $this->deleteTrigger($query['pc_id'], $body);
78
79 case "save.settings":
80 return $this->saveSettings($query['pc_id'], $body);
81
82 default:
83 throw new Exception("Unknown action " . $body["action"]);
84 }
85 }

References ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deleteOverlay(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deletePopup(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\deleteTrigger(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\insertCommand(), and ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\savePopup().

+ Here is the call graph for this function:

◆ insertCommand()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::insertCommand ( array  $body)
protected

Definition at line 87 of file class.InteractiveImageCommandActionHandler.php.

87 : Server\Response
88 {
89 $page = $this->page_gui->getPageObject();
90
91 $hier_id = "pg";
92 $pc_id = "";
93 if (!in_array($body["after_pcid"], ["", "pg"])) {
94 $hier_ids = $page->getHierIdsForPCIds([$body["after_pcid"]]);
95 $hier_id = $hier_ids[$body["after_pcid"]];
96 $pc_id = $body["after_pcid"];
97 }
98
99 $iim = new \ilPCInteractiveImage($page);
100 $iim->create();
101 $iim_gui = new \ilPCInteractiveImageGUI($page, $iim, "", "");
102 $iim_gui->setPageConfig($page->getPageConfig());
103 $form = $iim_gui->getImportFormAdapter();
104 if ($form->isValid()) {
105 $iim->createFromMobId(
106 $page,
107 (int) $form->getData("input_file"),
108 $hier_id,
109 $pc_id
110 );
111 if (($body["pcid"] ?? "") !== "") {
112 $iim->writePCId($body["pcid"]);
113 }
114 $updated = $page->update();
115 return $this->ui_wrapper->sendPage($this->page_gui, $updated);
116 } else {
117 $html = $this->ui_wrapper->getRenderedAdapterForm(
118 $form,
119 [["Page", "component.save", $this->lng->txt("insert")],
120 ["Page", "component.cancel", $this->lng->txt("cancel")]
121 ]
122 );
123 return $this->ui_wrapper->sendFormError($html);
124 }
125 }

References ILIAS\Repository\lng().

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\handle().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ savePopup()

ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::savePopup ( string  $pc_id,
array  $body 
)
protected

Definition at line 215 of file class.InteractiveImageCommandActionHandler.php.

215 : Server\Response
216 {
217 $page = $this->page_gui->getPageObject();
218 $form_adapter = $this->getPCInteractiveImageGUI($pc_id)
219 ->getPopupFormAdapter();
220 $pc = $this->getPCInteractiveImage($pc_id);
221 if ($form_adapter->isValid()) {
222 $title = $form_adapter->getData("title");
223 if ($body['nr'] == "") {
224 $pc->addContentPopup($title);
225 } else {
226 $pc->saveContentPopupTitle($body['nr'], $title);
227 }
228 }
229 $updated = $page->update();
230
231 return $this->getStandardResponse($updated, $pc);
232 }

References ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getPCInteractiveImage(), ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getPCInteractiveImageGUI(), and ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\getStandardResponse().

Referenced by ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler\handle().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $lng

ilLanguage ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::$lng
protected

◆ $page_gui

ilPageObjectGUI ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::$page_gui
protected

◆ $ui

ILIAS DI UIServices ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::$ui
protected

◆ $ui_wrapper

Server UIWrapper ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::$ui_wrapper
protected

◆ $user

ilObjUser ILIAS\COPage\PC\InteractiveImage\InteractiveImageCommandActionHandler::$user
protected

The documentation for this class was generated from the following file: