From be264ca1b5c64d9dd641bb6294e9cf6d852dfa45 Mon Sep 17 00:00:00 2001 From: Keven Clausen Date: Sun, 8 Feb 2026 10:13:20 +0100 Subject: [PATCH 1/2] Fix Edit Permission in Settings --- .../classes/class.ilObjLearningSequenceAdminGUI.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php b/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php index 582cbcd217bf..1cb2610d1123 100755 --- a/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php +++ b/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php @@ -107,6 +107,9 @@ protected function getForm(array $values = []): Input\Container\Form\Form fn ($v) => (float) $v ) ); + if(!$this->_checkPermission('edit_permission')) { + $poll_interval = $poll_interval->withDisabled(true); + } if (isset($values[self::F_POLL_INTERVAL])) { $poll_interval = $poll_interval->withValue($values[self::F_POLL_INTERVAL]); @@ -145,6 +148,11 @@ protected function edit(): void protected function save(): void { + if(!$this->_checkPermission('edit_permission')) { + $this->tpl->setOnScreenMessage('failure', $this->lng->txt('no_permission')); + $this->edit(); + return; + } $form = $this->getForm()->withRequest($this->request); $data = $form->getData(); if ($data) { @@ -155,4 +163,7 @@ protected function save(): void } $this->show($form); } + public function _checkPermission(string $permission): bool { + return $this->rbac_system->checkAccess($permission, $this->object->getRefId()); + } } From ea5d70560b0cf1067ce3923d483aa7cff9ceef5e Mon Sep 17 00:00:00 2001 From: Keven Clausen Date: Sun, 8 Feb 2026 10:22:49 +0100 Subject: [PATCH 2/2] CS Fixer --- .../classes/class.ilObjLearningSequenceAdminGUI.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php b/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php index 1cb2610d1123..bf3cc48e2bdb 100755 --- a/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php +++ b/components/ILIAS/LearningSequence/classes/class.ilObjLearningSequenceAdminGUI.php @@ -104,10 +104,10 @@ protected function getForm(array $values = []): Input\Container\Form\Form ) ->withAdditionalTransformation( $this->refinery->custom()->transformation( - fn ($v) => (float) $v + fn($v) => (float) $v ) ); - if(!$this->_checkPermission('edit_permission')) { + if (!$this->_checkPermission('edit_permission')) { $poll_interval = $poll_interval->withDisabled(true); } @@ -125,7 +125,7 @@ protected function getForm(array $values = []): Input\Container\Form\Form ->standard($target, [$section]) ->withAdditionalTransformation( $this->refinery->custom()->transformation( - fn ($data) => array_shift($data) + fn($data) => array_shift($data) ) ); } @@ -148,7 +148,7 @@ protected function edit(): void protected function save(): void { - if(!$this->_checkPermission('edit_permission')) { + if (!$this->_checkPermission('edit_permission')) { $this->tpl->setOnScreenMessage('failure', $this->lng->txt('no_permission')); $this->edit(); return; @@ -163,7 +163,8 @@ protected function save(): void } $this->show($form); } - public function _checkPermission(string $permission): bool { + public function _checkPermission(string $permission): bool + { return $this->rbac_system->checkAccess($permission, $this->object->getRefId()); } }