219 : string
220 {
223 $this->log->debug("begin =========================");
224 $ctype = "";
225 $ret = "";
226
227 $cmd = $this->
ctrl->getCmd(
"displayPage");
230 $this->page->buildDom();
231 $this->page->addHierIDs();
232
233 $next_class = $this->
ctrl->getNextClass($this);
235 if ($has_requested_component) {
237 }
241 }
242
243 if ($pc_id != "" && $hier_id == "") {
244 $hier_id = $this->page->getHierIdForPcId($pc_id);
245 }
247 $this->tpl->setTitle($this->
getHeader());
248 }
249
251
252 $this->
ctrl->setParameter($this,
"hier_id", $hier_id);
253 $this->
ctrl->setParameter($this,
"pc_id", $pc_id);
254 if ($has_requested_component) {
255 $this->
ctrl->setParameter($this,
"ctype", $ctype);
256 }
257
259 $this->log->debug("returnToParent due to mismatching content object GUI");
260 $ilCtrl->returnToParent($this);
261 }
262 $this->log->debug("step NC2: next_class: $next_class");
263
264
265
266 if ($cmd == "displayPage" && $next_class !== "ilpcmediaobjectgui" &&
267 $this->request->getString("editImagemapForward_x") == ""
268 && $this->request->getString("imagemap_x") == "") {
269 $next_class = "";
270 }
271
272 switch ($next_class) {
273 case "ilinternallinkgui":
275 $this->page_gui->getPageConfig()->getIntLinkHelpDefaultType(),
276 $this->page_gui->getPageConfig()->getIntLinkHelpDefaultId(),
277 $this->page_gui->getPageConfig()->getIntLinkHelpDefaultIdIsRef()
278 );
279 $link_gui->setFilterWhiteList(
280 $this->page_gui->getPageConfig()->getIntLinkFilterWhiteList()
281 );
282 foreach ($this->page_gui->getPageConfig()->getIntLinkFilters() as $filter) {
283 $link_gui->filterLinkType($filter);
284 }
285 $link_gui->setReturn($this->int_link_return);
286
287 $ret = $this->
ctrl->forwardCommand($link_gui);
288 break;
289
290
291 case "ilpcmediaobjectgui":
292 $this->tabs_gui->clearTargets();
293 $this->tabs_gui->setBackTarget(
294 $this->page_gui->page_back_title,
295 $ilCtrl->getLinkTarget($this->page_gui, "edit")
296 );
298 $pcmob_gui->setStyleId($this->page_gui->getStyleId());
299 $pcmob_gui->setSubCmd($ctype);
300 $pcmob_gui->setEnabledMapAreas($this->page_gui->getPageConfig()->getEnableInternalLinks());
301 $ret = $this->
ctrl->forwardCommand($pcmob_gui);
302 $ilHelp->setScreenIdComponent("copg_media");
303 break;
304
305
306 case "ilobjmediaobjectgui":
307 $this->tabs_gui->clearTargets();
308 $this->tabs_gui->setBackTarget(
309 $this->
lng->txt(
"back"),
310 (string) $ilCtrl->getParentReturn($this)
311 );
313 $mob_gui->getTabs();
314 $mob_gui->setEnabledMapAreas($this->page_gui->getPageConfig()->getEnableInternalLinks());
315 $this->tpl->setTitle($this->
lng->txt(
"mob") .
": " .
317 $ret = $this->
ctrl->forwardCommand($mob_gui);
318 break;
319
320
321 case "ilpcquestiongui":
323 $pc_question_gui->setSelfAssessmentMode($this->page_gui->getPageConfig()->getEnableSelfAssessment());
324 $pc_question_gui->setPageConfig($this->page_gui->getPageConfig());
325
326 if ($this->page_gui->getPageConfig()->getEnableSelfAssessment()) {
327 $this->tabs_gui->clearTargets();
328 $ilHelp->setScreenIdComponent("copg_pcqst");
329 $this->tabs_gui->setBackTarget(
330 $this->
lng->txt(
"back"),
331 (string) $ilCtrl->getParentReturn($this)
332 );
333 $ret = $this->
ctrl->forwardCommand($pc_question_gui);
334 } else {
335 $cmd = $this->
ctrl->getCmd();
336 $pc_question_gui->$cmd();
337 $this->
ctrl->redirectByClass(array(
"ilobjquestionpoolgui", get_class(
$cont_obj)),
"editQuestion");
338 }
339 break;
340
341
342 case "ilpcpluggedgui":
343 $this->tabs_gui->clearTargets();
345 $this->page,
347 $hier_id,
348 $this->request->getString("pluginName"),
349 $pc_id
350 );
351 $ret = $this->
ctrl->forwardCommand($plugged_gui);
352 break;
353
354 case "ilpageeditorserveradaptergui":
356 $this->page_gui,
359 $this->http_request
360 );
361 $this->
ctrl->forwardCommand($adapter);
362 break;
363
364 default:
365
366
367 if ($this->pc_definition->isPCGUIClassName($next_class, true)) {
368 $this->log->debug("Generic Call");
369 $pc_def = $this->pc_definition->getPCDefinitionByGUIClassName($next_class);
370 $this->tabs_gui->clearTargets();
371 $this->tabs_gui->setBackTarget(
372 $this->page_gui->page_back_title,
373 $ilCtrl->getLinkTarget($this->page_gui, "edit")
374 );
375 $ilHelp->setScreenIdComponent("copg_" . $pc_def["pc_type"]);
376 $gui_class_name = $pc_def["pc_gui_class"];
377 $pc_gui =
new $gui_class_name($this->page,
$cont_obj, $hier_id, $pc_id);
378 if ($pc_def["style_classes"]) {
379 $pc_gui->setStyleId($this->page_gui->getStyleId());
380 }
381 $pc_gui->setPageConfig($this->page_gui->getPageConfig());
382 $ret = $this->
ctrl->forwardCommand($pc_gui);
383 } else {
384 $ret = $this->$cmd();
385 }
386 break;
387 }
388
389 $this->log->debug("end --------------------");
390
391 return (string) $ret;
392 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
resolveRequestedComponentTarget()
isMatchingContentObjectGUI(string $next_class, string $ctype)
getContentObjectForTarget(string $next_class, string $cmd, string $hier_id, string $pc_id)
resolveHierId(string $next_class)
Adapter for JSON frontend.