ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilObjStudyProgrammeGUI.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 2015 Richard Klees <richard.klees@concepts-and-training.de> Extended GPL, see docs/LICENSE */
4 
5 require_once("./Services/Container/classes/class.ilContainerGUI.php");
6 require_once("./Services/AccessControl/classes/class.ilObjRole.php");
7 require_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
8 require_once("./Services/AccessControl/classes/class.ilPermissionGUI.php");
9 require_once("./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
10 require_once("./Services/Object/classes/class.ilObjectAddNewItemGUI.php");
11 require_once("./Modules/StudyProgramme/classes/class.ilObjStudyProgrammeTreeGUI.php");
12 require_once('./Services/Container/classes/class.ilContainerSortingSettings.php');
13 require_once("./Modules/StudyProgramme/classes/types/class.ilStudyProgrammeTypeGUI.php");
14 require_once("./Modules/StudyProgramme/classes/model/class.ilStudyProgrammeAdvancedMetadataRecord.php");
15 require_once("./Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php");
16 require_once("./Services/Object/classes/class.ilObjectCopyGUI.php");
17 require_once("./Services/Repository/classes/class.ilRepUtil.php");
18 
35 {
39  public $ctrl;
40 
44  public $tpl;
45 
49  public $tabs_gui;
50 
54  protected $ilAccess;
55 
59  protected $toolbar;
60 
64  protected $ilLocator;
65 
69  public $tree;
70 
74  public $object;
75 
79  protected $ilLog;
80 
84  public $ilias;
85 
89  protected $help;
90 
91 
92  public function __construct()
93  {
94  global $DIC;
95  $tpl = $DIC['tpl'];
96  $ilCtrl = $DIC['ilCtrl'];
97  $ilAccess = $DIC['ilAccess'];
98  $ilToolbar = $DIC['ilToolbar'];
99  $ilLocator = $DIC['ilLocator'];
100  $tree = $DIC['tree'];
101  $lng = $DIC['lng'];
102  $ilLog = $DIC['ilLog'];
103  $ilias = $DIC['ilias'];
104  $ilHelp = $DIC['ilHelp'];
105 
106  parent::__construct(array(), (int) $_GET['ref_id'], true, false);
107 
108  $this->tpl = $tpl;
109  $this->ctrl = $ilCtrl;
110  $this->ilAccess = $ilAccess;
111  $this->ilLocator = $ilLocator;
112  $this->tree = $tree;
113  $this->toolbar = $ilToolbar;
114  $this->ilLog = $ilLog;
115  $this->ilias = $ilias;
116  $this->type = "prg";
117  $this->help = $ilHelp;
118 
119  $lng->loadLanguageModule("prg");
120  }
121 
122 
123  public function executeCommand()
124  {
125  $cmd = $this->ctrl->getCmd();
126  $next_class = $this->ctrl->getNextClass($this);
127 
128  if ($cmd == "") {
129  $cmd = "view";
130  }
131 
132  $this->addToNavigationHistory();
133 
134  parent::prepareOutput();
135 
136  // show repository tree
137  $this->showRepTree();
138 
139  switch ($next_class) {
140  case "ilinfoscreengui":
141  $this->tabs_gui->setTabActive(self::TAB_INFO);
142  $this->denyAccessIfNotAnyOf(array("read", "visible"));
143  $info = new ilInfoScreenGUI($this);
144  $this->fillInfoScreen($info);
145  $this->ctrl->forwardCommand($info);
146 
147  // I guess this is how it was supposed to work, but it doesn't... it won't respect our sub-id and sub-type when creating the objects!
148  // So we reimplemented the stuff in the method parseInfoScreen()
149  // $info = new ilInfoScreenGUI($this);
150  // $amd_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_INFO, 'orgu', $this->object->getId(), 'orgu_type', $this->object->getOrgUnitTypeId());
151  // $amd_gui->setInfoObject($info);
152  // $amd_gui->setSelectedOnly(true);
153  // $amd_gui->parse();
154  // $this->ctrl->forwardCommand($info);
155  break;
156  case 'ilpermissiongui':
157  $this->tabs_gui->setTabActive('perm_settings');
158  $ilPermissionGUI = new ilPermissionGUI($this);
159  $this->ctrl->forwardCommand($ilPermissionGUI);
160  break;
161  case "ilcommonactiondispatchergui":
162  require_once("Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
164  $this->ctrl->forwardCommand($gui);
165  break;
166  case "ilobjstudyprogrammesettingsgui":
167  $this->denyAccessIfNot("write");
168 
169  $this->getSubTabs('settings');
170  $this->tabs_gui->setTabActive(self::TAB_SETTINGS);
171  $this->tabs_gui->setSubTabActive('settings');
172 
173  require_once("Modules/StudyProgramme/classes/class.ilObjStudyProgrammeSettingsGUI.php");
174  $gui = new ilObjStudyProgrammeSettingsGUI($this, $this->ref_id);
175  $this->ctrl->forwardCommand($gui);
176  break;
177  /*case 'iltranslationgui':
178  $this->denyAccessIfNot("write");
179 
180  $this->getSubTabs('settings');
181  $this->tabs_gui->setTabActive("settings");
182  $this->tabs_gui->setSubTabActive('edit_translations');
183 
184  $ilTranslationGui = new ilTranslationGUI($this);
185  $this->ctrl->forwardCommand($ilTranslationGui);
186  break;*/
187  case "ilobjstudyprogrammemembersgui":
188  $this->denyAccessIfNot("manage_members");
189  $this->tabs_gui->setTabActive(self::TAB_MEMBERS);
190  require_once("Modules/StudyProgramme/classes/class.ilObjStudyProgrammeMembersGUI.php");
192  $this->ctrl->forwardCommand($gui);
193  break;
194  case "ilobjstudyprogrammetreegui":
195  $this->denyAccessIfNot("write");
196 
197  $this->getSubTabs($cmd);
198  $this->setContentSubTabs();
199  $this->tabs_gui->setTabActive(self::TAB_VIEW_CONTENT);
200  $this->tabs_gui->setSubTabActive(self::SUBTAB_VIEW_TREE);
201 
202  // disable admin panel
203  $_SESSION["il_cont_admin_panel"] = false;
204 
205  $gui = new ilObjStudyProgrammeTreeGUI($this->id);
206  $this->ctrl->forwardCommand($gui);
207  break;
208  case 'ilstudyprogrammetypegui':
209  $this->tabs_gui->setTabActive('subtypes');
210 
211  $types_gui = new ilStudyProgrammeTypeGUI($this);
212  $this->ctrl->forwardCommand($types_gui);
213  break;
214  case 'ilobjectcopygui':
215  $gui = new ilobjectcopygui($this);
216  $this->ctrl->forwardCommand($gui);
217  break;
218  case false:
219  $this->getSubTabs($cmd);
220  switch ($cmd) {
221  case "cancelDelete":
222  $cmd = "view";
223  // no break
224  case "create":
225  case "save":
226  case "view":
227  case "cancel":
228  case "edit":
229  $this->$cmd();
230  break;
231  case "delete":
232  $this->tabs_gui->clearTargets();
233  $this->tabs_gui->setBackTarget($this->lng->txt("back"), $this->ctrl->getLinkTarget($this));
234  parent::deleteObject();
235  break;
236  case 'confirmedDelete':
237  parent::confirmedDeleteObject();
238  break;
239  case 'editAdvancedSettings':
240  $this->tabs_gui->setTabActive("settings");
241  $this->tabs_gui->setSubTabActive('edit_advanced_settings');
242  //$this->setSubTabsSettings('edit_advanced_settings');
243  $this->editAdvancedSettings();
244  break;
245  case 'updateAdvancedSettings':
246  $this->tabs_gui->setTabActive("settings");
247  $this->tabs_gui->setSubTabActive('edit_advanced_settings');
248  //$this->setSubTabsSettings('edit_advanced_settings');
249  $this->updateAdvancedSettings();
250  break;
251  case "infoScreen":
252  $this->ctrl->redirectByClass("ilInfoScreenGUI", "showSummary");
253  break;
254  case 'getAsynchItemList':
255  parent::getAsynchItemListObject();
256  break;
257  case 'trash':
258  case 'undelete':
259  case 'confirmRemoveFromSystem':
260  case 'removeFromSystem':
261  $cmd .= "Object";
262  $this->$cmd();
263  break;
264  /*case 'editSettings':
265  $this->tabs_gui->setTabActive("settings");
266  $this->setSubTabsSettings('edit_settings');
267  $this->editSettings();
268  break;
269  case '':
270  case 'view':
271  case 'render':
272  case 'cancel':
273  case 'cancelDelete':
274  $this->view();
275  break;
276  case 'create':
277 
278  parent::createObject();
279  break;
280  case 'save':
281  parent::saveObject();
282  break;
283  case 'delete':
284  $this->tabs_gui->clearTargets();
285  $this->tabs_gui->setBackTarget($this->lng->txt("back"), $this->ctrl->getLinkTarget($this));
286  parent::deleteObject();
287  break;
288  case 'confirmedDelete':
289  parent::confirmedDeleteObject();
290  break;
291  case 'cut':
292  $this->tabs_gui->clearTargets();
293  $this->tabs_gui->setBackTarget($this->lng->txt("back"), $this->ctrl->getLinkTarget($this));
294  parent::cutObject();
295  break;
296  case 'clear':
297  parent::clearObject();
298  break;
299  case 'enableAdministrationPanel':
300  parent::enableAdministrationPanelObject();
301  break;
302  case 'disableAdministrationPanel':
303  parent::disableAdministrationPanelObject();
304  break;
305  case 'editSettings':
306  $this->tabs_gui->setTabActive("settings");
307  $this->setSubTabsSettings('edit_settings');
308  $this->editSettings();
309  break;
310  case 'updateSettings':
311  $this->tabs_gui->setTabActive("settings");
312  $this->setSubTabsSettings('edit_settings');
313  $this->updateSettings();
314  break;
315  case 'editAdvancedSettings':
316  $this->tabs_gui->setTabActive("settings");
317  $this->setSubTabsSettings('edit_advanced_settings');
318  $this->editAdvancedSettings();
319  break;
320  case 'updateAdvancedSettings':
321  $this->tabs_gui->setTabActive("settings");
322  $this->setSubTabsSettings('edit_advanced_settings');
323  $this->updateAdvancedSettings();
324  break;*/
325  default:
326  throw new ilException("ilObjStudyProgrammeGUI: Command not supported: $cmd");
327  }
328  break;
329  default:
330  throw new ilException("ilObjStudyProgrammeGUI: Can't forward to next class $next_class");
331  }
332  }
333 
334 
338  protected function create()
339  {
340  parent::createObject();
341  }
342 
343 
349  protected function save()
350  {
351  parent::saveObject();
352 
353  if ($this->ctrl->isAsynch()) {
354  $form = $this->getAsyncCreationForm();
355  $form->setValuesByPost();
356  echo ilAsyncOutputHandler::encodeAsyncResponse(array("cmd" =>$this->ctrl->getCmd(), "success"=>false, "errors"=>$form->getErrors()));
357  exit();
358  }
359  }
360 
361 
367  protected function cancel()
368  {
369  $async_response = ilAsyncOutputHandler::encodeAsyncResponse(array("cmd" =>"cancel", "success"=>false));
370 
371  ilAsyncOutputHandler::handleAsyncOutput("", $async_response, false);
372 
373  parent::cancelCreation();
374  }
375 
376 
383  protected function afterSave(ilObject $a_new_object)
384  {
385  // set default sort to manual
386  $settings = new ilContainerSortingSettings($a_new_object->getId());
387  $settings->setSortMode(ilContainer::SORT_MANUAL);
388  $settings->setSortDirection(ilContainer::SORT_DIRECTION_ASC);
390  $settings->setSortNewItemsPosition(ilContainer::SORT_NEW_ITEMS_POSITION_BOTTOM);
391  $settings->save();
392 
393  $async_response = ilAsyncOutputHandler::encodeAsyncResponse(array("cmd" =>"cancel", "success"=>true, "message"=>$this->lng->txt("object_added")));
394 
395  ilAsyncOutputHandler::handleAsyncOutput("", $async_response, false);
396 
397  ilUtil::sendSuccess($this->lng->txt("object_added"), true);
398 
399  $this->ctrl->setParameter($this, "ref_id", $a_new_object->getRefId());
401  "save",
402  $this->ctrl->getLinkTarget($this, "edit", "", false, false)
403  ));
404  }
405 
406 
410  protected function view()
411  {
412  $this->denyAccessIfNot("read");
413  $this->tabs_gui->setTabActive(self::TAB_VIEW_CONTENT);
414 
415  parent::renderObject();
416  }
417 
423  protected function initAdvancedSettingsForm()
424  {
425  $form = new ilPropertyFormGUI();
426  $form->setFormAction($this->ctrl->getFormAction($this));
427  $form->addCommandButton('updateAdvancedSettings', $this->lng->txt('save'));
428  $form->addCommandButton('editAdvancedSettings', $this->lng->txt('cancel'));
429 
430  return $form;
431  }
432 
436  protected function editAdvancedSettings()
437  {
438  if (!$this->ilAccess->checkAccess("write", "", $this->ref_id)) {
439  ilUtil::sendFailure($this->lng->txt("permission_denied"), true);
440  $this->ctrl->redirect($this);
441  }
442  $form = $this->initAdvancedSettingsForm();
443  $gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_EDITOR, 'prg', $this->object->getId(), 'prg_type', $this->object->getSubtypeId());
444  $gui->setPropertyForm($form);
445  $gui->parse();
446  $this->tpl->setContent($form->getHTML());
447  }
448 
449 
453  protected function updateAdvancedSettings()
454  {
455  if (!$this->ilAccess->checkAccess("write", "", $this->ref_id)) {
456  ilUtil::sendFailure($this->lng->txt("permission_denied"), true);
457  $this->ctrl->redirect($this);
458  }
459 
460  $form = $this->initAdvancedSettingsForm();
461  $gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_EDITOR, 'prg', $this->object->getId(), 'prg_type', $this->object->getSubtypeId());
462  $gui->setPropertyForm($form);
463  $form->checkInput();
464  $gui->parse();
465  if ($gui->importEditFormPostValues()) {
466  $gui->writeEditForm();
467  ilUtil::sendSuccess($this->lng->txt('settings_saved'), true);
468  $this->ctrl->redirect($this, 'editAdvancedSettings');
469  } else {
470  $this->tpl->setContent($form->getHTML());
471  }
472  }
473 
474 
482  protected function initCreationForms($a_new_type)
483  {
484  return array( self::CFORM_NEW => $this->initCreateForm($a_new_type));
485  }
486 
487 
494  public function getAsyncCreationForm()
495  {
496  $asyncForm = new ilAsyncPropertyFormGUI();
497 
498  $tmp_forms = $this->initCreationForms('prg');
499  $asyncForm->cloneForm($tmp_forms[self::CFORM_NEW]);
500  $asyncForm->setAsync(true);
501 
502  return $asyncForm;
503  }
504 
506  // HELPERS
508 
509  protected function checkAccess($a_which)
510  {
511  return $this->ilAccess->checkAccess($a_which, "", $this->ref_id);
512  }
513 
514  protected function denyAccessIfNot($a_perm)
515  {
516  return $this->denyAccessIfNotAnyOf(array($a_perm));
517  }
518 
519  protected function denyAccessIfNotAnyOf($a_perms)
520  {
521  foreach ($a_perms as $perm) {
522  if ($this->checkAccess($perm)) {
523  return;
524  }
525  }
526 
527  if ($this->checkAccess("visible")) {
528  ilUtil::sendFailure($this->lng->txt("msg_no_perm_write"));
529  $this->ctrl->redirectByClass('ilinfoscreengui', '');
530  }
531 
532  $this->ilias->raiseError($this->lng->txt("msg_no_perm_read"), $this->ilias->error_obj->WARNING);
533  }
534 
535  const TAB_VIEW_CONTENT = "view_content";
536  const SUBTAB_VIEW_TREE = "view_tree";
537  const TAB_INFO = "info_short";
538  const TAB_SETTINGS = "settings";
539  const TAB_MEMBERS = "members";
540  const TAB_SUBTYPES = "subtypes";
541 
545  public function getTabs()
546  {
547  $this->help->setScreenIdComponent("prg");
548  if ($this->checkAccess("read")) {
549  $this->tabs_gui->addTab(self::TAB_VIEW_CONTENT, $this->lng->txt("content"), $this->getLinkTarget("view"));
550  }
551 
552  if ($this->checkAccess("read")) {
553  $this->tabs_gui->addTab(
554  self::TAB_INFO,
555  $this->lng->txt("info_short"),
556  $this->getLinkTarget("info_short")
557  );
558  }
559 
560  if ($this->checkAccess("write")) {
561  $this->tabs_gui->addTab(
562  self::TAB_SETTINGS,
563  $this->lng->txt("settings"),
564  $this->getLinkTarget("settings")
565  );
566  }
567 
568  if ($this->checkAccess("manage_members")) {
569  $this->tabs_gui->addTab(
570  self::TAB_MEMBERS,
571  $this->lng->txt("members"),
572  $this->getLinkTarget("members")
573  );
574  }
575  parent::getTabs();
576  }
577 
583  public function getSubTabs($a_parent_tab)
584  {
585  switch ($a_parent_tab) {
586  case self::TAB_VIEW_CONTENT:
587  case self::SUBTAB_VIEW_TREE:
588  case 'view':
589  if ($this->checkAccess("read")) {
590  $this->tabs_gui->addSubTab(self::TAB_VIEW_CONTENT, $this->lng->txt("view"), $this->getLinkTarget("view"));
591  }
592 
593  if ($this->checkAccess("write")) {
594  $this->tabs_gui->addSubTab(self::SUBTAB_VIEW_TREE, $this->lng->txt("cntr_manage"), $this->getLinkTarget(self::SUBTAB_VIEW_TREE));
595  }
596  break;
597  case 'settings':
598  case 'editAdvancedSettings':
599  $this->tabs_gui->addSubTab('settings', $this->lng->txt('settings'), $this->getLinkTarget('settings'));
600  //$this->tabs_gui->addSubTab("edit_translations", $this->lng->txt("obj_multilinguality"), $this->ctrl->getLinkTargetByClass("iltranslationgui", "editTranslations"));
601 
602  $type = ilStudyProgrammeType::find($this->object->getSubtypeId());
603 
604  if (!is_null($type) && count($type->getAssignedAdvancedMDRecords(true))) {
605  $this->tabs_gui->addSubTab('edit_advanced_settings', $this->lng->txt('prg_adv_settings'), $this->ctrl->getLinkTarget($this, 'editAdvancedSettings'));
606  }
607  break;
608  }
609  }
610 
611 
615  public function setContentSubTabs()
616  {
617  return;
618  }
619 
620 
628  protected function getLinkTarget($a_cmd)
629  {
630  if ($a_cmd == "info_short") {
631  return $this->ctrl->getLinkTargetByClass("ilinfoscreengui", "showSummary");
632  }
633  if ($a_cmd == "settings") {
634  return $this->ctrl->getLinkTargetByClass("ilobjstudyprogrammesettingsgui", "view");
635  }
636  if ($a_cmd == self::SUBTAB_VIEW_TREE) {
637  return $this->ctrl->getLinkTargetByClass("ilobjstudyprogrammetreegui", "view");
638  }
639  if ($a_cmd == "members") {
640  return $this->ctrl->getLinkTargetByClass("ilobjstudyprogrammemembersgui", "view");
641  }
642  if ($a_cmd == "subtypes") {
643  return $this->ctrl->getLinkTargetByClass("ilstudyprogrammetypegui", "listTypes");
644  }
645 
646  return $this->ctrl->getLinkTarget($this, $a_cmd);
647  }
648 
649 
655  protected function fillInfoScreen($a_info_screen)
656  {
657  require_once('./Services/AdvancedMetaData/classes/class.ilAdvancedMDValues.php');
658  require_once('./Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php');
659  require_once('Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
660  require_once('./Services/ADT/classes/class.ilADTFactory.php');
661 
662  $type = ilStudyProgrammeType::find($this->object->getSubtypeId());
663  if (!$type) {
664  return;
665  }
666 
667  $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_INFO, 'prg', $this->object->getId(), 'prg_type', $this->object->getSubtypeId());
668  $record_gui->setInfoObject($a_info_screen);
669  $record_gui->parse();
670  }
671 
672  protected function edit()
673  {
674  $this->denyAccessIfNot("write");
675 
676  $this->getSubTabs('settings');
677  $this->tabs_gui->setTabActive(self::TAB_SETTINGS);
678  $this->tabs_gui->setSubTabActive('settings');
679 
680  require_once("Modules/StudyProgramme/classes/class.ilObjStudyProgrammeSettingsGUI.php");
681  $gui = new ilObjStudyProgrammeSettingsGUI($this, $this->ref_id);
682  $this->ctrl->setCmd("view");
683  $this->ctrl->forwardCommand($gui);
684  }
685 
692  public static function _goto($a_target)
693  {
694  global $DIC;
695  $ilAccess = $DIC['ilAccess'];
696  $ilErr = $DIC['ilErr'];
697  $ilCtrl = $DIC['ilCtrl'];
698  $id = explode("_", $a_target);
699  $ilCtrl->setTargetScript("ilias.php");
700  $ilCtrl->initBaseClass("ilRepositoryGUI");
701  $ilCtrl->setParameterByClass("ilobjstudyprogrammegui", "ref_id", $id[0]);
702 
703  $ilCtrl->redirectByClass(array( "ilRepositoryGUI", "ilobjstudyprogrammegui" ), "view");
704  }
705 
706  public function addToNavigationHistory()
707  {
708  global $DIC;
709  $ilNavigationHistory = $DIC['ilNavigationHistory'];
710 
711  if (!$this->getCreationMode() &&
712  $this->ilAccess->checkAccess('read', '', $_GET['ref_id'])) {
713  $link = ilLink::_getLink($_GET["ref_id"], "iass");
714 
715  $ilNavigationHistory->addItem(
716  $_GET['ref_id'],
717  $link,
718  'prg'
719  );
720  }
721  }
722 }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
Class ilInfoScreenGUI.
Class ilObjStudyProgrammeGUI class.
$_SESSION["AccountId"]
This class represents a property form user interface.
$type
global $DIC
Definition: saml.php:7
setPropertyForm($form)
set property form object
$_GET["client_id"]
cancel()
Cancel the object generation.
if(!array_key_exists('StateId', $_REQUEST)) $id
logging
Definition: class.ilLog.php:18
Class ilAccessHandler.
static _getStudyProgrammeUserProgressDB()
Get an instance of ilStudyProgrammeUserProgressDB.
global $ilCtrl
Definition: ilias.php:18
Class ilStudyProgrammeTypeGUI.
static _goto($a_target)
_goto Deep link
getSubTabs($a_parent_tab)
Adds subtabs based on the parent tab.
const SORT_NEW_ITEMS_POSITION_BOTTOM
static encodeAsyncResponse(array $data=array())
Encode data as json for async output.
checkAccess($a_permission, $a_cmd, $a_ref_id, $a_type="", $a_obj_id="", $a_tree_id="")
check access for an object (provide $a_type and $a_obj_id if available for better performance)(option...
setInfoObject($info)
get info sections
if(isset($_POST['submit'])) $form
getId()
get object id public
getLinkTarget($a_cmd)
Generates a link based on a cmd.
getAsyncCreationForm()
Method for implementing async windows-output Should be moved into core to enable async requests on cr...
const SORT_NEW_ITEMS_ORDER_CREATION
editAdvancedSettings()
Edit Advanced Metadata.
getTabs()
Adds the default tabs to the gui.
redirection script todo: (a better solution should control the processing via a xml file) ...
updateAdvancedSettings()
Update Advanced Metadata.
Class ilObjStudyProgrammeMembersGUI.
initCreateForm($a_new_type)
Init object creation form.
Create styles array
The data for the language used.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
setContentSubTabs()
Disable default content subtabs.
Create new PHPExcel object
obj_idprivate
fillInfoScreen($a_info_screen)
Adding meta-data to the info-screen.
getCreationMode()
get creation mode
getRefId()
get reference id public
afterSave(ilObject $a_new_object)
After save hook Sets the sorting of the container correctly.
Class ilContainerGUI.
initCreationForms($a_new_type)
Overwritten from ilObjectGUI since copy and import are not implemented.
Class ilAsyncPropertyFormGUI.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
$info
Definition: index.php:5
initAdvancedSettingsForm()
Initialize the form for editing advanced meta data.
static redirect($a_script)
getReturnLocation($a_cmd, $a_location="")
get return location for command (command is method name without "Object", e.g.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Class ilObjStudyProgrammeSettingsGUI.
Class ilObjStudyProgrammeTreeGUI Generates the manage view for ilTrainingProgramme-Repository objects...
static handleAsyncOutput($normal_content, $async_content=null, $apply_to_tpl=true)
Handles async output.