3 declare(strict_types=1);
    47         $this->
ctrl = $DIC[
'ilCtrl'];
    52         $this->ui_factory = $DIC[
'ui.factory'];
    53         $this->ui_renderer = $DIC[
'ui.renderer'];
    55         $this->request = $DIC->http()->request();
    60         $this->tabs_gui->addTarget(
'settings', $this->
ctrl->getLinkTargetByClass(self::class, self::CMD_EDIT));
    61         if ($this->rbac_system->checkAccess(
'edit_permission', $this->object->getRefId())) {
    62             $this->tabs_gui->addTarget(
'perm_settings', $this->
ctrl->getLinkTargetByClass(
'ilpermissiongui', 
'perm'), array(), 
'ilpermissiongui');
    69         $next_class = $this->
ctrl->getNextClass($this);
    70         $cmd = $this->
ctrl->getCmd();
    73         switch ($next_class) {
    74             case 'ilpermissiongui':
    75                 $this->tabs_gui->setTabActive(
'perm_settings');
    77                 $this->
ctrl->forwardCommand($perm_gui);
    90                         throw new Exception(__METHOD__ . 
" :: Unknown command " . $cmd);
    95     protected function getForm(array $values = []): 
Input\Container\Form\Form
    97         $target = $this->
ctrl->getLinkTargetByClass(self::class, self::CMD_SAVE);
    98         $poll_interval = $this->ui_factory->input()->field()->numeric(
    99             $this->
lng->txt(
"lso_admin_interval_label"),
   100             $this->
lng->txt(
"lso_admin_interval_byline")
   103             $this->
refinery->int()->isGreaterThan(0)
   106             $this->
refinery->custom()->transformation(
   107                 fn ($v) => (
float) $v
   111         if (isset($values[self::F_POLL_INTERVAL])) {
   112             $poll_interval = $poll_interval->withValue($values[self::F_POLL_INTERVAL]);
   115         $section = $this->ui_factory->input()->field()->section(
   116             [self::F_POLL_INTERVAL => $poll_interval],
   117             $this->
lng->txt(
"lso_admin_form_title"),
   118             $this->
lng->txt(
"lso_admin_form_byline")
   121         return $this->ui_factory->input()->container()->form()
   122             ->standard($target, [$section])
   123             ->withAdditionalTransformation(
   124                 $this->
refinery->custom()->transformation(
   130     protected function show(
Input\Container\Form\Form $form): void
   132         $this->tpl->setContent(
   133             $this->ui_renderer->render($form)
   137     protected function edit(): void
   140             self::F_POLL_INTERVAL => $this->settings_db->getSettings()->getPollingIntervalSeconds()
   142         $form = $this->
getForm($values);
   146     protected function save(): void
   148         $form = $this->
getForm()->withRequest($this->request);
   149         $data = $form->getData();
   151             $settings = $this->settings_db->getSettings()
   152                 ->withPollingIntervalSeconds(
$data[self::F_POLL_INTERVAL]);
   153             $this->settings_db->storeSettings(
$settings);
   154             $this->tpl->setOnScreenMessage(
'success', $this->
lng->txt(
"settings_saved"), 
true);
 __construct($data, int $id, bool $call_by_reference=true, bool $prepare_output=true)
 
LearningSequence Administration Settings. 
 
prepareOutput(bool $show_sub_objects=true)
 
ILIAS Refinery Factory $refinery
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
ilLSGlobalSettingsDB $settings_db
 
Class ilObjectGUI Basic methods of all Output classes. 
 
__construct(Container $dic, ilPlugin $plugin)
 
show(Input\Container\Form\Form $form)
 
checkPermission(string $perm, string $cmd="", string $type="", ?int $ref_id=null)
 
getForm(array $values=[])