Download the PHP package pagemachine/typo3-formlog without Composer
On this page you can find all versions of the php package pagemachine/typo3-formlog. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download pagemachine/typo3-formlog
More information about pagemachine/typo3-formlog
Files in pagemachine/typo3-formlog
Package typo3-formlog
Short Description Form log for TYPO3
License GPL-3.0-or-later
Informations about the package typo3-formlog
Form log
Form log for TYPO3
Installation
This extension is installable from various sources:
-
Via Composer:
composer require pagemachine/typo3-formlog
- From the TYPO3 Extension Repository
Purpose
One feature absent in the TYPO3 form extension is logging of form data. If you have ever used the now defunct Formhandler extension you know how valuable this can be. You can easily check if form submissions are working as they should, see internal values are generated correctly and perform some basic analysis thanks to exports to CSV or similar.
See our blog post about the TYPO3 form log extension.
Start logging
Logging can be enabled for any form by adding the LogFormData
finisher to its form definition:
The LogFormData
finisher should be the last finisher or right before the Redirect
finisher if used. Logging after a redirect is not possible.
Additional variables stored in the FinisherVariableProvider
can also be logged by using the finisherVariables
option:
The keys within finisherVariables
are identifiers of finishers used in a form, the value of each entry is a list of finisher variable names. In the example here the finisher variable myCustomVariable
provided by the finisher MyCustomFinisher
will be logged.
Form log module
By default the form log module displays a few basic fields like page, form identifier, language and date of form submission as columns.
Additional columns can be added with the list.columns
setting in ext_typoscript_setup.txt
:
Within list.columns
an arbitrary list of columns can be added where the property
option refers to a property path in the FormLogEntry
domain model. Simply speaking data.*
provides access to form data by a form element identifier, e.g. data.email
for the value of the form element email
. The label
option is used to retrieve a translatable label. Usually one can simply use the same label that is used for the field within the form itself.
Similarly finisherVariables.*
does the same for additional finisher variables by utilizing the finisher identifier and variable name:
Here myCustomVariable
of MyCustomFinisher
is added as column to the list.
Form log export
Out of the box form log entries can be exported to CSV and Excel (XLSX). Basic fields of form log entries are exported by default, additional columns can be added with the export.columns
setting in ext_typoscript_setup.txt
which is configured exactly the same as the list.columns
setting:
Log entry cleanup
The Table garbage collection Scheduler task can be set up to automatically delete old form log entries. Select tx_formlog_entries
as Table to clean up and a suitable value for Delete entries older than given number of days, 180 by default.
Testing
All tests can be executed with the shipped Docker Compose definition:
docker compose run --rm app composer build
Thanks
Development of this package was proudly sponsored by TÜV Hessen.
All versions of typo3-formlog with dependencies
league/csv Version ^9.1
nimmneun/onesheet Version ^1.0
typo3/cms-backend Version ^11.5 || ^12.4
typo3/cms-core Version ^11.5 || ^12.4
typo3/cms-extbase Version ^11.5 || ^12.4
typo3/cms-fluid Version ^11.5 || ^12.4
typo3/cms-form Version ^11.5 || ^12.4
typo3/cms-frontend Version ^11.5 || ^12.4
typo3fluid/fluid Version ^2.3