t3brightside/form-pdf

TYPO3 form finisher to write form data into pre-existing PDF file.

Installs: 6 676

Dependents: 0

Suggesters: 0

Security: 0

Stars: 4

Watchers: 3

Forks: 2

Open Issues: 3

Type:typo3-cms-extension

1.3.1 2022-10-10 05:40 UTC

This package is auto-updated.

Last update: 2024-04-10 08:45:24 UTC


README

Packagist Software License Brightside

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

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

  1. Include static record "Form PDF" to TS template.

  2. Prepare 2 records: PDF Template, HTML templates.

new record

  1. Add PDF Finisher at the first position in the form.

finisher

  1. Select already created PDF Template and HTML Template.

  2. "Attach PDF to receiver mail": when checked, then PDF is attached to admin mail.

  3. "Attach PDF to user mail": when checked, then PDF is attached to user mail.

  4. "Open PDF in new window": when checked, the confirmation message is appended with "Click to open PDF." link.

  5. 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