Pagination added

This commit is contained in:
Julie Lenaerts 2022-02-09 15:10:04 +01:00 committed by Julien Fastré
parent 4304baeca5
commit e0c7daf3fd
5 changed files with 30 additions and 90 deletions

64
.env
View File

@ -1,64 +0,0 @@
##
## Manually dump .env files in .env.local.php with
## `$ composer symfony:dump-env prod`
##
## Project environment
APP_ENV=dev
## Enable debug
APP_DEBUG=true
## Locale
LOCALE=fr
## Framework secret
APP_SECRET=ThisTokenIsNotSoSecretChangeIt
## Symfony/swiftmailer
MAILER_TRANSPORT=smtp
MAILER_HOST=smtp
MAILER_PORT=1025
MAILER_CRYPT=
MAILER_AUTH=
MAILER_USER=
MAILER_PASSWORD=
MAILER_URL=${MAILER_TRANSPORT}://${MAILER_HOST}:${MAILER_PORT}?encryption=${MAILER_CRYPT}&auth_mode=${MAILER_AUTH}&username=${MAILER_USER}&password=${MAILER_PASSWORD}
## Notifications
NOTIFICATION_HOST=localhost:8001
NOTIFICATION_FROM_EMAIL=admin@chill.social
NOTIFICATION_FROM_NAME=Chill
## Gelf
GELF_HOST=gelf
GELF_PORT=12201
## OVH OpenStack Storage User/Role
OS_USERNAME=
OS_PASSWORD=
OS_TENANT_ID=
OS_REGION_NAME=GRA
OS_AUTH_URL=https://auth.cloud.ovh.net/v2.0/
## OVH OpenStack Storage Container
ASYNC_UPLOAD_TEMP_URL_KEY=
ASYNC_UPLOAD_TEMP_URL_BASE_PATH=
ASYNC_UPLOAD_TEMP_URL_CONTAINER=
## Redis Cache
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_URL=redis://${REDIS_HOST}:${REDIS_PORT}
## Twilio
TWILIO_SID=~
TWILIO_SECRET=~
## DOCKER IMAGES REGISTRY
#IMAGE_PHP=
#IMAGE_NGINX=
## DOCKER IMAGES VERSION
#VERSION=test
VERSION=prod

View File

@ -14,6 +14,7 @@ namespace Chill\DocStoreBundle\Controller;
use Chill\DocStoreBundle\Entity\AccompanyingCourseDocument; use Chill\DocStoreBundle\Entity\AccompanyingCourseDocument;
use Chill\DocStoreBundle\Form\AccompanyingCourseDocumentType; use Chill\DocStoreBundle\Form\AccompanyingCourseDocumentType;
use Chill\DocStoreBundle\Security\Authorization\AccompanyingCourseDocumentVoter; use Chill\DocStoreBundle\Security\Authorization\AccompanyingCourseDocumentVoter;
use Chill\MainBundle\Pagination\PaginatorFactory;
use Chill\MainBundle\Security\Authorization\AuthorizationHelper; use Chill\MainBundle\Security\Authorization\AuthorizationHelper;
use Chill\PersonBundle\Entity\AccompanyingPeriod; use Chill\PersonBundle\Entity\AccompanyingPeriod;
use DateTime; use DateTime;
@ -29,20 +30,13 @@ use Symfony\Contracts\Translation\TranslatorInterface;
*/ */
class DocumentAccompanyingCourseController extends AbstractController class DocumentAccompanyingCourseController extends AbstractController
{ {
/** protected AuthorizationHelper $authorizationHelper;
* @var AuthorizationHelper
*/
protected $authorizationHelper;
/** protected EventDispatcherInterface $eventDispatcher;
* @var EventDispatcherInterface
*/
protected $eventDispatcher;
/** protected TranslatorInterface $translator;
* @var TranslatorInterface
*/ private PaginatorFactory $paginatorFactory;
protected $translator;
/** /**
* DocumentAccompanyingCourseController constructor. * DocumentAccompanyingCourseController constructor.
@ -50,11 +44,13 @@ class DocumentAccompanyingCourseController extends AbstractController
public function __construct( public function __construct(
TranslatorInterface $translator, TranslatorInterface $translator,
EventDispatcherInterface $eventDispatcher, EventDispatcherInterface $eventDispatcher,
AuthorizationHelper $authorizationHelper AuthorizationHelper $authorizationHelper,
PaginatorFactory $paginatorFactory
) { ) {
$this->translator = $translator; $this->translator = $translator;
$this->eventDispatcher = $eventDispatcher; $this->eventDispatcher = $eventDispatcher;
$this->authorizationHelper = $authorizationHelper; $this->authorizationHelper = $authorizationHelper;
$this->paginatorFactory = $paginatorFactory;
} }
/** /**
@ -137,11 +133,15 @@ class DocumentAccompanyingCourseController extends AbstractController
['date' => 'DESC'] ['date' => 'DESC']
); );
$total = count($documents);
$pagination = $this->paginatorFactory->create($total);
return $this->render( return $this->render(
'ChillDocStoreBundle:AccompanyingCourseDocument:index.html.twig', 'ChillDocStoreBundle:AccompanyingCourseDocument:index.html.twig',
[ [
'documents' => $documents, 'documents' => $documents,
'accompanyingCourse' => $course, 'accompanyingCourse' => $course,
'pagination' => $pagination
] ]
); );
} }

View File

@ -14,6 +14,7 @@ namespace Chill\DocStoreBundle\Controller;
use Chill\DocStoreBundle\Entity\PersonDocument; use Chill\DocStoreBundle\Entity\PersonDocument;
use Chill\DocStoreBundle\Form\PersonDocumentType; use Chill\DocStoreBundle\Form\PersonDocumentType;
use Chill\DocStoreBundle\Security\Authorization\PersonDocumentVoter; use Chill\DocStoreBundle\Security\Authorization\PersonDocumentVoter;
use Chill\MainBundle\Pagination\PaginatorFactory;
use Chill\MainBundle\Security\Authorization\AuthorizationHelper; use Chill\MainBundle\Security\Authorization\AuthorizationHelper;
use Chill\PersonBundle\Entity\Person; use Chill\PersonBundle\Entity\Person;
use Chill\PersonBundle\Privacy\PrivacyEvent; use Chill\PersonBundle\Privacy\PrivacyEvent;
@ -35,20 +36,13 @@ use Symfony\Component\Translation\TranslatorInterface;
*/ */
class DocumentPersonController extends AbstractController class DocumentPersonController extends AbstractController
{ {
/** protected AuthorizationHelper $authorizationHelper;
* @var AuthorizationHelper
*/
protected $authorizationHelper;
/** protected EventDispatcherInterface $eventDispatcher;
* @var EventDispatcherInterface
*/
protected $eventDispatcher;
/** protected TranslatorInterface $translator;
* @var TranslatorInterface
*/ private PaginatorFactory $paginatorFactory;
protected $translator;
/** /**
* DocumentPersonController constructor. * DocumentPersonController constructor.
@ -56,11 +50,13 @@ class DocumentPersonController extends AbstractController
public function __construct( public function __construct(
TranslatorInterface $translator, TranslatorInterface $translator,
EventDispatcherInterface $eventDispatcher, EventDispatcherInterface $eventDispatcher,
AuthorizationHelper $authorizationHelper AuthorizationHelper $authorizationHelper,
PaginatorFactory $paginatorFactory
) { ) {
$this->translator = $translator; $this->translator = $translator;
$this->eventDispatcher = $eventDispatcher; $this->eventDispatcher = $eventDispatcher;
$this->authorizationHelper = $authorizationHelper; $this->authorizationHelper = $authorizationHelper;
$this->paginatorFactory = $paginatorFactory;
} }
/** /**
@ -170,6 +166,9 @@ class DocumentPersonController extends AbstractController
['date' => 'DESC'] ['date' => 'DESC']
); );
$total = count($documents);
$pagination = $this->paginatorFactory->create($total);
$event = new PrivacyEvent($person, [ $event = new PrivacyEvent($person, [
'element_class' => PersonDocument::class, 'element_class' => PersonDocument::class,
'action' => 'index', 'action' => 'index',
@ -181,6 +180,7 @@ class DocumentPersonController extends AbstractController
[ [
'documents' => $documents, 'documents' => $documents,
'person' => $person, 'person' => $person,
'pagination' => $pagination
] ]
); );
} }

View File

@ -32,6 +32,8 @@
</div> </div>
{% endif %} {% endif %}
{{ chill_pagination(pagination) }}
<div data-docgen-template-picker="data-docgen-template-picker" data-entity-class="Chill\PersonBundle\Entity\AccompanyingPeriod" data-entity-id="{{ accompanyingCourse.id }}"></div> <div data-docgen-template-picker="data-docgen-template-picker" data-entity-class="Chill\PersonBundle\Entity\AccompanyingPeriod" data-entity-id="{{ accompanyingCourse.id }}"></div>
{% if is_granted('CHILL_ACCOMPANYING_COURSE_DOCUMENT_CREATE', accompanyingCourse) %} {% if is_granted('CHILL_ACCOMPANYING_COURSE_DOCUMENT_CREATE', accompanyingCourse) %}

View File

@ -44,6 +44,8 @@
</div> </div>
{% endif %} {% endif %}
{{ chill_pagination(pagination) }}
{% if is_granted('CHILL_PERSON_DOCUMENT_CREATE', person) %} {% if is_granted('CHILL_PERSON_DOCUMENT_CREATE', person) %}
<ul class="record_actions"> <ul class="record_actions">
<li class="create"> <li class="create">