Version 4.0.0
Extension Key: th_mailformplus
Copyright 2000-2006, Dev-Team Typoheads, <dev@typoheads.at>
This document is published under the Open Content License
available from http://www.opencontent.org/opl.shtml
The content of this document is related to TYPO3
- a GNU/GPL CMS/Framework available from www.typo3.com
First of all:
Many thanks to all the people who supported me and helped improving this extension!
When you reach the limits of the standard mailform functionality of typo3 (especially when you want the form to look special) you can use this module to use your conventional HTML-forms (as HTML-snippets) with full mailform functionality.
Displays your conventional HTML-form
checks fields that have to be filled out – displays error message (you can specify the fields you want to check)
sends all fields with the values to one or more e-mail addresses (also configurable)
if successful: it does a redirect to a page (also configurable)
full javascript support for validating fields before the form is submitted (has to be implemented manually in the HTML snippet containing the form)
current languages: English, German, Italian (since 2.4.0)
you can send a special formatted email to the user himself e.g. “confirmation” or “thank you for your interest, we will contact you soon”
you can automatically fill out the form with the data of the frontend user who is logged in. (since 2.4.0)
submitted data is stored in the database and can be exported via .csv file (since 3.0)
data can be stored in a DB table of your choice (can be configured via TypoScript) plus file upload support: user can upload a file (you can limit type and size via typoscript) (since 3.1)
extended error messages: you can define your own error messages for the fields (since 3.1)
build dynamic input forms with the use of TypoScript (since 3.4)
“secure” mailform with captcha support (ext: “captcha”) (since 3.7)
multipage forms (since 3.9)
HTML mails, plain text mails, multipart mails (HTML+plain) (since 3.9)
server side error check (since 3.9)
better file upload handling (since 3.9)
summary of submitted form on the “thank you” page via PRINT-subtemplate stored in session (since 3.9)
multipage forms, where the templates of the different steps can be loaded depending of user input/selection. (since 4.0)
backend multilanguage support using flexforms (since 4.0)
frontend multilanguage support (since 4.0)
Spam protection and notification mechanism (since 4.0)
new errorCheck-Options in Typoscript (isInDBTable, isNotInDBTable, notDefaultValue, userValidation)
new saveDB-Options in Typoscript to save Arrays in DB (fields.seperator) (Thanks to Christian Müller <christian(at)kitsunet.de>
new saveDB-Options in Typoscript for mapping (fields.[fieldname].mapping, .preProcessing, .if_is_empty)
Spam protection options in TS ( doNotCheckReferrer, spamNotify)
Further Spam protection: form can only be submitted once (session)
Multilanguage support via Markers ###LLL:fieldname### with according entry 'fieldname' and 'error_fieldname' in a language file defined via TypoScript-setting plugin.tx_thmailformplus_pi1.langFile (Thanks to Jörg Körner <jk(at)idaa-net.de>)
Possibility to define multipage forms with different routes, using postfixes for the template subparts. These postfixes can also be used for error and email subparts to define different error texts or email texts for different user chosen routes. Integrated fallback mechanism to search for other templates if none is found with current postfix.
New markers ###REL_URL### and ###ABS_URL### for relative and absolute path to the form page.
To ensure XHTML-conformity: changed 'checked' to 'checked=”checked”' and 'selected' to 'selected=”selected”' (Thanks to Maik Vlcek <maik.vl(at)web.de>)
New TS-Setting multipage_without_js to give possibility to set up multipage forms not using JavaScript (Thanks to Ralf Hettinger <info(at)ralfhettinger.de>)
New TS-Setting multipage_without_auto_hidden to give possibility to set up multipage forms not hiding unused form step using CSS. (Thanks to Ralf Hettinger <info(at)ralfhettinger.de>)
Template can be saved as content element of a page, not only be imported from a file (Thanks to John Angel <johnange(at)gmail.com>)
New saveDB-Setting specialMapping (sub_datetime, crdate, logIP, storeuid)
Backend multilanguage-support using flexforms (Thanks to Marcel Alburg <alb@weeaar.com>)
Fixed some minor bugs, including bug, when uploading files with blanks or . in filename. (Thanks to Felix Gebhard <fgebhard(at)exinit.de>, Stefan Fetsch <sfetsch(at)wollert-it.com> and Michael Wagner <kontakt@michael-wagner.de>)
New marker for reference to saveDB uid (activated by saveDB.specialMapping.storeuid): ###DB_UID###
Hook handler class with 3 examples show_form_postHandling, send_form_markers, error_eval provided by Ralf Hettinger.
New TS-Setting plugin.tx_thmailformplus_pi1.correctRedirectUrl to substitute '&' with '&' in redirect URLs.
plugin.tx_thmailformplus_pi1.default.* can now not only be TEXT objects, but any TS-object.
plugin.tx_thmailformplus_pi1.markers.[fieldname] can have new value SUBPART to substitute a marker with a subpart both defined in the HTML template
New TS-Option to disable the errorChecks of form fields.
New TS-Option to be able to dynamically load a stylesheet file.
fixed bug, when using “fvalidate” for javascript form check.
new option to define multilanguage error texts with typoscript (Thanks to Stano Paška <stanislav.paska@kios.sk>)
multipage forms (attention: only works with JavaScript enabled, special naming requirements within template)
sending mails: HTML, plain, HTML+ plain (multipart). special thx to Andreas Westermaier!
server side error check: defined via TypoScript. predefined checks like “email”, “integer”,.. built in. advanced error checks via regular expression can be defined.
file uploads: file size, type upload directory can be defined per upload field via TypoScript.
PRINT-template showing a summary of the submitted form on the “thank you” page (note: since this template is stored in session data, it has to be printed out via a user-function)
all values are now automatically stripslashes() and htmlspecialchars() transformed to prevent code injection
TYPO3 4.0 compatible (path to tslib directory)
template-file: reference to file can be stored instead of making a copy
new TypoScript setting:saveDB.if_is_empty.[fieldname] = [value if field is not filled out]
log-table: field "date" changed to "logdate" (typ:timestamp)
example mailform provided in "example_form/" directory
"email from" field can have blanks now: "my real name" <email@domain.com>
bugfix: PHP 4.4.2. header(..."\n\n") fixed
bugfix: export to csv: first line shows field descriptions for sure
bugfix: if no files uploaded: error was shown