Real Values. 1. renderer = Neos.Fusion.Form:Runtime.RuntimeForm { 2. 3. # the form process for rendering and validation 4. process = Neos.Fusion.Form:Runtime.MultiStepProcess { 5. 6. step1 = Neos.Fusion.Form:Runtime.SingleStepProcess 7. step2 = Neos.Fusion.Form:Runtime.SingleStepProcess 8. 9. } 10. 11. # action after the process is finished 12. action = Neos.Fusion.Form:Runtime.Actions 13. } Runtime Form - multi step 1. 2.
Real Values. 1. renderer = Neos.Fusion.Form:Runtime.RuntimeForm { 2. 3. # the form process for rendering and validation 4. process = Neos.Fusion.Form:Runtime.MultiStepProcess { 5. 6. step1 = Neos.Fusion.Form:Runtime.SingleStepProcess 7. step2 = Neos.Fusion.Form:Runtime.SingleStepProcess 8. 9. } 10. 11. # action after the process is finished 12. action = Neos.Fusion.Form:Runtime.Actions 13. } Runtime Form - multi step 1. 2. ⚠ could be an anti-pattern ⚠
Real Values. Runtime Form - multi step 1. renderer = Neos.Fusion.Form:Runtime.RuntimeForm { 2. 3. # the form process for rendering and validation 4. process = Neos.Fusion.Form:Runtime.SingleStepProcess { 5. 6. # form content 7. content = Vendor.Site:CustomDialogComponent 8. 9. # type mapping and validation 10. schema = Neos.Fusion.Form:Runtime.SchemaCollection 11. } 12. 13. # action after the process is finished 14. action = Neos.Fusion.Form:Runtime.Actions 15. } 1.
Real Values. NodeBased Forms - prior art ● Node Based Form Packages ○ Neos.Fusion.Form.Builder (FusionRenderer) ○ ... ● Challenges ○ Generic Contents, Grids and Custom rendering ○ Deeply nested nodes and collections
Real Values. 1. Generic content in forms 1. # 2. # Allow text and image contents inside the form 3. # 4. 'Neos.Demo:Content.Text': 5. superTypes: 6. 'Sitegeist.PaperTiger:Field.Constraint': true
Real Values. 2. E-Mail Field ● NodeType based on Sitegeist.PaperTiger:Field ● NodeType:Name - Fusion prototype ● NodeType:Name.Schema - Fusion prototype
Real Values. Sitegeist.PaperTiger ● Current version 0.30 … ● Opinionated and hard to replace ● No multisteps forms / No dependencies between fields sitegeist/Sitegeist.PaperTiger sitegeist/Sitegeist.FusionForm.FriendlyCaptcha sitegeist/Sitegeist.FusionForm.Upload sitegeist/Sitegeist.Neos.SymfonyMailer