configure cruds

This commit is contained in:
Simon Vieille 2022-03-06 19:12:11 +01:00
parent fd0205d313
commit 6df0000382
13 changed files with 117 additions and 64 deletions

View file

@ -1,6 +1,6 @@
core:
site:
name: "Murph"
name: "Tinternet & Cie - Suivi des interventions"
logo: "build/images/core/logo.svg"
# controllers:
# - {name: 'Foo', action: 'App\Controller\ExampleController::foo'}

View file

@ -85,10 +85,10 @@ class EstablishmentAdminController extends CrudController
protected function getConfiguration(): CrudConfiguration
{
return CrudConfiguration::create()
->setPageTitle('index', 'List of App\Entity\Establishment')
->setPageTitle('edit', 'Edition of {id}')
->setPageTitle('new', 'New App\Entity\Establishment')
->setPageTitle('show', 'View of {id}')
->setPageTitle('index', 'Établissements')
->setPageTitle('edit', '{name}')
->setPageTitle('new', 'Nouveau établissement')
->setPageTitle('show', '{name}')
->setPageRoute('index', 'admin_establishment_index')
->setPageRoute('new', 'admin_establishment_new')
@ -109,24 +109,27 @@ class EstablishmentAdminController extends CrudController
// ->setSortableCollectionProperty('sortOrder')
// ->setAction('index', 'new', true)
// ->setAction('index', 'show', true)
->setAction('index', 'show', false)
// ->setAction('index', 'edit', true)
// ->setAction('index', 'delete', true)
// ->setAction('edit', 'back', true)
// ->setAction('edit', 'show', true)
->setAction('edit', 'show', false)
// ->setAction('edit', 'delete', true)
// ->setAction('show', 'back', true)
// ->setAction('show', 'edit', true)
// ->setField('index', 'Label', Field\TextField::class, [
// 'property' => 'label',
// ])
->setDefaultSort('index', 'name')
// ->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
// $manager->delete($entity);
// })
->setField('index', 'Nom', Field\TextField::class, [
'property' => 'name',
'sort' => ['name', '.name'],
])
->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
$manager->delete($entity);
})
;
}

View file

@ -85,10 +85,10 @@ class InterventionAdminController extends CrudController
protected function getConfiguration(): CrudConfiguration
{
return CrudConfiguration::create()
->setPageTitle('index', 'List of App\Entity\Intervention')
->setPageTitle('edit', 'Edition of {id}')
->setPageTitle('new', 'New App\Entity\Intervention')
->setPageTitle('show', 'View of {id}')
->setPageTitle('index', 'Interventions')
->setPageTitle('edit', 'Intervention {id}')
->setPageTitle('new', 'Nouvelle intervention')
->setPageTitle('show', 'Intervention {id}')
->setPageRoute('index', 'admin_intervention_index')
->setPageRoute('new', 'admin_intervention_new')
@ -109,24 +109,36 @@ class InterventionAdminController extends CrudController
// ->setSortableCollectionProperty('sortOrder')
// ->setAction('index', 'new', true)
// ->setAction('index', 'show', true)
->setAction('index', 'show', false)
// ->setAction('index', 'edit', true)
// ->setAction('index', 'delete', true)
// ->setAction('edit', 'back', true)
// ->setAction('edit', 'show', true)
->setAction('edit', 'show', false)
// ->setAction('edit', 'delete', true)
// ->setAction('show', 'back', true)
// ->setAction('show', 'edit', true)
// ->setField('index', 'Label', Field\TextField::class, [
// 'property' => 'label',
// ])
->setDefaultSort('index', 'date', 'desc')
// ->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
// $manager->delete($entity);
// })
->setField('index', 'Establishment', Field\TextField::class, [
'property' => 'establishment',
'sort' => ['establishment', '.establishment'],
])
->setField('index', 'Speaker', Field\TextField::class, [
'property' => 'speaker',
'sort' => ['speaker', '.speaker'],
'attr' => ['class' => 'col-3,']
])
->setField('index', 'Date', Field\DateField::class, [
'property' => 'date',
'sort' => ['date', '.date'],
])
->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
$manager->delete($entity);
})
;
}

View file

@ -85,10 +85,10 @@ class SpeakerAdminController extends CrudController
protected function getConfiguration(): CrudConfiguration
{
return CrudConfiguration::create()
->setPageTitle('index', 'List of App\Entity\Speaker')
->setPageTitle('edit', 'Edition of {id}')
->setPageTitle('new', 'New App\Entity\Speaker')
->setPageTitle('show', 'View of {id}')
->setPageTitle('index', 'Intervenant⋅e⋅s')
->setPageTitle('edit', '{name}')
->setPageTitle('new', 'Nouvelle·au intervenant⋅e')
->setPageTitle('show', '{name}')
->setPageRoute('index', 'admin_speaker_index')
->setPageRoute('new', 'admin_speaker_new')
@ -109,24 +109,27 @@ class SpeakerAdminController extends CrudController
// ->setSortableCollectionProperty('sortOrder')
// ->setAction('index', 'new', true)
// ->setAction('index', 'show', true)
->setAction('index', 'show', false)
// ->setAction('index', 'edit', true)
// ->setAction('index', 'delete', true)
// ->setAction('edit', 'back', true)
// ->setAction('edit', 'show', true)
->setAction('edit', 'show', false)
// ->setAction('edit', 'delete', true)
// ->setAction('show', 'back', true)
// ->setAction('show', 'edit', true)
// ->setField('index', 'Label', Field\TextField::class, [
// 'property' => 'label',
// ])
->setDefaultSort('index', 'name')
// ->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
// $manager->delete($entity);
// })
->setField('index', 'Name', Field\TextField::class, [
'property' => 'name',
'sort' => ['name', '.name'],
])
->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
$manager->delete($entity);
})
;
}

View file

@ -85,10 +85,10 @@ class ToolAdminController extends CrudController
protected function getConfiguration(): CrudConfiguration
{
return CrudConfiguration::create()
->setPageTitle('index', 'List of App\Entity\Tool')
->setPageTitle('edit', 'Edition of {id}')
->setPageTitle('new', 'New App\Entity\Tool')
->setPageTitle('show', 'View of {id}')
->setPageTitle('index', 'Outils et supports')
->setPageTitle('edit', '{label}')
->setPageTitle('new', 'Nouvel outil')
->setPageTitle('show', '{label}')
->setPageRoute('index', 'admin_tool_index')
->setPageRoute('new', 'admin_tool_new')
@ -109,24 +109,25 @@ class ToolAdminController extends CrudController
// ->setSortableCollectionProperty('sortOrder')
// ->setAction('index', 'new', true)
// ->setAction('index', 'show', true)
->setAction('index', 'show', false)
// ->setAction('index', 'edit', true)
// ->setAction('index', 'delete', true)
// ->setAction('edit', 'back', true)
// ->setAction('edit', 'show', true)
->setAction('edit', 'show', false)
// ->setAction('edit', 'delete', true)
// ->setAction('show', 'back', true)
// ->setAction('show', 'edit', true)
// ->setField('index', 'Label', Field\TextField::class, [
// 'property' => 'label',
// ])
->setField('index', 'Label', Field\TextField::class, [
'property' => 'label',
'sort' => ['label', '.label'],
])
// ->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
// $manager->delete($entity);
// })
->setBatchAction('index', 'delete', 'Delete', function(EntityInterface $entity, EntityManager $manager) {
$manager->delete($entity);
})
;
}

View file

@ -50,6 +50,11 @@ class Establishment implements EntityInterface
$this->interventions = new ArrayCollection();
}
public function __toString()
{
return $this->getName();
}
public function getId(): ?int
{
return $this->id;

View file

@ -35,6 +35,11 @@ class Speaker implements EntityInterface
$this->interventions = new ArrayCollection();
}
public function __toString()
{
return $this->getName();
}
public function getId(): ?int
{
return $this->id;

View file

@ -4,9 +4,9 @@ namespace App\Repository;
use App\Core\Repository\RepositoryQuery;
use Knp\Component\Pager\PaginatorInterface;
use App\Repository\EstablishmentRepositoryQuery as Repository;
use App\Repository\EstablishmentRepository as Repository;
class EstablishmentRepositoryQueryQuery extends RepositoryQuery
class EstablishmentRepositoryQuery extends RepositoryQuery
{
public function __construct(Repository $repository, PaginatorInterface $paginator)
{

View file

@ -4,9 +4,9 @@ namespace App\Repository;
use App\Core\Repository\RepositoryQuery;
use Knp\Component\Pager\PaginatorInterface;
use App\Repository\InterventionRepositoryQuery as Repository;
use App\Repository\InterventionRepository as Repository;
class InterventionRepositoryQueryQuery extends RepositoryQuery
class InterventionRepositoryQuery extends RepositoryQuery
{
public function __construct(Repository $repository, PaginatorInterface $paginator)
{

View file

@ -4,9 +4,9 @@ namespace App\Repository;
use App\Core\Repository\RepositoryQuery;
use Knp\Component\Pager\PaginatorInterface;
use App\Repository\SpeakerRepositoryQuery as Repository;
use App\Repository\SpeakerRepository as Repository;
class SpeakerRepositoryQueryQuery extends RepositoryQuery
class SpeakerRepositoryQuery extends RepositoryQuery
{
public function __construct(Repository $repository, PaginatorInterface $paginator)
{

View file

@ -4,9 +4,9 @@ namespace App\Repository;
use App\Core\Repository\RepositoryQuery;
use Knp\Component\Pager\PaginatorInterface;
use App\Repository\ToolRepositoryQuery as Repository;
use App\Repository\ToolRepository as Repository;
class ToolRepositoryQueryQuery extends RepositoryQuery
class ToolRepositoryQuery extends RepositoryQuery
{
public function __construct(Repository $repository, PaginatorInterface $paginator)
{

View file

@ -1,14 +1,33 @@
{#
{% if is_granted('ROLE_WRITER') %}
{{ include('@Core/admin/module/_menu_section.html.twig', {label: 'Blog'}) }}
{{ include('@Core/admin/module/_menu_section.html.twig', {label: 'Interventions'}) }}
<ul class="nav flex-column">
{{ include('@Core/admin/module/_menu_item.html.twig', {
id: 'post',
label: 'Posts',
route: path('admin_post_index'),
icon: 'fa fa-pen'
id: 'speaker',
label: 'Intervenant⋅e⋅s',
route: path('admin_speaker_index'),
icon: 'fa fa-users'
}) }}
{{ include('@Core/admin/module/_menu_item.html.twig', {
id: 'establishment',
label: 'Établissements',
route: path('admin_establishment_index'),
icon: 'fa fa-building'
}) }}
{{ include('@Core/admin/module/_menu_item.html.twig', {
id: 'tool',
label: 'Outils et supports',
route: path('admin_tool_index'),
icon: 'fa fa-dice-d6'
}) }}
{{ include('@Core/admin/module/_menu_item.html.twig', {
id: 'intervention',
label: 'Interventions',
route: path('admin_intervention_index'),
icon: 'fa fa-comment-dots'
}) }}
</ul>
{% endif %}
#}

View file

@ -0,0 +1,5 @@
"Address": "Adresse"
"Zip code": "Code postal"
"City": "Ville"
"Speaker": "Intervenant⋅e"
"Establishment": "Établissement"