diff --git a/src/app/history/controllers/HistoryController.php b/src/app/history/controllers/HistoryController.php index e3b84a772bc993de3781b92df762d0b0d3ae4bf3..89c6b1dba6bad6c24d340ff8b728093cedfde869 100755 --- a/src/app/history/controllers/HistoryController.php +++ b/src/app/history/controllers/HistoryController.php @@ -24,14 +24,15 @@ use Document\models\DocumentModel; use Group\controllers\PrivilegeController; use History\models\HistoryModel; use Respect\Validation\Validator; +use setasign\Fpdi\Tcpdf\Fpdi; use Slim\Http\Request; use Slim\Http\Response; use SrcCore\controllers\LanguageController; use SrcCore\models\CoreConfigModel; +use SrcCore\models\TextFormatModel; use SrcCore\models\ValidatorModel; use User\models\UserModel; use Workflow\models\WorkflowModel; -use setasign\Fpdi\Tcpdf\Fpdi; class HistoryController { @@ -231,7 +232,13 @@ class HistoryController if (!empty($mainDocument['errors'])) { return $response->withStatus($mainDocument['code'])->withJson(['errors' => $mainDocument['errors']]); } - $documentPathToZip[] = ['path' => $mainDocument['path'], 'filename' => 'mainDocument.pdf']; + + $document = DocumentModel::getById(['select' => ['sender', 'creation_date', 'notes', 'title'], 'id' => $args['id']]); + $filename = TextFormatModel::createFilename([ + 'label' => $document['title'], + 'extension' => 'pdf' + ]); + $documentPathToZip[] = ['path' => $mainDocument['path'], 'filename' => 'mainDocument_'.$filename]; $attachments = AttachmentModel::getByDocumentId(['select' => ['id', 'title'], 'documentId' => $args['id']]); foreach ($attachments as $key => $attachment) { @@ -258,10 +265,12 @@ class HistoryController if ($adr[0]['fingerprint'] != $fingerprint) { return $response->withStatus(400)->withJson(['errors' => 'Fingerprint do not match']); } - $documentPathToZip[] = ['path' => $pathToDocument, 'filename' => 'attachment_' . $key . '.pdf']; + $filename = TextFormatModel::createFilename([ + 'label' => $attachment['title'], + 'extension' => 'pdf' + ]); + $documentPathToZip[] = ['path' => $pathToDocument, 'filename' => 'attachment_' . $key . '_' . $filename]; } - - $document = DocumentModel::getById(['select' => ['sender', 'creation_date', 'notes'], 'id' => $args['id']]); $notes = []; $documentNotes = json_decode($document['notes'], true);