diff --git a/src/Controller/UserController.php b/src/Controller/UserController.php index 43b98a03..c0b8e0ec 100644 --- a/src/Controller/UserController.php +++ b/src/Controller/UserController.php @@ -241,6 +241,8 @@ final class UserController extends AbstractController 'include_active_flag' => true, 'include_preferences' => $this->isGranted('preferences', $user), 'include_add_more' => true, + 'include_teams' => $this->isGranted('teams_other_profile'), + 'include_roles' => $this->isGranted('roles_other_profile'), ]); } } diff --git a/src/Form/UserCreateType.php b/src/Form/UserCreateType.php index 425cf1a2..d738fd0d 100644 --- a/src/Form/UserCreateType.php +++ b/src/Form/UserCreateType.php @@ -9,6 +9,8 @@ namespace App\Form; +use App\Form\Type\TeamType; +use App\Form\Type\UserRoleType; use Symfony\Component\Form\Extension\Core\Type\CheckboxType; use Symfony\Component\Form\Extension\Core\Type\PasswordType; use Symfony\Component\Form\Extension\Core\Type\RepeatedType; @@ -42,6 +44,24 @@ class UserCreateType extends UserEditType parent::buildForm($builder, $options); + if ($options['include_teams'] === true) { + $builder + ->add('teams', TeamType::class, [ + 'multiple' => true, + 'expanded' => false, + 'required' => false, + ]); + } + + if ($options['include_roles'] === true) { + $builder + ->add('roles', UserRoleType::class, [ + 'multiple' => true, + 'expanded' => false, + 'required' => false, + ]); + } + if ($options['include_add_more'] === true) { $builder->add('create_more', CheckboxType::class, [ 'label' => 'label.create_more', @@ -58,6 +78,8 @@ class UserCreateType extends UserEditType $resolver->setDefaults([ 'validation_groups' => ['UserCreate', 'Registration'], 'include_add_more' => false, + 'include_roles' => false, + 'include_teams' => false, ]); } } diff --git a/templates/user/create.html.twig b/templates/user/create.html.twig index 57c970c7..bab9e1e8 100644 --- a/templates/user/create.html.twig +++ b/templates/user/create.html.twig @@ -11,6 +11,67 @@ } %} {% embed formEditTemplate with formOptions %} {% block form_body %} +