Commit graph

105101 commits

Author SHA1 Message Date
Eloy Lafuente (stronk7)
d66a5316ae MDL-73826 phpunit: Allow curl mock responses to handle empty strings
Before this commit, is_empty() was being applied before returning
the mock response. But we want to be able to mock the empty response
for some tests, hence moving the condition to null/isset, that is
the value that array_pop() returns where there aren't more elements
in the array.

With that change performed, we can test lti_load_cartridge() with
empty responses, hence adding a new test for that.
2022-02-11 23:50:05 +01:00
Eloy Lafuente (stronk7)
64969e82d7 MDL-73826 mod_lti: Fix for Windows/PHP8 with empty curl responses
Sometimes (detected with Windows, when running @ GHA), both the
response and the error of a curl request to non-existing URL
returns the empty string.

In that case, we cannot call to DOMDocument::loadXML() because the
1st param cannot be empty. So here, whenever that happens, we are
throwing the moodle_exception earlier, instead of waiting for the
XML errors to be processed later.
2022-02-11 23:50:05 +01:00
Eloy Lafuente (stronk7)
98cc2cec29 Merge branch 'MDL-69542-db-fix' of https://github.com/sarjona/moodle 2022-02-11 17:57:27 +01:00
Sara Arjona
ef8015baca MDL-69542 enrol_lti: Add missing index to install
A foreign-key from enrol_lti_users->ltideploymentid to
enrol_lti_deployment->id was defined in upgrade but missing in
install.xml.
2022-02-11 17:56:15 +01:00
Sara Arjona
ee289b4286 Merge branch 'MDL-69542-master-fixes-historyfix' of https://github.com/snake/moodle 2022-02-11 17:07:43 +01:00
Sara Arjona
256232ad46 MDL-73248 adminpresets: Improvements to the Starter preset
This is the list of changes applied to the Starter preset, following
the community suggestions and the latest features included in 4.0:

- Hide Online users, Recently accessed courses and Starred courses.
- Re-enable Description and Essay question types.
- Disable guest enrolment and hide guest login button.
- Reduce the information displayed in the activity chooser.

Apart from that, the User menu items has been removed because it had
the same value in both presets (so it makes no sense having there).
2022-02-11 16:41:06 +01:00
Sara Arjona
d24a4ab56f on-demand release 4.0dev+ 2022-02-11 15:55:38 +01:00
Sara Arjona
15404fea7c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2022-02-11 15:55:33 +01:00
Adrian Greeve
3a48a60cfc MDL-73354 mod_assign: Added removed group check to overrides. 2022-02-11 22:28:11 +11:00
Jun Pataleta
9af545659c Merge branch 'MDL-72928-rebase' of https://github.com/Chocolate-lightning/moodle 2022-02-11 22:28:11 +11:00
Jun Pataleta
ae14ff321b MDL-72928 core: Remove Remember username 2022-02-11 12:01:26 +08:00
Mathew May
ecb92c7ed9 MDL-72928 login: Update styling and functionality 2022-02-11 12:01:26 +08:00
Jake Dallimore
e399b3995e MDL-69542 enrol_lti: behat feature covering tool registration 2022-02-11 11:07:26 +08:00
Jake Dallimore
55cbb9c655 MDL-69542 auth_lti: add mode based user provisioning
Three modes are initially introduced here, for use by dependent code:
1. Automatic - where accounts will be automatically created for users
2. Prompt new or existing - where the user can choose to use an existing
account or have a new account created for them.
3. Prompt existing only - where users must link an existing account.
This change also adds linked logins, for use with provisioning.
2022-02-11 11:06:54 +08:00
Jake Dallimore
66b76c4545 MDL-69542 enrol_lti: remaining changes for dynamic registration support
- Allow the tool to generate secure, one time, dynamic registration
URLs for use in supporting platforms.
- Registration endpoint, which validates the one time URL, makes
the registration requqest to the platform and adds the approriate
tool registration changes in the tool on success.
- Admin settings pages make use of the 'copy to clipboard' module
which is now in core.
2022-02-11 11:06:05 +08:00
Jake Dallimore
d5ed4a3184 MDL-69542 enrol_lti: add LTI Advantage grade sync task
This change adds a new grade sync task for LTI Advantage and updates
the legacy task such that it only operates on legacy tools. This uses
the assignment and grades service 2.0.
2022-02-11 11:03:32 +08:00
Jake Dallimore
1f27bad809 MDL-69542 enrol_lti: add LTI Advantage member sync task
This change adds a new member sync task for LTI Advantage and updates
the legacy task such that it only operates on legacy tools. This uses
the names and roles provisioning service 2.0.
2022-02-11 11:03:00 +08:00
Jake Dallimore
c9636d261b MDL-69542 core_lib: make lti tool generator default to legacy version
This means existing tests won't need to change.
2022-02-11 11:01:26 +08:00
Jake Dallimore
4d8a078154 MDL-69542 enrol_lti: backup changes for LTI Advantage 2022-02-11 10:52:40 +08:00
Jake Dallimore
6fbd30e15d MDL-69542 enrol_lti: add deep linking support 2022-02-11 10:52:31 +08:00
Jake Dallimore
2516938537 MDL-69542 enrol_lti: add version based resource publication
Adds tabs and a new table allowing LTI Advantage published resources
to be viewed.
2022-02-11 10:51:59 +08:00
Jake Dallimore
c6c7b1dadc MDL-69542 enrol_lti: add generators for use in LTI Advantage behat 2022-02-11 10:50:06 +08:00
Jake Dallimore
f0092f94d8 MDL-69542 enrol_lti: add OIDC endpoints for resource link launch 2022-02-11 10:49:40 +08:00
Jake Dallimore
983038161a MDL-69542 enrol_lti: add message_helper utility class 2022-02-11 10:49:30 +08:00
Jake Dallimore
9d5264d500 MDL-69542 enrol_lti: add tool launch service 2022-02-11 10:47:12 +08:00
Jake Dallimore
92195d97c0 MDL-69542 enrol_lti: add admin page for deployment management 2022-02-11 10:43:00 +08:00
Jake Dallimore
c41ff5161d MDL-69542 enrol_lti: add tool deployments service 2022-02-11 10:38:41 +08:00
Jake Dallimore
8c62efe74e MDL-69542 enrol_lti: admin page providing platform registration 2022-02-11 10:36:01 +08:00
Jake Dallimore
1f3d37390d MDL-69542 enrol_lti: add tool endpoint page to admin settings 2022-02-11 10:35:51 +08:00
Jake Dallimore
0f6239a054 MDL-69542 enrol_lti: add application registration service 2022-02-11 10:32:49 +08:00
Jake Dallimore
948746eae7 MDL-69542 enrol_lti: make lib changes supporting LTI Advantage
This change includes:
- LTI Advantage specific code in delete_instance().
- LTI version field added to publish as lti tool form.
- LTI Advantage specific uuid added to add_instance().
- Moved secret validation (LTI1.1/2.0) to server side, allowing
the element to be hidden in LTI Advantage cases.
2022-02-11 10:24:49 +08:00
Jake Dallimore
dad46e813b MDL-69542 enrol_lti: implement classes required by the lti13 library 2022-02-11 10:23:31 +08:00
Jake Dallimore
5649c72d43 MDL-69542 enrol_lti: add published resource view object support
The view objects introduced here will be used as a representation of
data during the content selection process.
2022-02-11 10:22:24 +08:00
Jake Dallimore
4049c08998 MDL-69542 enrol_lti: add entity repositories 2022-02-11 10:20:21 +08:00
Jake Dallimore
a7d864a609 MDL-69542 enrol_lti: add base test class for lti advantage
Contains a collection of useful LTI Advantage specific methods.
2022-02-11 10:18:34 +08:00
Jake Dallimore
7a1f433043 MDL-69542 enrol_lti: add new entity classes for storing launch data 2022-02-11 10:12:57 +08:00
Jake Dallimore
23894ddd98 MDL-69542 enrol_lti: add upgrade and install code updating tables 2022-02-11 10:10:05 +08:00
Jake Dallimore
42078d4eec MDL-69542 enrol_lti: all lang string changes 2022-02-11 10:09:25 +08:00
Jake Dallimore
6c0ffde138 MDL-69542 libraries: Add the LTI 1.3 library 2022-02-11 10:07:39 +08:00
Limekiller
3c60f8a0ce MDL-73450 installation: Support Aurora MySQL >= 8.0.0 2022-02-10 15:14:35 -05:00
Eloy Lafuente (stronk7)
057a21e381 Merge branch 'MDL-73836' of https://github.com/paulholden/moodle 2022-02-10 21:12:19 +01:00
Eloy Lafuente (stronk7)
83497580cb Merge branch 'MDL-73669-master' of https://github.com/marinaglancy/moodle 2022-02-10 16:39:06 +01:00
Jun Pataleta
31a6f70ea1 Merge branch 'MDL-73784-master' of https://github.com/HuongNV13/moodle 2022-02-10 22:56:24 +08:00
Jun Pataleta
9dd8909360 Merge branch 'MDL-73811' of https://github.com/paulholden/moodle 2022-02-10 22:41:47 +08:00
Paul Holden
b393248400 MDL-73837 reportbuilder: use column attributes in system reports. 2022-02-10 13:17:01 +00:00
Paul Holden
14b6334133 MDL-73836 reportbuilder: allow pre-defined action title attribute. 2022-02-10 12:38:25 +00:00
Ilya Tregubov
8685968870 Merge branch 'MDL-73764' of https://github.com/stronk7/moodle 2022-02-10 14:18:34 +02:00
Sara Arjona
3daeecd3d2 MDL-73827 lib: Fix URL blocked error for userinfo endpoint
When the oAuth2 issuer hasn't any userinfo endpoint, a call to
$this->get(false) was done, which was returning "The URL is
blocked".
This is a regression from MDL-70649, which added some cURL security
checks.
2022-02-10 10:43:38 +01:00
Paul Holden
ff6e5cc71d MDL-73797 output: swap order of buttons in save/cancel dialogs.
The primary button should swap position with the secondary button,
so that it's displayed on the right hand side of the dialog.
2022-02-10 08:34:04 +00:00
Jake Dallimore
2a736da1ee Merge branch 'MDL-73448-master' of https://github.com/peterRd/moodle 2022-02-10 15:59:57 +08:00