MDL-52873 forms: Generate unique id attributes for modgrade elements
authorDavid Mudrák <david@moodle.com>
Fri, 22 Jan 2016 12:43:42 +0000 (13:43 +0100)
committerDavid Mudrák <david@moodle.com>
Fri, 22 Jan 2016 13:24:53 +0000 (14:24 +0100)
commitd84c64b7d6c20b9ab9803d316f1c76db578f8dc5
treec17959d404487b6a6b6327fb51e0eadfa985e316
parenteddec36d4925850d78ba95b7e0175cf671196a78
MDL-52873 forms: Generate unique id attributes for modgrade elements

The previous method of generating the id attribute of the elements
within the modgrade group did not take the name of the modgrade field
into account. So if there were multiple fields of the modgrade type
added into a form (not a common case yet still valid), elements created
within the group were assigned same id attributes.

The patch introduces a new method for generating the id attribute of
modgrade elements. The new method takes the name of the modgrade group
into account and returns the id in the format similar to the default one
returned by HTML_QuickForm_element::_generateId().

The patch changes the generated id attribute. Apart from the
block_activity_results' behat feature files, not other places seem to
rely on the exact value.
blocks/activity_results/tests/behat/addunsupportedactivity.feature
blocks/activity_results/tests/behat/highscoreswithscales.feature
blocks/activity_results/tests/behat/highscoreswithscalesandgroups.feature
blocks/activity_results/tests/behat/lowscoreswithscales.feature
blocks/activity_results/tests/behat/lowscoreswithscalesandgroups.feature
lib/form/modgrade.php
lib/tests/formslib_test.php