diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5945121254c3f7b61d293cfccafdb76277d56768..58e989ac82917413cc2f31a692d27f98637f74c2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,28 @@
CHANGELOG
=========
-1.0.0
+6.0.1
-----
--
+- Ajout d'une fonction statique afin de simplifier le code de création de PDF dans les applications.
+
+6.0.0
+-----
+- Version PHP 8.
+
+5.0.2
+-----
+- Ajout d'une fonction statique afin de simplifier le code de création de PDF dans les applications.
+
+5.0.1
+-----
+- Reprise manuelle des dernières évolutions de l'Exporter dans unicaen/app
+
+5.0.0
+-----
+- Possibilité de passer à PHP 8.
+
+4.0.0
+-----
+- Migration vers Laminas
+- Correctif sur la possibilité d'exporter le pdf dans un repertoire autre que /tmp
+- Extraction de ce module d'unicaen/app.
diff --git a/src/UnicaenPdf/Exporter/PdfExporter.php b/src/UnicaenPdf/Exporter/PdfExporter.php
index ed9149bbadd76cd932d5e088db5d6648273b51ba..d7ab1b03813aae2329712d019074094831c32d4f 100644
--- a/src/UnicaenPdf/Exporter/PdfExporter.php
+++ b/src/UnicaenPdf/Exporter/PdfExporter.php
@@ -6,6 +6,7 @@ use Laminas\View\Renderer\PhpRenderer;
use Laminas\View\Resolver\TemplatePathStack;
use LogicException;
use Mpdf\Mpdf as mPDF;
+use Mpdf\MpdfException;
use RuntimeException;
/**
@@ -867,4 +868,20 @@ class PdfExporter implements ExporterInterface
$this->logo = $logoFileContent;
return $this;
}
+
+ /** Fonction d'export d'un pdf générique pour factoriser le code côté application */
+ static public function generatePdf(string $filename, string $titre, string $corps,
+ string $headerScript = '', string $footerScript = '', array $vars = []) : string
+ {
+ try {
+ $exporter = new PdfExporter();
+ $exporter->getMpdf()->SetTitle($titre);
+ $exporter->setHeaderScript($headerScript, null, $vars);
+ $exporter->setFooterScript($footerScript, null, $vars);
+ $exporter->addBodyHtml($corps);
+ return $exporter->export($filename);
+ } catch(MpdfException $e) {
+ throw new RuntimeException("Un problème lié à MPDF est survenue",0,$e);
+ }
+ }
}