* Use a single capability 'mod/workshop:exportsubmissions' to control
who is able to export a submission and all associated visible
peer-assessments.
* The export capability is by default granted to teachers and managers
as well.
* Simplify the integration of the export button into the submission
page. There is now a single place where the export button appears - at
the buttom of the submission page.
* Clean up the new strings introduced for this feature.
* Rewrite the portfolio caller class so that it better mimics the
behaviour of the submission.php page. It must not be possible to get
access to contents otherwise not available via the UI.
* Fix phpunit tests.
* Improve behat tests so that they can run in headless browser
(performance).
During the development, some problems were detected in the underlying
portfolio API, especially with LEAP2A format and files collisions
handling. These may be eventually fixed in the future, should there be a
demand for it.
This is just a refactored code block present at two different places. We
will need the same logic in the portfolio caller class soit made sense
to implement it as a new method, rather than make another copy&paste.
As a side effect, the logic is now properly unit tested.
When editing a quiz that is using the require passing grade completion method,
the grade to pass cannot be zero. Since the completion method is locked we
cannot recommend that the completion method is changed (as we do when the quiz
is being created). Instead we have to inform the user that the grade to pass
must not be zero.
When using a passing grade of zero, with the required passing grade
option, an error was displayed on the "grade to pass" element.
This was confusing as the error message is referring to the
"Require passing grade" element. This patch moves the message to
the "Require passing grade" element.
Additionaly this patch fixes a small typo in a comment.
Until now in the get_assignments WS all the settings for assignment
plugins (submission and feedback) are returned, this was bad because:
- It was returning settings for plugins that may not be enabled
- It was returning settings that would be a security risk (a third
party plugin including a password or credentials for connecting a
remote site)
- Some values was returned "raw" without further processing, for
example, maxsubmissionsizebytes returned 0 when using the plugin
default value instead a valid size
- Assignment plugins implemented an API for communication with the
external API, see for example: get_external_parameters, it didn’t make
sense had an API for the received parameters and not the returned data.
When there is more than one question on a page, say questions 2, 3 & 4.
Then when you click the navigation button for Q4, then it should load
the next page scrolled down so that Q4 is visible. That was not working.
* Load contentitem_return doc before processing
* Also use new AMD modal instead of the YUI one.
* Remove conversion of text columns in union queries
- Since the value column in lti_types_config was changed to a
text type, there is no need to use $DB->sql_compare_text()
for the lti_types columns involved in the union queries in
lti_get_type_config().
The chooser template now re-uses a core one which caused the
IDs of the fields to be changed. The behat tests have been changed
to target the new IDs. Note: using the label values did not work
because more than one matched due to loose checking.