29 switch ($this->ctrl()->getCmdClass()) {
38 $cmd = $this->ctrl()->getCmd();
40 case self::CMD_GET_POPOVER_CONTENT:
41 $this->getPopoverContent();
43 case self::CMD_USER_INTERACTION:
47 case self::CMD_REMOVE:
58 $observer_id = (int) $this->
http()->request()->getQueryParams()[self::OBSERVER_ID];
59 $selected_option = $this->
http()->request()->getQueryParams()[self::SELECTED_OPTION];
62 $observer = $this->dic()->backgroundTasks()->persistence()->loadBucket($observer_id);
64 $this->ctrl()->redirectToURL($from_url);
67 $this->dic()->backgroundTasks()->taskManager()->continueTask($observer, $option);
68 if ($this->
http()->request()->getQueryParams()[self::IS_ASYNC] ===
"true") {
71 $this->ctrl()->redirectToURL($from_url);
77 $observer_id = (int) $this->
http()->request()->getQueryParams()[self::OBSERVER_ID];
80 $bucket = $this->dic()->backgroundTasks()->persistence()->loadBucket($observer_id);
82 $this->dic()->backgroundTasks()->taskManager()->quitBucket($bucket);
83 if ($this->
http()->request()->getQueryParams()[self::IS_ASYNC] ===
"true") {
86 $this->ctrl()->redirectToURL($from_url);
90 protected function getPopoverContent()
93 $gui = $this->dic()->backgroundTasks()->injector()->createInstance(ilBTPopOverGUI::class);
94 $signal_id = $this->
http()->request()->getQueryParams()[self::REPLACE_SIGNAL];
97 ->setParameterByClass(ilBTControllerGUI::class, self::REPLACE_SIGNAL, $signal_id);
99 $replace_url = $this->ctrl()
100 ->getLinkTargetByClass([ ilBTControllerGUI::class ], self::CMD_GET_POPOVER_CONTENT,
"",
true);
102 echo $this->ui()->renderer()->renderAsync($gui->getPopOverContent($this->user()
103 ->getId(), $this->
getFromURL(), $replace_url));
113 $from_url = self::unhash($this->
http()->request()->getQueryParams()[self::FROM_URL]);
126 return base64_encode(
$url);
137 return base64_decode(
$url);
const CMD_GET_POPOVER_CONTENT
static http()
Fetches the global http state from ILIAS.
const CMD_GET_REPLACEMENT_ITEM
const CMD_USER_INTERACTION