added password field
This commit is contained in:
		@@ -3,12 +3,15 @@
 | 
				
			|||||||
namespace App\Controller\Admin;
 | 
					namespace App\Controller\Admin;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Entity\User;
 | 
					use App\Entity\User;
 | 
				
			||||||
 | 
					use EasyCorp\Bundle\EasyAdminBundle\Config\Crud;
 | 
				
			||||||
use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController;
 | 
					use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController;
 | 
				
			||||||
use EasyCorp\Bundle\EasyAdminBundle\Field\ChoiceField;
 | 
					use EasyCorp\Bundle\EasyAdminBundle\Field\ChoiceField;
 | 
				
			||||||
use EasyCorp\Bundle\EasyAdminBundle\Field\EmailField;
 | 
					use EasyCorp\Bundle\EasyAdminBundle\Field\EmailField;
 | 
				
			||||||
use EasyCorp\Bundle\EasyAdminBundle\Field\IdField;
 | 
					use EasyCorp\Bundle\EasyAdminBundle\Field\IdField;
 | 
				
			||||||
use EasyCorp\Bundle\EasyAdminBundle\Field\ImageField;
 | 
					use EasyCorp\Bundle\EasyAdminBundle\Field\ImageField;
 | 
				
			||||||
use EasyCorp\Bundle\EasyAdminBundle\Field\TextField;
 | 
					use EasyCorp\Bundle\EasyAdminBundle\Field\TextField;
 | 
				
			||||||
 | 
					use Symfony\Component\Form\Extension\Core\Type\PasswordType;
 | 
				
			||||||
 | 
					use Symfony\Component\Form\Extension\Core\Type\RepeatedType;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class UserCrudController extends AbstractCrudController
 | 
					class UserCrudController extends AbstractCrudController
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -19,16 +22,27 @@ class UserCrudController extends AbstractCrudController
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    public function configureFields(string $pageName): iterable
 | 
					    public function configureFields(string $pageName): iterable
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					        $roles = ['ROLE_FOUNDER', 'ROLE_ADMIN', 'ROLE_MODERATOR', 'ROLE_USER'];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        yield IdField::new(propertyName: 'id')
 | 
					        yield IdField::new(propertyName: 'id')
 | 
				
			||||||
            ->onlyOnIndex();
 | 
					            ->onlyOnIndex();
 | 
				
			||||||
        yield TextField::new(propertyName: 'firstName');
 | 
					        yield TextField::new(propertyName: 'firstName');
 | 
				
			||||||
        yield TextField::new(propertyName: 'lastName');
 | 
					        yield TextField::new(propertyName: 'lastName');
 | 
				
			||||||
        yield EmailField::new(propertyName: 'email');
 | 
					        yield EmailField::new(propertyName: 'email');
 | 
				
			||||||
 | 
					        yield TextField::new('password')
 | 
				
			||||||
 | 
					            ->setFormType(RepeatedType::class)
 | 
				
			||||||
 | 
					            ->setFormTypeOptions([
 | 
				
			||||||
 | 
					                'type' => PasswordType::class,
 | 
				
			||||||
 | 
					                'first_options' => ['label' => 'Password'],
 | 
				
			||||||
 | 
					                'second_options' => ['label' => 'Password (Repeat)'],
 | 
				
			||||||
 | 
					                'mapped' => false,
 | 
				
			||||||
 | 
					            ])
 | 
				
			||||||
 | 
					            ->setRequired($pageName === Crud::PAGE_NEW)
 | 
				
			||||||
 | 
					            ->onlyOnForms();
 | 
				
			||||||
        yield ImageField::new(propertyName: 'avatar')
 | 
					        yield ImageField::new(propertyName: 'avatar')
 | 
				
			||||||
            ->setBasePath(path: 'uploads/avatars')
 | 
					            ->setBasePath(path: 'uploads/avatars')
 | 
				
			||||||
            ->setUploadDir(uploadDirPath: 'public/uploads/avatars')
 | 
					            ->setUploadDir(uploadDirPath: 'public/uploads/avatars')
 | 
				
			||||||
            ->setUploadedFileNamePattern(patternOrCallable: '[slug]-[timestamp].[extension]');
 | 
					            ->setUploadedFileNamePattern(patternOrCallable: '[slug]-[timestamp].[extension]');
 | 
				
			||||||
        $roles = ['ROLE_FOUNDER', 'ROLE_ADMIN', 'ROLE_MODERATOR', 'ROLE_USER'];
 | 
					 | 
				
			||||||
        yield ChoiceField::new(propertyName: 'roles')
 | 
					        yield ChoiceField::new(propertyName: 'roles')
 | 
				
			||||||
            ->setChoices(choiceGenerator: array_combine(keys: $roles, values: $roles))
 | 
					            ->setChoices(choiceGenerator: array_combine(keys: $roles, values: $roles))
 | 
				
			||||||
            ->allowMultipleChoices()
 | 
					            ->allowMultipleChoices()
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user