Summary
Reach the same functionality level as the previous M4.5 Form Module :
Form module
Mail Module should be Migrated first :
Mail module
PUR Module should follow also be Migrated:
Public User Registration module
Root Ticket:
Keep an eyeson : Storing form data in the Data module
Tasks
Fields
The created form fields are created and displayed based on FTL/JSP definition.
Form components
These fields will not be migrated to Vaadin Fields.
M4.5 Fields
- Available fields for freemarker syntax.
Static field with dynamic values. - Radio Select + Listening component (code/text/html/Link)
When clicking on a Radio, switch to the appropriate Component - Html Editor
- Code Editor
- Conditional Field
M5 Fields
Static Field with dynamic values
- UI Module
Modify the current Static field implementation in order to easily extend it and set dynamically the Value.
- Form Module
Create a custom Static field displaying dynamic values.
Base Code Text Field
This field is based on the Vaadin ace editor add on:
https://github.com/ahn/vaadin-aceeditor
http://ajaxorg.github.io/ace/#nav=howto
Ace Editor is very power full and our current need is quite small in regard of the add on potential. The goal is to create a basic implementation easily extendable in case of future need.
- UI Module
Create a Basic Code Text Field
Documentation - Form Module
Replace the old M4.5 control definition and replace it with this field
Custom Field for Radio Button and Code Text/Select Field --> Switchable Field
This will required the creation of a new Switchable Field.
Basic component view:
- Selection component: Can be a optinon group (Single Select) or a simple select.
- Related field component: Display the field related to the selected selection (1)
Requirements:
- Values entered into the Field have to be persisted
- In dialog: For example, type text, switch to date, select a date, switch back to text. The previously typed text should be displayed.
- When saving the dialog and reopen it again, all entered data has to be displayed (text/date...)
- Easily configurable
.
- Inner Field have to support Validation (required, Validation pattern,...)
- Only the selected field has to be validated.
Configuration
- selectionType : radio/select. Selection component layout (either an option group or simple select)
- options
- text
- label : text displayed
- value : refer to the related field ('fieldName')
- selected : selected by default or not
- ...
- text
- fields
- fieldName
- Normal field configuration...
- fieldName
Persistence (field is named typeSelection and has to select text and html. text was selected)
Field property contains the option name selected
typeSelection = text
A property is created per field that have an entry (in our case the user enter some text into the text and html field)
typeSelectiontext = value typed into the text field
typeSelectionhtml = value typed into the html field.
- UI Module
Create a Basic SwitchableField
Documentation - Form Module
Remove the Form M4.5 Controls and replace it with this new Field
Generic Multi field
Create the equivalent of the MultiSelect field that let you configured the field that is added. For example by configuration we could define a MultiText field or MultiDate field,....
- UI Module
Create a Basic MultiField
Documentation
Generic Composite Field
Create by Configuration a composite field (for example, a TextField in addition with a Date and Select Field).
- UI Module
Create a Basic Composit Field
MGNLUI-1863 - Create a Generic Composite field Closed
Custom Properties
Introduce a way to manage property related to a field.
Validators.
- Adapt the current validator definition in order to use the current M5 validators definition and mechanism.
- Create a select box listing all Form's defined validators
Bootstrap files
- Change the Dialogs and fields bootstrap files (in M5 style)
- Adapt M5 dialog migration task in order to update Form dialogs from M4.5 to M5.
Documentation
Review the current M4.5 documentation.
- Actualize Snapshots
- Tree configuration
- Validator definition