3 declare(strict_types=1);
14 $ui = $DIC->ui()->factory();
15 $renderer = $DIC->ui()->renderer();
16 $request = $DIC->http()->request();
19 $sum =
$refinery->custom()->transformation(
function ($vs) {
22 return "$l + $r = $s";
25 $from_name =
$refinery->custom()->transformation(
function ($v) {
29 case "three":
return 3;
30 case "four":
return 4;
31 case "five":
return 5;
33 case "seven":
return 7;
34 case "eight":
return 8;
35 case "nine":
return 9;
36 case "ten":
return 10;
38 throw new \LogicException(
"PANIC!");
42 $valid_number =
$refinery->custom()->constraint(
function ($v) {
43 return in_array($v, [
"one",
"two",
"three",
"four",
"five",
"six",
"seven",
"eight",
"nine",
"ten"]);
44 },
"This is not a number I know...");
48 $number_input = $ui->input()->field()
49 ->text(
"number",
"Put in the name of a number from one to ten.")
50 ->withAdditionalTransformation($valid_number)
51 ->withAdditionalTransformation($from_name);
54 $DIC->ctrl()->setParameterByClass(
55 'ilsystemstyledocumentationgui',
59 $form_action = $DIC->ctrl()->getFormActionByClass(
'ilsystemstyledocumentationgui');
63 $form = $ui->input()->container()->form()->standard(
65 [ $number_input->withLabel(
"Left")
66 , $number_input->withLabel(
"Right")
71 if ($request->getMethod() ==
"POST" 72 && $request->getQueryParams()[
'example_name'] ==
'data_processing') {
73 $form = $form->withRequest($request);
74 $result = $form->getData();
76 $result =
"No result yet.";
81 "<pre>" . print_r($result,
true) .
"</pre><br/>" .
82 $renderer->render($form);
Refinery Factory $refinery