Since 2.0 all uploaded files need to go through the file picker which does the scanning,
the idea is that it is more important to warn users that their computer is crawling
with viruses. All teachers are supposed to have local up-to-date antivirus software!
Since 2.0 we are not scanning existing files on server, in future we might use the
status flag in files table to indicate the file is problematic, but still we should
never detele anthing from the filedir...
The aria-live="polite" attribute is incorrectly added to the fieldset,
causing the entire fieldset to be read out on change in some browsers. This
is unnecessary.
It also does not announce the current state of the fieldset (collaped or
open) and should.
By parsing php://input in chunks, we can bypass max_input_vars for
forms which do not use the "multipart/form-data" enctype. This can
be (and is) safely skipped if there are fewer than max_input_vars
fields submitted as part of $_POST.
Previously it was only possible to display the form immediately as
HTML output. You had to wrap in an output buffer in order to put
it in a renderer. This new function does the output buffer for you.
- A short form of 2 sections has collapsible sections;
- The second section is expanded by default if the form has 2 sections;
- The collapsed state by setExpanded can override the state in which
the section was when it was submitted by the user;
- A header containing a required field or one that has an error
will never be collapsed.
It seems that formslib, for repetition, relies in the type
especified by the main (non existent at the end) element, instead
of assingning a type to each repetition.
Surely a result of storing types apart from elements. :-(
With the patch, detectMissingSetType() will detect
repeated elements (name containing '[') and will
perform the verification against that main element type.
I think this commit also fixes some other problems with repeatelements
and shortforms. The shortforms code was trying to use hidden elements
with names like in conjunction with ...[0] with optional_param which
will not work. Hidden form fields that relate to other parts of the form
must use the other elements's id, no name, to make the hidden field
name.