From aa06e1df041f38c5a4329de66f44db3b24717ca8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6hmer?= Date: Sat, 1 Feb 2025 20:57:27 +0100 Subject: [PATCH] Fixed exception when trying to export an empty entity list Fixes issue #836 --- src/Controller/AdminPages/BaseAdminController.php | 5 +++++ src/Controller/PartImportExportController.php | 5 +++-- translations/messages.en.xlf | 6 ++++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/Controller/AdminPages/BaseAdminController.php b/src/Controller/AdminPages/BaseAdminController.php index 1d19fb82..edc5917a 100644 --- a/src/Controller/AdminPages/BaseAdminController.php +++ b/src/Controller/AdminPages/BaseAdminController.php @@ -467,6 +467,11 @@ abstract class BaseAdminController extends AbstractController $this->denyAccessUnlessGranted('read', $entity); $entities = $em->getRepository($this->entity_class)->findAll(); + if (count($entities) === 0) { + $this->addFlash('error', 'entity.export.flash.error.no_entities'); + return $this->redirectToRoute($this->route_base.'_new'); + } + return $exporter->exportEntityFromRequest($entities, $request); } diff --git a/src/Controller/PartImportExportController.php b/src/Controller/PartImportExportController.php index 528ab3e3..45f90d75 100644 --- a/src/Controller/PartImportExportController.php +++ b/src/Controller/PartImportExportController.php @@ -112,8 +112,9 @@ class PartImportExportController extends AbstractController $ids = $request->query->get('ids', ''); $parts = $this->partsTableActionHandler->idStringToArray($ids); - if ($parts === []) { - throw new \RuntimeException('No parts found!'); + if (count($parts) === 0) { + $this->addFlash('error', 'entity.export.flash.error.no_entities'); + return $this->redirectToRoute('homepage'); } //Ensure that we have access to the parts diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf index 6e4c47cb..a66c7c0b 100644 --- a/translations/messages.en.xlf +++ b/translations/messages.en.xlf @@ -12323,5 +12323,11 @@ Please note, that you can not impersonate a disabled user. If you try you will g Profile saved! + + + entity.export.flash.error.no_entities + There are no entities to export! + +