|
- <?php
-
- namespace App\Controller\Admin\Site;
-
- use App\Container\Site\BlockContainer;
- use App\Controller\AbstractAdminController;
- use App\Entity\Site\Block;
- use App\Field\TranslationField;
- use EasyCorp\Bundle\EasyAdminBundle\Field\TextareaField;
- use EasyCorp\Bundle\EasyAdminBundle\Field\TextField;
- use FOS\CKEditorBundle\Form\Type\CKEditorType;
- use Lc\SovBundle\Field\BooleanField;
- use Lc\SovBundle\Field\CKEditorField;
- use Lc\SovBundle\Field\ImageManagerField;
- use Lc\SovBundle\Field\StatusField;
- use Lc\SovBundle\Form\Common\FileManagerType;
- use Lc\SovBundle\Repository\RepositoryQueryInterface;
- use Symfony\Component\Form\Extension\Core\Type\TextareaType;
-
- class BlockAdminController extends AbstractAdminController
- {
- public static function getEntityFqcn(): string
- {
- return Block::class;
- }
-
- public function getRepositoryQuery(): RepositoryQueryInterface
- {
- return $this->getBlockContainer()->getRepositoryQuery();
- }
-
- public function createEntity(string $entityFqcn)
- {
- return $this->getBlockContainer()->getFactory()->create();
- }
-
- public function configureFields(string $pageName): iterable
- {
- if ($this->isGranted("ROLE_SUPER_ADMIN")) {
- $fields[] = TextField::new('devAlias');
- }
-
- $fields[] = TextField::new('page');
- $fields[] = ImageManagerField::new('image');
-
- $fieldsConfig = [
- 'title' => [
- 'field_type' => TextareaType::class,
- 'required' => true,
- 'label' => 'titre',
- ],
- 'description' => [
- 'field_type' => CKEditorType::class,
- 'required' => true,
- 'label' => 'desc',
- ],
- ];
-
- $fields[] = TranslationField::new('translations', 'Traductions', $fieldsConfig)
- ->setRequired(true)
- ->hideOnIndex();
-
- return $fields;
- }
-
- }
|