t3brightside / form-pdf
TYPO3 form finisher to write form data into pre-existing PDF file.
Installs: 7 344
Dependents: 0
Suggesters: 0
Security: 0
Stars: 5
Watchers: 3
Forks: 6
Open Issues: 4
Type:typo3-cms-extension
Requires
- mpdf/mpdf: ^8.1
- typo3/cms-core: ^11.5
- typo3/cms-form: ^11.5
README
TYPO3 form finisher to write form data into pre-defined PDF file.
- Sends PDF as an attachment in user and receiver e-mails
- Provides link to the PDF file in the confirmation message & deletes file after clicking the link
- Adds scheduler task to remove the file after certain amount of time if link is not clicked
Installation
Install with composer (recommended)
composer require t3brightside/form-pdf
- v1.1.2 is composer only
- v1.1.1 is available in TER but mPDF fonts have been removed from Resources/Private/PHP/mpdf/mpdf/ttfonts/ find the fonts here: https://github.com/t3brightside/form_pdf/tree/1.1.1/Resources/Private/PHP/mpdf/mpdf/ttfonts or grab the package and install it manually: https://github.com/t3brightside/form_pdf/tree/1.1.1
How it works
The PDF file is generated using mPDF PHP library.
It uses pre-defined PDF Template file as layout and inserts pre-defined HTML with form data and layout.
PDF Template
It is possible to prepare PDF layout with office software.
You can find PDF layout example here.
HTML Template
HTML template contains fluid-styled markers of form values.
You can find HTML example here.
This example related to default contact form.
Usage
-
Include static record "Form PDF" to TS template.
-
Prepare 2 records: PDF Template, HTML templates.
- Add PDF Finisher at the first position in the form.
-
Select already created PDF Template and HTML Template.
-
"Attach PDF to receiver mail": when checked, then PDF is attached to admin mail.
-
"Attach PDF to user mail": when checked, then PDF is attached to user mail.
-
"Open PDF in new window": when checked, the confirmation message is appended with "Click to open PDF." link.
-
When the link "Click to open PDF." is clicked, then PDF is removed from filesystem.
For Developer
Templating
Confirmation template is ConfirmationWithLink.html
.
It is possible to rewrite it from another location by configuration
TYPO3: CMS: Form: prototypes: standard: finishersDefinition: Confirmation: options: templateRootPaths: 20: 'fileadmin/templates/form/Confirmation/'
Extending
It extends core finishers
- EmailFinisher.php
- ConfirmationFinisher.php
Sources
Author
Mykola Orlenko - mykola.orlenko@web-spectr.com
Development and maintenance
Brightside OÜ – TYPO3 development and hosting specialised web agency