We are finally preparing a stable release of HTML_QuickForm2, a new major version of HTML_QuickForm package used by Moodle to build forms.
While cleaning up our tracker from "exotic" feature requests we found one originating from Moodle: #12065
The request basically left us scratching our heads, as it showed using the package's features in a way that was never really intended. Specifically, the "frozen" display is not just for disabling elements (which can be easily achieved by just setting the "disabled" attribute), but mostly for an additional confirmation step after form submit, sending a filled form via email and similar applications.
I've had a brief look at Moodle form-related code and was even more puzzled.
- The version of HTML_QuickForm in there is most probably 3.2.6 (maybe 3.2.7) released back in 2006. While we were not adding features to the package, we regularly did bug-fixing releases and the latest one is 3.2.13 released in 2011.
- Looks like Moodle isn't using stock QuickForm elements, but "customized" ones. I suspect that most of these "customizations" could be implemented in a different way that would also not interfere with an ability to upgrade base package.
- I don't think I remember bug reports / feature requests / mailing list questions from Moodle developers other than the only one mentioned above. If there were any attempts to contact us, your form library would not end up with such a number of hacks.
So I'd like to clarify a few points
- Concerning the above feature request, why is Moodle depending so much on "form freezing" feature? What was the idea behind this?
- Are there plans to upgrade Moodle form library to HTML_QuickForm2?
- Are there any sacred taboos on communication with upstream package providers among Moodle developers?
If you are indeed interested in upgrading then we have a migration guide available and will gladly answer questions.