Bolt\Controller\Backend\Users::getUserForm PHP Method

getUserForm() private method

Create a user form with the form builder.
private getUserForm ( Bolt\Storage\Entity\Users $user, boolean $addusername = false ) : FormBuilder
$user Bolt\Storage\Entity\Users
$addusername boolean
return Symfony\Component\Form\FormBuilder
    private function getUserForm(Entity\Users $user, $addusername = false)
    {
        // Start building the form
        $form = $this->createFormBuilder(FormType::class, $user);
        // Username goes first
        if ($addusername) {
            $form->add('username', TextType::class, ['constraints' => [new Assert\NotBlank(), new Assert\Length(['min' => 2, 'max' => 32])], 'label' => Trans::__('page.edit-users.label.username'), 'attr' => ['placeholder' => Trans::__('page.edit-users.placeholder.username')]]);
        }
        // Add the other fields. Regarding the autocomplete on the passwords,
        // see: https://bugs.chromium.org/p/chromium/issues/detail?id=468153#c150
        $form->add('id', HiddenType::class)->add('password', PasswordType::class, ['required' => false, 'label' => Trans::__('page.edit-users.label.password'), 'attr' => ['placeholder' => Trans::__('page.edit-users.placeholder.password'), 'autocomplete' => 'new-password']])->add('password_confirmation', PasswordType::class, ['required' => false, 'label' => Trans::__('page.edit-users.label.password-confirm'), 'attr' => ['placeholder' => Trans::__('page.edit-users.placeholder.password-confirm'), 'autocomplete' => 'new-password']])->add('email', TextType::class, ['constraints' => new Assert\Email(), 'label' => Trans::__('page.edit-users.label.email'), 'attr' => ['placeholder' => Trans::__('page.edit-users.placeholder.email')]])->add('displayname', TextType::class, ['constraints' => [new Assert\NotBlank(), new Assert\Length(['min' => 2, 'max' => 32])], 'label' => Trans::__('page.edit-users.label.display-name'), 'attr' => ['placeholder' => Trans::__('page.edit-users.placeholder.displayname')]]);
        return $form;
    }