19 declare(strict_types=1);
52 ?
string $byline = null
54 $this->checkArgListElements(
'inputs', $inputs, [
I\Group::class]);
63 if ($this->requirement_constraint !== null) {
98 "Expected one key and a group value or one key only as value." 99 .
" got '" . print_r(
$value,
true) .
"' instead." 102 list($key, $group_value) =
$value;
106 $clone->setInputs($clone->getInputsWithOperationForKey($key, fn($i) => $i->withValue($group_value)));
120 $input = $this->
getInputs()[$key] ?? null;
121 if (null === $input) {
125 return [$key, $input->getValue()];
133 if ($this->
getName() === null) {
134 throw new LogicException(
"Can only collect if input has a name.");
138 $clone = clone $this;
142 $clone->content = $clone->data_factory->error($this->
lng->txt(
"ui_error_switchable_group_required"));
143 return $clone->withError(
"" . $clone->content->error());
146 $clone->content = $clone->data_factory->ok([$key, []]);
151 $clone = $clone->withValue($key);
152 $clone->setInputs($clone->getInputsWithOperationForKey($key, fn($i) => $i->withInput($input)));
157 if (!array_key_exists($key,
$inputs)) {
158 $clone->content = $clone->data_factory->ok([$key, []]);
163 $clone->content = $clone->data_factory->error($this->
lng->txt(
"ui_error_in_group"));
169 $content = $group_input->getContent();
176 if ($clone->content->isError()) {
177 return $clone->withError(
"" . $clone->content->error());
191 if (!array_key_exists($key,
$inputs)) {
200 $clone = clone $this;
201 $clone->disabled_group_switch = $flag;
isOK()
Get to know if the result is ok.
value()
Get the encapsulated value.
Interface Observer Contains several chained tasks and infos about them.
trait JavaScriptBindable
Trait for components implementing JavaScriptBindable providing standard implementation.
A constraint encodes some resrtictions on values.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
__construct(Container $dic, ilPlugin $plugin)