30 public function __construct($a_data, $a_id, $a_call_by_reference =
true, $a_prepare_output =
true)
34 $this->target_type =
'crs';
35 $this->reference_type =
'crsr';
36 $this->
logger = $DIC->logger()->crsr();
40 $this->
lng->loadLanguageModule(
'crs');
53 $next_class = $this->
ctrl->getNextClass($this);
54 switch ($next_class) {
55 case 'illearningprogressgui':
57 $this->tabs_gui->activateTab(
'learning_progress');
58 $lp_gui = new \ilLearningProgressGUI(
63 $this->
ctrl->forwardCommand($lp_gui);
66 parent::executeCommand();
80 if ($this->
access->checkAccess(
'write',
'', $this->object->getRefId())) {
81 $this->tabs_gui->addTab(
83 $this->
lng->txt(
'settings'),
84 $this->ctrl->getLinkTarget($this,
'edit')
89 $this->tabs_gui->addTab(
91 $this->
lng->txt(
'learning_progress'),
92 $this->ctrl->getLinkTargetByClass(
94 ilObjCourseReferenceGUI::class,
95 ilLearningProgressGUI::class
101 if ($this->
access->checkAccess(
'edit_permission',
'', $this->object->getRefId())) {
102 $this->tabs_gui->addTab(
104 $this->
lng->txt(
'perm_settings'),
105 $this->ctrl->getLinkTargetByClass(
107 ilObjCourseReferenceGUI::class,
108 ilPermissionGUI::class
121 $form = parent::initForm($a_mode);
123 if ($a_mode == self::MODE_CREATE) {
128 $this->
object->getRefId(),
129 $this->object->getTargetRefId()
133 if (!$path_info->hasParentCourse()) {
137 $access = $path_info->checkManagmentAccess();
139 $auto_update = new \ilCheckboxInputGUI($this->
lng->txt(
'crs_ref_member_update'),
'member_update');
140 $auto_update->setChecked($this->
object->isMemberUpdateEnabled());
141 $auto_update->setInfo($this->
lng->txt(
'crs_ref_member_update_info'));
142 $auto_update->setDisabled(!
$access);
155 $ok = parent::loadPropertiesFromSettingsForm(
$form);
158 $this->
object->getRefId(),
159 $this->object->getTargetRefId()
163 if ($auto_update && !$path_info->hasParentCourse()) {
167 if ($auto_update && !$path_info->checkManagmentAccess()) {
173 $this->
object->enableMemberUpdate((
bool) $form->
getInput(
'member_update'));
183 public static function _goto($a_target)
191 $target_ref_id = $a_target;
195 $target_class = \ilObjCourseReferenceGUI::class;
198 $target_class = \ilObjCourseGUI::class;
205 \ilRepositoryGUI::class,
static _lookupTargetRefId(int $a_obj_id)
static getInstanceByRefId(int $ref_id, int $target_ref_id=0)
redirectByClass( $a_class, ?string $a_cmd=null, ?string $a_anchor=null, bool $is_async=false)
@inheritDoc
setTargetScript(string $a_target_script)
@inheritDoc
setParameterByClass(string $a_class, string $a_parameter, $a_value)
@inheritDoc
static checkAccess(int $a_ref_id, bool $a_allow_only_read=true)
check access to learning progress
const LP_CONTEXT_REPOSITORY
Component logger with individual log levels by component id.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
initForm($a_mode=self::MODE_EDIT)
executeCommand()
Execute command @access public.
getTabs()
Add tabs @access public.
static _goto($a_target)
Support for goto php.
loadPropertiesFromSettingsForm(ilPropertyFormGUI $form)
__construct($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
prepareOutput(bool $show_sub_objects=true)
static _lookupObjId(int $ref_id)
checkAccess(string $a_permission, string $a_cmd, int $a_ref_id, string $a_type="", ?int $a_obj_id=null, ?int $a_tree_id=null)
check access for an object (provide $a_type and $a_obj_id if available for better performance)
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc