<?php
declare(strict_types=1);
namespace App\Admin;
use App\Admin\TabMenu\ModuloMaestrosTabMenuAdmin;
use Knp\Menu\ItemInterface;
use Sonata\AdminBundle\Admin\AbstractAdmin;
use Sonata\AdminBundle\Admin\AdminInterface;
use Sonata\AdminBundle\Datagrid\ListMapper;
use Sonata\AdminBundle\Form\FormMapper;
use Symfony\Component\Form\Extension\Core\Type\CountryType;
final class VatAdmin extends AbstractAdmin
{
public function __construct(?string $code = null, ?string $class = null, ?string $baseControllerName = null,
private ModuloMaestrosTabMenuAdmin $moduloMaestrosTabMenuAdmin
)
{
parent::__construct($code, $class, $baseControllerName);
}
protected function configureTabMenu(ItemInterface $menu, string $action, ?AdminInterface $childAdmin = null): void
{
$this->moduloMaestrosTabMenuAdmin->configureTabMenu($this, $menu, $action, $childAdmin);
parent::configureTabMenu($menu, $action, $childAdmin); // TODO: Change the autogenerated stub
}
protected function configureListFields(ListMapper $list): void
{
$this->setTranslationDomain('vatAdmin');
$list
->add('pais', null, [
'label' => 'list.vat.label.pais',
'identifier' => true,
'route' => [
'name' => 'edit'
]
])
->add('vat', null, [
'label' => 'list.vat.label.vat',
'template' => 'admin/CRUD/list_field_percent.html.twig'
])
// ->add(ListMapper::NAME_ACTIONS, null, [
// 'actions' => [
// 'show' => [],
// 'edit' => [],
// 'delete' => [],
// ],
// ]);
;
}
protected function configureFormFields(FormMapper $form): void
{
$this->setTranslationDomain('vatAdmin');
$form
->add('pais', CountryType::class, [
'label' => false,
'placeholder' => 'form.vat.placeholder.pais',
'translation_domain' => 'vatAdmin',
])
->add('vat', null, [
'label' => false,
'attr' => [
'class' => 'numeric percents',
'placeholder' => 'form.vat.placeholder.vat',
],
'translation_domain' => 'vatAdmin',
])
;
}
}