Reviewed: https://reviews.mahara.org/7077 Committed: https://git.mahara.org/mahara/mahara/commit/f74fa0710baaeae199738fd688622b5624cfe7a6 Submitter: Robert Lyon (robe...@catalyst.net.nz) Branch: 16.04_STABLE
commit f74fa0710baaeae199738fd688622b5624cfe7a6 Author: Aaron Wells <aar...@catalyst.net.nz> Date: Tue Mar 22 18:56:14 2016 +1300 Better handling of Pieforms validation failure in block modal Bug 1560329: We were neglecting to rewire the "cancel/remove" button on a block config after a Pieforms validation failure. A pieforms validation failure (when you're using Pieforms' jsforms feature) actually replaces the current form with a new one, rather than just inserting error messages into the existing form. Change-Id: Ie3fa440595b08cc5a49cb89cb7ca95bcfa02c2db behatnotneeded: Not easy to test with Behat (cherry picked from commit ac21cd81495d12f277a55d97245ed2dc0bc414fd) (cherry picked from commit ce695f4b453fa8551cbff532cf578e550e42f4f0) -- You received this bug notification because you are a member of Mahara Contributors, which is subscribed to Mahara. Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it! https://bugs.launchpad.net/bugs/1560329 Title: The block config's "cancel" button breaks after a Pieform validation failure Status in Mahara: Fix Committed Status in Mahara 15.10 series: Fix Committed Status in Mahara 16.04 series: Fix Committed Status in Mahara 16.10 series: Fix Committed Bug description: To replicate: 1. Drag a new "external media" block into your page. 2. In the block config modal that opens up, hit "submit" without filling in the required "URL or embed code" field 3. Press "Submit" 4. Wait for the form to reload and display the warning message telling you about the required field 5. Once that loads up, press the "Cancel" or "Remove" button/link next to the "Submit" button. Expected result: The block config modal window closes, and the new external media block is no longer on your page Actual result: The screen reloads, and you now have an empty "external media" block on your page The reason this is happening, is because the Pieforms "cancel" button by default just reloads the form's action URL, or the cancel button's "goto" URL. When we load up the block config modal, we use Javascript code to rewire the cancel button so that it instead closes the modal and, if the block is new, deletes the block. However, when Pieforms fails validation, Pieforms actually removes the current form displayed on the page, and replaces it with a new form that contains the validation errors. Because this is a completely different form object, the "rewiring" that we did when we opened the modal no longer applies. To manage notifications about this bug go to: https://bugs.launchpad.net/mahara/+bug/1560329/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~mahara-contributors Post to : mahara-contributors@lists.launchpad.net Unsubscribe : https://launchpad.net/~mahara-contributors More help : https://help.launchpad.net/ListHelp