Passwords (when setting) usually have some constraints.
6{
7
9 $ui =
$DIC->ui()->factory();
11 $renderer =
$DIC->ui()->renderer();
12 $request =
$DIC->http()->request();
13 $data = new \ILIAS\Data\Factory();
14 $refinery = new \ILIAS\Refinery\Factory(
$data,
$lng);
15 $pw_validation = $refinery->password();
16
17
18
19 $pwd_input = $ui->input()->field()->password("Password", "constraints in place.")
20 ->withAdditionalTransformation(
21 $refinery->logical()->parallel([
22 $pw_validation->hasMinLength(8),
23 $pw_validation->hasLowerChars(),
24 $pw_validation->hasUpperChars(),
25 $pw_validation->hasNumbers(),
26 $pw_validation->hasSpecialChars()
27 ])
28 );
29
30
31 $form = $ui->input()->container()->form()->standard('#', ['pwd' => $pwd_input]);
32
33
35 if ($request->getMethod() == "POST") {
36 $form = $form->withRequest($request);
38 }
39
40
41 return
42 "<pre>" . print_r(
$result,
true) .
"</pre><br/>" .
43 $renderer->render($form);
44}