add('name', TextType::class, [ 'label' => 'label.name', 'attr' => [ 'autofocus' => 'autofocus' ], // documentation is for NelmioApiDocBundle 'documentation' => [ 'type' => 'string', 'description' => 'Name of the team', ], ]) ->add('teamlead', UserType::class, [ 'label' => 'label.teamlead', 'multiple' => false, 'expanded' => false, // documentation is for NelmioApiDocBundle 'documentation' => [ 'type' => 'integer', 'description' => 'User ID for the teamlead', ], ]) ->add('users', UserType::class, [ 'multiple' => true, 'expanded' => $options['expand_users'], 'by_reference' => false, 'documentation' => [ 'type' => 'array', 'items' => ['type' => 'integer', 'description' => 'User IDs'], 'title' => 'Team member', 'description' => 'Array of team member IDs', ], // make sure that disabled users show up in the result list 'include_users' => (null !== $team && $team->getUsers()->count() > 0 ? $team->getUsers()->toArray() : []) ]) ; } /** * {@inheritdoc} */ public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults([ 'data_class' => Team::class, 'csrf_protection' => true, 'csrf_field_name' => '_token', 'expand_users' => true, 'csrf_token_id' => 'admin_team_edit', 'attr' => [ 'data-form-event' => 'kimai.teamUpdate' ], ]); } }