From 2c9edf374151e28b58f14c9ecdfde005faf779de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Fri, 7 May 2021 12:13:24 +0200 Subject: [PATCH] Set Collection normalization to fit into specs from https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/136 --- .../Serializer/Normalizer/CollectionNormalizer.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php b/src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php index b21bf6326..1ba95d924 100644 --- a/src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php +++ b/src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php @@ -23,12 +23,14 @@ class CollectionNormalizer implements NormalizerInterface, NormalizerAwareInterf $paginator = $collection->getPaginator(); $data['count'] = $paginator->getTotalItems(); - $data['first'] = $paginator->getCurrentPageFirstItemNumber(); - $data['items_per_page'] = $paginator->getItemsPerPage(); - $data['next'] = $paginator->hasNextPage() ? + $pagination['first'] = $paginator->getCurrentPageFirstItemNumber(); + $pagination['items_per_page'] = $paginator->getItemsPerPage(); + $pagination['next'] = $paginator->hasNextPage() ? $paginator->getNextPage()->generateUrl() : null; - $data['previous'] = $paginator->hasPreviousPage() ? + $pagination['previous'] = $paginator->hasPreviousPage() ? $paginator->getPreviousPage()->generateUrl() : null; + $pagination['more'] = $paginator->hasNextPage(); + $data['pagination'] = $pagination; // normalize results $data['results'] = $this->normalizer->normalize($collection->getItems(),