From bb1073b894ab3db4999d2ef92c9bdd76e082c2ef Mon Sep 17 00:00:00 2001 From: Daniel Seifert Date: Wed, 17 Jun 2020 09:05:49 +0200 Subject: [PATCH] make valid filenames --- .../AbstractClasses/pdfdocumentsGeneric.php | 12 ++++++++-- .../AbstractClasses/pdfdocumentsOrder.php | 22 ++++++++++++------- Application/Model/Documents/invoicePdf.php | 4 +++- 3 files changed, 27 insertions(+), 11 deletions(-) diff --git a/Application/Model/AbstractClasses/pdfdocumentsGeneric.php b/Application/Model/AbstractClasses/pdfdocumentsGeneric.php index dbb7a54..867d61a 100644 --- a/Application/Model/AbstractClasses/pdfdocumentsGeneric.php +++ b/Application/Model/AbstractClasses/pdfdocumentsGeneric.php @@ -199,10 +199,18 @@ abstract class pdfdocumentsGeneric extends Base implements genericInterface { // forced filename from setFilename() if ($this->filename) { - return $this->addFilenameExtension($this->filename); + return $this->addFilenameExtension( + $this->makeValidFileName( + $this->filename + ) + ); } - return $this->addFilenameExtension($this->getTypeForFilename()); + return $this->addFilenameExtension( + $this->makeValidFileName( + $this->getTypeForFilename() + ) + ); } /** diff --git a/Application/Model/AbstractClasses/pdfdocumentsOrder.php b/Application/Model/AbstractClasses/pdfdocumentsOrder.php index cefd14d..3029148 100644 --- a/Application/Model/AbstractClasses/pdfdocumentsOrder.php +++ b/Application/Model/AbstractClasses/pdfdocumentsOrder.php @@ -69,19 +69,25 @@ abstract class pdfdocumentsOrder extends pdfdocumentsGeneric implements orderInt { // forced filename from setFilename() if ($this->filename) { - return $this->addFilenameExtension($this->filename); + return $this->addFilenameExtension( + $this->makeValidFileName( + $this->filename + ) + ); } $sTrimmedBillName = trim($this->getOrder()->getFieldData('oxbilllname')); return $this->addFilenameExtension( - implode( - '_', - [ - $this->getTypeForFilename(), - $this->getOrder()->getFieldData('oxordernr'), - $sTrimmedBillName - ] + $this->makeValidFileName( + implode( + '_', + [ + $this->getTypeForFilename(), + $this->getOrder()->getFieldData('oxordernr'), + $sTrimmedBillName + ] + ) ) ); } diff --git a/Application/Model/Documents/invoicePdf.php b/Application/Model/Documents/invoicePdf.php index 4a7edaf..1761067 100644 --- a/Application/Model/Documents/invoicePdf.php +++ b/Application/Model/Documents/invoicePdf.php @@ -111,10 +111,12 @@ class invoicePdf extends pdfdocumentsOrder implements pdfdocumentsOrderinvoiceIn { $filename = parent::getFilename(); - return str_replace( + $filename = str_replace( $this->getOrder()->getFieldData('oxordernr'), $this->getOrder()->getFieldData('oxbillnr'), $filename ); + + return $this->makeValidFileName($filename); } } \ No newline at end of file