I don't know if it's something I've configured wrong, but I'm seeing a blank PDF and the following error in my logs if someone generates a PDF with filters that have no results:
Warning: Undefined array key "content" in Drupal\openy_repeat\Controller\RepeatController->getPdf() (line 549 of /code/web/modules/contrib/openy_repeat/src/Controller/RepeatController.php)
#0 /code/web/core/includes/bootstrap.inc(164): _drupal_error_handler_real(2, 'Undefined array...', '/code/web/modul...', 549)
#1 /code/web/modules/contrib/openy_repeat/src/Controller/RepeatController.php(549): _drupal_error_handler(2, 'Undefined array...', '/code/web/modul...', 549)
#2 [internal function]: Drupal\openy_repeat\Controller\RepeatController->getPdf(Object(Symfony\Component\HttpFoundation\Request))
#3 /code/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array(Array, Array)
#4 /code/web/core/lib/Drupal/Core/Render/Renderer.php(627): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#5 /code/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure))
#6 /code/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array)
#7 /code/web/vendor/symfony/http-kernel/HttpKernel.php(181): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#8 /code/web/vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1)
#9 /code/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#10 /code/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#11 /code/web/core/lib/Drupal/Core/StackMiddleware/ContentLength.php(28): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#12 /code/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(191): Drupal\Core\StackMiddleware\ContentLength->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#13 /code/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(128): Drupal\page_cache\StackMiddleware\PageCache->fetch(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#14 /code/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(82): Drupal\page_cache\StackMiddleware\PageCache->lookup(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#15 /code/web/modules/contrib/openy_features/openy_block/modules/openy_block_date/src/StackMiddleware/BlockDateCacheInvalidator.php(58): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#16 /code/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\openy_block_date\StackMiddleware\BlockDateCacheInvalidator->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#17 /code/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#18 /code/web/core/lib/Drupal/Core/StackMiddleware/AjaxPageState.php(36): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#19 /code/web/core/lib/Drupal/Core/StackMiddleware/StackedHttpKernel.php(51): Drupal\Core\StackMiddleware\AjaxPageState->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#20 /code/web/core/lib/Drupal/Core/DrupalKernel.php(704): Drupal\Core\StackMiddleware\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#21 /code/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#22 {main}
diff --git a/src/Controller/RepeatController.php b/src/Controller/RepeatController.php
index 755e9cd3..6233ca78 100644
--- a/src/Controller/RepeatController.php
+++ b/src/Controller/RepeatController.php
@@ -546,7 +546,7 @@ class RepeatController extends ControllerBase {
'body' => [
'#content' => [
'logo_url' => \Drupal::service('extension.list.module')->getPath('openy_repeat') . '/img/ymca_logo_black.png',
- 'result' => $content['content']['content'],
+ 'result' => $content['content']['content'] ?? NULL,
'header' => $content['content']['header'],
],
'#theme' => $content['theme'],
but I don't know if you want to do something more graceful like show some empty text (or maybe hide the download button?).
Hi,
I don't know if it's something I've configured wrong, but I'm seeing a blank PDF and the following error in my logs if someone generates a PDF with filters that have no results:
I've handled it just with a simple
but I don't know if you want to do something more graceful like show some empty text (or maybe hide the download button?).
Thanks