Skip to content
Snippets Groups Projects
Commit 553681a2 authored by Ralf Zimmermann's avatar Ralf Zimmermann Committed by Christian Kuhn
Browse files

[FEATURE] EXT:form - integrate new form framework

The main purpose of this patch is to integrate a flexible framework for
building forms. It replaces the legacy 'form wizard' based on ExtJS and
the depending frontend rendering system.

The new backend 'form editor' relies on vanilla JS and jQuery.
Different JS patterns have been applied to ensure a modern architecture,
high flexibility and extensibility.

A new backend module lists all existing forms and allows the creation
of new ones. The 'mailform' content element is reworked. It lists
available forms and enables the backend editor to override certain
settings, e.g. 'finisher' settings (formerly known as 'postProcessors').

Till now it was not possible to customize and extend the 'form editor'.
To allow the registration of new finishers, validators and
pre-defined form elements a lot of architectural changes were needed.
After a long conceptional phase the team decided to remove the former
code base, backport the 'form' package of the Flow project and improve
the given concepts. The result is a new form extension. A lot of code
received major improvements and tons of additional features have been
integrated.

The list of features is long and impressive. The documentation - which
is part of a future patch - will explain the ideas, concept and
architecture as well as the functionality in detail.

This patch marks the beginning of a series of patches. Further work is
needed to implement a better UI and more tests. The currently integrated
element tree cannot be finished for now. We plan to use the new TYPO3
SVG tree but have to wait for the drag and drop implementation.
Furthermore, the old form wizard will be moved to a separate extension
for backward compatibility.

Resolves: #77910
Releases: master
Change-Id: Idde8453bc573da835959fa3e51e30f57792d98b0
Reviewed-on: https://review.typo3.org/50311


Tested-by: default avatarTYPO3com <no-reply@typo3.com>
Reviewed-by: default avatarBjoern Jacob <bjoern.jacob@tritum.de>
Tested-by: default avatarBjoern Jacob <bjoern.jacob@tritum.de>
Reviewed-by: default avatarRalf Zimmermann <ralf.zimmermann@tritum.de>
Tested-by: default avatarRalf Zimmermann <ralf.zimmermann@tritum.de>
Reviewed-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: default avatarFrank Naegler <frank.naegler@typo3.org>
Tested-by: default avatarFrank Naegler <frank.naegler@typo3.org>
Reviewed-by: default avatarAlexander Opitz <opitz.alexander@googlemail.com>
Tested-by: default avatarAlexander Opitz <opitz.alexander@googlemail.com>
Reviewed-by: default avatarAndreas Häfner <andreas.haefner@tritum.de>
Tested-by: default avatarAndreas Häfner <andreas.haefner@tritum.de>
Reviewed-by: default avatarBenni Mack <benni@typo3.org>
Tested-by: default avatarBenni Mack <benni@typo3.org>
Reviewed-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
Tested-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
parent 77377a76
Showing
with 2245 additions and 2604 deletions
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment