mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-28 13:06:13 +00:00
45 lines
1.3 KiB
PHP
45 lines
1.3 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/*
|
|
* Chill is a software for social workers
|
|
*
|
|
* For the full copyright and license information, please view
|
|
* the LICENSE file that was distributed with this source code.
|
|
*/
|
|
|
|
namespace Chill\EventBundle\Controller;
|
|
|
|
use Chill\MainBundle\CRUD\Controller\CRUDController;
|
|
use Chill\MainBundle\Pagination\PaginatorInterface;
|
|
use Doctrine\ORM\QueryBuilder;
|
|
use Symfony\Component\Form\FormInterface;
|
|
use Symfony\Component\HttpFoundation\Request;
|
|
|
|
class EventThemeController extends CRUDController
|
|
{
|
|
protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface
|
|
{
|
|
if ('new' === $action) {
|
|
return parent::createFormFor($action, $entity, $formClass, ['step' => 'create']);
|
|
}
|
|
|
|
if ('edit' === $action) {
|
|
return parent::createFormFor($action, $entity, $formClass, ['step' => 'edit']);
|
|
}
|
|
|
|
throw new \LogicException('action is not supported: '.$action);
|
|
}
|
|
|
|
/**
|
|
* @param QueryBuilder|mixed $query
|
|
*/
|
|
protected function orderQuery(string $action, $query, Request $request, PaginatorInterface $paginator): QueryBuilder
|
|
{
|
|
/* @var QueryBuilder $query */
|
|
return $query->orderBy('e.ordering', 'ASC')
|
|
->addOrderBy('e.id', 'ASC');
|
|
}
|
|
}
|