ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
ilObjStudyProgrammeGUI Class Reference

Class ilObjStudyProgrammeGUI class. More...

+ Inheritance diagram for ilObjStudyProgrammeGUI:
+ Collaboration diagram for ilObjStudyProgrammeGUI:

Public Member Functions

 __construct ()
 
 executeCommand ()
 
 isActiveAdministrationPanel ()
 
 getAsyncCreationForm ()
 Method for implementing async windows-output Should be moved into core to enable async requests on creation-form. More...
 
 getTabs ()
 
 getSubTabs ($a_parent_tab)
 Adds subtabs based on the parent tab. More...
 
 setContentSubTabs ()
 Disable default content subtabs. More...
 
 addToNavigationHistory ()
 
- Public Member Functions inherited from ilContainerGUI
 __construct ($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
 Constructor public. More...
 
 executeCommand ()
 execute command note: this method is overwritten in all container objects More...
 
 forwardToStyleSheet ()
 Forward to style object. More...
 
forwardToPageObject ()
 forward command to page object More...
 
 addPageTabs ()
 Add page tabs. More...
 
 getContainerPageHTML ()
 Get container page HTML. More...
 
 prepareOutput ($a_show_subobjects=true)
 prepare output More...
 
 showTreeFlatIcon ()
 
 setTitleAndDescription ()
 called by prepare output More...
 
 showPossibleSubObjects ()
 show possible sub objects selection list More...
 
 getContentGUI ()
 Get content gui object. More...
 
 renderObject ()
 render the object More...
 
 renderBlockAsynchObject ()
 render the object More...
 
 setContentSubTabs ()
 Set content sub tabs. More...
 
 showAdministrationPanel ()
 show administration panel More...
 
 __showTimingsButton (&$tpl)
 
 showPermanentLink ()
 show permanent link More...
 
 switchToStdEditorObject ()
 Switch to standard page editor. More...
 
 switchToOldEditorObject ()
 Switch to old page editor. More...
 
 useNewEditorObject ()
 Use new editor (-> delete xhtml content page) More...
 
 editPageFrameObject ()
 show page editor frameset More...
 
 editPageContentObject ()
 edit page content (for repository root node and categories) More...
 
 savePageContentObject ()
 
 cancelPageContentObject ()
 
 showLinkListObject ()
 
 clearAdminCommandsDetermination ()
 cleaer administration commands determination More...
 
newBlockTemplate ()
 determin admin commands More...
 
 addHeaderRow (&$a_tpl, $a_type, $a_show_image=true)
 adds a header row to a block template More...
 
 addMessageRow (&$a_tpl, $a_message, $a_type)
 add message row More...
 
 resetRowType ()
 
 setPageEditorTabs ()
 Add page editor tabs. More...
 
 addStandardContainerSubTabs ($a_include_view=true)
 Add standar container subtabs for view, manage, oderdering and text/media editor link. More...
 
 getTabs ()
 common tabs for all container objects (should be called at the end of child getTabs() method More...
 
 enableAdministrationPanelObject ()
 enable administration panel More...
 
 disableAdministrationPanelObject ()
 enable administration panel More...
 
 editOrderObject ()
 Edit order. More...
 
 isActiveOrdering ()
 Check if ordering is enabled. More...
 
 isActiveItemOrdering ()
 Check if item ordering is enabled. More...
 
 enableMultiDownloadObject ()
 
 isMultiDownloadEnabled ()
 
 cutObject ()
 cut object(s) out from a container and write the information to clipboard More...
 
 copyObject ()
 Copy object(s) out from a container and write the information to clipboard It is not possible to copy multiple objects at once. More...
 
 downloadObject ()
 
 getBucketTitle ()
 get proper label to add in the background task popover More...
 
 linkObject ()
 create an new reference of an object in tree it's like a hard link of unix More...
 
 clearObject ()
 clear clipboard and go back to last object More...
 
 performPasteIntoMultipleObjectsObject ()
 
 initAndDisplayLinkIntoMultipleObjectsObject ()
 
 showPasteTreeObject ()
 Show paste tree. More...
 
 cancelMoveLinkObject ()
 Cancel move|link empty clipboard and return to parent. More...
 
 keepObjectsInClipboardObject ()
 Keep objects in the clipboard. More...
 
 initAndDisplayCopyIntoMultipleObjectsObject ()
 
 initAndDisplayMoveIntoObjectObject ()
 
 pasteObject ()
 paste object from clipboard to current place Depending on the chosen command the object(s) are linked, copied or moved More...
 
 clipboardObject ()
 show clipboard More...
 
 isActiveAdministrationPanel ()
 
 setColumnSettings (ilColumnGUI $column_gui)
 May be overwritten in subclasses. More...
 
 allowBlocksMoving ()
 Standard is to allow blocks moving. More...
 
 allowBlocksConfigure ()
 Standard is to allow blocks configuration. More...
 
 cloneWizardPageTreeObject ()
 public More...
 
 cloneWizardPageListObject ()
 public More...
 
 cloneWizardPageObject ($a_tree_view=true)
 Show clone wizard page for container objects. More...
 
 cloneAllObject ()
 Clone all object Overwritten method for copying container objects. More...
 
 saveSortingObject ()
 Save Sorting. More...
 
 cloneNodes ($srcRef, $dstRef, &$mapping, $newName=null)
 Recursively clones all nodes of the RBAC tree. More...
 
 modifyItemGUI ($a_item_list_gui, $a_item_data, $a_show_path)
 Modify list gui for presentation in container. More...
 
 editStylePropertiesObject ()
 Edit style properties. More...
 
 initStylePropertiesForm ()
 Init style properties form. More...
 
 createStyleObject ()
 Create Style. More...
 
 editStyleObject ()
 Edit Style. More...
 
 deleteStyleObject ()
 Delete Style. More...
 
 saveStyleSettingsObject ()
 Save style settings. More...
 
 getAsynchItemListObject ()
 Get item list command drop down asynchronously. More...
 
 redrawListItemObject ()
 Redraw a list item (ajax) More...
 
 trashObject ()
 Show trash content of object. More...
 
 trashApplyFilterObject ()
 trash table apply filter More...
 
 trashResetFilterObject ()
 trash table reset filter More...
 
 removeFromSystemObject ()
 remove objects from trash bin and all entries therefore every object needs a specific deleteObject() method More...
 
 undeleteObject ()
 Get objects back from trash. More...
 
 confirmRemoveFromSystemObject ()
 confirmation screen remove from system More...
 
 setSideColumnReturn ()
 Set return point for side column actions. More...
 
 getAdminTabs ()
 
 competencesObject ()
 Redirect to competences. More...
 
- Public Member Functions inherited from ilObjectGUI
 executeCommand ()
 execute command More...
 
 withReferences ()
 determines wether objects are referenced or not (got ref ids or not) More...
 
 setCreationMode ($a_mode=true)
 if true, a creation screen is displayed the current $_GET[ref_id] don't belong to the current class! the mode is determined in ilrepositorygui More...
 
 getCreationMode ()
 get creation mode More...
 
 prepareOutput ($a_show_subobjects=true)
 prepare output More...
 
 getAdminTabs ()
 administration tabs show only permissions and trash folder More...
 
 getHTML ()
 
 confirmedDeleteObject ()
 confirmed deletion of object -> objects are moved to trash or deleted immediately, if trash is disabled More...
 
 cancelDeleteObject ()
 cancel deletion of object More...
 
 cancelObject ()
 cancel action and go back to previous page public More...
 
 createObject ()
 create new object form More...
 
 cancelCreation ()
 cancel create action and go back to repository parent More...
 
 saveObject ()
 save object More...
 
 getDidacticTemplateVar ($a_type)
 Get didactic template setting from creation screen. More...
 
 putObjectInTree (ilObject $a_obj, $a_parent_node_id=null)
 Add object to tree at given position. More...
 
 editObject ()
 edit object More...
 
 addExternalEditFormCustom (ilPropertyFormGUI $a_form)
 
 updateObject ()
 updates object entry in object_data More...
 
 getFormAction ($a_cmd, $a_formaction="")
 get form action for command (command is method name without "Object", e.g. More...
 
 isVisible ($a_ref_id, $a_type)
 
 viewObject ()
 viewObject container presentation for "administration -> repository, trash, permissions" More...
 
 deleteObject ($a_error=false)
 Display deletion confirmation screen. More...
 
 cloneAllObject ()
 Clone single (not container object) Method is overwritten in ilContainerGUI. More...
 
 redirectAfterCreation ()
 Redirect after creation, see https://docu.ilias.de/goto_docu_wiki_wpage_5035_1357.html. More...
 
 addToDeskObject ()
 
 removeFromDeskObject ()
 
- Public Member Functions inherited from ILIAS\Object\ImplementsCreationCallback
 callCreationCallback (\ilObject $object, \ilObjectDefinition $obj_definition, int $requested_crtcb)
 
- Public Member Functions inherited from ilDesktopItemHandling
 addToDeskObject ()
 Add desktop item public. More...
 
 removeFromDeskObject ()
 Remove from desktop public. More...
 

Static Public Member Functions

static _goto ($a_target)
 _goto Deep link More...
 
- Static Public Member Functions inherited from ilContainerGUI
static _buildPath ($a_ref_id, $a_course_ref_id)
 build path More...
 
- Static Public Member Functions inherited from ilObjectGUI
static _gotoRepositoryRoot ($a_raise_error=false)
 Goto repository root. More...
 
static _gotoRepositoryNode ($a_ref_id, $a_cmd="frameset")
 Goto repository root. More...
 

Data Fields

 $ctrl
 
 $tpl
 
 $tabs_gui
 
 $tree
 
 $object
 
 $ilias
 
const TAB_VIEW_CONTENT = "view_content"
 
const SUBTAB_VIEW_TREE = "view_tree"
 
const TAB_INFO = "info_short"
 
const TAB_SETTINGS = "settings"
 
const TAB_MEMBERS = "members"
 
const TAB_METADATA = "edit_advanced_settings"
 
const TAB_SUBTYPES = "subtypes"
 
- Data Fields inherited from ilContainerGUI
 $bl_cnt = 1
 
 $multi_download_enabled = false
 
- Data Fields inherited from ilObjectGUI
const ALLOWED_TAGS_IN_TITLE_AND_DESCRIPTION
 
const COPY_WIZARD_NEEDS_PAGE = 1
 
 $objDefinition
 
 $tpl
 
 $tree
 
 $lng
 
 $data
 
 $object
 
 $ref_id
 
 $obj_id
 
 $maxcount
 
 $formaction
 
 $return_location
 
 $target_frame
 
 $tab_target_script
 
 $actions
 
 $sub_objects
 
 $omit_locator = false
 
const CFORM_NEW = 1
 
const CFORM_IMPORT = 2
 
const CFORM_CLONE = 3
 

Protected Member Functions

 create ()
 
 save ()
 
 cancel ()
 
 afterSave (ilObject $a_new_object)
 Sets the sorting of the container correctly. More...
 
 getPermissionsHelper ()
 
 view ()
 
 initAdvancedSettingsForm ()
 
 editAdvancedSettings ()
 
 updateAdvancedSettings ()
 
 initCreationForms ($a_new_type)
 Overwritten from ilObjectGUI since copy and import are not implemented. More...
 
 checkAccess (string $permission)
 
 denyAccessIfNot (string $permission)
 
 denyAccessIfNotAnyOf (array $permissions)
 
 getLinkTarget ($a_cmd)
 Generates a link based on a cmd. More...
 
 fillInfoScreen ($a_info_screen)
 Adding meta-data to the info-screen. More...
 
 edit ()
 
 initHeaderAction ($a_sub_type=null, $a_sub_id=null)
 
 deliverCertificateObject ()
 
 initTreeJS ()
 
 supportsPageEditor ()
 
- Protected Member Functions inherited from ilContainerGUI
 getEditFormValues ()
 Get values for edit form. More...
 
 afterUpdate ()
 
 supportsPageEditor ()
 
 showPasswordInstructionObject ($a_init=true)
 Show webdav password instruction. More...
 
 initFormPasswordInstruction ()
 Init password form. More...
 
 savePasswordObject ()
 Save password. More...
 
 initHeaderAction ($a_sub_type=null, $a_sub_id=null)
 Add file manager link. More...
 
 fileManagerLaunchObject ()
 Launch jnlp. More...
 
 initEditForm ()
 Init object edit form. More...
 
 initSortingForm (ilPropertyFormGUI $form, array $a_sorting_settings)
 Append sorting settings to property form. More...
 
 initListPresentationForm (ilPropertyFormGUI $form)
 Add list presentation settings to form. More...
 
 saveListPresentation (ilPropertyFormGUI $form)
 Save list presentation setting. More...
 
 initSortingDirectionForm (ilContainerSortingSettings $sorting_settings, $element, $a_prefix)
 Add sorting direction. More...
 
 initManualSortingOptionForm (ilContainerSortingSettings $settings, $element, $a_prefix, $a_sorting_settings)
 Add manual sorting options. More...
 
 saveSortingSettings (ilPropertyFormGUI $form)
 Save sorting settings. More...
 
 trashHandleFilter (bool $action_apply, bool $action_reset)
 
 restoreToNewLocationObject (\ilPropertyFormGUI $form=null)
 
 getTreeSelectorGUI ($cmd)
 
 initFilter ()
 Init filter. More...
 
- Protected Member Functions inherited from ilObjectGUI
 getObjectService ()
 Get object service. More...
 
 assignObject ()
 
 setTitleAndDescription ()
 called by prepare output More...
 
 initHeaderAction ($a_sub_type=null, $a_sub_id=null)
 Add header action menu. More...
 
 insertHeaderAction ($a_list_gui)
 Insert header action into main template. More...
 
 addHeaderAction ()
 Add header action menu. More...
 
 redrawHeaderActionObject ()
 Ajax call: redraw action header only. More...
 
 setTabs ()
 set admin tabs public More...
 
 setAdminTabs ()
 set admin tabs public More...
 
 setLocator ()
 set Locator More...
 
 addLocatorItems ()
 should be overwritten to add object specific items (repository items are preloaded) More...
 
 omitLocator ($a_omit=true)
 
 addAdminLocatorItems ($a_do_not_add_object=false)
 should be overwritten to add object specific items (repository items are preloaded) More...
 
 initCreationForms ($a_new_type)
 Init creation froms. More...
 
 getCreationFormsHTML (array $a_forms)
 Get HTML for creation forms (accordion) More...
 
 initCreateForm ($a_new_type)
 Init object creation form. More...
 
 initDidacticTemplate (ilPropertyFormGUI $form)
 Show didactic template types. More...
 
 addDidacticTemplateOptions (array &$a_options)
 Add custom templates. More...
 
 afterSave (ilObject $a_new_object)
 Post (successful) object creation hook. More...
 
 initEditForm ()
 Init object edit form. More...
 
 initEditCustomForm (ilPropertyFormGUI $a_form)
 Add custom fields to update form. More...
 
 getEditFormValues ()
 Get values for edit form. More...
 
 getEditFormCustomValues (array &$a_values)
 Add values to custom edit fields. More...
 
 validateCustom (ilPropertyFormGUI $a_form)
 Validate custom values (if not possible with checkInput()) More...
 
 updateCustom (ilPropertyFormGUI $a_form)
 Insert custom update form values into object. More...
 
 afterUpdate ()
 Post (successful) object update hook. More...
 
 initImportForm ($a_new_type)
 Init object import form. More...
 
 importFileObject ($parent_id=null, $a_catch_errors=true)
 Import. More...
 
 afterImport (ilObject $a_new_object)
 Post (successful) object import hook. More...
 
 setFormAction ($a_cmd, $a_formaction)
 set specific form action for command More...
 
 getReturnLocation ($a_cmd, $a_location="")
 get return location for command (command is method name without "Object", e.g. More...
 
 setReturnLocation ($a_cmd, $a_location)
 set specific return location for command More...
 
 getTargetFrame ($a_cmd, $a_target_frame="")
 get target frame for command (command is method name without "Object", e.g. More...
 
 setTargetFrame ($a_cmd, $a_target_frame)
 set specific target frame for command More...
 
 showPossibleSubObjects ()
 show possible subobjects (pulldown menu) More...
 
 getTemplateFile ($a_cmd, $a_type="")
 get a template blockfile format: tpl. More...
 
 getTabs ()
 get tabs abstract method. More...
 
 __showButton ($a_cmd, $a_text, $a_target='')
 
 hitsperpageObject ()
 
__initTableGUI ()
 
 __setTableGUIBasicData (&$tbl, &$result_set, $a_from="")
 standard implementation for tables use 'from' variable use different initial setting of table More...
 
 redirectToRefId ($a_ref_id, $a_cmd="")
 redirects to (repository) view per ref id usually to a container and usually used at the end of a save/import method where the object gui type (of the new object) doesn't match with the type of the current $_GET["ref_id"] value More...
 
 fillCloneTemplate ($a_tpl_varname, $a_type)
 Fill object clone template This method can be called from any object GUI class that wants to offer object cloning. More...
 
 getCenterColumnHTML ()
 Get center column. More...
 
 getRightColumnHTML ()
 Display right column. More...
 
 setColumnSettings (ilColumnGUI $column_gui)
 May be overwritten in subclasses. More...
 
 checkPermission ($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
 Check permission and redirect on error. More...
 
 checkPermissionBool ($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
 Check permission. More...
 
 enableDragDropFileUpload ()
 Enables the file upload into this object by dropping files. More...
 
 handleAutoRating (ilObject $a_new_obj)
 Activate rating automatically if parent container setting. More...
 

Protected Attributes

 $toolbar
 
 $ilLocator
 
 $ilLog
 
 $help
 
 $settings_gui
 
 $members_gui
 
 $memberships_gui
 
 $tree_gui
 
 $type_gui
 
 $type_repository
 
 $autocategories_gui
 
 $permissions
 
- Protected Attributes inherited from ilContainerGUI
 $rbacsystem
 
 $tabs
 
 $settings
 
 $user
 
 $db
 
 $access
 
 $error
 
 $obj_definition
 
 $rbacadmin
 
 $rbacreview
 
 $log
 
 $obj_data_cache
 
 $toolbar
 
 $plugin_admin
 
 $global_screen
 
 $app_event_handler
 
 $ui
 
 $container_filter_service
 
 $container_user_filter = null
 
 $ui_filter
 
- Protected Attributes inherited from ilObjectGUI
const UPLOAD_TYPE_LOCAL = 1
 
const UPLOAD_TYPE_UPLOAD_DIRECTORY = 2
 
 $ilErr
 
 $locator
 
 $user
 
 $access
 
 $rbacsystem
 
 $settings
 
 $rbacreview
 
 $toolbar
 
 $tmp_import_dir
 
 $tabs_gui = null
 
 $ctrl
 
 $object_service
 
 $favourites
 
 $request
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilObjStudyProgrammeGUI::__construct ( )

Definition at line 130 of file class.ilObjStudyProgrammeGUI.php.

References $_GET, $DIC, $ilias, $ilLocator, $ilLog, $ilUser, ilObjectGUI\$lng, $tpl, $tree, ILIAS\GlobalScreen\Provider\__construct(), ilStudyProgrammeDIC\dic(), help(), and user().

131  {
132  global $DIC;
133  $tpl = $DIC['tpl'];
134  $ilCtrl = $DIC['ilCtrl'];
135  $ilToolbar = $DIC['ilToolbar'];
136  $ilLocator = $DIC['ilLocator'];
137  $tree = $DIC['tree'];
138  $lng = $DIC['lng'];
139  $ilLog = $DIC['ilLog'];
140  $ilias = $DIC['ilias'];
141  $ilHelp = $DIC['ilHelp'];
142  $ilUser = $DIC['ilUser'];
143 
144  parent::__construct(array(), (int) $_GET['ref_id'], true, false);
145 
146  $this->tpl = $tpl;
147  $this->ctrl = $ilCtrl;
148  $this->ilLocator = $ilLocator;
149  $this->tree = $tree;
150  $this->toolbar = $ilToolbar;
151  $this->ilLog = $ilLog;
152  $this->ilias = $ilias;
153  $this->type = "prg";
154  $this->help = $ilHelp;
155  $this->user = $ilUser;
156 
157  $lng->loadLanguageModule("prg");
158 
159  $this->settings_gui = ilStudyProgrammeDIC::dic()['ilObjStudyProgrammeSettingsGUI'];
160  $this->members_gui = ilStudyProgrammeDIC::dic()['ilObjStudyProgrammeMembersGUI'];
161  $this->memberships_gui = ilStudyProgrammeDIC::dic()['ilObjStudyProgrammeAutoMembershipsGUI'];
162  $this->tree_gui = ilStudyProgrammeDIC::dic()['ilObjStudyProgrammeTreeGUI'];
163  $this->type_gui = ilStudyProgrammeDIC::dic()['ilStudyProgrammeTypeGUI'];
164  $this->autocategories_gui = ilStudyProgrammeDIC::dic()['ilObjStudyProgrammeAutoCategoriesGUI'];
165  $this->type_repository = ilStudyProgrammeDIC::dic()['model.Type.ilStudyProgrammeTypeRepository'];
166  }
$_GET["client_id"]
logging
Definition: class.ilLog.php:18
user()
Definition: user.php:4
help()
Definition: help.php:2
global $DIC
Definition: goto.php:24
redirection script todo: (a better solution should control the processing via a xml file) ...
__construct(Container $dic, ilPlugin $plugin)
$ilUser
Definition: imgupload.php:18
+ Here is the call graph for this function:

Member Function Documentation

◆ _goto()

static ilObjStudyProgrammeGUI::_goto (   $a_target)
static

_goto Deep link

Parameters
string$a_target

Definition at line 759 of file class.ilObjStudyProgrammeGUI.php.

References $DIC, and ilObjectGUI\$ilErr.

Referenced by ilObjStudyProgrammeReferenceGUI\_goto().

760  {
761  global $DIC;
762  $ilAccess = $DIC['ilAccess'];
763  $ilErr = $DIC['ilErr'];
764  $ilCtrl = $DIC['ilCtrl'];
765  $id = explode("_", $a_target);
766  $ilCtrl->initBaseClass("ilRepositoryGUI");
767  $ilCtrl->setParameterByClass("ilobjstudyprogrammegui", "ref_id", $id[0]);
768 
769  $ilCtrl->redirectByClass(array( "ilRepositoryGUI", "ilobjstudyprogrammegui" ), "view");
770  }
global $DIC
Definition: goto.php:24
+ Here is the caller graph for this function:

◆ addToNavigationHistory()

ilObjStudyProgrammeGUI::addToNavigationHistory ( )

Definition at line 772 of file class.ilObjStudyProgrammeGUI.php.

References $_GET, $DIC, ilLink\_getLink(), checkAccess(), ilObjectGUI\getCreationMode(), and ilPRGPermissionsHelper\ROLEPERM_READ.

Referenced by executeCommand().

773  {
774  global $DIC;
775  $ilNavigationHistory = $DIC['ilNavigationHistory'];
776 
777  if (!$this->getCreationMode()
779  ) {
780  $link = ilLink::_getLink($_GET["ref_id"], "iass");
781  $ilNavigationHistory->addItem(
782  $_GET['ref_id'],
783  $link,
784  'prg'
785  );
786  }
787  }
$_GET["client_id"]
global $DIC
Definition: goto.php:24
getCreationMode()
get creation mode
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ afterSave()

ilObjStudyProgrammeGUI::afterSave ( ilObject  $a_new_object)
protected

Sets the sorting of the container correctly.

If its a async call, a json string is returned.

Definition at line 405 of file class.ilObjStudyProgrammeGUI.php.

References ilContainerGUI\$settings, ilAsyncOutputHandler\encodeAsyncResponse(), ilObject\getId(), ilObject\getRefId(), ilObjectGUI\getReturnLocation(), ilAsyncOutputHandler\handleAsyncOutput(), ilUtil\redirect(), ilContainer\SORT_DIRECTION_ASC, ilContainer\SORT_MANUAL, ilContainer\SORT_NEW_ITEMS_ORDER_CREATION, and ilContainer\SORT_NEW_ITEMS_POSITION_BOTTOM.

406  {
407  // set default sort to manual
408  $settings = new ilContainerSortingSettings($a_new_object->getId());
409  $settings->setSortMode(ilContainer::SORT_MANUAL);
410  $settings->setSortDirection(ilContainer::SORT_DIRECTION_ASC);
412  $settings->setSortNewItemsPosition(ilContainer::SORT_NEW_ITEMS_POSITION_BOTTOM);
413  $settings->save();
414 
415  $async_response = ilAsyncOutputHandler::encodeAsyncResponse(array("cmd" => "cancel", "success" => true, "message" => $this->lng->txt("object_added")));
416 
417  ilAsyncOutputHandler::handleAsyncOutput("", $async_response, false);
418 
419  ilUtil::sendSuccess($this->lng->txt("object_added"), true);
420 
421  $this->ctrl->setParameter($this, "ref_id", $a_new_object->getRefId());
423  "save",
424  $this->ctrl->getLinkTarget($this, "edit", "", false, false)
425  ));
426  }
const SORT_NEW_ITEMS_POSITION_BOTTOM
static encodeAsyncResponse(array $data=array())
Encode data as json for async output.
getId()
get object id public
const SORT_NEW_ITEMS_ORDER_CREATION
getRefId()
get reference id public
static redirect($a_script)
getReturnLocation($a_cmd, $a_location="")
get return location for command (command is method name without "Object", e.g.
static handleAsyncOutput($normal_content, $async_content=null, $apply_to_tpl=true)
Handles async output.
+ Here is the call graph for this function:

◆ cancel()

ilObjStudyProgrammeGUI::cancel ( )
protected

Definition at line 392 of file class.ilObjStudyProgrammeGUI.php.

References ilAsyncOutputHandler\encodeAsyncResponse(), and ilAsyncOutputHandler\handleAsyncOutput().

393  {
394  $async_response = ilAsyncOutputHandler::encodeAsyncResponse(array("cmd" => "cancel", "success" => false));
395 
396  ilAsyncOutputHandler::handleAsyncOutput("", $async_response, false);
397 
398  parent::cancelCreation();
399  }
static encodeAsyncResponse(array $data=array())
Encode data as json for async output.
static handleAsyncOutput($normal_content, $async_content=null, $apply_to_tpl=true)
Handles async output.
+ Here is the call graph for this function:

◆ checkAccess()

ilObjStudyProgrammeGUI::checkAccess ( string  $permission)
protected

Definition at line 537 of file class.ilObjStudyProgrammeGUI.php.

References getPermissionsHelper().

Referenced by addToNavigationHistory(), editAdvancedSettings(), getSubTabs(), getTabs(), and updateAdvancedSettings().

537  : bool
538  {
539  return $this->getPermissionsHelper()->may($permission);
540  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create()

ilObjStudyProgrammeGUI::create ( )
protected

Definition at line 375 of file class.ilObjStudyProgrammeGUI.php.

376  {
377  parent::createObject();
378  }

◆ deliverCertificateObject()

ilObjStudyProgrammeGUI::deliverCertificateObject ( )
protected

Definition at line 810 of file class.ilObjStudyProgrammeGUI.php.

References $DIC, ilObjectGUI\$obj_id, ilCertificatePdfAction\downloadPdf(), ilUtil\sendFailure(), and user().

811  {
812  global $DIC;
813 
814  $this->lng->loadLanguageModule('cert');
815 
816  $user_id = (int) $this->user->getId();
817  $obj_id = (int) $this->object->getId();
818 
819  $validator = new ilCertificateDownloadValidator();
820  if (false === $validator->isCertificateDownloadable($user_id, $obj_id)) {
821  ilUtil::sendFailure($this->lng->txt("permission_denied"), true);
822  $this->ctrl->redirect($this);
823  }
824  $repository = new ilUserCertificateRepository();
825  $cert_logger = $DIC->logger()->cert();
826  $pdf_action = new ilCertificatePdfAction(
827  $cert_logger,
828  new ilPdfGenerator($repository, $cert_logger),
830  $this->lng->txt('error_creating_certificate_pdf')
831  );
832  $pdf_action->downloadPdf($user_id, $obj_id);
833  }
Class ilPdfGeneratorConstantsTest.
user()
Definition: user.php:4
Validates if an active certificate is stored in the database and can be downloaded by the user...
global $DIC
Definition: goto.php:24
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
Just a wrapper class to create Unit Test for other classes.
downloadPdf(int $userId, int $objectId)
+ Here is the call graph for this function:

◆ denyAccessIfNot()

ilObjStudyProgrammeGUI::denyAccessIfNot ( string  $permission)
protected

Definition at line 542 of file class.ilObjStudyProgrammeGUI.php.

References denyAccessIfNotAnyOf().

Referenced by edit(), executeCommand(), and view().

542  : void
543  {
544  $this->denyAccessIfNotAnyOf([$permission]);
545  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ denyAccessIfNotAnyOf()

ilObjStudyProgrammeGUI::denyAccessIfNotAnyOf ( array  $permissions)
protected

Definition at line 547 of file class.ilObjStudyProgrammeGUI.php.

References getPermissionsHelper(), ilPRGPermissionsHelper\ROLEPERM_VIEW, and ilUtil\sendFailure().

Referenced by denyAccessIfNot(), and executeCommand().

547  : void
548  {
549  if (!$this->getPermissionsHelper()->mayAnyOf($permissions)) {
551  ilUtil::sendFailure($this->lng->txt("msg_no_perm_write"));
552  $this->ctrl->redirectByClass('ilinfoscreengui', '');
553  } else {
554  $this->ilias->raiseError($this->lng->txt("msg_no_perm_read"), $this->ilias->error_obj->WARNING);
555  }
556  }
557  }
redirection script todo: (a better solution should control the processing via a xml file) ...
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ edit()

ilObjStudyProgrammeGUI::edit ( )
protected

Definition at line 745 of file class.ilObjStudyProgrammeGUI.php.

References denyAccessIfNot(), and ilPRGPermissionsHelper\ROLEPERM_WRITE.

746  {
748 
749  $link = $this->ctrl->getLinkTargetByClass(ilObjStudyProgrammeSettingsGUI::class, 'view');
750  $this->ctrl->redirectToURL($link);
751  }
+ Here is the call graph for this function:

◆ editAdvancedSettings()

ilObjStudyProgrammeGUI::editAdvancedSettings ( )
protected

Definition at line 462 of file class.ilObjStudyProgrammeGUI.php.

References checkAccess(), initAdvancedSettingsForm(), ilAdvancedMDRecordGUI\MODE_EDITOR, ilPRGPermissionsHelper\ROLEPERM_WRITE, ilUtil\sendFailure(), and ilAdvancedMDRecordGUI\setPropertyForm().

Referenced by executeCommand().

462  : void
463  {
465  ilUtil::sendFailure($this->lng->txt("permission_denied"), true);
466  $this->ctrl->redirect($this);
467  }
468  $form = $this->initAdvancedSettingsForm();
469  $gui = new ilAdvancedMDRecordGUI(
471  'prg',
472  $this->object->getId(),
473  'prg_type',
474  $this->object->getSettings()->getTypeSettings()->getTypeId()
475  );
476  $gui->setPropertyForm($form);
477  $gui->parse();
478  $this->tpl->setContent($form->getHTML());
479  }
setPropertyForm($form)
set property form object
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ executeCommand()

ilObjStudyProgrammeGUI::executeCommand ( )

Definition at line 169 of file class.ilObjStudyProgrammeGUI.php.

References $_SESSION, ilObjectGUI\addHeaderAction(), addToNavigationHistory(), denyAccessIfNot(), denyAccessIfNotAnyOf(), editAdvancedSettings(), fillInfoScreen(), ilCommonActionDispatcherGUI\getInstanceFromAjaxCall(), getSubTabs(), initAdvancedSettingsForm(), initTreeJS(), ilAdvancedMDRecordGUI\MODE_EDITOR, ilOrgUnitOperation\OP_MANAGE_MEMBERS, ilOrgUnitOperation\OP_VIEW_MEMBERS, ilPRGPermissionsHelper\ROLEPERM_READ, ilPRGPermissionsHelper\ROLEPERM_VIEW, ilPRGPermissionsHelper\ROLEPERM_WRITE, setContentSubTabs(), ilAdvancedMDRecordGUI\setPropertyForm(), and updateAdvancedSettings().

170  {
171  $cmd = $this->ctrl->getCmd();
172  $next_class = $this->ctrl->getNextClass($this);
173 
174  if ($cmd == "") {
175  $cmd = "view";
176  }
177 
178  $this->addToNavigationHistory();
179 
180  parent::prepareOutput();
181 
182  $this->addHeaderAction();
183 
184  switch ($next_class) {
185  case "ilinfoscreengui":
186  $this->tabs_gui->activateTab(self::TAB_INFO);
187  $this->denyAccessIfNotAnyOf([
190  ]);
191  $info = new ilInfoScreenGUI($this);
192  $this->fillInfoScreen($info);
193  $this->ctrl->forwardCommand($info);
194 
195  // 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!
196  // So we reimplemented the stuff in the method parseInfoScreen()
197  // $info = new ilInfoScreenGUI($this);
198  // $amd_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_INFO, 'orgu', $this->object->getId(), 'orgu_type', $this->object->getOrgUnitTypeId());
199  // $amd_gui->setInfoObject($info);
200  // $amd_gui->setSelectedOnly(true);
201  // $amd_gui->parse();
202  // $this->ctrl->forwardCommand($info);
203  break;
204  case 'ilpermissiongui':
205  $this->tabs_gui->activateTab('perm_settings');
206  $ilPermissionGUI = new ilPermissionGUI($this);
207  $this->ctrl->forwardCommand($ilPermissionGUI);
208  break;
209  case "ilcommonactiondispatchergui":
210  require_once("Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
212  $this->ctrl->forwardCommand($gui);
213  break;
214  case "ilobjstudyprogrammesettingsgui":
216  $this->getSubTabs('settings');
217  $this->tabs_gui->activateTab(self::TAB_SETTINGS);
218  $this->tabs_gui->activateSubTab('settings');
219  $this->settings_gui->setRefId($this->ref_id);
220  $this->ctrl->forwardCommand($this->settings_gui);
221  break;
222 
223  case "ilobjstudyprogrammeautocategoriesgui":
225  $this->getSubTabs('settings');
226  $this->tabs_gui->activateTab(self::TAB_SETTINGS);
227  $this->tabs_gui->activateSubTab('auto_content');
228  $this->autocategories_gui->setRefId($this->ref_id);
229  $this->initTreeJS();
230  $this->ctrl->forwardCommand($this->autocategories_gui);
231  break;
232 
233  case "ilobjstudyprogrammemembersgui":
235  $this->getSubTabs('members');
236 
237  $this->tabs_gui->activateTab(self::TAB_MEMBERS);
238  $this->tabs_gui->activateSubTab('edit_participants');
239 
240  $this->members_gui->setParentGUI($this);
241  $this->members_gui->setRefId($this->ref_id);
242  $this->ctrl->forwardCommand($this->members_gui);
243 
244  break;
245 
246  case "ilobjstudyprogrammeautomembershipsgui":
248  $this->getSubTabs('members');
249 
250  $this->tabs_gui->activateTab(self::TAB_MEMBERS);
251  $this->tabs_gui->activateSubTab('auto_memberships');
252 
253  $this->memberships_gui->setParentGUI($this);
254  $this->memberships_gui->setRefId($this->ref_id);
255  $this->ctrl->forwardCommand($this->memberships_gui);
256 
257  break;
258 
259 
260  case "ilobjstudyprogrammetreegui":
262 
263  $this->getSubTabs($cmd);
264  $this->setContentSubTabs();
265  $this->tabs_gui->activateTab(self::TAB_VIEW_CONTENT);
266  $this->tabs_gui->activateSubTab(self::SUBTAB_VIEW_TREE);
267 
268  // disable admin panel
269  $_SESSION["il_cont_admin_panel"] = false;
270 
271  $this->tree_gui->setRefId($this->id);
272  $this->ctrl->forwardCommand($this->tree_gui);
273  break;
274  case 'ilstudyprogrammetypegui':
275  $this->tabs_gui->activateTab('subtypes');
276 
277  $this->type_gui->setParentGUI($this);
278  $this->ctrl->forwardCommand($this->type_gui);
279  break;
280  case 'ilobjectcopygui':
281  $gui = new ilobjectcopygui($this);
282  $this->ctrl->forwardCommand($gui);
283  break;
284  case 'ilobjecttranslationgui':
286  $this->getSubTabs('settings');
287  $this->tabs_gui->activateTab(self::TAB_SETTINGS);
288  $this->tabs_gui->activateSubTab('settings_trans');
289  $transgui = new ilObjectTranslationGUI($this);
290  $this->ctrl->forwardCommand($transgui);
291  break;
292  case "ilcertificategui":
293  $this->getSubTabs('settings');
295  $this->tabs_gui->activateTab(self::TAB_SETTINGS);
296  $this->tabs_gui->activateSubTab('certificate');
297  $guiFactory = new ilCertificateGUIFactory();
298  $output_gui = $guiFactory->create($this->object);
299  $this->ctrl->forwardCommand($output_gui);
300  break;
301  case strtolower(ilPropertyFormGUI::class):
302  /*
303  * Only used for async loading of the repository tree in custom md
304  * internal links (see #28060, #37974). This is necessary since StudyProgrammes don't
305  * use ilObjectMetaDataGUI.
306  */
307  $form = $this->initAdvancedSettingsForm();
308  $gui = new ilAdvancedMDRecordGUI(
310  'prg',
311  $this->object->getId(),
312  'prg_type',
313  $this->object->getSettings()->getTypeSettings()->getTypeId()
314  );
315  $gui->setPropertyForm($form);
316  $gui->parse();
317  $this->ctrl->forwardCommand($form);
318  break;
319  case false:
320  $this->getSubTabs($cmd);
321  switch ($cmd) {
322  case "cancelDelete":
323  $cmd = "view";
324  // no break
325  case "create":
326  case "save":
327  case "view":
328  case "cancel":
329  case "edit":
330  $this->$cmd();
331  break;
332  case "delete":
333  $this->tabs_gui->clearTargets();
334  $this->tabs_gui->setBackTarget($this->lng->txt("back"), $this->ctrl->getLinkTarget($this));
335  parent::deleteObject();
336  break;
337  case 'confirmedDelete':
338  parent::confirmedDeleteObject();
339  break;
340  case 'editAdvancedSettings':
341  $this->tabs_gui->activateTab('edit_advanced_settings');
342  $this->editAdvancedSettings();
343  break;
344  case 'updateAdvancedSettings':
345  $this->tabs_gui->activateTab('edit_advanced_settings');
346  $this->updateAdvancedSettings();
347  break;
348  case "infoScreen":
349  $this->ctrl->redirectByClass("ilInfoScreenGUI", "showSummary");
350  break;
351  case 'getAsynchItemList':
352  parent::getAsynchItemListObject();
353  break;
354  case 'trash':
355  case 'undelete':
356  case 'confirmRemoveFromSystem':
357  case 'removeFromSystem':
358  case 'deliverCertificate':
359  case 'addToDesk':
360  case 'removeFromDesk':
361  $cmd .= "Object";
362  $this->$cmd();
363  break;
364  default:
365  throw new ilException("ilObjStudyProgrammeGUI: Command not supported: $cmd");
366  }
367  break;
368 
369  default:
370  throw new ilException("ilObjStudyProgrammeGUI: Can't forward to next class $next_class");
371  }
372  }
Class ilInfoScreenGUI.
$_SESSION["AccountId"]
setPropertyForm($form)
set property form object
getSubTabs($a_parent_tab)
Adds subtabs based on the parent tab.
setContentSubTabs()
Disable default content subtabs.
fillInfoScreen($a_info_screen)
Adding meta-data to the info-screen.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
addHeaderAction()
Add header action menu.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
GUI class for object translation handling.
+ Here is the call graph for this function:

◆ fillInfoScreen()

ilObjStudyProgrammeGUI::fillInfoScreen (   $a_info_screen)
protected

Adding meta-data to the info-screen.

Parameters
$a_info_screen

Definition at line 726 of file class.ilObjStudyProgrammeGUI.php.

References ilStudyProgrammeDIC\dic(), ilAdvancedMDRecordGUI\MODE_INFO, and ilAdvancedMDRecordGUI\setInfoObject().

Referenced by executeCommand().

727  {
728  if (!$this->object->getSettings()->getTypeSettings()->getTypeId() ||
729  !ilStudyProgrammeDIC::dic()['model.Type.ilStudyProgrammeTypeRepository']
730  ->getType($this->object->getSettings()->getTypeSettings()->getTypeId())
731  ) {
732  return;
733  }
734  $record_gui = new ilAdvancedMDRecordGUI(
736  'prg',
737  $this->object->getId(),
738  'prg_type',
739  $this->object->getSettings()->getTypeSettings()->getTypeId()
740  );
741  $record_gui->setInfoObject($a_info_screen);
742  $record_gui->parse();
743  }
setInfoObject($info)
get info sections
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getAsyncCreationForm()

ilObjStudyProgrammeGUI::getAsyncCreationForm ( )

Method for implementing async windows-output Should be moved into core to enable async requests on creation-form.

Definition at line 522 of file class.ilObjStudyProgrammeGUI.php.

References initCreationForms().

Referenced by save().

523  {
524  $asyncForm = new ilAsyncPropertyFormGUI();
525 
526  $tmp_forms = $this->initCreationForms('prg');
527  $asyncForm->cloneForm($tmp_forms[self::CFORM_NEW]);
528  $asyncForm->setAsync(true);
529 
530  return $asyncForm;
531  }
initCreationForms($a_new_type)
Overwritten from ilObjectGUI since copy and import are not implemented.
Class ilAsyncPropertyFormGUI.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getLinkTarget()

ilObjStudyProgrammeGUI::getLinkTarget (   $a_cmd)
protected

Generates a link based on a cmd.

Parameters
$a_cmd
Returns
string

Definition at line 683 of file class.ilObjStudyProgrammeGUI.php.

Referenced by getSubTabs(), and getTabs().

684  {
685  if ($a_cmd == "info_short") {
686  return $this->ctrl->getLinkTargetByClass("ilinfoscreengui", "showSummary");
687  }
688  if ($a_cmd == "settings") {
689  return $this->ctrl->getLinkTargetByClass("ilobjstudyprogrammesettingsgui", "view");
690  }
691  if ($a_cmd == "auto_content") {
692  return $this->ctrl->getLinkTargetByClass("ilObjStudyProgrammeAutoCategoriesGUI", "view");
693  }
694 
695  if ($a_cmd == self::SUBTAB_VIEW_TREE) {
696  return $this->ctrl->getLinkTargetByClass("ilobjstudyprogrammetreegui", "view");
697  }
698  if ($a_cmd == "members") {
699  return $this->ctrl->getLinkTargetByClass("ilobjstudyprogrammemembersgui", "view");
700  }
701  if ($a_cmd == "memberships") {
702  return $this->ctrl->getLinkTargetByClass("ilobjstudyprogrammeautomembershipsgui", "view");
703  }
704  if ($a_cmd == "subtypes") {
705  return $this->ctrl->getLinkTargetByClass("ilstudyprogrammetypegui", "listTypes");
706  }
707  if ($a_cmd == "commonSettings") {
708  return $this->ctrl->getLinkTargetByClass(
709  [
710  "ilobjstudyprogrammesettingsgui",
711  "ilStudyProgrammeCommonSettingsGUI"
712  ],
713  "editSettings"
714  );
715  }
716 
717  return $this->ctrl->getLinkTarget($this, $a_cmd);
718  }
+ Here is the caller graph for this function:

◆ getPermissionsHelper()

ilObjStudyProgrammeGUI::getPermissionsHelper ( )
protected

Definition at line 428 of file class.ilObjStudyProgrammeGUI.php.

References $permissions, and ilStudyProgrammeDIC\specificDicFor().

Referenced by checkAccess(), denyAccessIfNotAnyOf(), and getSubTabs().

429  {
430  if (!$this->permisssions) {
431  if (!$this->object || !$this->object->getRefId()) {
432  throw new LogicException('Cannot ask for permission when not in tree!');
433  }
434 
435  $this->permissions = ilStudyProgrammeDIC::specificDicFor($this->object)['permissionhelper'];
436  }
437  return $this->permissions;
438  }
static specificDicFor(\ilObjStudyProgramme $prg)
Both role and OrgU-based permissions are relevant in many places of the PRG.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSubTabs()

ilObjStudyProgrammeGUI::getSubTabs (   $a_parent_tab)

Adds subtabs based on the parent tab.

Parameters
$a_parent_tab| string of the parent tab-id

Definition at line 616 of file class.ilObjStudyProgrammeGUI.php.

References checkAccess(), getLinkTarget(), getPermissionsHelper(), ilOrgUnitOperation\OP_MANAGE_MEMBERS, ilPRGPermissionsHelper\ROLEPERM_READ, and ilPRGPermissionsHelper\ROLEPERM_WRITE.

Referenced by executeCommand().

617  {
618  switch ($a_parent_tab) {
619  case self::TAB_VIEW_CONTENT:
620  case self::SUBTAB_VIEW_TREE:
621  case 'view':
623  $this->tabs_gui->addSubTab(self::TAB_VIEW_CONTENT, $this->lng->txt("view"), $this->getLinkTarget("view"));
624  }
625 
627  $this->tabs_gui->addSubTab(self::SUBTAB_VIEW_TREE, $this->lng->txt("cntr_manage"), $this->getLinkTarget(self::SUBTAB_VIEW_TREE));
628  }
629  break;
630  case 'settings':
631  $this->tabs_gui->addSubTab('settings', $this->lng->txt('settings'), $this->getLinkTarget('settings'));
632 
633  if ($this->object->isAutoContentApplicable()) {
634  $this->tabs_gui->addSubTab("auto_content", $this->lng->txt("content_automation"), $this->getLinkTarget("auto_content"));
635  }
636 
637  $this->tabs_gui->addSubTab("settings_trans", $this->lng->txt("obj_multilinguality"), $this->ctrl->getLinkTargetByClass("ilobjecttranslationgui", ""));
638  //$this->tabs_gui->addSubTab("edit_translations", $this->lng->txt("obj_multilinguality"), $this->ctrl->getLinkTargetByClass("iltranslationgui", "editTranslations"));
639 
640  $validator = new ilCertificateActiveValidator();
641  if (true === $validator->validate()) {
642  $this->tabs_gui->addSubTabTarget(
643  "certificate",
644  $this->ctrl->getLinkTargetByClass("ilcertificategui", "certificateeditor"),
645  "",
646  "ilcertificategui"
647  );
648  }
649 
650  $this->tabs_gui->addSubTab(
651  'commonSettings',
652  $this->lng->txt("obj_features"),
653  $this->getLinkTarget("commonSettings")
654  );
655  break;
656 
657  case 'members':
658  $this->tabs_gui->addSubTab('edit_participants', $this->lng->txt('edit_participants'), $this->getLinkTarget('members'));
660  $this->tabs_gui->addSubTab('auto_memberships', $this->lng->txt('auto_memberships'), $this->getLinkTarget('memberships'));
661  }
662  break;
663  }
664  }
getLinkTarget($a_cmd)
Generates a link based on a cmd.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getTabs()

ilObjStudyProgrammeGUI::getTabs ( )

Definition at line 567 of file class.ilObjStudyProgrammeGUI.php.

References checkAccess(), getLinkTarget(), help(), ilOrgUnitOperation\OP_VIEW_MEMBERS, ilPRGPermissionsHelper\ROLEPERM_READ, and ilPRGPermissionsHelper\ROLEPERM_WRITE.

568  {
569  $this->help->setScreenIdComponent("prg");
571  $this->tabs_gui->addTab(self::TAB_VIEW_CONTENT, $this->lng->txt("content"), $this->getLinkTarget("view"));
572  }
573 
575  $this->tabs_gui->addTab(
576  self::TAB_INFO,
577  $this->lng->txt("info_short"),
578  $this->getLinkTarget("info_short")
579  );
580  }
581 
583  $this->tabs_gui->addTab(
584  self::TAB_SETTINGS,
585  $this->lng->txt("settings"),
586  $this->getLinkTarget("settings")
587  );
588  }
589 
591  $this->tabs_gui->addTab(
592  self::TAB_MEMBERS,
593  $this->lng->txt("assignments"),
594  $this->getLinkTarget("members")
595  );
596  }
597 
598  if ($this->object->hasAdvancedMetadata()
600  ) {
601  $this->tabs_gui->addTab(
602  self::TAB_METADATA,
603  $this->lng->txt('meta_data'),
604  $this->ctrl->getLinkTarget($this, 'editAdvancedSettings')
605  );
606  }
607 
608  parent::getTabs();
609  }
help()
Definition: help.php:2
getLinkTarget($a_cmd)
Generates a link based on a cmd.
+ Here is the call graph for this function:

◆ initAdvancedSettingsForm()

ilObjStudyProgrammeGUI::initAdvancedSettingsForm ( )
protected

Definition at line 452 of file class.ilObjStudyProgrammeGUI.php.

Referenced by editAdvancedSettings(), executeCommand(), and updateAdvancedSettings().

453  {
454  $form = new ilPropertyFormGUI();
455  $form->setFormAction($this->ctrl->getFormAction($this));
456  $form->addCommandButton('updateAdvancedSettings', $this->lng->txt('save'));
457  $form->addCommandButton('editAdvancedSettings', $this->lng->txt('cancel'));
458 
459  return $form;
460  }
This class represents a property form user interface.
+ Here is the caller graph for this function:

◆ initCreationForms()

ilObjStudyProgrammeGUI::initCreationForms (   $a_new_type)
protected

Overwritten from ilObjectGUI since copy and import are not implemented.

Definition at line 512 of file class.ilObjStudyProgrammeGUI.php.

References ilObjectGUI\initCreateForm().

Referenced by getAsyncCreationForm().

512  : array
513  {
514  return array( self::CFORM_NEW => $this->initCreateForm($a_new_type));
515  }
initCreateForm($a_new_type)
Init object creation form.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initHeaderAction()

ilObjStudyProgrammeGUI::initHeaderAction (   $a_sub_type = null,
  $a_sub_id = null 
)
protected

Definition at line 789 of file class.ilObjStudyProgrammeGUI.php.

References ilUtil\getImagePath().

790  {
791  $lg = parent::initHeaderAction($a_sub_type, $a_sub_id);
792  $validator = new ilCertificateDownloadValidator();
793  if (true === $validator->isCertificateDownloadable($this->user->getId(), $this->object->getId()) && $lg) {
794  $cert_url = $this->ctrl->getLinkTarget($this, "deliverCertificate");
795  $this->lng->loadLanguageModule("certificate");
796  $lg->addCustomCommand($cert_url, "download_certificate");
797  $lg->addHeaderIcon(
798  "cert_icon",
799  ilUtil::getImagePath("icon_cert.svg"),
800  $this->lng->txt("download_certificate"),
801  null,
802  null,
803  $cert_url
804  );
805  }
806  return $lg;
807  }
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
Validates if an active certificate is stored in the database and can be downloaded by the user...
+ Here is the call graph for this function:

◆ initTreeJS()

ilObjStudyProgrammeGUI::initTreeJS ( )
protected

Definition at line 835 of file class.ilObjStudyProgrammeGUI.php.

References ilExplorerBaseGUI\init().

Referenced by executeCommand().

835  : void
836  {
838  }
static init($a_main_tpl=null)
Init JS.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isActiveAdministrationPanel()

ilObjStudyProgrammeGUI::isActiveAdministrationPanel ( )

Definition at line 447 of file class.ilObjStudyProgrammeGUI.php.

447  : bool
448  {
449  return false;
450  }

◆ save()

ilObjStudyProgrammeGUI::save ( )
protected

Definition at line 380 of file class.ilObjStudyProgrammeGUI.php.

References ilAsyncOutputHandler\encodeAsyncResponse(), exit, and getAsyncCreationForm().

381  {
382  parent::saveObject();
383 
384  if ($this->ctrl->isAsynch()) {
385  $form = $this->getAsyncCreationForm();
386  $form->setValuesByPost();
387  echo ilAsyncOutputHandler::encodeAsyncResponse(array("cmd" => $this->ctrl->getCmd(), "success" => false, "errors" => $form->getErrors()));
388  exit();
389  }
390  }
exit
Definition: login.php:29
static encodeAsyncResponse(array $data=array())
Encode data as json for async output.
getAsyncCreationForm()
Method for implementing async windows-output Should be moved into core to enable async requests on cr...
+ Here is the call graph for this function:

◆ setContentSubTabs()

ilObjStudyProgrammeGUI::setContentSubTabs ( )

Disable default content subtabs.

Definition at line 670 of file class.ilObjStudyProgrammeGUI.php.

Referenced by executeCommand().

671  {
672  return;
673  }
+ Here is the caller graph for this function:

◆ supportsPageEditor()

ilObjStudyProgrammeGUI::supportsPageEditor ( )
protected

Definition at line 840 of file class.ilObjStudyProgrammeGUI.php.

840  : bool
841  {
842  return false;
843  }

◆ updateAdvancedSettings()

ilObjStudyProgrammeGUI::updateAdvancedSettings ( )
protected

Definition at line 481 of file class.ilObjStudyProgrammeGUI.php.

References checkAccess(), initAdvancedSettingsForm(), ilAdvancedMDRecordGUI\MODE_EDITOR, ilPRGPermissionsHelper\ROLEPERM_WRITE, ilUtil\sendFailure(), and ilAdvancedMDRecordGUI\setPropertyForm().

Referenced by executeCommand().

481  : void
482  {
484  ilUtil::sendFailure($this->lng->txt("permission_denied"), true);
485  $this->ctrl->redirect($this);
486  }
487 
488  $form = $this->initAdvancedSettingsForm();
489  $gui = new ilAdvancedMDRecordGUI(
491  'prg',
492  $this->object->getId(),
493  'prg_type',
494  $this->object->getSettings()->getTypeSettings()->getTypeId()
495  );
496  $gui->setPropertyForm($form);
497  $form->checkInput();
498  $gui->parse();
499  if ($gui->importEditFormPostValues()) {
500  $gui->writeEditForm();
501  ilUtil::sendSuccess($this->lng->txt('settings_saved'), true);
502  $this->ctrl->redirect($this, 'editAdvancedSettings');
503  } else {
504  $this->tpl->setContent($form->getHTML());
505  }
506  }
setPropertyForm($form)
set property form object
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ view()

ilObjStudyProgrammeGUI::view ( )
protected

Definition at line 440 of file class.ilObjStudyProgrammeGUI.php.

References denyAccessIfNot(), and ilPRGPermissionsHelper\ROLEPERM_READ.

441  {
443  $this->tabs_gui->activateTab(self::TAB_VIEW_CONTENT);
444  parent::renderObject();
445  }
+ Here is the call graph for this function:

Field Documentation

◆ $autocategories_gui

ilObjStudyProgrammeGUI::$autocategories_gui
protected

Definition at line 123 of file class.ilObjStudyProgrammeGUI.php.

◆ $ctrl

ilObjStudyProgrammeGUI::$ctrl

Definition at line 43 of file class.ilObjStudyProgrammeGUI.php.

◆ $help

ilObjStudyProgrammeGUI::$help
protected

Definition at line 88 of file class.ilObjStudyProgrammeGUI.php.

◆ $ilias

ilObjStudyProgrammeGUI::$ilias

Definition at line 83 of file class.ilObjStudyProgrammeGUI.php.

Referenced by __construct().

◆ $ilLocator

ilObjStudyProgrammeGUI::$ilLocator
protected

Definition at line 63 of file class.ilObjStudyProgrammeGUI.php.

Referenced by __construct().

◆ $ilLog

ilObjStudyProgrammeGUI::$ilLog
protected

Definition at line 78 of file class.ilObjStudyProgrammeGUI.php.

Referenced by __construct().

◆ $members_gui

ilObjStudyProgrammeGUI::$members_gui
protected

Definition at line 98 of file class.ilObjStudyProgrammeGUI.php.

◆ $memberships_gui

ilObjStudyProgrammeGUI::$memberships_gui
protected

Definition at line 103 of file class.ilObjStudyProgrammeGUI.php.

◆ $object

ilObjStudyProgrammeGUI::$object

Definition at line 73 of file class.ilObjStudyProgrammeGUI.php.

◆ $permissions

ilObjStudyProgrammeGUI::$permissions
protected

Definition at line 128 of file class.ilObjStudyProgrammeGUI.php.

Referenced by getPermissionsHelper().

◆ $settings_gui

ilObjStudyProgrammeGUI::$settings_gui
protected

Definition at line 93 of file class.ilObjStudyProgrammeGUI.php.

◆ $tabs_gui

ilObjStudyProgrammeGUI::$tabs_gui

Definition at line 53 of file class.ilObjStudyProgrammeGUI.php.

◆ $toolbar

ilObjStudyProgrammeGUI::$toolbar
protected

Definition at line 58 of file class.ilObjStudyProgrammeGUI.php.

◆ $tpl

ilObjStudyProgrammeGUI::$tpl

Definition at line 48 of file class.ilObjStudyProgrammeGUI.php.

Referenced by __construct().

◆ $tree

ilObjStudyProgrammeGUI::$tree

Definition at line 68 of file class.ilObjStudyProgrammeGUI.php.

Referenced by __construct().

◆ $tree_gui

ilObjStudyProgrammeGUI::$tree_gui
protected

Definition at line 108 of file class.ilObjStudyProgrammeGUI.php.

◆ $type_gui

ilObjStudyProgrammeGUI::$type_gui
protected

Definition at line 113 of file class.ilObjStudyProgrammeGUI.php.

◆ $type_repository

ilObjStudyProgrammeGUI::$type_repository
protected

Definition at line 118 of file class.ilObjStudyProgrammeGUI.php.

◆ SUBTAB_VIEW_TREE

const ilObjStudyProgrammeGUI::SUBTAB_VIEW_TREE = "view_tree"

Definition at line 560 of file class.ilObjStudyProgrammeGUI.php.

◆ TAB_INFO

const ilObjStudyProgrammeGUI::TAB_INFO = "info_short"

Definition at line 561 of file class.ilObjStudyProgrammeGUI.php.

◆ TAB_MEMBERS

const ilObjStudyProgrammeGUI::TAB_MEMBERS = "members"

Definition at line 563 of file class.ilObjStudyProgrammeGUI.php.

◆ TAB_METADATA

const ilObjStudyProgrammeGUI::TAB_METADATA = "edit_advanced_settings"

Definition at line 564 of file class.ilObjStudyProgrammeGUI.php.

◆ TAB_SETTINGS

const ilObjStudyProgrammeGUI::TAB_SETTINGS = "settings"

Definition at line 562 of file class.ilObjStudyProgrammeGUI.php.

◆ TAB_SUBTYPES

const ilObjStudyProgrammeGUI::TAB_SUBTYPES = "subtypes"

Definition at line 565 of file class.ilObjStudyProgrammeGUI.php.

◆ TAB_VIEW_CONTENT

const ilObjStudyProgrammeGUI::TAB_VIEW_CONTENT = "view_content"

Definition at line 559 of file class.ilObjStudyProgrammeGUI.php.


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