[MGNLFORM-198] Back button should save the current step Created: 15/Oct/13  Updated: 19/May/22  Resolved: 19/May/22

Status: Closed
Project: Magnolia Form Module
Component/s: state consistancy
Affects Version/s: None
Fix Version/s: 2.2.x

Type: Improvement Priority: Neutral
Reporter: Philipp Denzler Assignee: Unassigned
Resolution: Won't Do Votes: 4
Labels: next
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File ExtendedFormDataBinder.java     Text File ExtendedSubStepFormEngine.java     Text File ExtendedSubStepFormModel.java    
Template:
Patch included:
Yes
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Date of First Response:

 Description   

In multi-step forms, only the 'next' button or the 'submit' button on the last step save the current steps form data in the users session. In bigger forms, where the user enters a lot of data on one step, this can be very annoying for the user if he wants to check the previous steps data and loses everything he entered.

To achieve this, we had to extend the SubStepFormEngine, the FormDataBinder and the SubStepFormModel to bind the values to the form step state without validation when the user presses the back button. As you can see in the attached classes, we had to copy a lot of code from the base classes as these could not easily be extended like this. If fixed in the base classes, this could have been done with only a few lines of code in the FormDataBinder (support binding without validation) and in the SubStepFormEngine (calling bindWithoutValidation when the user presses back).



 Comments   
Comment by Christopher Zimmermann [ 03/Dec/13 ]

Thanks for the patch. This looks like a nice improvement.

Comment by Roman Kovařík [ 19/May/22 ]

Hello,

This ticket is now marked as closed due to one of the following reasons:

  • A long period of inactivity
  • Uses an old or Beta version of an application, module, or framework that we no longer support
  • The issue is no longer reproducible or has been fixed in later versions

If you are still facing a problem or consider this issue still relevant, please feel free to re-open the ticket and we will reach out to you.

Thank you,
The Magnolia Team

Generated at Mon Feb 12 05:37:50 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.