From 7408dc9d1a3ad3ff38293494de09c51964ad827d Mon Sep 17 00:00:00 2001 From: Matt Edholm Date: Mon, 4 May 2026 21:30:02 -0400 Subject: [PATCH] fix: render plainPassword first/second fields separately in setup form RepeatedType renders as a wrapper div when called as a single widget, producing unstyled inputs with no mismatch error handling. Co-Authored-By: Claude Sonnet 4.6 --- templates/setup/index.html.twig | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/templates/setup/index.html.twig b/templates/setup/index.html.twig index bdd5f93..612e020 100644 --- a/templates/setup/index.html.twig +++ b/templates/setup/index.html.twig @@ -52,9 +52,21 @@ {% endfor %}
- {{ form_label(reg_form.plainPassword) }} - {{ form_widget(reg_form.plainPassword, {attr: { + {{ form_label(reg_form.plainPassword.first) }} + {{ form_widget(reg_form.plainPassword.first, {attr: { id: 'reg-pass', + autocomplete: 'new-password', + 'aria-invalid': reg_form.plainPassword.first.vars.errors|length > 0 ? 'true' : 'false' + }}) }} + {% for error in reg_form.plainPassword.first.vars.errors %} + + {% endfor %} +
+
+ {{ form_label(reg_form.plainPassword.second) }} + {{ form_widget(reg_form.plainPassword.second, {attr: { + id: 'reg-pass-confirm', + autocomplete: 'new-password', 'aria-invalid': reg_form.plainPassword.vars.errors|length > 0 ? 'true' : 'false' }}) }} {% for error in reg_form.plainPassword.vars.errors %}