From e43e2c0df15f91cec379ed209effe25ff62dfe85 Mon Sep 17 00:00:00 2001
From: Liam Morland <lkmorlan@uwaterloo.ca>
Date: Wed, 27 Apr 2022 16:40:30 -0400
Subject: [PATCH] Issue #3277525: Create HandlePdfController::getFilename()

---
 src/Controller/HandlePdfController.php | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/src/Controller/HandlePdfController.php b/src/Controller/HandlePdfController.php
index 59f7c75..048e004 100644
--- a/src/Controller/HandlePdfController.php
+++ b/src/Controller/HandlePdfController.php
@@ -199,6 +199,25 @@ class HandlePdfController extends ControllerBase {
     return $this->handlePopulatedPdf($fillpdf_form, $populated_pdf, $context, $filename, $entities);
   }
 
+  /**
+   * Return the token-replaced filename of a populated PDF file.
+   *
+   * Given the same context, this will return the same filename that would be
+   * used in ::populatePdf().
+   *
+   * @param array $context
+   *   The FillPDF context.
+   *
+   * @return string
+   *   The filename.
+   */
+  public function getFilename(array $context): string {
+    $fillpdf_form = FillPdfForm::load($context['fid']);
+    $entities = $this->contextManager->loadEntities($context);
+
+    return $this->buildFilename($fillpdf_form->title->value, $entities);
+  }
+
   /**
    * Builds the filename of a populated PDF file.
    *
-- 
GitLab