Compare commits

..

786 Commits

Author SHA1 Message Date
Jun Pataleta 49bf20af0b Moodle release 4.3.11 2025-03-15 20:19:02 +08:00
Ilya Tregubov 03242ec12c MDL-81945 gradereport_singleview: Fix hidden grade handling.
Seems to become broken after IR refactoring.
2025-03-14 15:24:16 +00:00
Ilya Tregubov 48a3c783dd MDL-81945 gradereport_user: Don't reveal visibility by color.
Seems like dimmed_text class was added without proper check so
user can guess if item is hidden.
2025-03-14 15:24:16 +00:00
Ilya Tregubov acdcb722b0 MDL-81945 gradereport_user: Behat tests for user report. 2025-03-14 15:24:16 +00:00
Ilya Tregubov e692607aaa MDL-81945 gradereport_singleview: Behat tests for singleview report. 2025-03-14 15:24:16 +00:00
Ilya Tregubov 7f7f13bba0 MDL-81945 gradereport_grader: Behat tests for grader report 2025-03-14 15:24:16 +00:00
Ilya Tregubov 920a8be0e6 MDL-81945 core_grades: create Behat step for grades action menu. 2025-03-14 15:24:16 +00:00
Ilya Tregubov c1e2713764 MDL-81945 gradereport_singleview: Fix hidden grades handling.
If a user is lacking moodle/grade:viewhidden he should not be able
to view or modify grades.
2025-03-14 15:24:16 +00:00
Sara Arjona d3a8d50292 weekly release 4.3.10+ 2025-03-14 16:14:15 +01:00
Sara Arjona d0137c54a2 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2025-03-14 16:14:12 +01:00
Huong Nguyen 58ba3cf834 Merge branch 'MDL-84640-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2025-03-12 16:32:40 +07:00
Angelia Dela Cruz f1c8f2281a MDL-84640 analytics: Behat for obtaining prediction models insights 2025-03-12 16:57:41 +08:00
Sara Arjona 03e8bddd1e Merge branch 'MDL-84801-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2025-03-11 17:26:37 +01:00
Huong Nguyen 2531818e3d MDL-84801 Behat: Fix Expand all fieldsets and advanced elements failure 2025-03-11 09:22:26 +07:00
AMOS bot e2a32ef88f Automatically generated installer lang files 2025-03-11 00:07:47 +00:00
AMOS bot e4a37ce710 Automatically generated installer lang files 2025-03-10 00:07:36 +00:00
Jun Pataleta a94925736c weekly release 4.3.10+ 2025-03-08 11:44:39 +08:00
Andrew Nicols b10657129e Merge branch 'MDL-84723-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2025-03-06 11:51:21 +08:00
Simey Lameze 2cee750fdf MDL-84723 behat: final improvements and fixes to the test
This commit does few things:
- Remove unnecessary grade field to assign generator.
- Remove unnecessary comment lines.
- Update the warning message assertion to use the no-break space unicode character.
2025-03-06 11:24:16 +08:00
Angelia Dela Cruz 78a04159cd MDL-84723 gradingform: Behat for maximum grade mismatch in marking guide 2025-03-06 11:24:16 +08:00
Huong Nguyen eb87add2b2 Merge branch 'MDL-84425-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2025-03-05 10:51:45 +07:00
Angelia Dela Cruz a952340811 MDL-84425 theme_boost: Behat for course section selector unavailable 2025-03-05 11:20:12 +08:00
Sara Arjona 21fe8a97e8 weekly release 4.3.10+ 2025-03-04 16:13:50 +01:00
Sara Arjona f2093b46e8 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2025-03-04 16:13:49 +01:00
Huong Nguyen abea467757 Merge branch 'MDL-84595-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2025-03-04 10:55:44 +07:00
AMOS bot 2c4e86245b Automatically generated installer lang files 2025-03-02 00:08:09 +00:00
Sara Arjona ea80a7f049 weekly release 4.3.10+ 2025-02-27 16:54:57 +01:00
Simey Lameze 5e7238e637 MDL-84424 behat: add template_competencies generator and improve test 2025-02-27 07:55:31 +08:00
Angelia Dela Cruz 49e490d209 MDL-84424 tool_lp: admin can create learning plans from template 2025-02-27 07:54:33 +08:00
Sara Arjona 6009960edb Merge branch 'MDL-84609-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2025-02-26 16:19:59 +01:00
Simey Lameze cdf2b01228 MDL-84609 behat: add required entities and fix failures
This commit also fix some typos and misaligned pipes around the
changed steps.

Signed-off-by: Simey Lameze <simey@moodle.com>
2025-02-25 11:52:14 +08:00
Angelia Dela Cruz c52babea18 MDL-84609 tool: Replaced tool_lp generators with standard generators 2025-02-25 11:52:14 +08:00
Huong Nguyen 9a528fbbb4 weekly release 4.3.10+ 2025-02-21 10:15:16 +07:00
Andrew Nicols beb5ba99e7 MDL-84595 tool_behat: Allow accessibility tests to run for a single Node 2025-02-20 22:28:24 +08:00
Jun Pataleta a689db2063 Merge branch 'MDL-84448-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2025-02-20 12:10:06 +08:00
Simey Lameze 151542757f MDL-84448 behat: return null if theme has no config 2025-02-20 12:00:49 +08:00
Amanda Doughty 87b30d4ac6 MDL-84448 lib: Fixed behat context check for grandchild themes 2025-02-20 12:00:49 +08:00
Jun Pataleta 14772da46c Merge branch 'MDL-84592-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2025-02-20 11:45:44 +08:00
Jun Pataleta 58b9066111 Merge branch 'MDL-84590-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2025-02-20 10:50:01 +08:00
Andrew Nicols eac184c754 MDL-84592 tool_behat: Improve accessibility failure information 2025-02-20 10:26:38 +08:00
Huong Nguyen dca015783d Merge branch 'MDL-84498-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2025-02-20 09:22:42 +07:00
Andrew Nicols b086bc5387 MDL-84590 tool_behat: Axe tests must use all wcag rules
Rules are not additive. That is to say that the wcag22a tag does not
include wcag21a or wcag2a. They all need to be specified.
2025-02-20 09:59:56 +08:00
Jason Den Dulk b82a60b3cf MDL-84498 lib: Fix reflection property regression. 2025-02-20 09:35:26 +08:00
Jun Pataleta 5e7cde3baf weekly release 4.3.10+ 2025-02-14 09:54:00 +08:00
Jun Pataleta cbb94d0f87 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2025-02-14 09:53:58 +08:00
Jun Pataleta 5f3057cb7c Merge branch 'MDL-84102-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2025-02-13 11:49:03 +08:00
Angelia Dela Cruz 71e551b03f MDL-84102 message: Behat for setting default notification preferences 2025-02-12 15:36:49 +08:00
Huong Nguyen 69f3c42284 Merge branch 'MDL-84414-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2025-02-11 11:18:00 +07:00
Angelia Dela Cruz 735f25dceb MDL-84414 gradingform_guide: Behat test to set marking guide as ready 2025-02-11 11:15:19 +08:00
AMOS bot 4725303f8c Automatically generated installer lang files 2025-02-11 00:09:15 +00:00
Sara Arjona f4f9dd8eac Moodle release 4.3.10 2025-02-07 12:18:09 +01:00
Sara Arjona 8075bbd23d weekly release 4.3.9+ 2025-02-06 16:21:51 +01:00
Laurent David a882939708 MDL-84271 core_course: Validate module list in search
* We need to validate the list of modules in the course search

Co-authored-by: Lars Bonczek <bonczek@math.tu-berlin.de>
2025-02-06 11:19:04 +08:00
Paul Holden e51fd749a7 MDL-84003 mod_glossary: capability check restoring trusted entry text. 2025-02-06 10:52:24 +08:00
Paul Holden 0ddd05e560 MDL-84145 report_loglive: format event description as plain text. 2025-02-06 09:44:42 +07:00
Leon Stringer 870d4f60da MDL-79976 mod_feedback: Check group for response
Check the teacher's group membership if group mode is SEPARATEGROUPS
prior to showing or deleting responses.
2025-02-05 18:14:29 +01:00
Paul Holden 50aadb0400 MDL-84239 badges: correct context check when disabling badge. 2025-02-04 15:20:22 +08:00
David Woloszyn eb60d29446 MDL-84136 filter_tex: Improve sanitization of forbidden items 2025-02-04 11:36:01 +07:00
Mark Johnson 47fb1d93af MDL-84146 question: Improve handling of JS parameters 2025-02-03 14:06:59 +07:00
meirzamoodle 4bf0e1efc4 MDL-84023 lib: Update requirejs to 2.3.7 2025-01-31 02:24:26 +00:00
Marina Glancy 86d74279c5 MDL-83941 tags: prevent users from browsing unsearchable collections 2025-01-31 02:24:26 +00:00
Mihail Geshoski f3b0e54bc9 MDL-82896 qtype_ddimageortext: Clean drop zone label text
It is unnecessary to allow HTML to be added to the drop zone label text,
as this content is hidden and only accessible to screen readers.
Additionally, the content is currently not properly formatted, which
introduces a risk for potential XSS exploits. This change ensures that
only plain text (PARAM_TEXT) is allowed when adding content and that the
content is properly formatted before being output.
2025-01-31 02:24:26 +00:00
Huong Nguyen a93fcef028 weekly release 4.3.9+ 2025-01-31 09:20:42 +07:00
Huong Nguyen 6588377dd3 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2025-01-31 09:20:40 +07:00
Huong Nguyen 23c09b61fb Merge branch 'MDL-84103-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2025-01-30 11:10:28 +07:00
Angelia Dela Cruz 6ea00054ee MDL-84103 imscc: Behat test for import IMS Cartridge to course 2025-01-30 11:28:11 +08:00
Sara Arjona 047a063597 Merge branch 'MDL-84355-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2025-01-29 08:10:06 +01:00
Andrew Nicols c6b7527e03 MDL-84355 phpunit: Exclude fixtures from testsuite search 2025-01-29 11:46:02 +08:00
Andrew Nicols e7fa3eb681 MDL-84355 phpunit: Correct test path for component configs 2025-01-29 11:46:01 +08:00
AMOS bot 575e0103c7 Automatically generated installer lang files 2025-01-28 00:07:42 +00:00
Sara Arjona 42a8b0c521 weekly release 4.3.9+ 2025-01-23 17:35:06 +01:00
Sara Arjona 3ebd351cc9 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2025-01-23 17:35:04 +01:00
Huong Nguyen 32e2dca306 Merge branch 'MDL-84101-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2025-01-23 09:09:46 +07:00
Huong Nguyen cecf12a810 Merge branch 'MDL-84249-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2025-01-23 09:03:00 +07:00
Simey Lameze b11718d7b9 MDL-84101 behat: add step to save changes
Signed-off-by: Simey Lameze <simey@moodle.com>
2025-01-23 07:28:20 +08:00
Angelia Dela Cruz 2196b091bd MDL-84101 message: Behat test for managing notification options 2025-01-23 07:28:20 +08:00
Sara Arjona 853f96fea7 Merge branch 'MDL-81043-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2025-01-20 16:03:42 +01:00
Simey Lameze bc4af11917 MDL-84249 behat: remove unnecessary javascript tag
This commit also make the repeated scenario names unique.
2025-01-20 14:00:10 +08:00
Jun Pataleta d6147ce5e2 Merge branch 'MDL-83814-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2025-01-20 09:58:16 +08:00
Huong Nguyen 7890f5650d MDL-81043 gradereport_grader: Improve gradereport_grader/collapse
- This will helps `nodesUpdate` handle asynchronous updates better
- This also helps to fix Random Behat failure
2025-01-17 15:55:24 +07:00
AMOS bot f325ae21ff Automatically generated installer lang files 2025-01-17 00:07:45 +00:00
Huong Nguyen 73581e38f0 weekly release 4.3.9+ 2025-01-16 23:46:53 +07:00
Huong Nguyen edb9d874ae Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2025-01-16 23:46:51 +07:00
Jun Pataleta 61d40f20cb Merge branch 'MDL-83826-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2025-01-16 10:22:11 +08:00
Jun Pataleta 4a3be4bd28 Merge branch 'MDL-83172-403-test' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2025-01-15 17:02:23 +08:00
Angelia Dela Cruz 0ca3aad0ab MDL-83826 core_admin: Behat coverage for plugins overview for admins 2025-01-15 14:02:44 +08:00
meirzamoodle 1bc6659dc6 MDL-83172 environment: Fix undefined array key error 2025-01-14 16:34:43 +07:00
meirzamoodle bafa2ac0f7 MDL-83172 environment: Remove Oracle from LMS 2025-01-14 16:34:43 +07:00
Jun Pataleta 27497670f2 Merge branch 'MDL-84124-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2025-01-14 11:12:34 +08:00
AMOS bot 31a2c21b90 Automatically generated installer lang files 2025-01-14 00:07:35 +00:00
Andrew Nicols 94676ef5c1 MDL-83814 core: Bump Node to latest LTS 2025-01-13 09:07:09 +08:00
AMOS bot a9dd5eecdc Automatically generated installer lang files 2025-01-13 00:07:43 +00:00
Andrew Nicols e54798475a MDL-84152 tests: Remove extraneous / in external file URL generation 2025-01-10 14:39:49 +08:00
AMOS bot bdbb1f2243 Automatically generated installer lang files 2025-01-09 00:09:52 +00:00
Andrew Nicols cf5fbd0c56 MDL-84124 cache: Purge Redis cache between tests 2025-01-09 08:00:51 +08:00
AMOS bot adf2d2d9f6 Automatically generated installer lang files 2025-01-08 00:07:40 +00:00
Huong Nguyen 59a432a66d weekly release 4.3.9+ 2025-01-03 13:54:19 +07:00
Huong Nguyen 8436787deb Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2025-01-03 13:54:17 +07:00
AMOS bot 1490b839c8 Automatically generated installer lang files 2025-01-01 00:07:46 +00:00
AMOS bot 994cf2d2e0 Automatically generated installer lang files 2024-12-25 00:18:36 +00:00
Huong Nguyen 0e70f4732b Merge branch 'MDL-83988-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-12-24 09:30:07 +07:00
AMOS bot 8291ad554e Automatically generated installer lang files 2024-12-22 00:08:02 +00:00
AMOS bot 90ad501d05 Automatically generated installer lang files 2024-12-21 00:07:33 +00:00
AMOS bot 6f4c5dba6c Automatically generated installer lang files 2024-12-20 00:07:38 +00:00
Jun Pataleta eedd50b245 weekly release 4.3.9+ 2024-12-19 20:08:25 +08:00
Jun Pataleta db32329799 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-12-19 20:08:23 +08:00
Jun Pataleta f48a232a13 Merge branch 'MDL-84026-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-12-18 13:24:30 +08:00
Andrew Nicols 16708c6225 Merge branch 'MDL-84018-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-12-18 10:58:56 +08:00
Andrew Nicols 64e9a406ec MDL-84026 core: Update GitHub Funding to point to fund.moodle.org 2024-12-18 10:46:03 +08:00
Huong Nguyen 2c3fe2b361 Merge branch 'MDL-84000-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-12-18 09:05:24 +07:00
Sara Arjona cd5b957f62 Merge branch 'MDL-83696-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-12-17 07:42:07 +01:00
Angelia Dela Cruz d250ba9815 MDL-83696 core_tag: Added behat for book chapter and glossary entry tags 2024-12-17 13:47:52 +08:00
Simey Lameze 448862a2eb MDL-84018 phpunit: extend test class to advanced_testcase
Signed-off-by: Simey Lameze <simey@moodle.com>
2024-12-17 07:07:20 +08:00
AMOS bot 8e9a923d8b Automatically generated installer lang files 2024-12-15 00:08:17 +00:00
Paul Holden e426e74461 MDL-84000 reportbuilder: move testcase helper to autoloaded namespace.
Clean up some class imports while we're at it.
2024-12-13 10:57:02 +00:00
Huong Nguyen 0ee33574bf weekly release 4.3.9+ 2024-12-13 08:58:34 +07:00
Huong Nguyen 5a86d61dee Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-12-13 08:58:32 +07:00
Andrew Nicols bd38b1bfda MDL-83988 core: Hide common machine-read files 2024-12-11 23:35:55 +08:00
Andrew Nicols bef27ef23f MDL-81520 mod_assign: Update tests to not extend assign_provider test 2024-12-11 12:30:22 +08:00
Andrew Nicols cc54b4e78a MDL-81520 core: Fix test finality 2024-12-11 12:30:21 +08:00
AMOS bot bcd31cde1e Automatically generated installer lang files 2024-12-11 00:07:41 +00:00
AMOS bot a38302e489 Automatically generated installer lang files 2024-12-10 00:07:42 +00:00
AMOS bot 50d9c0a77c Automatically generated installer lang files 2024-12-08 00:07:59 +00:00
Huong Nguyen 9dbf9e9829 Moodle release 4.3.9 2024-12-06 13:12:35 +07:00
Huong Nguyen c8a852421a weekly release 4.3.8+ 2024-12-05 22:33:04 +07:00
Huong Nguyen 4bd53a83f5 MDL-83921 competency: Update unit tests with latest changes 2024-12-05 18:37:16 +08:00
Huong Nguyen 248db026b7 MDL-82379 core_user: Move email change token to user private access key 2024-12-05 13:38:30 +08:00
Huong Nguyen 5c292ac705 MDL-83921 competency: Bump version 2024-12-05 11:22:01 +07:00
Michael Hawkins 7fb2046b9d MDL-83921 competency: Match web service capability check with page check 2024-12-05 11:21:51 +07:00
Huong Nguyen 2e71e71afc MDL-82963 Tag: Improve validation for users tagged with sepecified tag 2024-12-05 11:03:26 +08:00
Laurent David 9acaaefc07 MDL-82757 mod_data: Improve group access handling
* Improved handling of group access to ensure correct visibility of records.
2024-12-04 02:44:21 +00:00
Jun Pataleta e78fbde263 MDL-61316 core: Fix session gc unit tests 2024-12-04 02:44:21 +00:00
meirzamoodle 5a83858244 MDL-61316 core: Removed 5x multiplier from guest session expiration 2024-12-04 02:44:21 +00:00
Mark Johnson 1c8874a29a MDL-83357 question: Fix filter cleaning in page links 2024-12-04 02:44:21 +00:00
Mark Johnson a81957cb08 MDL-83357 question: Additional cleaning of filter params 2024-12-04 02:44:21 +00:00
Huong Nguyen db6abd4ce5 Merge branch 'MDL-82946-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-12-04 09:39:57 +07:00
Angelia Dela Cruz 90026cf089 MDL-82946 qbank: Behat coverage for questions bulk actions 2024-12-03 10:42:40 +08:00
Sara Arjona b819eca2d4 weekly release 4.3.8+ 2024-11-29 12:37:08 +01:00
Jun Pataleta 05d855308d MDL-83470 environment: Put back Oracle support for now
Even though Oracle support is planned to be dropped for 5.0, the
actual issue that drops it (MDL-83172) has not yet landed. So, it's
better to keep this in environment.xml for now and defer its removal
from environment.xml in MDL-83172.
2024-11-28 16:06:22 +07:00
Huong Nguyen d79ebd7618 Merge branch 'MDL-83470-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-11-28 11:04:24 +07:00
Huong Nguyen 1ad00a078c Merge branch 'MDL-83643-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-11-28 09:21:58 +07:00
Andrew Nicols 7c8a9ca226 MDL-83788 mod_glossary: Correct assertions for assertArrayHasKey 2024-11-27 13:26:01 +11:00
Jun Pataleta 5cc1d88e69 weekly release 4.3.8+ 2024-11-22 22:27:05 +08:00
Jun Pataleta dcc9c83b49 MDL-83470 core: Define environment requirements for Moodle 5.0 2024-11-21 17:35:34 +08:00
Andrew Nicols 175f20919d Merge branch 'MDL-83551-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-11-21 12:26:58 +08:00
Jun Pataleta e5da004e9b Merge branch 'MDL-81521-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-11-19 15:15:30 +08:00
Huong Nguyen fa5ffe056b Merge branch 'MDL-83610-403' of https://github.com/marinaglancy/moodle into MOODLE_403_STABLE 2024-11-19 09:29:13 +07:00
Andrew Nicols ba6abd2c0b MDL-81521 mod_quiz: Fix attempt walkthrough tests 2024-11-19 09:30:52 +08:00
Andrew Nicols 3bd5f52e22 MDL-81521 core: Update all possibly data providers to be static
Note: Some data providers could not be automatically be converted to
being static. These will be handled in a separate issue.
2024-11-19 09:30:51 +08:00
Marina Glancy 5733cf3990 MDL-83610 behat: allow to set date fields in groups 2024-11-18 10:37:29 +00:00
Huong Nguyen ba7e9f33ed weekly release 4.3.8+ 2024-11-15 09:21:43 +07:00
Jun Pataleta a55a276100 Merge branch 'MDL-80926-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-11-14 12:05:22 +08:00
Huong Nguyen 63c59f01fa Merge branch 'MDL-80689_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-11-13 14:01:19 +07:00
Simey Lameze 687dcf55e2 MDL-83643 behat: make manual completion scenario names unique 2024-11-13 07:18:09 +08:00
Simey Lameze 4e3d6fe258 MDL-83551 behat: make duplicated scenario names unique 2024-11-13 06:55:16 +08:00
Huong Nguyen 511d2cbad8 weekly release 4.3.8+ 2024-11-08 13:56:48 +07:00
Huong Nguyen 60fb10f6d5 Merge branch 'MDL-83619-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-11-07 11:06:06 +07:00
Huong Nguyen 18f08ec3f7 Merge branch 'MDL-83611-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-11-07 11:02:49 +07:00
Simey Lameze 0f2a2e6109 MDL-80926 behat: fix random and improve h5p completion test 2024-11-06 13:37:11 +08:00
Simey Lameze 158240ddf5 MDL-83619 behat: enable bbb module early in the test 2024-11-05 10:23:41 +08:00
Huong Nguyen 6aace0164e weekly release 4.3.8+ 2024-11-01 14:29:31 +07:00
Huong Nguyen 5c5b951797 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-11-01 14:29:29 +07:00
Simey Lameze 4831c5321c MDL-83611 behat: increase window size to avoid randoms 2024-11-01 10:35:07 +08:00
Huong Nguyen 21c5a52209 Merge branch 'MDL-82911-403-fix' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-10-31 14:15:05 +07:00
Simey Lameze 80ae1a4070 MDL-82911 behat: change future times example to minutes 2024-10-31 14:15:56 +08:00
Huong Nguyen 8042e88e3e Merge branch 'MDL-82911-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-10-31 11:03:54 +07:00
Huong Nguyen 485ecc840e Merge branch 'MDL-83414-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-10-31 10:39:03 +07:00
Angelia Dela Cruz 75f7ebb19c MDL-83414 core_grades: Behat to test custom scale display 2024-10-31 09:46:48 +08:00
Tim Hunt 9ff3c199a2 MDL-80689 behat: add a transformation to get dirroot 2024-10-30 14:10:30 +00:00
Angelia Dela Cruz 8cad942a95 MDL-82911 mod_bigbluebuttonbn: Behat for BBB open and close date time 2024-10-29 12:35:01 +08:00
AMOS bot f70486d106 Automatically generated installer lang files 2024-10-29 00:07:46 +00:00
Shamim Rezaie 08e4f06bc3 weekly release 4.3.8+ 2024-10-18 23:29:04 +11:00
Shamim Rezaie 075f2a2a77 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-10-18 23:29:02 +11:00
Jun Pataleta 877fcd88e0 Merge branch 'MDL-83002-403' of https://github.com/marinaglancy/moodle into MOODLE_403_STABLE 2024-10-16 20:32:34 +08:00
AMOS bot 351f383eda Automatically generated installer lang files 2024-10-15 00:09:27 +00:00
AMOS bot 47032e322b Automatically generated installer lang files 2024-10-13 00:07:49 +00:00
Jake Dallimore 28b69f56c4 weekly release 4.3.8+ 2024-10-11 10:55:10 +08:00
Jake Dallimore 46c1d8d4d2 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-10-11 10:55:08 +08:00
Jun Pataleta 58502bb663 Merge branch 'MDL-82912-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-10-10 10:35:11 +08:00
Angelia Dela Cruz 69ba92c13f MDL-82912 mod_workshop: Behat to view assessment after workshop close 2024-10-09 16:56:23 +08:00
Huong Nguyen b8291bca52 Merge branch 'MDL-83331_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-10-09 14:47:29 +07:00
AMOS bot 14fbef371c Automatically generated installer lang files 2024-10-09 00:09:20 +00:00
AMOS bot 5f0564606c Automatically generated installer lang files 2024-10-08 00:07:43 +00:00
Tim Hunt 6939aacf16 MDL-83331 behat: enable navigation direct to mod/.../index.php 2024-10-07 12:05:26 +01:00
Jun Pataleta db959720ed Moodle release 4.3.8 2024-10-05 14:46:42 +08:00
AMOS bot 7836fde50f Automatically generated installer lang files 2024-10-05 00:07:43 +00:00
Huong Nguyen 2bf0d3b149 weekly release 4.3.7+ 2024-10-04 20:48:15 +07:00
Huong Nguyen a8f220b2b7 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-10-04 20:48:13 +07:00
AMOS bot 65463981dc Automatically generated installer lang files 2024-10-04 00:07:42 +00:00
Marina Glancy eb07eaef1e MDL-83002 theme_boost: tell behat to wait when initialising drawers 2024-10-03 15:58:14 +01:00
Michael Hawkins 5bb490e979 MDL-83352 message: Update usercantbemessaged string 2024-10-03 17:47:06 +07:00
Jun Pataleta c7b2b1c439 Merge branch 'MDL-83238-403-enfix' of https://github.com/mudrd8mz/moodle into MOODLE_403_STABLE 2024-10-03 16:02:17 +08:00
David Mudrák d869697f97 MDL-83238 lang: Fix the changed strings in the tests, too 2024-10-02 22:22:44 +02:00
Helen Foster 9ad5f88019 MDL-83238 lang: Import fixed English strings (en_fix) 2024-10-02 22:09:32 +02:00
Shamim Rezaie 90f82cbe86 Merge branch 'MDL-83332-403' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2024-10-03 02:24:36 +10:00
Paul Holden e22816a954 MDL-83180 reportbuilder: correct access check for viewing schedules. 2024-10-02 16:49:46 +08:00
meirzamoodle 23f51d88cf MDL-83332 environment: Reverts the slashargument removal on MDL-62640
We are encountering Behat failures on MacOS and possibly Windows.

This reverts commit 3202109780.
2024-10-02 13:32:28 +07:00
Jun Pataleta 6aa12043d1 Merge branch 'm43-md83163' of https://github.com/danmarsden/moodle into MOODLE_403_STABLE 2024-10-02 12:31:27 +08:00
Dan Marsden 772c763e6b MDL-83310 course: remove hard-coded list of course formats from test. 2024-10-02 08:53:11 +13:00
Paul Holden 9f773c160e MDL-83181 reportbuilder: ensure audience correctness before delete. 2024-10-01 12:44:16 +00:00
Paul Holden d3b930d67c MDL-82386 block_rss_client: user access checks for feed edit/delete. 2024-10-01 12:44:16 +00:00
Huong Nguyen 886f5c8465 weekly release 4.3.7+ 2024-10-01 19:33:04 +07:00
Jun Pataleta 0138b520a4 Merge branch 'MDL-83264-403-1' of https://github.com/mihailges/moodle into MOODLE_403_STABLE 2024-10-01 12:47:18 +08:00
Mihail Geshoski f2f64d40c5 MDL-83264 mod_quiz: Return the correct name for top categories 2024-10-01 09:43:28 +08:00
Shamim Rezaie d56e90c1b7 Merge branch 'MDL-81590-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-09-30 23:01:54 +10:00
Huong Nguyen ab291aa8ed weekly release 4.3.7+ 2024-09-27 18:44:11 +07:00
Huong Nguyen a60f0883cc NOBUG: Fixed SVG browser compatibility 2024-09-27 18:44:10 +07:00
Huong Nguyen 34b45fea59 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-09-27 18:44:09 +07:00
Jun Pataleta 5a24beab3c MDL-81590 core: Build the context path without using DIRECTORY_SEPARATOR 2024-09-27 16:46:16 +08:00
Jun Pataleta 7ba0f509c7 Merge branch 'MDL-80929-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-27 12:40:23 +08:00
Huong Nguyen fa5eec299a Merge branch 'MDL-83205-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-09-27 11:27:20 +07:00
Huong Nguyen deb427c38f Merge branch 'MDL-82483-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-27 11:16:08 +07:00
Jun Pataleta caa14d5283 Merge branch 'MDL-82602-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-27 12:10:53 +08:00
Huong Nguyen f5af008e0f Merge branch 'MDL-80974-MOODLE_403_STABLE' of https://github.com/sh-csg/moodle into MOODLE_403_STABLE 2024-09-27 11:09:02 +07:00
Jun Pataleta 22b6d706bd Merge branch 'MDL-82973-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-27 12:06:05 +08:00
Jun Pataleta 1f4bca1a2e Merge branch 'MDL-83163-m403' of https://github.com/sammarshallou/moodle into MOODLE_403_STABLE 2024-09-27 11:59:29 +08:00
Andrew Nicols 4b36a967d0 Merge branch 'MDL-83094-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-27 11:06:14 +08:00
Jun Pataleta 071cc916fd Merge branch 'MDL-81157-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-27 10:28:31 +08:00
Jun Pataleta d2595b4a4e Merge branch 'MDL-82581-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-27 10:10:55 +08:00
AMOS bot 9c811f8a4c Automatically generated installer lang files 2024-09-27 00:07:42 +00:00
Andrew Nicols 8e40b64f8d Merge branch 'MDL-83268-403' of https://github.com/sarjona/moodle into MOODLE_403_STABLE 2024-09-26 22:07:15 +08:00
Sara Arjona e600fb2782 MDL-83268 core_h5p: Fix version number 2024-09-26 16:02:47 +02:00
Andrew Nicols fd4f256768 Merge branch 'MDL-83268-403' of https://github.com/sarjona/moodle into MOODLE_403_STABLE 2024-09-26 21:33:24 +08:00
Sara Arjona 57f527587b MDL-83268 core_h5p: Fix required Moodle version 2024-09-26 15:26:26 +02:00
Andrew Nicols 5e95aa4b3a Merge branch 'MDL-83268-403' of https://github.com/sarjona/moodle into MOODLE_403_STABLE 2024-09-26 21:08:05 +08:00
Jun Pataleta c36c4e8caf Merge branch 'MDL-79288-403_blockaccessreview_colourcontrastcheck' of https://github.com/brickfield/moodle into MOODLE_403_STABLE 2024-09-26 19:45:06 +08:00
Sara Arjona c217ab2947 MDL-83268 core_h5p: Remove unused font files
In https://h5ptechnology.atlassian.net/browse/HFP-4105, the
fonts/h5p-core-29.svg was merged with some conflicts.
Looking at the patch there, it seems all the h5p-core-29* fonts
can be removed because the ones used by the library are the
h5p-core-30-*.

I haven't added a note in the upgrade because it seems an error
on their release process (so I don't think it's worth adding
a note because it should be fixed in future releases).
2024-09-26 10:32:12 +02:00
Sara Arjona a64e2bc235 MDL-83268 core_h5p: Remove the h5plib_v126 plugin
The h5plib_v126 plugin can be removed because it has been replaced
with h5plib_v127, which is using the latest versions of the
libraries.
2024-09-26 10:32:11 +02:00
Sara Arjona d9f2f7006e MDL-83268 core_h5p: Add editor lib changes after upgrading it 2024-09-26 10:32:11 +02:00
Sara Arjona 5481ef00a1 MDL-83268 core_h5p: Upgrade editor lib to 1.27
This commit is upgrading the joubel/editor library to the one
tagged as moodle-1.27.0 (which also increases the coreApi minorVersion).
2024-09-26 10:32:11 +02:00
Sara Arjona 099f65274c MDL-83268 core_h5p: Add core lib changes after upgrading it 2024-09-26 10:32:10 +02:00
Sara Arjona 15eb08acc2 MDL-83268 core_h5p: Upgrade core lib to 1.27
This commit is upgrading the joubel/core library to the one
tagged as moodle-1.27.0 (which also increases the coreApi minorVersion).
That's why the previous commit was duplicating the existing
h5plib_v126.
2024-09-26 10:32:10 +02:00
Sara Arjona b5b838e16b MDL-83268 h5plib: Create first version of h5plib_v127
AMOS BEGIN
  CPY [editor:a11ytitleshowlabel,h5plib_v126],[editor:a11ytitleshowlabel,h5plib_v127]
  CPY [editor:a11ytitlehidelabel,h5plib_v126],[editor:a11ytitlehidelabel,h5plib_v127]
  CPY [editor:atoz,h5plib_v126],[editor:atoz,h5plib_v127]
  CPY [editor:add,h5plib_v126],[editor:add,h5plib_v127]
  CPY [editor:addauthor,h5plib_v126],[editor:addauthor,h5plib_v127]
  CPY [editor:addentity,h5plib_v126],[editor:addentity,h5plib_v127]
  CPY [editor:addfile,h5plib_v126],[editor:addfile,h5plib_v127]
  CPY [editor:addnewchange,h5plib_v126],[editor:addnewchange,h5plib_v127]
  CPY [editor:addtitle,h5plib_v126],[editor:addtitle,h5plib_v127]
  CPY [editor:addvideodescription,h5plib_v126],[editor:addvideodescription,h5plib_v127]
  CPY [editor:avtablistlabel,h5plib_v126],[editor:avtablistlabel,h5plib_v127]
  CPY [editor:belowmin,h5plib_v126],[editor:belowmin,h5plib_v127]
  CPY [editor:cancel,h5plib_v126],[editor:cancel,h5plib_v127]
  CPY [editor:cancellabel,h5plib_v126],[editor:cancellabel,h5plib_v127]
  CPY [editor:changefile,h5plib_v126],[editor:changefile,h5plib_v127]
  CPY [editor:changelanguage,h5plib_v126],[editor:changelanguage,h5plib_v127]
  CPY [editor:changelibrary,h5plib_v126],[editor:changelibrary,h5plib_v127]
  CPY [editor:changelogdescription,h5plib_v126],[editor:changelogdescription,h5plib_v127]
  CPY [editor:close,h5plib_v126],[editor:close,h5plib_v127]
  CPY [editor:commonfields,h5plib_v126],[editor:commonfields,h5plib_v127]
  CPY [editor:commonfieldsdescription,h5plib_v126],[editor:commonfieldsdescription,h5plib_v127]
  CPY [editor:confirmchangelibrary,h5plib_v126],[editor:confirmchangelibrary,h5plib_v127]
  CPY [editor:confirmdeletechangelog,h5plib_v126],[editor:confirmdeletechangelog,h5plib_v127]
  CPY [editor:confirmimageremoval,h5plib_v126],[editor:confirmimageremoval,h5plib_v127]
  CPY [editor:confirmpastebuttontext,h5plib_v126],[editor:confirmpastebuttontext,h5plib_v127]
  CPY [editor:confirmpastecontent,h5plib_v126],[editor:confirmpastecontent,h5plib_v127]
  CPY [editor:confirmremoval,h5plib_v126],[editor:confirmremoval,h5plib_v127]
  CPY [editor:confirmremoveauthor,h5plib_v126],[editor:confirmremoveauthor,h5plib_v127]
  CPY [editor:contenttypebackbuttonlabel,h5plib_v126],[editor:contenttypebackbuttonlabel,h5plib_v127]
  CPY [editor:contenttypecacheoutdated,h5plib_v126],[editor:contenttypecacheoutdated,h5plib_v127]
  CPY [editor:contenttypecacheoutdateddesc,h5plib_v126],[editor:contenttypecacheoutdateddesc,h5plib_v127]
  CPY [editor:contenttypedemobuttonlabel,h5plib_v126],[editor:contenttypedemobuttonlabel,h5plib_v127]
  CPY [editor:contenttypedetailbuttonlabel,h5plib_v126],[editor:contenttypedetailbuttonlabel,h5plib_v127]
  CPY [editor:contenttypegetbuttonlabel,h5plib_v126],[editor:contenttypegetbuttonlabel,h5plib_v127]
  CPY [editor:contenttypeiconalttext,h5plib_v126],[editor:contenttypeiconalttext,h5plib_v127]
  CPY [editor:contenttypeinstallbuttonlabel,h5plib_v126],[editor:contenttypeinstallbuttonlabel,h5plib_v127]
  CPY [editor:contenttypeinstallerror,h5plib_v126],[editor:contenttypeinstallerror,h5plib_v127]
  CPY [editor:contenttypeinstallsuccess,h5plib_v126],[editor:contenttypeinstallsuccess,h5plib_v127]
  CPY [editor:contenttypeinstallingbuttonlabel,h5plib_v126],[editor:contenttypeinstallingbuttonlabel,h5plib_v127]
  CPY [editor:contenttypelicensepaneltitle,h5plib_v126],[editor:contenttypelicensepaneltitle,h5plib_v127]
  CPY [editor:contenttypenotinstalled,h5plib_v126],[editor:contenttypenotinstalled,h5plib_v127]
  CPY [editor:contenttypenotinstalleddesc,h5plib_v126],[editor:contenttypenotinstalleddesc,h5plib_v127]
  CPY [editor:contenttypeowner,h5plib_v126],[editor:contenttypeowner,h5plib_v127]
  CPY [editor:contenttyperestricted,h5plib_v126],[editor:contenttyperestricted,h5plib_v127]
  CPY [editor:contenttyperestricteddesc,h5plib_v126],[editor:contenttyperestricteddesc,h5plib_v127]
  CPY [editor:contenttypesearchfieldplaceholder,h5plib_v126],[editor:contenttypesearchfieldplaceholder,h5plib_v127]
  CPY [editor:contenttypesectionall,h5plib_v126],[editor:contenttypesectionall,h5plib_v127]
  CPY [editor:contenttypeunsupportedapiversioncontent,h5plib_v126],[editor:contenttypeunsupportedapiversioncontent,h5plib_v127]
  CPY [editor:contenttypeunsupportedapiversiontitle,h5plib_v126],[editor:contenttypeunsupportedapiversiontitle,h5plib_v127]
  CPY [editor:contenttypeupdateavailable,h5plib_v126],[editor:contenttypeupdateavailable,h5plib_v127]
  CPY [editor:contenttypeupdatebuttonlabel,h5plib_v126],[editor:contenttypeupdatebuttonlabel,h5plib_v127]
  CPY [editor:contenttypeupdatesuccess,h5plib_v126],[editor:contenttypeupdatesuccess,h5plib_v127]
  CPY [editor:contenttypeupdatingbuttonlabel,h5plib_v126],[editor:contenttypeupdatingbuttonlabel,h5plib_v127]
  CPY [editor:contenttypeusebuttonlabel,h5plib_v126],[editor:contenttypeusebuttonlabel,h5plib_v127]
  CPY [editor:contributetranslations,h5plib_v126],[editor:contributetranslations,h5plib_v127]
  CPY [editor:copiedbutton,h5plib_v126],[editor:copiedbutton,h5plib_v127]
  CPY [editor:copiedtoclipboard,h5plib_v126],[editor:copiedtoclipboard,h5plib_v127]
  CPY [editor:copybutton,h5plib_v126],[editor:copybutton,h5plib_v127]
  CPY [editor:copytoclipboard,h5plib_v126],[editor:copytoclipboard,h5plib_v127]
  CPY [editor:createcontenttablabel,h5plib_v126],[editor:createcontenttablabel,h5plib_v127]
  CPY [editor:currentmenuselected,h5plib_v126],[editor:currentmenuselected,h5plib_v127]
  CPY [editor:editcopyright,h5plib_v126],[editor:editcopyright,h5plib_v127]
  CPY [editor:editimage,h5plib_v126],[editor:editimage,h5plib_v127]
  CPY [editor:editmode,h5plib_v126],[editor:editmode,h5plib_v127]
  CPY [editor:enteraudiotitle,h5plib_v126],[editor:enteraudiotitle,h5plib_v127]
  CPY [editor:enteraudiourl,h5plib_v126],[editor:enteraudiourl,h5plib_v127]
  CPY [editor:enterfullscreenbuttonlabel,h5plib_v126],[editor:enterfullscreenbuttonlabel,h5plib_v127]
  CPY [editor:entervideotitle,h5plib_v126],[editor:entervideotitle,h5plib_v127]
  CPY [editor:entervideourl,h5plib_v126],[editor:entervideourl,h5plib_v127]
  CPY [editor:errorcalculatingmaxscore,h5plib_v126],[editor:errorcalculatingmaxscore,h5plib_v127]
  CPY [editor:errorcommunicatinghubcontent,h5plib_v126],[editor:errorcommunicatinghubcontent,h5plib_v127]
  CPY [editor:errorcommunicatinghubtitle,h5plib_v126],[editor:errorcommunicatinghubtitle,h5plib_v127]
  CPY [editor:errorheader,h5plib_v126],[editor:errorheader,h5plib_v127]
  CPY [editor:errornotsupported,h5plib_v126],[editor:errornotsupported,h5plib_v127]
  CPY [editor:errorparamsbroken,h5plib_v126],[editor:errorparamsbroken,h5plib_v127]
  CPY [editor:errortoohighversion,h5plib_v126],[editor:errortoohighversion,h5plib_v127]
  CPY [editor:example,h5plib_v126],[editor:example,h5plib_v127]
  CPY [editor:exceedsmax,h5plib_v126],[editor:exceedsmax,h5plib_v127]
  CPY [editor:exitfullscreenbuttonlabel,h5plib_v126],[editor:exitfullscreenbuttonlabel,h5plib_v127]
  CPY [editor:expandcollapse,h5plib_v126],[editor:expandcollapse,h5plib_v127]
  CPY [editor:filetolarge,h5plib_v126],[editor:filetolarge,h5plib_v127]
  CPY [editor:fillinthefieldsbelow,h5plib_v126],[editor:fillinthefieldsbelow,h5plib_v127]
  CPY [editor:gethelp,h5plib_v126],[editor:gethelp,h5plib_v127]
  CPY [editor:h5pfileuploadservererrorcontent,h5plib_v126],[editor:h5pfileuploadservererrorcontent,h5plib_v127]
  CPY [editor:h5pfileuploadservererrortitle,h5plib_v126],[editor:h5pfileuploadservererrortitle,h5plib_v127]
  CPY [editor:h5pfilevalidationfailedcontent,h5plib_v126],[editor:h5pfilevalidationfailedcontent,h5plib_v127]
  CPY [editor:h5pfilevalidationfailedtitle,h5plib_v126],[editor:h5pfilevalidationfailedtitle,h5plib_v127]
  CPY [editor:h5pfilewrongextensioncontent,h5plib_v126],[editor:h5pfilewrongextensioncontent,h5plib_v127]
  CPY [editor:h5pfilewrongextensiontitle,h5plib_v126],[editor:h5pfilewrongextensiontitle,h5plib_v127]
  CPY [editor:height,h5plib_v126],[editor:height,h5plib_v127]
  CPY [editor:hide,h5plib_v126],[editor:hide,h5plib_v127]
  CPY [editor:hideimportantinstructions,h5plib_v126],[editor:hideimportantinstructions,h5plib_v127]
  CPY [editor:hubpanellabel,h5plib_v126],[editor:hubpanellabel,h5plib_v127]
  CPY [editor:illegaldecimalnumber,h5plib_v126],[editor:illegaldecimalnumber,h5plib_v127]
  CPY [editor:imagelightboxprogress,h5plib_v126],[editor:imagelightboxprogress,h5plib_v127]
  CPY [editor:imagelightboxtitle,h5plib_v126],[editor:imagelightboxtitle,h5plib_v127]
  CPY [editor:importantinstructions,h5plib_v126],[editor:importantinstructions,h5plib_v127]
  CPY [editor:insert,h5plib_v126],[editor:insert,h5plib_v127]
  CPY [editor:invalidformat,h5plib_v126],[editor:invalidformat,h5plib_v127]
  CPY [editor:language,h5plib_v126],[editor:language,h5plib_v127]
  CPY [editor:librarymissing,h5plib_v126],[editor:librarymissing,h5plib_v127]
  CPY [editor:licensecandistribute,h5plib_v126],[editor:licensecandistribute,h5plib_v127]
  CPY [editor:licensecanholdliable,h5plib_v126],[editor:licensecanholdliable,h5plib_v127]
  CPY [editor:licensecanmodify,h5plib_v126],[editor:licensecanmodify,h5plib_v127]
  CPY [editor:licensecansublicense,h5plib_v126],[editor:licensecansublicense,h5plib_v127]
  CPY [editor:licensecanusecommercially,h5plib_v126],[editor:licensecanusecommercially,h5plib_v127]
  CPY [editor:licensecannotholdliable,h5plib_v126],[editor:licensecannotholdliable,h5plib_v127]
  CPY [editor:licensedescription,h5plib_v126],[editor:licensedescription,h5plib_v127]
  CPY [editor:licensefetchdetailsfailed,h5plib_v126],[editor:licensefetchdetailsfailed,h5plib_v127]
  CPY [editor:licensemodalsubtitle,h5plib_v126],[editor:licensemodalsubtitle,h5plib_v127]
  CPY [editor:licensemodaltitle,h5plib_v126],[editor:licensemodaltitle,h5plib_v127]
  CPY [editor:licensemustincludecopyright,h5plib_v126],[editor:licensemustincludecopyright,h5plib_v127]
  CPY [editor:licensemustincludelicense,h5plib_v126],[editor:licensemustincludelicense,h5plib_v127]
  CPY [editor:licenseunspecified,h5plib_v126],[editor:licenseunspecified,h5plib_v127]
  CPY [editor:listbelowmin,h5plib_v126],[editor:listbelowmin,h5plib_v127]
  CPY [editor:listexceedsmax,h5plib_v126],[editor:listexceedsmax,h5plib_v127]
  CPY [editor:listlabel,h5plib_v126],[editor:listlabel,h5plib_v127]
  CPY [editor:loading,h5plib_v126],[editor:loading,h5plib_v127]
  CPY [editor:loadingimageeditor,h5plib_v126],[editor:loadingimageeditor,h5plib_v127]
  CPY [editor:logthischange,h5plib_v126],[editor:logthischange,h5plib_v127]
  CPY [editor:loggedchanges,h5plib_v126],[editor:loggedchanges,h5plib_v127]
  CPY [editor:maxscoresemanticsmissing,h5plib_v126],[editor:maxscoresemanticsmissing,h5plib_v127]
  CPY [editor:metadata,h5plib_v126],[editor:metadata,h5plib_v127]
  CPY [editor:metadatasharingandlicensinginfo,h5plib_v126],[editor:metadatasharingandlicensinginfo,h5plib_v127]
  CPY [editor:missingproperty,h5plib_v126],[editor:missingproperty,h5plib_v127]
  CPY [editor:missingtranslation,h5plib_v126],[editor:missingtranslation,h5plib_v127]
  CPY [editor:newchangehasbeenlogged,h5plib_v126],[editor:newchangehasbeenlogged,h5plib_v127]
  CPY [editor:newestfirst,h5plib_v126],[editor:newestfirst,h5plib_v127]
  CPY [editor:nextimage,h5plib_v126],[editor:nextimage,h5plib_v127]
  CPY [editor:nochangeshavebeenlogged,h5plib_v126],[editor:nochangeshavebeenlogged,h5plib_v127]
  CPY [editor:nocontenttypesavailable,h5plib_v126],[editor:nocontenttypesavailable,h5plib_v127]
  CPY [editor:nocontenttypesavailabledesc,h5plib_v126],[editor:nocontenttypesavailabledesc,h5plib_v127]
  CPY [editor:nofollow,h5plib_v126],[editor:nofollow,h5plib_v127]
  CPY [editor:notimageordimensionsfield,h5plib_v126],[editor:notimageordimensionsfield,h5plib_v127]
  CPY [editor:numresults,h5plib_v126],[editor:numresults,h5plib_v127]
  CPY [editor:numberfield,h5plib_v126],[editor:numberfield,h5plib_v127]
  CPY [editor:ok,h5plib_v126],[editor:ok,h5plib_v127]
  CPY [editor:onlynumbers,h5plib_v126],[editor:onlynumbers,h5plib_v127]
  CPY [editor:or,h5plib_v126],[editor:or,h5plib_v127]
  CPY [editor:orderitemdown,h5plib_v126],[editor:orderitemdown,h5plib_v127]
  CPY [editor:orderitemup,h5plib_v126],[editor:orderitemup,h5plib_v127]
  CPY [editor:outofstep,h5plib_v126],[editor:outofstep,h5plib_v127]
  CPY [editor:pasteandreplacebutton,h5plib_v126],[editor:pasteandreplacebutton,h5plib_v127]
  CPY [editor:pasteandreplacefromclipboard,h5plib_v126],[editor:pasteandreplacefromclipboard,h5plib_v127]
  CPY [editor:pastebutton,h5plib_v126],[editor:pastebutton,h5plib_v127]
  CPY [editor:pastecontent,h5plib_v126],[editor:pastecontent,h5plib_v127]
  CPY [editor:pastecontentnotsupported,h5plib_v126],[editor:pastecontentnotsupported,h5plib_v127]
  CPY [editor:pastecontentrestricted,h5plib_v126],[editor:pastecontentrestricted,h5plib_v127]
  CPY [editor:pasteerror,h5plib_v126],[editor:pasteerror,h5plib_v127]
  CPY [editor:pastefromclipboard,h5plib_v126],[editor:pastefromclipboard,h5plib_v127]
  CPY [editor:pastenocontent,h5plib_v126],[editor:pastenocontent,h5plib_v127]
  CPY [editor:pastetoonew,h5plib_v126],[editor:pastetoonew,h5plib_v127]
  CPY [editor:pastetooold,h5plib_v126],[editor:pastetooold,h5plib_v127]
  CPY [editor:popularfirst,h5plib_v126],[editor:popularfirst,h5plib_v127]
  CPY [editor:previousimage,h5plib_v126],[editor:previousimage,h5plib_v127]
  CPY [editor:proceedbuttonlabel,h5plib_v126],[editor:proceedbuttonlabel,h5plib_v127]
  CPY [editor:readless,h5plib_v126],[editor:readless,h5plib_v127]
  CPY [editor:readmore,h5plib_v126],[editor:readmore,h5plib_v127]
  CPY [editor:recentlyusedfirst,h5plib_v126],[editor:recentlyusedfirst,h5plib_v127]
  CPY [editor:reloadbuttonlabel,h5plib_v126],[editor:reloadbuttonlabel,h5plib_v127]
  CPY [editor:removefile,h5plib_v126],[editor:removefile,h5plib_v127]
  CPY [editor:removeimage,h5plib_v126],[editor:removeimage,h5plib_v127]
  CPY [editor:removeitem,h5plib_v126],[editor:removeitem,h5plib_v127]
  CPY [editor:requiredproperty,h5plib_v126],[editor:requiredproperty,h5plib_v127]
  CPY [editor:resettooriginallabel,h5plib_v126],[editor:resettooriginallabel,h5plib_v127]
  CPY [editor:savelabel,h5plib_v126],[editor:savelabel,h5plib_v127]
  CPY [editor:savemetadata,h5plib_v126],[editor:savemetadata,h5plib_v127]
  CPY [editor:screenshots,h5plib_v126],[editor:screenshots,h5plib_v127]
  CPY [editor:scriptmissing,h5plib_v126],[editor:scriptmissing,h5plib_v127]
  CPY [editor:searchresults,h5plib_v126],[editor:searchresults,h5plib_v127]
  CPY [editor:selectfiletoupload,h5plib_v126],[editor:selectfiletoupload,h5plib_v127]
  CPY [editor:selectlibrary,h5plib_v126],[editor:selectlibrary,h5plib_v127]
  CPY [editor:semanticserror,h5plib_v126],[editor:semanticserror,h5plib_v127]
  CPY [editor:show,h5plib_v126],[editor:show,h5plib_v127]
  CPY [editor:showimportantinstructions,h5plib_v126],[editor:showimportantinstructions,h5plib_v127]
  CPY [editor:tabtitlebasicfileupload,h5plib_v126],[editor:tabtitlebasicfileupload,h5plib_v127]
  CPY [editor:tabtitleinputlinkurl,h5plib_v126],[editor:tabtitleinputlinkurl,h5plib_v127]
  CPY [editor:textfield,h5plib_v126],[editor:textfield,h5plib_v127]
  CPY [editor:thecontenttype,h5plib_v126],[editor:thecontenttype,h5plib_v127]
  CPY [editor:thiswillpotentially,h5plib_v126],[editor:thiswillpotentially,h5plib_v127]
  CPY [editor:title,h5plib_v126],[editAMOS END
  or:title,h5plib_v127]
  CPY [editor:toolong,h5plib_v126],[editor:toolong,h5plib_v127]
  CPY [editor:tryagain,h5plib_v126],[editor:tryagain,h5plib_v127]
  CPY [editor:tutorial,h5plib_v126],[editor:tutorial,h5plib_v127]
  CPY [editor:unabletointerpreterror,h5plib_v126],[editor:unabletointerpreterror,h5plib_v127]
  CPY [editor:unabletointerpretsolution,h5plib_v126],[editor:unabletointerpretsolution,h5plib_v127]
  CPY [editor:unknownfieldpath,h5plib_v126],[editor:unknownfieldpath,h5plib_v127]
  CPY [editor:uploadinstructionstitle,h5plib_v126],[editor:uploadinstructionstitle,h5plib_v127]
  CPY [editor:uploadplaceholder,h5plib_v126],[editor:uploadplaceholder,h5plib_v127]
  CPY [editor:uploadsuccess,h5plib_v126],[editor:uploadsuccess,h5plib_v127]
  CPY [editor:uploadtablabel,h5plib_v126],[editor:uploadtablabel,h5plib_v127]
  CPY [editor:uploadvideotitle,h5plib_v126],[editor:uploadvideotitle,h5plib_v127]
  CPY [editor:uploading,h5plib_v126],[editor:uploading,h5plib_v127]
  CPY [editor:uploadingthrobber,h5plib_v126],[editor:uploadingthrobber,h5plib_v127]
  CPY [editor:usedforsearchingreportsandcopyrightinformation,h5plib_v126],[editor:usedforsearchingreportsandcopyrightinformation,h5plib_v127]
  CPY [editor:videoquality,h5plib_v126],[editor:videoquality,h5plib_v127]
  CPY [editor:videoqualitydefaultlabel,h5plib_v126],[editor:videoqualitydefaultlabel,h5plib_v127]
  CPY [editor:videoqualitydescription,h5plib_v126],[editor:videoqualitydescription,h5plib_v127]
  CPY [editor:warningchangebrowsingtoseeresults,h5plib_v126],[editor:warningchangebrowsingtoseeresults,h5plib_v127]
  CPY [editor:warningnocontenttypesinstalled,h5plib_v126],[editor:warningnocontenttypesinstalled,h5plib_v127]
  CPY [editor:warningupdateavailablebody,h5plib_v126],[editor:warningupdateavailablebody,h5plib_v127]
  CPY [editor:warningupdateavailabletitle,h5plib_v126],[editor:warningupdateavailabletitle,h5plib_v127]
  CPY [editor:width,h5plib_v126],[editor:width,h5plib_v127]
AMOS END
2024-09-26 10:32:10 +02:00
Jun Pataleta 31537778b9 Merge branch 'MDL-83263-403' of https://github.com/mihailges/moodle into MOODLE_403_STABLE 2024-09-26 16:28:52 +08:00
Michael Pound 78912de2ab MDL-79288 block_accessreview: Improve heatmap colour contrast. 2024-09-26 08:13:44 +00:00
Huong Nguyen 415195088b Merge branch 'MDL-62640-403' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2024-09-26 11:07:35 +07:00
Cameron Ball c90226fc23 MDL-82298 navigation: Update behat tests for theme_classic 2024-09-26 11:15:06 +08:00
Jun Pataleta 372318257c Merge branch 'MDL-83235-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-26 09:25:46 +08:00
Andrew Nicols 8c6c3f0d06 Merge branch 'MDL-82298-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-09-25 22:56:01 +08:00
Andrew Nicols 7a91817a1c MDL-82298 navigation: Update behat tests 2024-09-25 22:38:32 +08:00
Karjun Loong a4290bec3f MDL-82298 navigation: Add behat tests for secondary menu navigation 2024-09-25 22:38:32 +08:00
Jose 1dcf079286 MDL-82298 navigation: Add setting data-disableactive on moremenu items
This setting will avoid conflicts between checkmark and
bfcache. The removed function added as part of the MDL-77732
is no longer required as the behaviour on the menu items (including the
secondary navigation) is not altered anymore by the menuItemHelper function
(menu_navigation file).
2024-09-25 22:38:31 +08:00
Mihail Geshoski fcbe432066 MDL-83263 grade: Handle undefined array key on grade override revert 2024-09-25 17:27:23 +08:00
Huong Nguyen b7852c7225 Merge branch 'MDL-72856-M403' of https://github.com/michael-milette/moodle into MOODLE_403_STABLE 2024-09-25 08:58:34 +07:00
Sara Arjona 4e7e308a77 weekly release 4.3.7+ 2024-09-24 16:52:12 +02:00
Shamim Rezaie a686489653 Merge branch 'MDL-77625_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-09-24 02:54:13 +10:00
Paul Holden 1179e1f534 MDL-83235 qbank_columnsortorder: correct config retrieval ordering.
There is a unique index on plugin/name, so having a trailing order
clause on value would produce no effect. We also cannot order by
CLOB fields on Oracle, lest it complain loudly.
2024-09-23 08:56:45 +01:00
meirzamoodle ee66d8f2bf MDL-62640 environment: Remove the deprecated slash argument check 2024-09-23 13:06:05 +07:00
Sara Arjona 818863cccd Merge branch 'MDL-81612_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-09-23 07:36:26 +02:00
Paul Holden 1a6d6694a2 MDL-82581 mod_label: avoid overflowing length of label name. 2024-09-20 19:26:53 +01:00
Sara Arjona da802580da weekly release 4.3.7+ 2024-09-20 16:36:12 +02:00
Sara Arjona 534f220f21 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-09-20 16:36:07 +02:00
Ilya Tregubov d2e842f7b3 Merge branch 'MDL-82663-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-20 10:17:44 +08:00
Huong Nguyen 4eb7c5a590 Merge branch 'MDL-82740-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-09-20 08:44:34 +07:00
Ilya Tregubov 3b6f8e334f Merge branch 'MDL-74188-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-20 09:39:55 +08:00
Ilya Tregubov 5ba84639dd Merge branch 'MDL-82488-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-20 09:25:33 +08:00
Tim Hunt 7cc4823684 MDL-81612 assign: show current value when editing a student's extension
Also, if there is not currently an extension set, the set extension form
will default to whatever is the latest out of the due date, the cut-off date
and midnight tonight (in the server time-zone).
2024-09-19 16:06:21 +01:00
Tim Hunt 476ae75b70 MDL-81612 assign: test generation of extensions
Also, some other improvements.

* In Behat you can now use either idnumber of name to identify an
  assignment you are generating things for.
* create_submission generator methods now wants the cmid in $data['cmid']
  not the confusingly named 'assignid'. The old name is accepted, but
  generates a debugging warning. (That will fail the test, but in a way
  that explains how to fix it.)
2024-09-19 16:06:20 +01:00
Sara Arjona 2528a52808 Merge branch 'MDL-83050-403' of https://github.com/laurentdavid/moodle into MOODLE_403_STABLE 2024-09-19 17:06:11 +02:00
Jun Pataleta 197aac357e MDL-82740 core: Check for monologo icons in theme overrides 2024-09-19 20:49:43 +08:00
Laurent David 26babd2ac0 MDL-83050 core_courseformat: Fix index highlight for collapsed section
* Collapsed sections on course index is not highlighting the correct
element when scrolling over subelements.
2024-09-19 12:01:17 +02:00
Ilya Tregubov e494cab5b9 Merge branch 'MDL-82909-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-19 15:08:51 +08:00
Ilya Tregubov 298a87baf3 Merge branch 'MDL-82494-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-19 14:05:50 +08:00
Andrew Nicols fd18519ea6 MDL-83205 core: Ensure that redis lock expiry is valid
PHP allows the specification of invalid values for `max_execution_time`,
including negative values. These should be normalised the same way that
an empty (unlimited) value is.
2024-09-19 13:37:02 +08:00
Ilya Tregubov 6f3c6fc5eb Merge branch 'MDL-81987_403_STABLE' of https://github.com/marxjohnson/moodle into MOODLE_403_STABLE 2024-09-19 12:50:57 +08:00
Jun Pataleta cf1e58654c MDL-79628 core: Add upgrade notes for the navigation_cache changes 2024-09-19 11:08:48 +08:00
Jun Pataleta f2773ec1cc Merge branch 'MDL-79628-move-navcache-to-muc-feature-MOODLE_403_STABLE' of https://github.com/rajandangi/moodle into MOODLE_403_STABLE 2024-09-19 11:07:36 +08:00
Jun Pataleta 04cf9b4e06 Merge branch 'MDL-80965-403-behat-fix' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-09-19 08:41:50 +08:00
AMOS bot 895acd4aa1 Automatically generated installer lang files 2024-09-19 00:09:29 +00:00
Simey Lameze 1f45291f24 MDL-80965 behat: remove wrong tag from step 2024-09-19 07:49:29 +08:00
Sara Arjona db7296f2f6 Merge branch 'MDL-74917-403-wrong-post-actions-list-in-statslib' of https://github.com/melanietreitinger/moodle into MOODLE_403_STABLE 2024-09-18 17:19:23 +02:00
Huong Nguyen 94a643c0d8 Merge branch 'MDL-81278-403' of https://github.com/mickhawkins/moodle into MOODLE_403_STABLE 2024-09-18 16:09:12 +07:00
Ilya Tregubov f7dd7e096a Merge branch 'MDL-80965-403' of https://github.com/ilyatregubov/moodle into MOODLE_403_STABLE 2024-09-18 15:33:40 +08:00
Ilya Tregubov 674fbe100b MDL-80965 mod_quiz: Code style fixes. 2024-09-18 15:29:54 +08:00
Luca Bösch 93dd090c38 MDL-80965 mod_quiz: Put back random q category on the question page. 2024-09-18 15:29:54 +08:00
AMOS bot 7d229de154 Automatically generated installer lang files 2024-09-18 00:07:40 +00:00
Julien 0457ed850c MDL-77625 question restore: test restoring a quiz into a course twice
The verifies that the previous two commits are doing the right thing.
2024-09-17 16:59:02 +01:00
Tim Hunt 6c325a2b3c MDL-77625 question restore: fix restore of existing questions
Continuing from the last commit, the code to restore question
bank entries, versions and questions, was not taking note of
whether the first stage had indentified questions that did not
need to be restored. This is tricky, but the mapping can only be
worked out for questions, but in the backup file, the questions are
inside the question_bank_entries, and versions, so we encounter
those first.

Now, the code just saves the QBE and QV when it encounters them,
and then does all the processing when it gets to the question,
correctly taking note of whether each question should be restored or not.
In cases where a particular question does not need to be restored,
we still set up the corresponding mappings.
2024-09-17 16:59:02 +01:00
Tim Hunt 31734b11c8 MDL-77625 question restore: fix pre-parsing of questions
Restore of categories and questions happens in several phases.
First, the file is scanned for which questions and categories
it contains, to work out if these are new questions which need
to be restored, or if they already exist in the database in a
place that can be used.

That code had not been updated to cope with the Moodle 4.0
versioning changes, so it is updated here (while still keeping
the code to cope with the old backup format.)
2024-09-17 16:59:01 +01:00
Paul Holden 52746d4c9a MDL-82973 tool_usertours: add missing filelib library require. 2024-09-17 16:49:20 +01:00
Sara Arjona 9a0a83a456 Merge branch 'MDL-82389-403' of https://github.com/ssj365/moodle into MOODLE_403_STABLE 2024-09-17 17:31:52 +02:00
Sara Arjona 3d2052dd89 weekly release 4.3.7+ 2024-09-17 15:09:30 +02:00
sam marshall 84d831318f MDL-83163 core_course: Fresh install fails if dependency on format
If any plugin had dependency on a course format, Moodle fresh install
showed dependency errors (even though course format exists).
2024-09-17 10:40:45 +01:00
Melanie Treitinger 49d74934f1 MDL-74917 core: fix typo in function stats_get_post_actions
Fix phpunit test and apply coding guidelines.
2024-09-16 11:19:22 +02:00
Sara Arjona f01bc02e78 Merge branch 'MDL-82875_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-09-16 09:44:12 +02:00
Michael Hawkins 2ab39f557b MDL-81278 core: Update security.txt expiry 2024-09-16 14:50:43 +08:00
Paul Holden e0933f4f41 MDL-81157 files: consistent repository button styling on small screen. 2024-09-15 11:13:08 +01:00
Paul Holden 7eb8fce830 MDL-82909 theme_boost: ensure we target immediate loading icon only.
Ignoring those used within inplace editable components in the table.
2024-09-15 11:11:50 +01:00
Paul Holden 3c3c7b3268 MDL-82909 javascript: replace custom loading icon with existing module. 2024-09-15 11:11:50 +01:00
Tim Hunt 340e5f9a2c MDL-82875 question export: test for not exporting hidden questions 2024-09-13 16:04:43 +01:00
Vithusha Kethiri 28adbc1374 MDL-82875 qbank_export: Fix removing hidden questions from the export 2024-09-13 16:04:43 +01:00
Sara Arjona 4a5d428cd3 weekly release 4.3.7+ 2024-09-13 13:20:56 +02:00
Sara Arjona abeec88715 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-09-13 13:20:51 +02:00
Paul Holden f16681b267 MDL-83094 customfield: align persistent definitions with DB schema.
Where the field/category tables allow nulls, the definition within
each corresponding persistent should match.
2024-09-12 17:37:04 +01:00
Paul Holden 15b4403980 MDL-82602 webservice: correct config link to enable for mobile. 2024-09-12 08:05:12 +01:00
Huong Nguyen eedb5e5f81 Merge branch 'MDL-82545_403_STABLE' of https://github.com/marxjohnson/moodle into MOODLE_403_STABLE 2024-09-12 10:47:08 +07:00
Huong Nguyen 6b3c54d981 Merge branch 'MDL-82959-MOODLE_403_STABLE' of https://github.com/sh-csg/moodle into MOODLE_403_STABLE 2024-09-12 10:35:28 +07:00
AMOS bot c77d234c19 Automatically generated installer lang files 2024-09-12 00:07:40 +00:00
Shamiso.Jaravaza aa07578b4c MDL-82389 mod_bigbluebuttonbn: Fix disablenotes 2024-09-11 09:32:16 -06:00
Huong Nguyen 9b9965110e Merge branch 'MDL-68676-403' of https://github.com/rhell4/moodle into MOODLE_403_STABLE 2024-09-11 15:50:25 +07:00
Huong Nguyen cd8a797f31 Merge branch 'MDL-75692-403' of https://github.com/laurentdavid/moodle into MOODLE_403_STABLE 2024-09-11 15:45:35 +07:00
Jun Pataleta 342f13d5df Merge branch 'MDL-82492-403' of https://github.com/vladaskidanovas/moodle into MOODLE_403_STABLE 2024-09-11 15:36:51 +08:00
Huong Nguyen 8341d84ce5 Merge branch 'MDL-79020-403' of https://github.com/ferranrecio/moodle into MOODLE_403_STABLE 2024-09-11 09:19:36 +07:00
AMOS bot 6dff42d1af Automatically generated installer lang files 2024-09-11 00:07:44 +00:00
Huong Nguyen 7b7e907e66 weekly release 4.3.7+ 2024-09-10 20:03:06 +07:00
Laurent David 0ae1c37e6d MDL-75692 core_h5p: Debounce resize events
* Make sure that we don't call the resize event too often to
avoid infinite loop when content is auto resizing (fonts for example)
2024-09-10 11:31:52 +02:00
Huong Nguyen bdba5a0594 Merge branch 'MDL-83047-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-09-10 10:47:50 +07:00
Jun Pataleta 782d262ef6 MDL-83047 theme_boost: Add upgrade note for theme plugins 2024-09-10 10:33:47 +08:00
Jun Pataleta 91932bf748 MDL-83047 theme_boost: Apply background colour only on select layouts
* Apply the styling of `background-color` for `.page-header-headings`
only in the maintenance and secure layouts.
2024-09-09 17:01:23 +08:00
Huong Nguyen e9f261c0f9 Merge branch 'MDL-82860-403' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2024-09-09 14:32:32 +07:00
meirzamoodle 19e92ca42c MDL-82860 atto_link: Set value as default to avoid unexpected behaviour 2024-09-09 08:12:05 +07:00
Jun Pataleta 7f6d05ad04 weekly release 4.3.7+ 2024-09-07 06:45:41 +08:00
Stefan Hanauska f0630a0576 MDL-82959 tool_recyclebin: Avoid null value for forcedsettings 2024-09-06 19:47:42 +02:00
ferranrecio 0fadf1ed19 MDL-79020 core_courseformat: hide completion edit link in bulk edit 2024-09-06 11:10:57 +02:00
Jun Pataleta c9e55faacf Merge branch 'MDL-63399-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-09-06 12:29:25 +08:00
Simey Lameze d76e843d8c MDL-63399 behat: update existing tests to use the better download steps
Co-authored-by: Tim Hunt <T.J.Hunt@open.ac.uk>
2024-09-06 12:15:02 +08:00
Simey Lameze a776b0bf55 MDL-63399 behat: new steps to verify downloads
Co-authored-by: Tim Hunt <T.J.Hunt@open.ac.uk>
2024-09-06 12:09:27 +08:00
Huong Nguyen 24d28bf68e Merge branch 'MDL-82948-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-09-06 11:01:27 +07:00
Huong Nguyen 80e2791f25 Merge branch 'MDL-82677-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-09-06 10:51:10 +07:00
Huong Nguyen 1e53070414 Merge branch 'MDL-80946_MOODLE_403_STABLE' of https://github.com/michaelkotlyar/moodle into MOODLE_403_STABLE 2024-09-05 15:54:14 +07:00
Michael Kotlyar c3d725a3cd MDL-80946 quizaccess_seb: Remove invalidkeys text if not using SEB. 2024-09-05 09:06:52 +01:00
Huong Nguyen ee96ff39cb Merge branch 'MDL-81909-403' of https://github.com/rezaies/moodle into MOODLE_403_STABLE 2024-09-05 14:50:11 +07:00
Shamim Rezaie 98086bf044 MDL-81909 mod_assign: fix test_attempt_reopen_method_untilpass 2024-09-05 03:28:07 +10:00
Michael Milette dd94fb1f8c MDL-72856 lib: Only inject one robots/noindex in head of Additional HTML 2024-09-04 12:34:04 -04:00
Sara Arjona 755dea3652 Merge branch 'MDL-82995_MOODLE_403_STABLE_feedback_broken_audio_video' of https://github.com/mariusros/moodle into MOODLE_403_STABLE 2024-09-04 12:59:21 +02:00
Huong Nguyen cfe13f3b73 Merge branch 'MDL-80225-403' of https://github.com/ssj365/moodle into MOODLE_403_STABLE 2024-09-04 09:30:22 +07:00
Marius Rosenbaum c0ef7bb0e4 MDL-82995 mod_feedback: fixed width of audio or video frames being 0 2024-09-03 17:15:43 +02:00
Paul Holden 16457d9346 MDL-80929 customfield: observe backup/restore settings to include. 2024-09-03 13:56:32 +01:00
Paul Holden b62d3965f6 MDL-80929 restore: consistent settings definition for custom fields. 2024-09-03 13:50:03 +01:00
Jun Pataleta d14f5eaa6c weekly release 4.3.7+ 2024-09-03 20:05:21 +08:00
Jun Pataleta 68ac6e6ef8 Merge branch 'MDL-82957-403' of https://github.com/roland04/moodle into MOODLE_403_STABLE 2024-09-03 11:42:28 +08:00
Jun Pataleta 4e9a865984 Merge branch 'MDL-82804-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-03 10:32:23 +08:00
Jun Pataleta e6a32d87a5 Merge branch 'MDL-82717-403' of https://github.com/liamgm/moodle into MOODLE_403_STABLE 2024-09-03 10:29:29 +08:00
Jun Pataleta 26f41c348d MDL-82255 editor_tiny: No need for extra styles for RTL 2024-09-02 16:56:01 +08:00
Jun Pataleta 01e3740d89 Merge branch 'MDL-82255-403' of https://github.com/raortegar/moodle into MOODLE_403_STABLE 2024-09-02 16:01:55 +08:00
Ilya Tregubov 2a9305dbf5 Merge branch 'MDL-82220-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-09-02 10:10:46 +08:00
Paul Holden c0afa63f6e MDL-82494 user: correct profile field name formatting method.
Add optional `$escape` parameter to allow for unescaped return.
2024-08-30 09:48:13 +01:00
Paul Holden b7c05d2cc4 MDL-82488 customfield: allow for unescaped field formatted names.
Resolves double encoding of the same in Report builder editor.
2024-08-30 09:44:47 +01:00
Mikel Martín 7676cd334f MDL-82957 course: Fix section bulk actions alignment 2024-08-30 10:44:17 +02:00
Huong Nguyen e28403c470 Moodle release 4.3.7 2024-08-30 13:51:08 +07:00
Paul Holden 6554262006 MDL-82804 badges: define no results notice inside report instances.
When doing so from calling code, the property is not persisted when
filtering/paging (or any AJAX interaction); instead, it should be
set from within the report instance itself.
2024-08-29 17:31:34 +01:00
Huong Nguyen 3f94e61e49 weekly release 4.3.6+ 2024-08-29 18:10:02 +07:00
Paul Holden e109b9dd21 MDL-82483 tag: update the max length constant to match schema. 2024-08-29 10:38:06 +01:00
Liam Moran 896fa8b5a0 MDL-82717 enrol_lti: Make contextmembershipsurl property immutable
The contextmembershipsurl property on the nrsp_info object is itself
an object of type moodle_url so its getter should return a copy
of the moodle_url object instead of a reference to the class-internal
object. This commit adds a test for get_context_memberships_url and
updates the getter so the property is immutable.
2024-08-29 03:47:10 -05:00
Jun Pataleta 47deadb259 MDL-82948 theme_boost: Make <blockquote>'s border a bit darker 2024-08-29 16:04:43 +08:00
raortegar ff344e2495 MDL-82255 editor_tiny: Style blockquote in edit view 2024-08-29 09:25:21 +02:00
Paul Holden 3ea261a1c1 MDL-82365 mod_lesson: stricter equality checks of activity password. 2024-08-29 12:13:31 +08:00
Huong Nguyen f4e7f201bc Merge branch 'MDL-82446-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-29 11:05:30 +07:00
Jun Pataleta 0bad70f9c4 Merge branch 'MDL-82651-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-08-29 11:59:40 +08:00
Jun Pataleta c5f8a854b7 Merge branch 'MDL-82802-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-29 11:40:04 +08:00
Huong Nguyen 7945536fde MDL-82790 filter_tidy: Fix coding style 2024-08-29 10:19:51 +07:00
Huong Nguyen 330ecf9203 Merge branch 'MDL-82790-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-08-29 10:04:14 +07:00
Ilya Tregubov 75af70591b Merge branch 'MDL-82810_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-08-29 10:57:34 +08:00
Huong Nguyen 46f2f2cc29 Merge branch 'MDL-82898-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-08-29 09:50:29 +07:00
Paul Holden 7d2988dfe5 MDL-76962 auth_oauth2: users can only delete their own linked logins. 2024-08-29 10:32:41 +08:00
Stefan Hanauska def0c592a0 MDL-80974 enrol: Set category context for enrol form 2024-08-28 12:33:09 +02:00
Simey Lameze 7669660f9b MDL-82651 behat: remove unnecessary steps 2024-08-28 13:10:35 +08:00
Simey Lameze ed24ab1b04 MDL-82651 behat: wait for button to exist before clicking 2024-08-28 13:10:35 +08:00
Angelia Dela Cruz 3891da010b MDL-82898 enrol_self: Behat to test student enrolment using key 2024-08-28 11:45:59 +08:00
Paul Holden 9e40eb38c0 MDL-82663 user: fix check for current user removing own enrolment.
We only need to remove the current user from selection if they were
ever part of the selection originally.
2024-08-27 16:55:27 +01:00
Marina Glancy 8c875ed525 MDL-82567 core: Add has_capability method
Co-authored-by: David Woloszyn <david.woloszyn@moodle.com>
Co-authored-by: Jun Pataleta <jun@moodle.com>
2024-08-26 04:04:18 +00:00
Huong Nguyen 330d8baf27 MDL-69684 session_redis: Improve upgrade note 2024-08-26 10:59:43 +07:00
Huong Nguyen b1c64a3b25 MDL-69684 session_redis: Improve PHPUnit test 2024-08-26 10:59:36 +07:00
Huong Nguyen 55f37d0dc7 Merge branch 'MDL-69684-M403_its-possible-to-hold-a-redis-session-lock-forever' of https://github.com/ziegenberg/moodle into MOODLE_403_STABLE 2024-08-26 10:58:13 +07:00
rajandangi 1619484716 MDL-79628 navigation: Refactor navigation_cache to use MUC 2024-08-26 09:13:18 +09:30
Shamim Rezaie cd08a0ecee Merge branch 'MDL-82006-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-24 16:21:32 +10:00
Sara Arjona 062791efe1 weekly release 4.3.6+ 2024-08-23 16:04:01 +02:00
Jake Dallimore 6bc54e875d Merge branch 'MDL-82787-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-08-23 11:51:41 +08:00
Jun Pataleta f308827fa8 Merge branch 'MDL-79215-MOODLE_403_STABLE' of https://github.com/MichaelReyesCatcan/moodle into MOODLE_403_STABLE 2024-08-22 23:57:34 +08:00
KarlReyesCatalyst 37bca6ce6b MDL-79215 lib/graphlib: Typecasting round() function to INT. 2024-08-22 10:28:25 -04:00
Mark Johnson 916bd72fc1 MDL-82545 gradereport_grader: Limit grades per page
This replaces the limit on the number of students per page with a number
of grades per page, to take into account the number of grade items on a
course.
2024-08-22 11:04:57 +01:00
Shamiso.Jaravaza 342b3707b3 MDL-80225 mod_bigbluebuttonbn: Fix missing recordings 2024-08-21 21:00:40 -06:00
Huong Nguyen 19f639210a Merge branch 'MDL-82841-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-08-22 08:43:56 +07:00
Sara Arjona c66b5072e1 Merge branch 'MDL-82695_403_STABLE' of https://github.com/andrewhancox/moodle into MOODLE_403_STABLE 2024-08-21 16:07:52 +02:00
Sara Arjona 377fcdf1bd Merge branch 'MDL-82655-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-08-21 15:54:27 +02:00
Andrew Hancox 2ad2ba2d2c MDL-82695 qtype_multianswer: Fix div by zero in compute_final_grade 2024-08-21 13:44:47 +01:00
Angelia Dela Cruz 56b3532c63 MDL-82841 mod_workshop: Behat for submissions with set # of attachments 2024-08-21 19:01:41 +08:00
Huong Nguyen 71a0ce575f Merge branch 'MDL-82110-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-08-21 17:43:55 +07:00
Angelia Dela Cruz 1d101c4a52 MDL-82655 mod_workshop: Behat test for manual and random allocation 2024-08-21 17:44:46 +08:00
Jun Pataleta f980061174 Merge branch 'MDL-78785_403_toolbrickfield_rgbcolorcontrasts' of https://github.com/brickfield/moodle into MOODLE_403_STABLE 2024-08-21 11:49:40 +08:00
Andrew Nicols 2af12db84c MDL-82787 behat: Correct stop of webdriver on failure 2024-08-21 08:46:16 +08:00
Sara Arjona 869921831d weekly release 4.3.6+ 2024-08-20 20:16:02 +02:00
Sara Arjona 594795daa6 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-08-20 20:15:59 +02:00
Andrew Nicols 536c0f3e53 MDL-82110 core: Remove debugging for unmigrated hooks in unit tests 2024-08-20 20:28:49 +08:00
Andrew Nicols bff37a3eab MDL-82790 filter_tidy: Disable the tidy filter
This behaves very poorly and for most users has been silently not
working for many years.

When we stopped it from silently failing we discovered a number of
issues that it causes, for example:
- MDL-61117
- MDL-82790
2024-08-20 20:15:23 +08:00
vlad.kidanov c8f98fe85d MDL-82492 gradereport_grader: Grader report HTML output optimization 2024-08-20 10:26:57 +01:00
Sara Arjona 9d7695c5fa Merge branch 'MDL-82455-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-19 16:46:03 +02:00
AMOS bot 027ee0fef8 Automatically generated installer lang files 2024-08-19 00:07:43 +00:00
Karen Holland 2e1aa0c321 MDL-78785 tool_brickfield: Processing rgb & rgba color contrasts
Including rgb() & rgba() processing for colour contrast checking.
  Including review requests :void and @covers for phpunit testing.
2024-08-16 17:32:59 +00:00
Tim Hunt 1ffabb9359 MDL-82810 question bank: stop action menu from getting truncated 2024-08-16 13:38:46 +01:00
Paul Holden 48e0029f0f MDL-74188 notes: consistent formatting of text content.
Each method of adding notes, either via UI or external service (via
course participant actions), defined the format of the content
different from one another. Neither of those formats were correct.
2024-08-16 10:20:08 +01:00
Paul Holden f48077b2ed MDL-82220 group: check valid mapping when restoring custom fields. 2024-08-16 10:09:10 +01:00
Paul Holden b3bdb05db1 MDL-82220 backup: ensure correct group/ing custom fields are included.
We should include only the custom field values that belong to those
groups and/or groupings that are being backed up.
2024-08-16 10:09:10 +01:00
Huong Nguyen 07c3ab9006 weekly release 4.3.6+ 2024-08-16 08:39:21 +07:00
Paul Holden b6887b94ce MDL-82455 badges: link report recipients count to appropriate page. 2024-08-15 22:37:21 +01:00
Paul Holden fcf82fab25 MDL-82006 reportbuilder: move filter Behat scenarios inside component. 2024-08-15 13:17:26 +01:00
Paul Holden 0ac01eea47 MDL-82802 tool_xmldb: allow numeric characters in table names. 2024-08-15 12:00:46 +01:00
Huong Nguyen 765b5e48bd Merge branch 'MDL-82724-MOODLE_403_STABLE' of https://github.com/phmemmel/moodle into MOODLE_403_STABLE 2024-08-15 11:00:01 +07:00
Jun Pataleta 0cda695df0 Merge branch 'MDL-82782-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-08-15 11:51:50 +08:00
Jun Pataleta 6f950a3ccf Merge branch 'MDL-82747-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-08-15 11:38:07 +08:00
Andrew Nicols 9c63160dcc MDL-82747 core: Remove erroneously included aws-sdk file import 2024-08-15 11:35:08 +08:00
Jun Pataleta 758503c85d Merge branch 'MDL-82798-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-08-15 11:13:41 +08:00
Huong Nguyen effe286ca8 Merge branch 'MDL-82758-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-08-15 09:38:07 +07:00
Huong Nguyen c3ed25c71c MDL-82798 qtype_ddmarker: Fix Behat failure 2024-08-15 09:17:23 +07:00
Jun Pataleta b0a74d3487 Merge branch 'MDL-82792-403' of https://github.com/sarjona/moodle into MOODLE_403_STABLE 2024-08-15 10:14:40 +08:00
Jun Pataleta 8e1891c8cb Merge branch 'MDL-82747-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-08-14 23:04:31 +08:00
Daniel Ziegenberg 3460632bf1 MDL-69684 session: Redis session locks set with expiry atomically
Co-Authored-By: Jamie Chapman-Brown <jamie.chapman-brown@agilicus.com>
Signed-off-by: Daniel Ziegenberg <daniel@ziegenberg.at>
2024-08-14 17:03:38 +02:00
Andrew Nicols da1163b2b9 MDL-82747 core: Register composer autoload files
Unfortunately PHP does not provide any means to autoload the files that
a functions is located in, even if they are in an namespace.

To work around this, Composer makes use of an `autoload.files` section
in the `composer.json` file. Shortly after the Composer autoloader is
registered with the `spl_autoload_register` call it also includes any
files listed in this section.

Moodle does not do this and really we should be doing so.

This change adds a section to the autoloader registration method which
loads all of the files defined in any third-party library included in
our `lib` directory which contains any `composer.json` file with such a
stanza.
2024-08-14 21:59:52 +08:00
Andrew Nicols 734a5f1e80 MDL-82747 core: Provide a standard way to register the Autoloader 2024-08-14 21:59:52 +08:00
Andrew Nicols 6c4be65b3e MDL-82782 behat: Support runtime scaling of Behat windows 2024-08-14 21:55:32 +08:00
Sara Arjona c49e9f7fc9 MDL-82792 h5p: Fix random behat failures
We've started seeing various failures in Firefox and Classic.
Increasing the default window size fixes them.
2024-08-14 12:18:33 +02:00
Sara Arjona e1daeec17d Merge branch 'MDL-82682-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-08-14 09:13:09 +02:00
Huong Nguyen 092edd5696 MDL-82682 behat: fix window size failures on Chrome 2024-08-14 11:37:14 +08:00
Simey Lameze 4aa8e531a6 MDL-82682 behat: increase window size to avoid fails 2024-08-14 11:37:14 +08:00
Sara Arjona d0302639fa Merge branch 'mdl-82214-m403' of https://github.com/NeillM/moodle into MOODLE_403_STABLE 2024-08-13 16:08:21 +02:00
Sara Arjona 5312f57718 Merge branch 'MDL-82502-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-13 13:15:04 +02:00
Ilya Tregubov e88a87e22e Merge branch 'MDL-64675-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-13 10:44:36 +08:00
Ilya Tregubov fcf23db6be Moodle release 4.3.6 2024-08-10 14:54:55 +08:00
Jun Pataleta 78d0d69cfa MDL-82758 gha: Remove reference to the master branch 2024-08-09 16:16:26 +08:00
Jun Pataleta 6e8dcf515a Merge branch 'MDL-82599-403-enfix' of https://github.com/mudrd8mz/moodle into MOODLE_403_STABLE 2024-08-09 11:18:54 +08:00
Ilya Tregubov e1d320d4bb weekly release 4.3.5+ 2024-08-09 09:34:27 +08:00
Huong Nguyen ce59fcf650 MDL-82745 filter_tex: Improve PHPUnit test 2024-08-08 21:06:01 +08:00
Mark Johnson 019bcd6f18 MDL-81987 redis: Set connection and read timeouts to 10 seconds
This allows the site to continue operating in case of degraded
performance, rather than throwing exceptions.
2024-08-08 13:14:30 +01:00
Michael Hawkins a17934ee11 MDL-82745 filter_tex: Improve filter deny list 2024-08-08 11:40:35 +07:00
Michael Hawkins 07776fe1d5 MDL-82576 qtype_calculated: Improve formula regexes 2024-08-08 11:11:51 +07:00
Ilya Tregubov 8ecbb1bea3 Merge branch 'MDL-82608-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-08 11:09:39 +08:00
Ilya Tregubov 0194edd6c4 Merge branch 'MDL-82605-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-08 11:03:45 +08:00
Safat 27c875e461 MDL-82395 tool_xmldb: Table layout update 2024-08-08 10:01:12 +07:00
Jun Pataleta ef4d45b20b Merge branch 'MDL-82560-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-08-08 10:44:48 +08:00
Paul Holden 88f41107c6 MDL-79373 admin: ensure all current password configs are defined.
Ensure the admin preset export tool has an accurate record of each,
to be observed as sensitive settings when creating an export.
2024-08-08 09:22:39 +07:00
Andrew Nicols 4940dc9470 Merge branch 'MDL-80593-403-alt' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-08-08 10:20:00 +08:00
Angelia Dela Cruz 2f9e8dddd2 MDL-82560 mod_forum: Test that students can only start one discussion 2024-08-08 10:18:34 +08:00
Huong Nguyen f9639f1404 Merge branch 'MDL-82177_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-08-08 09:11:17 +07:00
Huong Nguyen c2158534c0 Merge branch 'MDL-82669-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-08 08:58:57 +07:00
Jun Pataleta 78813b3766 Merge branch 'MDL-77784-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-08 09:55:32 +08:00
Huong Nguyen cfef0be6c5 Merge branch 'mdl-826620-43' of https://github.com/matthewhilton/moodle into MOODLE_403_STABLE 2024-08-08 08:41:41 +07:00
Ilya Tregubov fa8af811d3 Merge branch 'MDL-82209-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-08 09:22:32 +08:00
Ilya Tregubov 9c02db4d4d Merge branch 'MDL-82525-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-08 08:27:34 +08:00
Ilya Tregubov a30b6e8547 Merge branch 'MDL-82208-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-08 08:18:22 +08:00
Paul Holden f83bba28b5 MDL-64675 mod_feedback: better detection of last page break element.
Inform user when a page break item cannot be added.
2024-08-07 16:57:46 +01:00
Philipp Memmel f682ff4097 MDL-82724 editor_tiny: Harden check for quicktoolbar and contextmenu 2024-08-07 11:56:07 +02:00
Jun Pataleta d2a1df8890 Merge branch 'MOODLE_403_MDL-82518' of https://github.com/danielneis/moodle into MOODLE_403_STABLE 2024-08-07 17:12:01 +08:00
Ilya Tregubov 51e55e9fba Merge branch 'MDL-81830-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-07 15:28:21 +08:00
Paul Holden 82243bf8c8 MDL-81394 restore: format backup file metadata details safely. 2024-08-07 14:04:48 +08:00
Ilya Tregubov 2b36e64a26 MDL-79541 gradereport_user: Fix indentation in Behat. 2024-08-07 04:13:54 +00:00
Huong Nguyen 2503e35684 MDL-81718 core_grades: Fix Behat failures 2024-08-07 04:13:54 +00:00
raortegar f4aa615c74 MDL-81718 core: Improve localstorage validation 2024-08-07 04:13:54 +00:00
Paul Holden 6f8db95ccf MDL-82558 h5p: escape template error/exception content. 2024-08-07 04:13:54 +00:00
Paul Holden 0b4100c13e MDL-82392 blocks: consistent cleaning of block instance names. 2024-08-07 04:13:54 +00:00
Paul Holden 01375bdaa0 MDL-82261 mod_feedback: ensure only non-respondents can be messaged. 2024-08-07 04:13:54 +00:00
Paul Holden e360a5dc2e MDL-82390 badges: correct context check when deleting badges. 2024-08-07 04:13:54 +00:00
meirzamoodle 57de85a0a0 MDL-82136 curl: Send credentials to redirect URL if allowed
Curl has the option CURLOPT_UNRESTRICTED_AUTH. If true, curl will send
the credentials to a different host. If false, they will not be sent.

CURLOPT_UNRESTRICTED_AUTH can only work if the CURLOPT_FOLLOWLOCATION
option is true. The filelib forces the CURLOPT_FOLLOWLOCATION option
to be false, because all redirects are emulated at the PHP level. So,
in this case, the CURLOPT_UNRESTRICTED_AUTH option is only being used
in our logic and will not work as you might expect it to.

This patch works almost the same as CURLOPT_UNRESTRICTED_AUTH in ideal
conditions. It will check whether the host is different. If so, the
system will check what value CURLOPT_UNRESTRICTED_AUTH has. If it is
not specified, then by default, it will be false. If false, then
credentials will not be sent.
2024-08-07 04:13:54 +00:00
Paul Holden ee7b35cd2f MDL-82262 mod_feedback: fix broken bulk message sesskey checks. 2024-08-07 04:13:54 +00:00
Paul Holden 2c5f827dcc MDL-64984 mod_glossary: capability check when restoring global type. 2024-08-07 04:13:54 +00:00
David Woloszyn 14feac6458 MDL-81951 communication_matrix: Fix suspended users ignored bug
The implementation of this bug fix is slightly different on 403 branch
compared to later branches due to major changes that were applied
to communication with the addition of hooks and helpers.
2024-08-07 04:13:54 +00:00
David Woloszyn 4e7ee4e0b9 MDL-81951 communication_matrix: New trait for power levels
A more reliable way of obtaining room power levels is now used in the
new trait get_room_power_levels_v3. This makes
get_room_powerlevels_from_sync_v3 less needed, but not necessarily
redundant. The names of the containing methods have been adjusted to
make better sense of which trait they belong to.
2024-08-07 04:13:54 +00:00
Ilya Tregubov 5760639c16 MDL-79541 core_grades: Add missing user info to search services.
Seems just fullname is not enough. So added all name fields.
2024-08-07 04:13:54 +00:00
Ilya Tregubov 299bb8180c MDL-79541 core_grades: Hidden user fields check for search.
If some user profile fields are hidden on some grade reports
users without permission were able to see those.
2024-08-07 04:13:54 +00:00
Huong Nguyen 43ccc81b1b Merge branch 'MDL-82611-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-07 10:25:34 +07:00
Huong Nguyen a4d92e88cf Merge branch 'MDL-82620-403' of https://github.com/ericmerrill/moodle into MOODLE_403_STABLE 2024-08-07 10:20:53 +07:00
Jun Pataleta 0c26411ad5 Merge branch 'MDL-82606_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-08-07 11:12:16 +08:00
Tim Hunt 7323860c03 MDL-82606 filterlib: pass a row limit to recordset for performance
On Postgres, at least, get_recordset_sql performs signficantly worse
if you don't pass a limit. So, we add a limit to the query, but one
that in enormously too large, so it should never have an effect.
(And, there is code to check we never hit the limit, to avoid subtle bugs.)
2024-08-06 10:47:50 +01:00
Jun Pataleta dd9a9980ad Merge branch 'MDL-82344-403' of https://github.com/snake/moodle into MOODLE_403_STABLE 2024-08-06 17:26:52 +08:00
Jun Pataleta 025cb77c93 Merge branch 'MDL-79568-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-08-06 17:20:02 +08:00
Neill Magill 2e975de3ed MDL-82214 admin: Settings should not change when in read only mode
Before this change if some settings were:

* read only
* visible on a settings page
* are set or have values selected

when the settings page was saved the setting would be set tobe empty,
because the hidden input remained on the page, while the other inputs
where not posted to Moodle.
2024-08-06 09:54:18 +01:00
Paul Holden 018f792769 MDL-82446 files: pleasantly style the filepicker modal containers. 2024-08-05 08:41:03 +01:00
Paul Holden 41301da68e MDL-79568 javascript: remove lang parameter from legacy string calls. 2024-08-05 08:33:26 +01:00
Ilya Tregubov d98864859a Merge branch 'MDL-82171-muc-sited-MOODLE_403_STABLE' of https://github.com/brendanheywood/moodle into MOODLE_403_STABLE 2024-08-05 11:19:28 +08:00
Daniel Neis Araujo 6f77e20d2b MDL-82518 core_user: Fix regression introduced by MDL-80271 2024-08-02 14:47:48 -03:00
Paul Holden 69048fc549 MDL-82669 mod_assign: remove Atto reliance workaround for Behat.
See 8fe80e743c for context, and 802ff3e2e3 for additonal comments.
2024-08-02 10:33:43 +01:00
Paul Holden d9a462727b MDL-82669 editor: remove reliance on Atto editor in Behat scenarios. 2024-08-02 10:33:43 +01:00
Jun Pataleta 264c286a63 MDL-82677 theme: Set a background colour for page heading
* Set a background colour for the .page-header-headings class.
* Assign the .page-header-headings class to the maintenance mode
template's page header div.
2024-08-02 17:25:02 +08:00
Paul Holden eadd93065c MDL-82502 courseformat: align module action capability checks.
The "Hide/Show/Duplicate" actions should be considered self-contained,
and not also require "manageactivities" capability (per existing docs)
in addition to the specific capability that controls the action itself.

Also ensure the "Duplicate" capability checks are in the course context.
2024-08-02 10:01:22 +01:00
Paul Holden 8ec33d16c7 MDL-82608 mod_data: null content checks when editing fields. 2024-08-02 09:57:43 +01:00
Paul Holden bc39fac69f MDL-82605 contentbank: pre-load contexts for options list.
Prevents additional DB reads per category/course, which can be
potentially expensive on large sites.
2024-08-02 09:50:24 +01:00
Ilya Tregubov 431f27e7bf weekly release 4.3.5+ 2024-08-02 09:30:53 +08:00
Ilya Tregubov c3097a8084 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-08-02 09:30:49 +08:00
Matthew Hilton 7a325a2824 MDL-82662 login: load library with require_once 2024-08-02 10:52:30 +10:00
David Mudrák c065e8b259 MDL-82599 lang: Use the fixed strings in tests, too 2024-08-01 21:30:50 +02:00
Helen Foster df998bfd47 MDL-82599 lang: Import fixed English strings (en_fix) 2024-08-01 21:16:05 +02:00
Paul Holden 0cd3880ef3 MDL-77784 quiz_grading: editor agnostic Behat scenario steps. 2024-08-01 14:17:23 +01:00
Huong Nguyen 794464cdca Merge branch 'MDL-80064-403' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2024-08-01 10:41:53 +07:00
Huong Nguyen 32c6297d21 Merge branch 'MDL-82598-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-08-01 10:27:08 +07:00
Huong Nguyen ab84cbafd1 MDL-80593 core: Make Modal to work with Debug Template Info mode 2024-08-01 10:18:31 +07:00
Huong Nguyen ec8f02fe93 MDL-80017 core_grades: Move upgrade note 2024-08-01 09:17:04 +07:00
Huong Nguyen 1098d89c96 Merge branch 'MDL-80017-403' of https://github.com/jleyva/moodle into MOODLE_403_STABLE 2024-08-01 09:15:51 +07:00
Ilya Tregubov 9316aeadc8 Merge branch 'MDL-81689_MOODLE_403_STABLE' of https://github.com/rzhtwberlin/moodle into MOODLE_403_STABLE 2024-08-01 09:58:57 +08:00
Jun Pataleta 9437d3f3e5 Merge branch 'MDL-82286-403' of https://github.com/daledavies/moodle into MOODLE_403_STABLE 2024-08-01 09:46:37 +08:00
AMOS bot 18b0d6e27b Automatically generated installer lang files 2024-08-01 00:07:32 +00:00
Sara Arjona 3f163bb902 Merge branch 'MDL-72876-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-07-31 17:15:26 +02:00
Sara Arjona bfa3494d6c Merge branch 'MDL-82596-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-31 16:46:12 +02:00
Dale Davies 5302515c40 MDL-82286 quiz_accessrule: Add SEB config test for floating point number
This tests several variations of SEB config files, to ensure Moodle
is able to parse them and generate a config key hash that matches
what SEB expects.

Additional values have been added to the unencrypted_win_233.seb
config file to cover the existence of floating point values,
ensuring they are serialized correctly. The config hash value
has been updated in real_ck_hash_provider to reflect the change.

Also added coverage information to the test case class docblock.
2024-07-31 11:16:45 +01:00
Jun Pataleta c48c1d29ab Merge branch 'MDL-82187-single-button-403' of https://github.com/djarran/moodle into MOODLE_403_STABLE 2024-07-31 17:21:22 +08:00
Paul Holden d78df6e8e4 MDL-82208 block_starredcourses: avoid double encoding course name. 2024-07-31 08:47:29 +01:00
Simey Lameze 105686c55b MDL-82598 behat: improve example submission test 2024-07-31 09:05:20 +08:00
AMOS bot 9364de6276 Automatically generated installer lang files 2024-07-31 00:07:29 +00:00
Tim Hunt 041ed9043b MDL-82177 file upload: default to path '/'when things go wrong
This 'fix' is basically a work-around, but one that is already used in
some places. Now it is used in all similar places.

Exactly what causes the current file path in a file manager to become
unset is still unclear to me, but it seems to be an obscure race
condition that is very hard to reproduce.

However, when it happens, currently we are effectively defaulting to
path '/undefined/'. Using '/' is never worse, and is infinitely better
in the case where the filepicker does not allow folders to be used
(which includes important cases like essay questions in a quiz, which
some people use for exams!). In that case, falling back to non-top-level
path leads to dataloss.

Also, this is all historic JavaScript which will get replaced in the
grand de-YUI-fication, so I think a pragmatic fix is justified here.
2024-07-30 15:07:25 +01:00
Jun Pataleta 17af3c7054 MDL-72876 theme_classic: Enclose welcome message in Bootstrap card 2024-07-30 19:40:32 +08:00
meirzamoodle 7878dda84b MDL-80064 authentication: password can be null
The Open ID Connect plugin uses null for the password,
which makes the internal password update fail to proceed.
Allowing null resolved the problem.

As a note, there is a potential issue if the authentication method has
a false return for the prevent_local_password because it will trigger
the hash_internal_user_password() where  the $password can not be null.
Since this only addresses the oauth2 issue, we should ignore it.
2024-07-29 15:53:08 +07:00
Paul Holden eeb9847c61 MDL-82525 user: correct course parameter for course profile page. 2024-07-29 09:22:07 +01:00
Paul Holden 2e8b0d29ee MDL-81830 calendar: handle clearing of group type course element. 2024-07-29 09:20:56 +01:00
Paul Holden 680fc50218 MDL-82209 calendar: consistent event action icon hovering.
* Apply hover on the icons, rather than the outer container;
* Make hover colour and text decoration appropriate for the icon
2024-07-29 09:19:46 +01:00
Jake Dallimore 5264d41125 MDL-82344 mod_lti: relax content selection validation in instance form
This was added in MDL-78916 in 4.3 but makes configuring a generic
launch to the default tool URL impossible, since a content item must be
selected. This fix:
- Makes this element optional again, which allows teachers to choose
whether a given instance launches into selected content, or launches
the default tool URL.
- Changes the style to btn-secondary, given it's now optional again
2024-07-29 13:07:45 +08:00
Andrew Nicols e79703fa30 Merge branch 'MDL-82250-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-07-29 11:48:32 +08:00
Ilya Tregubov 9247c786e9 Merge branch 'MDL-80345-403' of https://github.com/MartinGauk/moodle into MOODLE_403_STABLE 2024-07-29 11:33:46 +08:00
Paul Holden b3363ff7b7 MDL-82596 behat: switch manual private files upload to generator. 2024-07-28 19:26:49 +01:00
Paul Holden 4870d18dad MDL-82596 behat: tidy up existing usage of private files generator.
Filename is no longer required (since 83db25c330), given it never
did anything so can be removed. Requiring the "Private files" block
also isn't necessary since original switch to generator methods.
2024-07-28 19:13:47 +01:00
Paul Holden 16931c9db2 MDL-82611 mod_assign: capability check before exporting grade link. 2024-07-26 21:20:48 +01:00
Eric Merrill ad0188abae MDL-82620 completion: Make enrol duration comp happen at the right time 2024-07-26 14:11:48 -04:00
Johannes Burk 8f86be0184 MDL-81689 tests: Check task DB record for nextruntime 2024-07-26 10:33:12 +02:00
Johannes Burk c05ead813e MDL-81689 tasks: add unit test to check for the bug 2024-07-26 10:33:12 +02:00
Jun Pataleta e119a01a4f weekly release 4.3.5+ 2024-07-26 13:35:44 +08:00
Jun Pataleta 3548666713 NOBUG: Fixed SVG browser compatibility 2024-07-26 13:35:42 +08:00
Jun Pataleta 4e9d0e5632 Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-07-26 13:35:41 +08:00
Jun Pataleta 9624bc226c Merge branch 'MDL-82373-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-07-26 13:19:57 +08:00
Andrew Nicols 35e3be3c33 MDL-82373 core_message: Make message drawer router behat-aware
The drawer router was modifying the DOM in a variety of ways and hiding
content, without any pendingJS checks. As a result, there were cases
where a part of the UI was not visible, but had been rendered and was in
the DOM.

This change wraps the router Go method in a pendingJS call that only
resolves when the router transition completes.

Additionally the lazy load manager had a similar issue.
2024-07-26 12:45:30 +08:00
Juan Leyva 5e4e5bf13e MDL-80017 core_grades: Fix return type for itemname 2024-07-25 11:16:45 +02:00
Huong Nguyen 9cb172a65d Merge branch 'MDL-82527-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-25 10:49:18 +07:00
Huong Nguyen 0e14c24d9a Merge branch 'MDL-82328-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-25 10:36:20 +07:00
Jun Pataleta cb247b8c0f Merge branch 'MDL-82373-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-07-25 11:31:20 +08:00
Huong Nguyen 2548f1ddf5 Merge branch 'MDL-58287-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-25 10:29:59 +07:00
Jun Pataleta 1aa1ffba4e Merge branch 'MDL-77706-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-07-25 11:02:38 +08:00
Huong Nguyen 9439acba52 Merge branch 'MDL-82553-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-07-25 09:17:47 +07:00
Shamim Rezaie 6ee8b49e95 Merge branch 'MDL-82551-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-07-25 11:53:30 +10:00
Huong Nguyen ad9485bf80 Merge branch 'MDL-82554-MOODLE_403_STABLE' of https://github.com/micaherne/moodle into MOODLE_403_STABLE 2024-07-25 08:51:00 +07:00
Huong Nguyen 977656caaf Merge branch 'MDL-82451-403' of https://github.com/aanabit/moodle into MOODLE_403_STABLE 2024-07-25 08:44:03 +07:00
Huong Nguyen 537b00e8b0 Merge branch 'MDL-82422-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-07-25 08:37:01 +07:00
AMOS bot 9ccfc52146 Automatically generated installer lang files 2024-07-25 00:08:05 +00:00
Amaia Anabitarte 184977d3dc MDL-82451 course: Switch hide/show icons for section action menu 2024-07-24 12:18:35 +02:00
Jun Pataleta c51ea2b1fb Merge branch 'MDL-81803-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-24 16:57:43 +08:00
Jun Pataleta c07afde99f Merge branch 'MDL-82289-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-24 15:05:24 +08:00
Angelia Dela Cruz fab4e5c529 MDL-82422 mod_workshop: Behat for how strict assessment comparison is 2024-07-24 14:01:07 +08:00
Huong Nguyen b906e01ec6 Merge branch 'MDL-82528-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-24 12:01:14 +07:00
Michael Aherne 66ebd9db13 MDL-82554 question: Allow null createdby in question_has_capability_on. 2024-07-23 10:45:09 +01:00
Simey Lameze 117165c346 MDL-82250 core: add web installer test workflow 2024-07-23 13:33:12 +08:00
Jun Pataleta e94157a6dd MDL-82553 behat: Run accessibility tests using WCAG 2.2 success criteria 2024-07-22 14:38:00 +08:00
Jun Pataleta 09ea3a579b MDL-82551 core: Set welcome message heading to level 1 2024-07-22 14:21:14 +08:00
Huong Nguyen 140094cad8 Merge branch 'MDL-82481-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-22 10:40:58 +07:00
Huong Nguyen 3f9b5fa648 Merge branch 'MDL-82193-403' of https://github.com/ericmerrill/moodle into MOODLE_403_STABLE 2024-07-22 09:40:00 +07:00
Ilya Tregubov 587685d0c5 Merge branch 'MDL-82499-MOODLE_403_STABLE' of https://github.com/micaherne/moodle into MOODLE_403_STABLE 2024-07-22 09:43:18 +08:00
djarrancotleanu b2c3857364 MDL-82187 core: Add default type for single button in template 2024-07-22 09:27:36 +10:00
AMOS bot 659af23164 Automatically generated installer lang files 2024-07-21 00:07:39 +00:00
Paul Holden c5451fb629 MDL-58287 courseformat: ensure all format plugins are returned. 2024-07-19 15:23:45 +01:00
Paul Holden 2e4f29999f MDL-82528 courseformat: switch to existing group action icon.
Use a version that already exists in our fontawesome mapping so it
can be consistently styled/overridden.
2024-07-19 12:54:40 +01:00
Sara Arjona ab0045f9a4 Merge branch 'MDL-81119-forced-config-MOODLE_403_STABLE' of https://github.com/bwalkerl/moodle into MOODLE_403_STABLE 2024-07-19 12:37:23 +02:00
Benjamin Walker 36bc92acf0 MDL-81119 tool_recyclebin: Stop overriding unrelated forced config 2024-07-19 14:37:21 +10:00
Ilya Tregubov 8efeae492e weekly release 4.3.5+ 2024-07-19 09:30:31 +08:00
Paul Holden 93f67ab063 MDL-82481 customfield_select: return field options pre-formatted. 2024-07-18 14:03:21 +01:00
Paul Holden a557f745bc MDL-82481 reportbuilder: re-use existing method for field options. 2024-07-18 14:03:21 +01:00
Paul Holden 17f0e4e776 MDL-82527 h5p: improve editor Behat scenarios for embedding content.
* Move the shared drag fixture out of the Atto plugin;
* Switch to using faster generators for populating private files;
* Clarify required fields for private files generator
2024-07-18 09:38:10 +01:00
Jun Pataleta d99a6bbfe4 Merge branch 'MDL-82505-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-07-18 12:50:36 +08:00
Jun Pataleta 45ec12f24f Merge branch 'MDL-75864-403' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2024-07-18 12:47:43 +08:00
Huong Nguyen 5f104acde5 MDL-82505 calendar: more precise matching of calendar day partial
The partial name selector points to the parent element,
but the Javascript code monitors the child element.
We need to make it consistent
2024-07-18 11:37:44 +07:00
Andrew Nicols 661a9ce962 Merge branch 'MDL-82309-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-18 11:59:02 +08:00
Ilya Tregubov 11f0f20e34 Merge branch 'MDL-82445-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-07-18 11:36:47 +08:00
Andrew Nicols afaf5187e1 Merge branch 'MDL-81932-403' of https://github.com/safatshahin/moodle into MOODLE_403_STABLE 2024-07-18 11:28:31 +08:00
Huong Nguyen ddc90af2da Merge branch 'MDL-82192-403' of https://github.com/ericmerrill/moodle into MOODLE_403_STABLE 2024-07-18 10:27:33 +07:00
Andrew Nicols 8af45284aa Merge branch 'MDL-81272-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-07-18 11:22:25 +08:00
Andrew Nicols 77104c61cb MDL-82445 filter_tidy: Ensure locale does not change when using Tidy 2024-07-18 11:00:42 +08:00
Andrew Nicols 116e5abbc5 MDL-82445 core: Create locale helper utility 2024-07-18 11:00:42 +08:00
Ilya Tregubov 64796d367e Merge branch 'MDL-82090-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-18 10:40:10 +08:00
Ilya Tregubov 23b8b0fdc6 Merge branch 'MDL-82444-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-18 10:34:04 +08:00
Huong Nguyen ec40091d0a Merge branch 'MDL-82467-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-18 09:20:14 +07:00
Sara Arjona a6a970124a Merge branch 'MDL-82353-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-07-17 17:08:17 +02:00
Andrew Nicols 42fb4adf3e MDL-82373 behat: Disable axe target-size rule
Disable the target-size rule.
This rule was added in Axe 4.7, but changed in 4.8 to allow for spacing
around the element. See https://github.com/dequelabs/axe-core/pull/4117
for more information on this change.

Moodle 4.2 has an earlier version of Axe which does not have this rule.
Moodle 4.4 has a later, unaffected, version of Axe.

The simplest solution here is to simply disable the buggy rule.
2024-07-17 22:51:35 +08:00
Paul Holden 25e9ddf536 MDL-82499 question: test for invalid question in capability check. 2024-07-17 09:58:12 +01:00
Andrew Nicols f08c8b7db7 MDL-82373 contentbank: Pause in Behat before interacting with h5p
It seems that the loading of the h5p content upsets other interactions
with the page in Firefox as it loads. Unfortunately I haven't found a
reliable way to handle this with pendingJS yet.

This is the poor man's fix and we should find a better solution.
2024-07-17 13:29:46 +08:00
Andrew Nicols 66f526f878 MDL-82373 question: Make window larger in behat tests
I would suggest that this is a stop gap to solve some failing tests. We
really need to look at whether we can improve the usability of this
interface on smaller displays as a longer-term fix.
2024-07-17 13:29:46 +08:00
Andrew Nicols 783477d51b MDL-82373 core_grades: Address random failures when editing gradebook 2024-07-17 13:29:45 +08:00
Andrew Nicols 5b665180f1 MDL-82373 behat: Wait for alerts before accepting/dismissing them 2024-07-17 13:29:45 +08:00
Andrew Nicols e3d9453e61 MDL-82373 core: Make CollapsibleRegion more tolerant to behat 2024-07-17 13:29:45 +08:00
Andrew Nicols c8cb3660ac MDL-82373 tool_usertours: Ensure that behat waits for tours to show/hide 2024-07-17 13:29:45 +08:00
Andrew Nicols 3d43a712bc MDL-82373 behat: Stop killing the entire Behat run on driver error
If there's a driver error, for example from a step taking too long, then
this kills the entire Behat run and we have to start from scratch.

This change instead throws away the original connection and starts a new
one to try and continue the test.
2024-07-17 13:29:44 +08:00
Andrew Nicols beb6ab9e4e MDL-82373 behat: Stop calling ensure_node_is_visible before click
W3C WebDriver Element::Click, Element::Clear, and Element::SendKeys all
state that the WebDriver implementation (chromedriver, geckodriver,
edgedriver) should scroll the element into view if it is not already
visible.

It is wrong for us to check if the element is visible or not before
calling these as it may not be but will during the click/clear/type
event.
2024-07-17 13:29:44 +08:00
Andrew Nicols fd6e1984dd MDL-82373 mod_lesson: Fix failing behat tests for Selenium 4
Recent versions of Chrome do not re-render the page but return previous
page state from cache. The page state had the Submit button disabled
before navigating away.

Refreshing the page addresses this.
2024-07-17 13:29:44 +08:00
Ilya Tregubov 034588c559 Merge branch 'MDL-82002-403' of https://github.com/durenadev/moodle into MOODLE_403_STABLE 2024-07-17 11:05:15 +08:00
Michael Aherne 66712ce0d8 MDL-82499 question: Fail if questionid does not exist. 2024-07-16 14:58:53 +01:00
Dale Davies 02d483b628 MDL-82286 core: Set serialize_precision to current PHP default 2024-07-16 10:00:57 +01:00
Angelia Dela Cruz 6c5ba9b786 MDL-82353 gradingform: Behat to verify marking guide can be set to draft 2024-07-16 16:59:57 +08:00
Andrew Nicols 927cfa7e7d MDL-77706 atto_link: Work around Mozilla bug 1906559
This upstream bug prevents creation of an anchor with a hyperlink where
the content has a block-like display.

The workaround is to wrap the content in a span, set the display to
inline, call the `createLink` command on the span, move the content out
of the span, and then remove it.

This is only done for Firefox-based browsers.
2024-07-16 15:37:57 +08:00
Ilya Tregubov c5bca30726 Merge branch 'MDL-82282-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-16 09:26:43 +08:00
Ilya Tregubov 1f9f1afb90 Merge branch 'MDL-73662-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-16 09:16:22 +08:00
Paul Holden 5ec0023392 MDL-82467 completion: simplify field SQL for completion columns.
For columns whose values can be represented purely in SQL, we don't
need to/shouldn't select extra data because it confuses the column
output during aggregation for numeric/boolean columns.
2024-07-15 13:34:50 +01:00
Huong Nguyen e478edc496 MDL-81272 calendar: Improve permission check for separate group mode 2024-07-15 15:47:13 +07:00
Andrew Nicols fc5a993443 MDL-66903 core: Check PHPUNIT_TEST defined before using 2024-07-15 13:43:21 +07:00
Huong Nguyen 5a890734c3 Merge branch 'MDL-66903-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-07-15 13:22:20 +07:00
Andrew Nicols d4f3368d28 MDL-66903 core: Introduce \core_component::reset to replace hacks
Traditionally we have done this using reflection and it would be better
to do this in a 'proper' fashion in case we ever need to change how it
works.
2024-07-15 12:22:20 +08:00
Andrew Nicols a7f98a4509 MDL-66903 core: Add option to get core in list of components
Note: This change is backported from MDL-81063.
2024-07-15 12:22:20 +08:00
Andrew Nicols 15d78691a8 MDL-66903 core: Add helper to get component name from classname
Note: This change is backported from MDL-81063.
2024-07-15 12:22:19 +08:00
Andrew Nicols dd72df20f2 MDL-66903 testing: Helper to load fixture files 2024-07-15 12:22:17 +08:00
Andrew Nicols b8a075bed6 MDL-66903 testing: Add support for a \tests\ namespace during tests
This commit:
- introduces a \tests\ sub-namespace for use in unit tests only
- the path to this the tests/classes directory of the owning parent
- files here are excluded from unit test runs

This is agreed per policy in MDL-80855.
2024-07-15 12:21:54 +08:00
Andrew Nicols 71e0b0f26b MDL-66903 testing: Fix whitespace 2024-07-15 12:21:06 +08:00
Andrew Nicols 4cee58fa33 MDL-66903 testing: Reset CFG and component after test
This change moves the reset of global test state to the finally section
rather than doing it only if the test passes.

Previously if a test which modifies the `core_component` internals
failed, it would not reset the internal state and impact subsequent
tests.
2024-07-15 12:21:06 +08:00
Eric Merrill 024a1f04d5 MDL-82193 scorm: Don't store header with multiline AICC content 2024-07-12 15:35:42 -04:00
Paul Holden 3abaca02cc MDL-82444 core: skip environment test on optional plugin extensions. 2024-07-12 13:50:01 +01:00
Paul Holden 90fa52089e MDL-82444 filter_tidy: advertise required PHP extension. 2024-07-12 13:34:12 +01:00
Paul Holden 7b03f08342 MDL-73662 mod_quiz: fix initialization arguments to close button.
Co-authored-by: Sergio Rabellino <rabellino@di.unito.it>
2024-07-12 13:18:12 +01:00
Paul Holden e8ecb6156e MDL-81803 tool_dataprivacy: observe disabled expiration time.
A non-positive integer value should indicate "No time limit".
2024-07-12 11:05:05 +01:00
Daniel Ureña 6c0ce5f8a2 MDL-82002 Media: Video embedding from the app is styled properly. 2024-07-12 11:23:31 +02:00
Huong Nguyen 5fe898496b weekly release 4.3.5+ 2024-07-12 08:42:12 +07:00
Andrew Nicols 4a27a1707b Merge branch 'MDL-78936-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-07-11 12:34:31 +08:00
Jun Pataleta 4bfd122d5c Merge branch 'MDL-81265-403' of https://github.com/junpataleta/moodle into MOODLE_403_STABLE 2024-07-11 12:08:39 +08:00
Jun Pataleta 49abebf564 MDL-81265 mod_workshop: Verify "Setup phase" heading with "should exist" 2024-07-11 11:58:53 +08:00
Laurent David 7c323f7b61 MDL-81265 mod_workshop: Fix accessibility issues
* Page title should be h2
* Contrasts in the table headers (for submission, assessment and grading)
should be 4:1 at least
2024-07-11 11:58:53 +08:00
Andrew Nicols 554ea6e8bd Merge branch 'MDL-82431-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-11 11:46:42 +08:00
Huong Nguyen f771d66f5e Merge branch 'MDL-79717-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-11 09:35:34 +07:00
Huong Nguyen 18fc1b5f5e Merge branch 'MDL-76654-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-07-11 09:19:55 +07:00
Paul Holden 0f0ed01461 MDL-82431 phpunit: correct unit test filename and classname.
Standardise the same test cases, e.g. make final, covers notation,
static data providers, namespaces, etc.

Once the tests run, a couple of them failed. They required changes
to assertions to make them pass.
2024-07-10 19:06:19 +01:00
Jun Pataleta b89e5414b5 Merge branch 'MDL-82417-403' of https://github.com/davewoloszyn/moodle into MOODLE_403_STABLE 2024-07-10 22:16:03 +08:00
Paul Holden aaa03767c8 MDL-79717 phpunit: ensure unique data provider keys in tests.
Duplicate data provider keys were overwriting and/or duplicating
one another, leading to some cases being skipped.

Other "duplicate array key" errors were picked up by `phpcs` in
this dragnet across all tests, which have also been fixed.
2024-07-10 14:08:54 +01:00
Huong Nguyen 9bc5163ef8 Merge branch 'MDL-82308_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-07-10 14:57:43 +07:00
Huong Nguyen c8a0ac0b9d Merge branch 'MDL-68211-403' of https://github.com/sarjona/moodle into MOODLE_403_STABLE 2024-07-10 09:08:03 +07:00
Huong Nguyen d4438e6011 Merge branch 'MDL-82236-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-07-10 09:04:31 +07:00
Tim Hunt 9e1bb0d779 MDL-82401 quiz: editing modals must be removed on close 2024-07-10 08:58:37 +07:00
Sara Arjona 49b603a177 Merge branch 'MDL-81349-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-09 18:14:50 +02:00
Sara Arjona 0926c469aa Merge branch 'MDL-82360-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-09 15:30:21 +02:00
Sara Arjona c1bcf5867a Merge branch 'MDL-77834-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-09 15:22:18 +02:00
Sara Arjona 978f3d670a Merge branch 'MDL-81991-403-alt' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-07-09 13:07:52 +02:00
Sara Arjona 1f88a03ab9 Merge branch 'MDL-78388-403' of https://github.com/djarran/moodle into MOODLE_403_STABLE 2024-07-09 11:47:39 +02:00
Sara Arjona bf5569ace8 Merge branch 'MDL-66251-403' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2024-07-09 10:36:42 +02:00
Paul Holden 90734c4b83 MDL-82309 comment: preserve link text property during AJAX requests.
We really only need to update the count value that follows the link
text content, so do that rather than overwriting the entire thing.
2024-07-09 09:17:23 +01:00
Sara Arjona c71635f492 Merge branch 'MDL-80947-403' of https://github.com/stevandoMoodle/moodle into MOODLE_403_STABLE 2024-07-09 10:03:15 +02:00
Angelia Dela Cruz 71cc856e51 MDL-82236 mod_data: Behat to display DB activity entry rating 2024-07-09 14:59:59 +08:00
Sara Arjona 603c6e3717 Merge branch 'MDL-81296-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-07-09 08:50:42 +02:00
Angelia Dela Cruz 08a8a41f10 MDL-81296 mod_data: Behat test for data activity readonly availability 2024-07-09 12:18:21 +08:00
David Woloszyn 4fa51ddcff MDL-82417 admin: Clarify signoutofotherservices strings 2024-07-09 13:59:14 +10:00
Paul Holden b14cfb6d1b MDL-82328 auth_oauth2: don't load custom profile field data too early.
By prematurely loading custom profile data in the constructor, under
specific circumstances it would happen before the page was fully
initialised which meant that any attempt at applying filters when
formatting profile field data would result in thrown exception.
2024-07-08 08:56:01 +01:00
Simey Lameze 894ab9cf82 MDL-76654 behat: fixes and improvements to self assessment test 2024-07-08 11:22:19 +08:00
Angelia Dela Cruz e82d9489b6 MDL-76654 behat: Coverage for workshop self-assessment 2024-07-08 11:22:19 +08:00
Brendan Heywood 6bdf1b78b2 MDL-82171 core: Rewarm bootstrap.php after a cache purge 2024-07-08 12:53:38 +10:00
meirzamoodle eaf9f48ce8 MDL-66251 form: Hiding and disabling static elements.
Added functionality to locate static text elements within the form,
improving the ability to target and manipulate the static elements for
hiding and disabling purposes.
2024-07-08 09:17:32 +07:00
Stevani Andolo 0548230e7e MDL-80947 communication_customlink: Check before customlink update 2024-07-08 07:26:23 +08:00
Sara Arjona 3b73f08330 MDL-68211 feedback: Export percentage format
The feedback was exporting the percentage in the Analysis file using
a wrong value for the format, so instead of having only 2 decimals,
the number was not formatted.
2024-07-05 10:13:55 +02:00
Ilya Tregubov fd32ceac7c weekly release 4.3.5+ 2024-07-05 09:02:06 +08:00
Paul Holden 4e98ef312b MDL-82289 mod_feedback: correct comparison of current $course. 2024-07-04 10:28:54 +01:00
Sara Arjona 7dec802efd Merge branch 'MDL-80907-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-07-04 11:19:38 +02:00
Paul Holden e2a7ef37db MDL-82282 question: consider only editable flags in JS module. 2024-07-04 10:19:36 +01:00
Paul Holden f363d21a13 MDL-82090 completion: account for alternate gradepass form fields.
Some modules (e.g. Workshop) have "*gradepass" fields for each grade
item, which should be accounted for when trying to freeze them.
2024-07-04 10:17:41 +01:00
Huong Nguyen c9a86c636d MDL-80907 behat: Fix incorrect column selectors 2024-07-04 15:16:58 +07:00
Safat 923ebdfdef MDL-81932 communication_customlink: Fix behat tests 2024-07-04 16:39:26 +10:00
Safat 4e318cb269 MDL-81932 communication_matrix: Fix behat tests 2024-07-04 16:39:26 +10:00
Safat ca607d2ce0 MDL-81932 core_course: Fix communication provider change issue 2024-07-04 16:39:26 +10:00
Safat 8d000f1883 MDL-81932 core_communication: Fix communication provider change issue 2024-07-04 16:39:26 +10:00
Huong Nguyen 22749997d8 Merge branch 'MDL-80907-403' of https://github.com/marinaglancy/moodle into MOODLE_403_STABLE 2024-07-04 11:14:21 +07:00
Ilya Tregubov e19f7c0357 Merge branch 'MDL-63670-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-07-04 10:58:00 +08:00
Ilya Tregubov 16bad766e7 Merge branch 'MDL-82315-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-04 10:37:51 +08:00
Ilya Tregubov 5bb5629bb3 Merge branch 'MDL-82024-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-07-04 09:51:20 +08:00
Sara Arjona e7dc124935 Merge branch 'MDL-82100-403' of https://github.com/danghieu1407/moodle into MOODLE_403_STABLE 2024-07-03 17:14:22 +02:00
Jun Pataleta c5a33da692 Merge branch 'MDL-31192-M403_colored-box-with-pre-tag-function-generates-a-warning' of https://github.com/ziegenberg/moodle into MOODLE_403_STABLE 2024-07-03 15:13:12 +08:00
Hieu Nguyen Dang 9c41c1e66f MDL-82100 Quiz\report: Show customised question numbers 2024-07-03 13:58:31 +07:00
Sara Arjona 36cd78e14b Merge branch 'MDL-82363-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-07-03 08:23:48 +02:00
lameze bf18f9f12e NOBUG: Increase file size to avoid random failures 2024-07-03 13:40:02 +08:00
Huong Nguyen c16225e5fb MDL-82363 Calendar: Responsiveness improvement for calendar block
Hide the month name if the screen is too small
2024-07-03 11:02:45 +07:00
djarrancotleanu 92564aca0a MDL-78388 course: Copy permissions when duplicating module 2024-07-03 13:50:22 +10:00
Paul Holden 1899587ff8 MDL-82360 courseformat: remove console upload error string debugging. 2024-07-02 15:55:39 +01:00
Paul Holden 6a1277cc52 MDL-77834 mod_feedback: consistent HTML decoding of answer data.
Restores functionality from 72629ee8c0 that went missing along the way.
2024-07-01 16:22:03 +01:00
Sara Arjona 3615bec113 Merge branch 'MDL-81959-403' of https://github.com/lucaboesch/moodle into MOODLE_403_STABLE 2024-07-01 16:15:55 +02:00
Paul Holden c8c9171455 MDL-81349 group: case-sensitive name validation when editing. 2024-07-01 09:41:51 +01:00
Huong Nguyen 0e30f51806 Merge branch 'MDL-79758_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-07-01 14:25:32 +07:00
Huong Nguyen 1dad92a893 Merge branch 'MDL-79971-403' of https://github.com/aanabit/moodle into MOODLE_403_STABLE 2024-07-01 14:16:59 +07:00
Huong Nguyen be28d88b29 Merge branch 'MDL-79796_403' of https://github.com/AnupamaSarjoshi/moodle into MOODLE_403_STABLE 2024-07-01 14:10:23 +07:00
Huong Nguyen 67719360a9 Merge branch 'MDL-73091-403' of https://github.com/laurentdavid/moodle into MOODLE_403_STABLE 2024-07-01 14:06:05 +07:00
Amaia Anabitarte 8c5cc0d32f MDL-79971 completion: Don't assume a completed activity is viewed 2024-06-28 10:16:59 +02:00
Luca Bösch 3e6584c714 MDL-81959 qtype_multianswer: Margin between checkboxes and text 2024-06-28 07:58:46 +02:00
Paul Holden 93643512c3 MDL-82315 backup: account for null course section sequence value. 2024-06-27 23:34:55 +01:00
Sara Arjona dc6dda1726 weekly release 4.3.5+ 2024-06-27 16:36:54 +02:00
Sara Arjona 293ad7857a Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-06-27 16:36:51 +02:00
Stephan Robotta c741492c38 MDL-79758 qbank: add filter in pagination links
Contains some minor tweaks by Tim Hunt <T.J.Hunt@open.ac.uk>.
2024-06-27 09:23:06 +01:00
Huong Nguyen b47c6c290d Merge branch 'MDL-62958-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-27 11:05:23 +07:00
Huong Nguyen 05711947e6 Merge branch 'MDL-82008-403' of https://github.com/lucaboesch/moodle into MOODLE_403_STABLE 2024-06-27 10:27:15 +07:00
Jun Pataleta f4a5b5e82d Merge branch 'MDL-79809-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-06-27 11:01:22 +08:00
Andrew Nicols e3743ea066 MDL-63670 core_message: Tests should not use another testcase as base 2024-06-27 09:01:43 +08:00
Tim Hunt 5f01161095 MDL-82308 forms: set a nice default size for multi-selects
This is a backport of MDL-81515.
2024-06-26 13:26:33 +01:00
Sara Arjona 1cdcee4020 Merge branch 'MDL-80625-403' of https://github.com/ssj365/moodle into MOODLE_403_STABLE 2024-06-26 12:15:02 +02:00
Sara Arjona 6ed88f797b Merge branch 'MDL-80344-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-26 12:11:22 +02:00
Huong Nguyen 399e4ead35 MDL-81991 core: Reload accessdata for dirty users in CLI mode 2024-06-26 16:27:59 +07:00
Huong Nguyen be48e8d19b MDL-78936 editor_tiny: Disable quickbars for small target
The quickbars selection toolbar is not displayed correctly
if the target element is too small. We will wait for it
to be fixed in the future before we re-enable it in Moodle
2024-06-26 10:18:19 +07:00
Ilya Tregubov 05081cc0b6 Merge branch 'MDL-82233-403' of https://github.com/sarjona/moodle into MOODLE_403_STABLE 2024-06-26 10:24:21 +08:00
Ilya Tregubov acfb658796 Merge branch 'MDL-82167-403' of https://github.com/ferranrecio/moodle into MOODLE_403_STABLE 2024-06-26 10:20:19 +08:00
Sara Arjona e099ffcf76 Merge branch 'MDL-79231-403' of https://github.com/davewoloszyn/moodle into MOODLE_403_STABLE 2024-06-25 16:13:08 +02:00
ferranrecio 0f405fd48e MDL-82167 core: fix reactive debug panel 2024-06-25 16:00:59 +02:00
Huong Nguyen 71046dbd93 Merge branch 'MDL-82277-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-25 13:54:12 +07:00
Wolfgang Reichert f860bf0a87 MDL-73091 core_badges: Avoid undefined variable notice in review
* Fix review method for award_criteria_courseset when courseset is empty
* Add unit tests for coverage of the award_criteria_courseset class

@co-authored jz-reichert@web.de
2024-06-25 08:47:28 +02:00
Huong Nguyen 41874ea307 Merge branch 'MDL-82200_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-06-25 09:14:01 +07:00
Huong Nguyen fcd49e4377 Merge branch 'MDL-80061-403' of https://github.com/ssj365/moodle into MOODLE_403_STABLE 2024-06-25 09:07:46 +07:00
Paul Holden f70abdc6f3 MDL-82024 format_topics: toggle un/highlight section icon correctly. 2024-06-24 19:48:05 +01:00
Paul Holden df5a0e6447 MDL-82277 mod_h5pactivity: less fragile error Behat step assertion.
Avoids frequent failures related to iframe resizing/timing.
2024-06-24 15:56:07 +01:00
Paul Holden c61ed0b47c MDL-62958 admin: ensure uploaded plugin directory structure present.
Including any empty directories, which would cause validation to
subsequently fail when they were skipped.

Co-authored-by: Leon Stringer <leon.stringer@ntlworld.com>
2024-06-24 12:47:40 +01:00
Huong Nguyen 524779dc8c MDL-79809 environment: Moodle 4.5 requirements 2024-06-24 09:37:24 +07:00
Huong Nguyen 10fbeaa3ed MDL-79809 environment: Add missing Moodle 4.4 requirements 2024-06-24 09:37:24 +07:00
Huong Nguyen bbcc3531e1 MDL-79809 environment: Add recommended custom check
Add support for custom environment checks to have a recommended
option in addition to required an optional.
2024-06-24 09:37:23 +07:00
Rossco Hellmans 8854212b09 MDL-68676 mod_assign: check accessallgroups in can_edit_submission()
In can_edit_submission() when the assign group mode is SEPARATEGROUPS
check if the user has the moodle/site:accessallgroups capability before
checking if they are a shared groupmember. Due to the teamsubmission
setting students might not be in a group but can still submit, which
means they are not returned in get_shared_group_members().
2024-06-22 13:42:34 +10:00
AMOS bot 4cf33f06ba Automatically generated installer lang files 2024-06-22 00:14:06 +00:00
Daniel Ziegenberg 93ca582a25 MDL-31192 core_webservice: do not render div inside span
`<span>` tags only permit "phrasing content" but `<div>` (and also the
`<ins>` tag) are flow content. So, switching to div all along.

Signed-off-by: Daniel Ziegenberg <daniel@ziegenberg.at>
2024-06-21 16:33:58 +02:00
Luca Bösch 9eaecc9336 MDL-82008 backup: Format 'Continue' and 'Cancel' button to have a margin 2024-06-21 09:37:06 +02:00
Martin Gauk ebac092c6e MDL-80345 core_lock: deal with hash collisions in postgres_lock_factory 2024-06-20 17:34:00 +02:00
Sara Arjona 91811a4bbc weekly release 4.3.5+ 2024-06-20 16:31:03 +02:00
Sara Arjona aea1811fdb Merge branch 'install_403_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_403_STABLE 2024-06-20 16:31:00 +02:00
David Woloszyn 7962b734aa MDL-79231 core_theme: Fix Tiny menu in fullscreen mode modals 2024-06-20 14:32:44 +10:00
David Woloszyn d4376c28f1 MDL-79231 mod_assign: Fix Tiny menu in fullscreen mode 2024-06-20 14:32:44 +10:00
Huong Nguyen e752a63a54 Merge branch 'MDL-78773-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-20 11:06:43 +07:00
Jun Pataleta 5a2d39ccb3 Merge branch 'MDL-82246-403' of https://github.com/andrewnicols/moodle into MOODLE_403_STABLE 2024-06-20 11:41:41 +08:00
Huong Nguyen eded187633 Merge branch 'MDL-82202-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-20 10:21:42 +07:00
Andrew Nicols 1407ac2079 MDL-82246 tiny_recordrtc: Correct string name for insecure alert title 2024-06-20 10:58:34 +08:00
Huong Nguyen e0836aa36d Merge branch 'MDL-81761-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-20 09:55:06 +07:00
Huong Nguyen 495620cd22 Merge branch 'MDL-82169-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-20 09:20:06 +07:00
Huong Nguyen 73ba9560ea Merge branch 'MDL-77665-403-behat-fix' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-06-20 08:54:52 +07:00
lameze cce376b29b MDL-77665 behat: use different steps to delete user 2024-06-20 09:11:22 +08:00
AMOS bot 5db3e2bae6 Automatically generated installer lang files 2024-06-20 00:16:21 +00:00
Sara Arjona 490dfa0b21 Merge branch 'MDL-81857-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-19 15:53:08 +02:00
Sara Arjona b905dc4e0a Merge branch 'MDL-81730-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-19 13:31:44 +02:00
meirzamoodle b25713d6fe MDL-75864 cache: Change key prefix in cache_cron_task
Currently, the cache_cron_task is set to look for 'sess_' as a key prefix,
which is not used in any code. As a result, sessions that have exceeded the timeout are never deleted.

The proposed patch involves changing the prefix to the LASTACCESS key prefix and
fixing the return value of get_many in the Redis cache so that it can return the required keys.

Co-authored-by: Renaud Lemaire <rlemaire@cblue.be>
2024-06-19 13:43:27 +07:00
Sara Arjona 15de651960 Merge branch 'MDL-77665-403' of https://github.com/laurentdavid/moodle into MOODLE_403_STABLE 2024-06-19 07:35:30 +02:00
Huong Nguyen b167c9cc11 Merge branch 'MDL-81249-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-06-19 09:18:50 +07:00
Andrew Nicols b263eac8ca Merge branch 'MDL-81644-403-new' of https://github.com/meirzamoodle/moodle into MOODLE_403_STABLE 2024-06-18 23:26:10 +08:00
Andrew Nicols f7836e1c04 Merge branch 'MDL-81431-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-06-18 22:51:06 +08:00
Andrew Nicols b3716d7a25 Merge branch 'MDL-81739-403' of https://github.com/davewoloszyn/moodle into MOODLE_403_STABLE 2024-06-18 22:39:31 +08:00
Sara Arjona 2056d3d629 MDL-82233 badges: Display awarded users only when it applies
The message with the number of uses who have awarded a badge
were displayed always (even when the badge was disabled).
2024-06-18 16:06:41 +02:00
Angelia Dela Cruz 2bae7d4dc2 MDL-81249 gradingform: Behat test that grades are retained 2024-06-18 18:32:29 +08:00
Angelia Dela Cruz 166de7ade5 MDL-81249 gradingform: Enhance Behat test for deleting marking guide 2024-06-18 17:46:38 +08:00
Huong Nguyen d55c386e8e Merge branch 'MDL-82148_403' of https://github.com/stronk7/moodle into MOODLE_403_STABLE 2024-06-18 16:27:58 +07:00
Shamim Rezaie 59022b4e06 Merge branch 'mdl-78080-403-split' of https://github.com/james-cnz/moodle into MOODLE_403_STABLE 2024-06-18 16:06:34 +10:00
lameze 3aa5d3040b MDL-81431 behat: set grade item checkboxes one at the time 2024-06-18 13:58:29 +08:00
Paul Holden da4e0701ee MDL-82202 course: correct last access report entity column callback.
Ensure it works when being aggregated.
2024-06-17 14:27:15 +01:00
Laurent David dd27138387 MDL-77665 mod_h5pactivity: Improve generator package upload
* Allow the specification of the username in order to set the owner
of the H5P file package when creating a new H5P instance.
2024-06-17 06:31:59 +02:00
Laurent David a843986e1d MDL-77665 core_h5p: Allow deployment if user has been deleted
* If user has been deleted we consider that the content can be deployed
by a user who can deploy other packages
* Add behat test to cover for this use case
* Fix the content bank generator as it was failing to upload the content
as the given user
2024-06-17 06:31:59 +02:00
James C 21c542e3a8 MDL-78080 course: Duplicate section: Duplicate by section id, not num 2024-06-17 12:25:16 +12:00
James C 20e3829749 MDL-78080 course: Duplicate section: No duplicate option for section 0 2024-06-17 12:25:16 +12:00
James C c11eab4121 MDL-78080 course: Duplicate section: Don't copy deleted activities 2024-06-17 12:25:16 +12:00
James C 181f8e7813 MDL-78080 course: Duplicate section: Copy section summary files 2024-06-17 12:24:42 +12:00
James C 1deaaf1964 MDL-78080 course: Duplicate section: Copy custom section options 2024-06-17 12:19:31 +12:00
James C 2e869d5e8b MDL-78080 course: Duplicate section: Fix course_update_section params 2024-06-17 12:19:01 +12:00
Eloy Lafuente (stronk7) e812185a8e MDL-82148 phpunit: Remove all cases of multiple @coversDefaultClass
Only one by class is allowed (to be used as shortcut exclusively).
2024-06-14 16:05:26 +02:00
Tim Hunt eb090d8f10 MDL-82200 inplace editable: fix background of the help text 2024-06-14 13:23:21 +01:00
Anupama Sarjoshi 35f015b33d MDL-79796 quiz: Preview icon should be visible in question bank pop-up 2024-06-14 11:46:56 +01:00
Ilya Tregubov a585bda18f weekly release 4.3.5+ 2024-06-14 08:57:07 +08:00
Eric Merrill 0d0a3381c3 MDL-82192 scorm: Correct field names for AICC ExitAu 2024-06-13 18:38:57 -04:00
Jun Pataleta 3b97ae1814 Merge branch 'MDL-81287-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-13 12:03:13 +08:00
Jun Pataleta 9c6571471f Merge branch 'MDL-82178_403' of https://github.com/timhunt/moodle into MOODLE_403_STABLE 2024-06-13 12:00:43 +08:00
Huong Nguyen cd7f4b6126 Merge branch 'MDL-81577-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-13 10:56:15 +07:00
Huong Nguyen 1da88d59c8 Merge branch 'MDL-82184-dbcollation-comment-403' of https://github.com/leonstr/moodle into MOODLE_403_STABLE 2024-06-13 10:20:05 +07:00
Huong Nguyen 18b872dea6 Merge branch 'MDL-81781-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-13 10:13:19 +07:00
Huong Nguyen cf54f312c7 Merge branch 'MDL-69514-403' of https://github.com/pedrojordao/moodle into MOODLE_403_STABLE 2024-06-13 09:54:32 +07:00
Huong Nguyen 57d3bddedf Merge branch 'MDL-82155-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-13 09:03:36 +07:00
Shamiso.Jaravaza 55b56767d6 MDL-80061 mod_bigbluebuttonbn: Change filter field
* Change dismissed recording time filter from timecreated to timemodified
2024-06-12 13:51:26 -06:00
Leon Stringer 5f9d59a527 MDL-82184 database: Revise dbcollation comment 2024-06-12 18:16:37 +01:00
Tim Hunt fbd10311b3 MDL-82178 quiz graded notification: fix capability check
Also improve the scheduled task logging
2024-06-12 12:41:24 +01:00
Huong Nguyen 1780506eb3 Merge branch 'MDL-81332-403' of https://github.com/andelacruz/moodle into MOODLE_403_STABLE 2024-06-12 13:16:04 +07:00
Jun Pataleta f8f8dee642 Merge branch 'MDL-81355-403' of https://github.com/lameze/moodle into MOODLE_403_STABLE 2024-06-12 10:38:01 +08:00
Michael Aherne 332a467776 MDL-81355 phpdoc: Fix incorrect phpdocs on block_base. 2024-06-12 10:32:51 +08:00
Paul Holden ecb70f2924 MDL-82169 user: remove access to non-existent $options array. 2024-06-11 21:26:07 +01:00
Ilya Tregubov a70030127e Merge branch 'MDL-81510-403' of https://github.com/laurentdavid/moodle into MOODLE_403_STABLE 2024-06-11 19:00:02 +08:00
Laurent David 937c1200a3 MDL-81510 core_courseformat: Fix activity highlight in index
* When directly accessing the module with the #module-xxx anchor
we should highlight the module as the current page item.
2024-06-11 12:48:58 +02:00
Huong Nguyen 1ce27d703f MDL-68540 tool_usertours: Remove hideif workaround
We don't need to use the group element to use hideif
for text editor element anymore
2024-06-11 15:33:43 +07:00
Huong Nguyen b21b6214e1 Merge branch 'MDL-68540-403' of https://github.com/davewoloszyn/moodle into MOODLE_403_STABLE 2024-06-11 15:33:17 +07:00
Angelia Dela Cruz 7d94489bcb MDL-81332 core_course: Behat test for grade and activity reports display 2024-06-11 16:30:25 +08:00
Jun Pataleta eb851bbb53 Merge branch 'MDL-81428-403' of https://github.com/HuongNV13/moodle into MOODLE_403_STABLE 2024-06-11 13:41:41 +08:00
David Woloszyn 945ae4127d MDL-68540 form: Correctly target editors in node tree
This fix solves the hideIf and disabledIf form conditions that were not
correctly targetting the editor due to a name attribute mismatch.
2024-06-11 13:06:24 +10:00
Paul Holden 8ff873452f MDL-82155 core: define/correct third party library names. 2024-06-10 19:53:14 +01:00
Shamiso.Jaravaza 83fefe7f72 MDL-80625 mod_bigbluebuttonbn: Fix param name 2024-06-10 10:12:12 -06:00
Sara Arjona 9a47d8f32c Merge branch 'MDL-81949-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-10 16:46:43 +02:00
Sara Arjona 5a52d16d53 Merge branch 'MDL-81678-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE 2024-06-10 16:39:22 +02:00
Pedro Jordao 1ecaf21c7c MDL-69514 Core: Close popover when modal is closed
Currently in Firefox, if we opened a popover that was inside a modal
and closed the modal by pressing the ESC key, the popover remained on
the screen. With this change, we will ensure that popovers are closed
when the modal is closed.
2024-06-10 10:49:06 -03:00
Sara Arjona ebfcdc6563 Merge branch 'MDL-70972-MOODLE_403_STABLE' of https://github.com/PhMemmel/moodle into MOODLE_403_STABLE 2024-06-10 12:33:32 +02:00
Huong Nguyen 442a0b4edd MDL-81428 theme_boost: Match .disabled opacity with .text-muted 2024-06-10 17:10:18 +07:00
Huong Nguyen 49bab9140b MDL-81428 core: Display the correct status for the contact request 2024-06-10 17:10:18 +07:00
Ilya Tregubov cb6096faca Merge branch 'MDL-81510-403' of https://github.com/laurentdavid/moodle into MOODLE_403_STABLE 2024-06-10 13:32:17 +08:00
Paul Holden e7381b48f2 MDL-81949 tool_replace: prompt user for unrecognised CLI parameters. 2024-06-07 11:41:08 +01:00
Paul Holden ea52af0c77 MDL-81678 enrol: don't escape course name in welcome message. 2024-06-07 11:39:48 +01:00
Paul Holden 612ac0766a MDL-78773 report_stats: improve display of mode selection element.
Make use of existing theme selectors for navigation elements to style.
2024-06-07 11:34:31 +01:00
Paul Holden 2a72cf032d MDL-81781 report_log: escape description selectively on display/export.
Per cd85e090f3 all content was escaped, however we should only do that
when displaying the value in browser or exporting to file format which
supports HTML.
2024-06-07 11:31:02 +01:00
Paul Holden daebafdb2d MDL-81781 dataformat: public helper method to get writer instance. 2024-06-07 11:31:02 +01:00
Laurent David 4ab6a8552f MDL-81510 core_courseformat: Do not reset the scroll position
* Revert the change made in MDL-75762 which would wait and change
  course index selection depending on the actual scroll position
2024-06-07 09:40:21 +02:00
Laurent David c6f9ae9b4f MDL-81510 core_courseformat: Expand course section to show activity
* When a course activity is specified via an anchor in the URL we
should expand the course content containing the activity
* When we point to a specific activity via an anchor in the URL we should
expand the course index (section) surrounding the actitity.
2024-06-07 09:40:21 +02:00
Meirza 27dbdbe702 MDL-81644 calendar: The behaviour of event dates in the block calendar
There is a difference in the behaviour of the calendar block when it is on the calendar page and when it is not.
On the calendar page, when the user clicks on the date or link next/previous month or day name in the calendar block,
it will have the effect of changing the URL, which should not happen.

The patch also includes hiding popover after the user clicks the day number. When the user clicks on the date or
is focused on the date and then presses enter on the keyboard, the popover does not automatically close.
To fix this, I added an event type, "click", to be attached to the hidePopover function and added conditioning to
the target element when there was a "click" event.

An additional step was added to the Behat calendar for the click event to ease the testing process.

For the popover, I set the "animation" to false to avoid the random Behat failure caused by the slow animation.
2024-06-07 14:31:10 +07:00
Paul Holden 7c7ebb074e MDL-81857 user: don't check whether address is an identity field.
It can never be selected as one, so the previous comparison could
never pass.
2024-06-06 08:58:49 +01:00
David Woloszyn 5446cc3dcd MDL-81739 tiny_noautolink: Remove URL checking when preventing auto-link 2024-06-06 15:05:05 +10:00
Paul Holden f537f9c067 MDL-80344 calendar: correct no subscriptions language string use.
Ensure expected parameters are present; avoid string concatenation.
2024-06-05 15:52:23 +01:00
Philipp Memmel 8c7892ceff MDL-70972 format_singleactivity: Apply new behavior to behat test 2024-06-04 06:36:53 +00:00
Philipp Memmel 966f3548ae MDL-70972 format_singleactivity: Show activities when creating course
Co-authored-by: Laurent David <lmedavid@gmail.com>
2024-06-04 06:36:52 +00:00
Paul Holden 9dbfe16744 MDL-81577 mod: correct arguments when formatting text for RSS. 2024-05-30 19:17:32 +01:00
Paul Holden d5be854a11 MDL-81730 assignsubmission_file: deterministic submission file order. 2024-05-20 20:16:24 +01:00
Paul Holden 627fe4cfe8 MDL-81761 gradingform_guide: remove duplicate click of frequent comment. 2024-05-20 17:40:56 +01:00
Paul Holden 88ea564e66 MDL-81287 mod_forum: observe default discussion paging value. 2024-05-15 13:23:23 +01:00
Marina Glancy 09d7b78fee MDL-80907 various: fixes to incorrect column selectors in behat 2024-05-07 19:31:23 +01:00
Marina Glancy 59e774be9a MDL-80907 behat: be more precise in selecting table rows 2024-05-07 19:31:16 +01:00
3049 changed files with 29622 additions and 27013 deletions
+3
View File
@@ -1,3 +1,6 @@
**/yui/build/** -diff
**/amd/build/** -diff
lib/dml/oci_native_moodle_package.sql text eol=lf
**.js.map -diff
**-min.js -diff
**.min.js -diff
+1 -1
View File
@@ -1,2 +1,2 @@
# Primary donations pages.
custom: ["https://moodle.com/donations/", moodle.org]
custom: ["https://moodle.com/donations/", "https://fund.moodle.org"]
+1 -1
View File
@@ -3,7 +3,7 @@ name: Core
on:
push:
branches-ignore:
- master
- main
- MOODLE_[0-9]+_STABLE
tags-ignore:
- v[0-9]+.[0-9]+.[0-9]+*
+23
View File
@@ -0,0 +1,23 @@
name: Web Installer Testing
on:
workflow_dispatch:
jobs:
InstallationTest:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
php: [8.1, 8.3]
steps:
- name: Construct repository URL
run: echo "REPOSITORY_URL=${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}" >> $GITHUB_ENV
shell: bash
- uses: moodlehq/moodle-webinstaller-test@main
with:
repository: ${{ env.REPOSITORY_URL }}
branch: ${{ github.ref_name }}
php: ${{ matrix.php }}
+1 -1
View File
@@ -1 +1 @@
lts/iron
lts/jod
@@ -500,4 +500,15 @@ abstract class plugin_management_table extends flexible_table implements dynamic
protected function supports_ordering(): bool {
return $this->plugininfoclass::plugintype_supports_ordering();
}
/**
* Check if the user has the capability to access this table.
*
* Default implementation for plugin management tables is to require 'moodle/site:config' capability
*
* @return bool Return true if capability check passed.
*/
public function has_capability(): bool {
return has_capability('moodle/site:config', $this->get_context());
}
}
+3 -7
View File
@@ -177,6 +177,7 @@ $CFG->admin = array_pop($parts);
ini_set('include_path', $CFG->libdir.'/pear' . PATH_SEPARATOR . ini_get('include_path'));
require_once($CFG->libdir.'/classes/component.php');
require_once($CFG->libdir.'/classes/text.php');
require_once($CFG->libdir.'/classes/string_manager.php');
require_once($CFG->libdir.'/classes/string_manager_install.php');
@@ -192,13 +193,8 @@ require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/componentlib.class.php');
require_once($CFG->dirroot.'/cache/lib.php');
// Register our classloader, in theory somebody might want to replace it to load other hacked core classes.
// Required because the database checks below lead to session interaction which is going to lead us to requiring autoloaded classes.
if (defined('COMPONENT_CLASSLOADER')) {
spl_autoload_register(COMPONENT_CLASSLOADER);
} else {
spl_autoload_register('core_component::classloader');
}
// Register our classloader.
\core_component::register_autoloader();
require($CFG->dirroot.'/version.php');
$CFG->target_release = $release;
+389
View File
@@ -4504,6 +4504,395 @@
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_oracle_usage" level="optional">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_async_backup" level="recommended">
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="4.5" requires="4.1.2">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="10.6.7" />
<VENDOR name="mysql" version="8.0" />
<VENDOR name="postgres" version="13" />
<VENDOR name="mssql" version="14.0" />
<VENDOR name="oracle" version="19" />
</DATABASE>
<PHP version="8.1.0" level="required">
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="required">
<FEEDBACK>
<ON_ERROR message="mbstringrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
<PHP_EXTENSION name="sodium" level="required"/>
<PHP_EXTENSION name="exif" level="optional"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="required">
<FEEDBACK>
<ON_ERROR message="sixtyfourbitsrequired" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_max_input_vars" level="optional">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_admin_dir_usage" level="optional">
<FEEDBACK>
<ON_CHECK message="iscustomadminwarnings" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_xmlrpc_usage" level="optional">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mod_assignment" level="required">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_db_prefix_length" level="required">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_oracle_usage" level="optional">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_async_backup" level="recommended">
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="5.0" requires="4.2.3">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="10.11.0" />
<VENDOR name="mysql" version="8.4" />
<VENDOR name="postgres" version="14" />
<VENDOR name="mssql" version="14.0" />
</DATABASE>
<PHP version="8.2.0" level="required">
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="required">
<FEEDBACK>
<ON_ERROR message="mbstringrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
<PHP_EXTENSION name="sodium" level="required"/>
<PHP_EXTENSION name="exif" level="optional"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="required">
<FEEDBACK>
<ON_ERROR message="sixtyfourbitsrequired" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_max_input_vars" level="optional">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_admin_dir_usage" level="optional">
<FEEDBACK>
<ON_CHECK message="iscustomadminwarnings" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_xmlrpc_usage" level="optional">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mod_assignment" level="required">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_db_prefix_length" level="required">
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_async_backup" level="recommended">
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
</COMPATIBILITY_MATRIX>
+2 -2
View File
@@ -25,7 +25,7 @@ namespace core_adminpresets;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass core_adminpresets_generator
*/
class generator_test extends \advanced_testcase {
final class generator_test extends \advanced_testcase {
/**
* Test the behaviour of create_preset() method.
@@ -180,7 +180,7 @@ class generator_test extends \advanced_testcase {
*
* @return array
*/
public function create_preset_provider(): array {
public static function create_preset_provider(): array {
return [
'Default values' => [
],
+5 -5
View File
@@ -25,7 +25,7 @@ namespace core_adminpresets;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass helper
*/
class helper_test extends \advanced_testcase {
final class helper_test extends \advanced_testcase {
/**
* Test the behaviour of create_preset() method.
@@ -84,7 +84,7 @@ class helper_test extends \advanced_testcase {
*
* @return array
*/
public function create_preset_provider(): array {
public static function create_preset_provider(): array {
return [
'Default values' => [
],
@@ -177,7 +177,7 @@ class helper_test extends \advanced_testcase {
*
* @return array
*/
public function add_item_provider(): array {
public static function add_item_provider(): array {
return [
'Setting without plugin' => [
'name' => 'settingname',
@@ -239,7 +239,7 @@ class helper_test extends \advanced_testcase {
*
* @return array
*/
public function add_plugin_provider(): array {
public static function add_plugin_provider(): array {
return [
'Plugin: enabled (using int)' => [
'type' => 'plugintype',
@@ -321,7 +321,7 @@ class helper_test extends \advanced_testcase {
*
* @return array
*/
public function change_default_preset_provider(): array {
public static function change_default_preset_provider(): array {
return [
'Starter preset' => [
'preset' => 'starter',
@@ -25,7 +25,7 @@ namespace core_adminpresets\local\setting;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \core_adminpresets\local\setting\adminpresets_admin_setting_bloglevel
*/
class adminpresets_admin_setting_bloglevel_test extends \advanced_testcase {
final class adminpresets_admin_setting_bloglevel_test extends \advanced_testcase {
/**
* Test the behaviour of save_value() method.
@@ -72,7 +72,7 @@ class adminpresets_admin_setting_bloglevel_test extends \advanced_testcase {
*
* @return array
*/
public function save_value_provider(): array {
public static function save_value_provider(): array {
return [
'Save the bloglevel and set blog_menu block visibility to true' => [
'setttingvalue' => BLOG_USER_LEVEL,
@@ -25,7 +25,7 @@ namespace core_adminpresets\local\setting;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \core_adminpresets\local\setting\adminpresets_admin_setting_sitesettext
*/
class adminpresets_admin_setting_sitesettext_test extends \advanced_testcase {
final class adminpresets_admin_setting_sitesettext_test extends \advanced_testcase {
/**
* Test the behaviour of save_value() method.
@@ -66,7 +66,7 @@ class adminpresets_admin_setting_sitesettext_test extends \advanced_testcase {
*
* @return array
*/
public function save_value_provider(): array {
public static function save_value_provider(): array {
return [
'Fullname: different value' => [
'settingname' => 'fullname',
@@ -25,7 +25,7 @@ namespace core_adminpresets\local\setting;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \core_adminpresets\local\setting\adminpresets_setting
*/
class adminpresets_setting_test extends \advanced_testcase {
final class adminpresets_setting_test extends \advanced_testcase {
/**
* Test the behaviour of save_value() method.
@@ -77,7 +77,7 @@ class adminpresets_setting_test extends \advanced_testcase {
*
* @return array
*/
public function save_value_provider(): array {
public static function save_value_provider(): array {
return [
'Core setting with the same value is not saved' => [
'category' => 'optionalsubsystems',
@@ -167,7 +167,7 @@ class adminpresets_setting_test extends \advanced_testcase {
*
* @return array
*/
public function save_attributes_values_provider(): array {
public static function save_attributes_values_provider(): array {
return [
'Plugin setting with the same value is not saved' => [
'category' => 'modsettinglesson',
+3 -3
View File
@@ -28,7 +28,7 @@ use stdClass;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \core_adminpresets\manager
*/
class manager_test extends \advanced_testcase {
final class manager_test extends \advanced_testcase {
/**
* Include required libraries.
*/
@@ -367,7 +367,7 @@ class manager_test extends \advanced_testcase {
*
* @return array
*/
public function export_preset_provider(): array {
public static function export_preset_provider(): array {
return [
'Export settings and plugins, excluding sensible' => [
'includesensible' => false,
@@ -530,7 +530,7 @@ class manager_test extends \advanced_testcase {
*
* @return array
*/
public function import_preset_provider(): array {
public static function import_preset_provider(): array {
return [
'Import settings from an empty file' => [
'filecontents' => '',
@@ -30,7 +30,7 @@ use core_privacy\tests\provider_testcase;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \core_adminpresets\privacy\provider
*/
class privacy_provider_test extends provider_testcase {
final class privacy_provider_test extends provider_testcase {
/**
* Test for provider::get_metadata().
+7 -4
View File
@@ -874,8 +874,8 @@ class core_admin_renderer extends plugin_renderer_base {
protected function mobile_configuration_warning($mobileconfigured) {
$output = '';
if (!$mobileconfigured) {
$settingslink = new moodle_url('/admin/settings.php', ['section' => 'mobilesettings']);
$configurebutton = $this->single_button($settingslink, get_string('enablemobilewebservice', 'admin'));
$settingslink = new moodle_url('/admin/search.php', ['query' => 'enablemobilewebservice']);
$configurebutton = $this->single_button($settingslink, get_string('enablemobilewebservice', 'admin'), 'get');
$output .= $this->warning(get_string('mobilenotconfiguredwarning', 'admin') . '&nbsp;' . $configurebutton);
}
@@ -2051,8 +2051,10 @@ class core_admin_renderer extends plugin_renderer_base {
// We are checking installed & enabled things
if ($environment_result->getLevel() == 'required') {
$stringtouse = 'environmentrequirecustomcheck';
} else {
} else if ($environment_result->getLevel() == 'optional') {
$stringtouse = 'environmentrecommendcustomcheck';
} else {
$stringtouse = 'environmentshouldfixcustomcheck';
}
} else if ($environment_result->getPart() == 'php_setting') {
@@ -2083,7 +2085,8 @@ class core_admin_renderer extends plugin_renderer_base {
if ($status) { //Handle ok result (ok)
$status = get_string('statusok');
} else {
if ($environment_result->getLevel() == 'optional') {//Handle check result (warning)
// Handle check result (warning).
if (in_array($environment_result->getLevel(), ['optional', 'recommended'])) {
$status = get_string('check');
$warningline = true;
} else { //Handle error result (error)
+2 -2
View File
@@ -26,8 +26,8 @@ use core_role_preset;
* @copyright 2013 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class preset_test extends \advanced_testcase {
public function test_xml() {
final class preset_test extends \advanced_testcase {
public function test_xml(): void {
global $DB;
$roles = $DB->get_records('role');
+1 -1
View File
@@ -40,7 +40,7 @@ use core_privacy\local\request\approved_userlist;
* @copyright 2018 Carlos Escobedo <carlos@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider_test extends provider_testcase {
final class provider_test extends provider_testcase {
/**
* Test to check export_user_preferences.
* returns user preferences data.
+3 -1
View File
@@ -152,7 +152,9 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$sensiblesettingsdefault .= 'server_password@@search_solr, ssl_keypassword@@search_solr, ';
$sensiblesettingsdefault .= 'alternateserver_password@@search_solr, alternatessl_keypassword@@search_solr, ';
$sensiblesettingsdefault .= 'test_password@@cachestore_redis, password@@mlbackend_python, ';
$sensiblesettingsdefault .= 'badges_badgesalt@@none, calendar_exportsalt@@none';
$sensiblesettingsdefault .= 'badges_badgesalt@@none, calendar_exportsalt@@none, ';
$sensiblesettingsdefault .= 'bigbluebuttonbn_shared_secret@@none, apikey@@tiny_premium, ';
$sensiblesettingsdefault .= 'matrixaccesstoken@@communication_matrix';
$temp->add(new admin_setting_configtextarea('adminpresets/sensiblesettings',
get_string('sensiblesettings', 'core_adminpresets'),
get_string('sensiblesettingstext', 'core_adminpresets'),
@@ -38,6 +38,6 @@
}
}}
<div class="form-checkbox defaultsnext">
<input type="hidden" name="{{name}}" value="{{no}}">
{{^readonly}}<input type="hidden" name="{{name}}" value="{{no}}">{{/readonly}}
<input {{#readonly}}disabled{{/readonly}} type="checkbox" name="{{name}}" value="{{value}}" id="{{id}}" {{#checked}}checked{{/checked}}>
</div>
@@ -35,7 +35,7 @@
}
}}
<div class="form-multicheckbox">
<input type="hidden" name="{{name}}[xxxxx]" value="1">
{{^readonly}}<input type="hidden" name="{{name}}[xxxxx]" value="1">{{/readonly}}
{{#hasoptions}}
<ul>
{{#options}}
@@ -40,7 +40,7 @@
Setting configmultiselect.
}}
<div class="form-select">
<input type="hidden" name="{{name}}[xxxxx]" value="1">
{{^readonly}}<input type="hidden" name="{{name}}[xxxxx]" value="1">{{/readonly}}
<select {{#readonly}}disabled{{/readonly}} id="{{id}}" name="{{name}}[]" size="{{size}}" class="form-control" multiple>
{{#options}}
<option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
@@ -59,7 +59,7 @@
Setting configmultiselect with optgroup support.
}}
<div class="form-select">
<input type="hidden" name="{{name}}[xxxxx]" value="1">
{{^readonly}}<input type="hidden" name="{{name}}[xxxxx]" value="1">{{/readonly}}
<select {{#readonly}}disabled{{/readonly}} id="{{id}}" name="{{name}}[]" size="{{size}}" class="form-control" multiple>
{{#options}}
<option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
+3 -3
View File
@@ -18,7 +18,7 @@ Feature: An administrator can browse user accounts
When I navigate to "Users > Accounts > Browse list of users" in site administration
# Name field always present, email field is default for showidentity.
Then the following should exist in the "users" table:
| First name / Last name | Email address |
| First name | Email address |
| User One | one@example.com |
| User Two | two@example.com |
# Should not see other identity fields or non-default name fields.
@@ -34,7 +34,7 @@ Feature: An administrator can browse user accounts
| alternativefullnameformat | firstnamephonetic lastname |
When I navigate to "Users > Accounts > Browse list of users" in site administration
Then the following should exist in the "users" table:
| First name - phonetic / Last name | Email address |
| First name - phonetic | Email address |
| Yewzer One | one@example.com |
| Yoozare Two | two@example.com |
@@ -43,7 +43,7 @@ Feature: An administrator can browse user accounts
| showuseridentity | department,profile_field_frog |
When I navigate to "Users > Accounts > Browse list of users" in site administration
Then the following should exist in the "users" table:
| First name / Last name | Favourite frog | Department |
| First name | Favourite frog | Department |
| User One | Kermit | Attack |
| User Two | Tree | Defence |
And I should not see "Email address" in the "table" "css_element"
@@ -0,0 +1,40 @@
@core @core_admin
Feature: Plugins overview page
In order to manage plugin and settings
As an admin
I can access the plugins overview page
Background:
Given I am logged in as "admin"
And I navigate to "Plugins > Plugins overview" in site administration
Scenario: An administrator can view plugins overview page
Then "Plugins overview" "text" should exist
And "Check for available updates" "button" should exist
And "All plugins" "link" should exist
And "Additional plugins" "link" should exist
Scenario: An administrator can access list of activities when activity modules cog icon is pressed
When I click on "Settings" "link" in the "Activity modules" "table_row"
Then "Activities" "text" should exist
And "Manage activities" "text" should exist in the ".breadcrumb" "css_element"
And "Activity modules" "link" should exist in the ".breadcrumb" "css_element"
Scenario: An administrator can access plugin settings
When I click on "Settings" "link" in the "Assignment" "table_row"
Then "Assignment settings" "text" should exist
And "Assignment settings" "text" should exist in the ".breadcrumb" "css_element"
And "Assignment" "link" should exist in the ".breadcrumb" "css_element"
And "Activity modules" "link" should exist in the ".breadcrumb" "css_element"
Scenario: Plugins with dependencies cannot be uninstalled
When I navigate to "Plugins > Plugins overview" in site administration
Then "Uninstall" "link" should not exist in the "Database" "table_row"
And "Required by: filter_data" "text" should exist in the "Database" "table_row"
Scenario: Cancelling plugin uninstall does not uninstall the selected plugin
When I click on "Uninstall" "link" in the "Assignment" "table_row"
Then "Uninstalling Assignment" "text" should exist
And "You are about to uninstall the plugin Assignment. This will completely delete everything in the database associated with this plugin, including its configuration, log records, user files managed by the plugin etc. There is no way back and Moodle itself does not create any recovery backup. Are you SURE you want to continue?" "text" should exist
And I click on "Cancel" "button"
And "Uninstall" "link" should exist in the "Assignment" "table_row"
-22
View File
@@ -48,25 +48,3 @@ Feature: View task logs report and use its filters
| operator | shouldornotsee |
| Less than | should not see |
| Greater than | should see |
@javascript
Scenario: Reset task log filters
Given I log in as "admin"
And I change window size to "large"
And I navigate to "Server > Tasks > Task logs" in site administration
When I click on "Filters" "button"
And I set the following fields in the "Result" "core_reportbuilder > Filter" to these values:
| Result operator | Is equal to |
| Result value | Fail |
And I click on "Apply" "button" in the "[data-region='report-filters']" "css_element"
Then I should see "Filters applied"
And I should see "Filters (1)" in the "#dropdownFiltersButton" "css_element"
And I should see "Nothing to display"
And I click on "Reset all" "button" in the "[data-region='report-filters']" "css_element"
And I should see "Filters reset"
And I should not see "Filters (1)" in the "#dropdownFiltersButton" "css_element"
And I should see "Filters" in the "#dropdownFiltersButton" "css_element"
And "[data-region='report-filters']" "css_element" should be visible
And the following fields in the "Result" "core_reportbuilder > Filter" match these values:
| Result operator | Is any value |
And I should not see "Nothing to display"
+2 -2
View File
@@ -31,7 +31,7 @@ require_once($CFG->dirroot . '/webservice/tests/helpers.php');
* @copyright 2023 Andrew Lyons <andrew@nicols.co.uk>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class set_block_protection_test extends \externallib_advanced_testcase {
final class set_block_protection_test extends \externallib_advanced_testcase {
/**
* Test execute method with no login.
*/
@@ -85,7 +85,7 @@ class set_block_protection_test extends \externallib_advanced_testcase {
*
* @return array
*/
public function execute_provider(): array {
public static function execute_provider(): array {
return [
[
'block_login',
+3 -3
View File
@@ -33,7 +33,7 @@ require_once($CFG->dirroot . '/webservice/tests/helpers.php');
* @copyright 2023 Andrew Lyons <andrew@nicols.co.uk>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class set_plugin_order_test extends \externallib_advanced_testcase {
final class set_plugin_order_test extends \externallib_advanced_testcase {
/**
* Text execute method for editor plugins, which support ordering.
*
@@ -72,7 +72,7 @@ class set_plugin_order_test extends \externallib_advanced_testcase {
*
* @return array
*/
public function execute_editor_provider(): array {
public static function execute_editor_provider(): array {
$pluginmanager = \core_plugin_manager::instance();
$allplugins = array_keys($pluginmanager->get_plugins_of_type('editor'));
@@ -142,7 +142,7 @@ class set_plugin_order_test extends \externallib_advanced_testcase {
$this->assertIsArray(set_plugin_order::execute($plugin, 1));
}
public function execute_non_orderable_provider(): array {
public static function execute_non_orderable_provider(): array {
return [
// Activities do not support ordering.
['mod_assign'],
+2 -2
View File
@@ -31,7 +31,7 @@ require_once($CFG->dirroot . '/webservice/tests/helpers.php');
* @copyright 2023 Andrew Lyons <andrew@nicols.co.uk>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class set_plugin_state_test extends \externallib_advanced_testcase {
final class set_plugin_state_test extends \externallib_advanced_testcase {
/**
* Text execute method.
*
@@ -66,7 +66,7 @@ class set_plugin_state_test extends \externallib_advanced_testcase {
*
* @return array
*/
public function execute_standard_provider(): array {
public static function execute_standard_provider(): array {
$generatetestsfor = function (string $plugin): array {
return [
[
@@ -20,14 +20,9 @@ namespace core_admin\reportbuilder\datasource;
use core\task\database_logger;
use core_reportbuilder_generator;
use core_reportbuilder_testcase;
use core_reportbuilder\local\filters\{boolean_select, date, duration, number, select, text};
use core_reportbuilder\task\send_schedules;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once("{$CFG->dirroot}/reportbuilder/tests/helpers.php");
use core_reportbuilder\tests\core_reportbuilder_testcase;
/**
* Unit tests for task logs datasource
@@ -37,7 +32,7 @@ require_once("{$CFG->dirroot}/reportbuilder/tests/helpers.php");
* @copyright 2022 Paul Holden <paulh@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class task_logs_test extends core_reportbuilder_testcase {
final class task_logs_test extends core_reportbuilder_testcase {
/**
* Test default datasource
@@ -110,7 +105,7 @@ class task_logs_test extends core_reportbuilder_testcase {
*
* @return array[]
*/
public function datasource_filters_provider(): array {
public static function datasource_filters_provider(): array {
return [
'Filter name' => ['task_log:name', [
'task_log:name_values' => [send_schedules::class],
@@ -5,16 +5,18 @@ Feature: I can download a preset
| name |
| Custom preset |
@javascript
Scenario: Custom preset settings can be downloaded
Given I log in as "admin"
And I navigate to "Site admin presets" in site administration
When I open the action menu in "Custom preset" "table_row"
Then following "Download" "link" in the "Custom preset" "table_row" should download between "0" and "5000" bytes
Then following "Download" in the "Custom preset" "table_row" should download a file that:
| Has mimetype | text/xml |
| Contains text in xml element | Custom preset |
@javascript
Scenario: Core preset settings can be downloaded
Given I log in as "admin"
And I navigate to "Site admin presets" in site administration
When I open the action menu in "Starter" "table_row"
Then following "Download" "link" in the "Starter" "table_row" should download between "0" and "5000" bytes
Then following "Download" in the "Starter" "table_row" should download a file that:
| Has mimetype | text/xml |
| Contains text in xml element | Starter |
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\preset_deleted
*/
class preset_deleted_test extends \advanced_testcase {
final class preset_deleted_test extends \advanced_testcase {
/**
* Test preset_deleted event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\preset_downloaded
*/
class preset_downloaded_test extends \advanced_testcase {
final class preset_downloaded_test extends \advanced_testcase {
/**
* Test preset_downloaded event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\preset_exported
*/
class preset_exported_test extends \advanced_testcase {
final class preset_exported_test extends \advanced_testcase {
/**
* Test preset_exported event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\preset_imported
*/
class preset_imported_test extends \advanced_testcase {
final class preset_imported_test extends \advanced_testcase {
/**
* Test preset_imported event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\preset_loaded
*/
class preset_loaded_test extends \advanced_testcase {
final class preset_loaded_test extends \advanced_testcase {
/**
* Test preset_loaded event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\preset_previewed
*/
class preset_previewed_test extends \advanced_testcase {
final class preset_previewed_test extends \advanced_testcase {
/**
* Test preset_previewed event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\preset_reverted
*/
class preset_reverted_test extends \advanced_testcase {
final class preset_reverted_test extends \advanced_testcase {
/**
* Test preset_reverted event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\event;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @covers \tool_admin_presets\event\presets_listed
*/
class presets_listed_test extends \advanced_testcase {
final class presets_listed_test extends \advanced_testcase {
/**
* Test presets_listed event.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\local\action;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \tool_admin_presets\local\action\base
*/
class base_test extends \advanced_testcase {
final class base_test extends \advanced_testcase {
/**
* Test the behaviour of log() method.
@@ -70,7 +70,7 @@ class base_test extends \advanced_testcase {
*
* @return array
*/
public function log_provider(): array {
public static function log_provider(): array {
return [
// Action = base.
'action=base and mode = show' => [
@@ -25,7 +25,7 @@ namespace tool_admin_presets\local\action;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \tool_admin_presets\local\action\delete
*/
class delete_test extends \advanced_testcase {
final class delete_test extends \advanced_testcase {
/**
* Test the behaviour of execute() method.
@@ -27,7 +27,7 @@ use core_adminpresets\manager;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \tool_admin_presets\local\action\export
*/
class export_test extends \advanced_testcase {
final class export_test extends \advanced_testcase {
/**
* Test the behaviour of execute() method.
@@ -156,7 +156,7 @@ class export_test extends \advanced_testcase {
*
* @return array
*/
public function export_execute_provider(): array {
public static function export_execute_provider(): array {
return [
'Export settings and plugins, excluding sensible' => [
'includesensible' => false,
@@ -27,7 +27,7 @@ use core_adminpresets\manager;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \tool_admin_presets\local\action\import
*/
class import_test extends \advanced_testcase {
final class import_test extends \advanced_testcase {
/**
* Test the behaviour of execute() method.
@@ -190,7 +190,7 @@ class import_test extends \advanced_testcase {
*
* @return array
*/
public function import_execute_provider(): array {
public static function import_execute_provider(): array {
$fixturesfolder = __DIR__ . '/../../../../../presets/tests/fixtures/';
return [
@@ -25,7 +25,7 @@ namespace tool_admin_presets\local\action;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \tool_admin_presets\local\action\load
*/
class load_test extends \advanced_testcase {
final class load_test extends \advanced_testcase {
/**
* Test the behaviour of show() method when the preset id doesn't exist.
@@ -25,7 +25,7 @@ namespace tool_admin_presets\local\action;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \tool_admin_presets\local\action\rollback
*/
class rollback_test extends \advanced_testcase {
final class rollback_test extends \advanced_testcase {
/**
* Test the behaviour of execute() method.
@@ -0,0 +1,79 @@
@tool @tool_analytics
Feature: Manager can obtain prediction models insights
In order to view prediction models insights
As a manager
I should be able to obtain the prediction models insights
Background:
Given the following "users" exist:
| username | firstname | lastname | email |
| s1 | Student | One | s1@example.com |
| m1 | Manager | One | m1@example.com |
| m2 | Manager | Two | m2@example.com |
| t1 | Teacher | One | t1@example.com |
And the following "role assigns" exist:
| user | role | contextlevel | reference |
| m1 | manager | System | |
| m2 | manager | System | |
# To ensure that course start date is in the future, set course start date to "tomorrow".
And the following "courses" exist:
| fullname | shortname | startdate |
| Course 1 | C1 | ##tomorrow## |
| Course 2 | C2 | ##tomorrow## |
| Course 3 | C3 | ##tomorrow## |
And the following "course enrolments" exist:
| user | course | role |
| s1 | C1 | student |
| s1 | C2 | student |
| s1 | C3 | student |
| t1 | C3 | editingteacher |
# Disable "Analytics processes execution via command line only".
And the following config values are set as admin:
| onlycli | 0 | analytics |
@javascript
Scenario: Manager can obtain prediction models insights
Given I log in as "m1"
And I navigate to "Analytics > Analytics models" in site administration
And I click on "Actions" "link" in the "Courses at risk of not starting" "table_row"
And I click on "Execute scheduled analysis" "link" in the "Courses at risk of not starting" "table_row"
And I press "Continue"
When I select "All predictions" from the "contextid" singleselect
# Confirm that only courses without teachers, Course 1 and Course 2, are listed.
Then "Course 1" "text" should exist
And "Course 2" "text" should exist
And "Course 3" "text" should not exist
And I click on "Select Course 1 for bulk action" "checkbox"
And I press "Not applicable"
And I press "Confirm"
# After m1 marks Course 1 as Not applicable, only Course 2 should be listed in the predictions for manager 1.
And "Course 1" "text" should not exist
And "Course 2" "text" should exist
And I log in as "m2"
And I click on ".popover-region-notifications" "css_element"
# Notification of new insight exists.
And "Upcoming courses have no teachers or students" "text" should exist
And I click on "View full notification" "link" in the ".popover-region-notifications" "css_element"
And I click on "View insight" "link"
# Course 1, previously marked as Not applicable by manager 1, is still listed for manager 2.
And "Course 1" "text" should exist
And I click on "View details" "link" in the "Course 1" "table_row"
# Prediction details and indicators are displayed for the selected course.
And the following should exist in the "insights-list" table:
| Description |
| Course 1 |
And the following should exist in the "prediction-calculations" table:
| -1- | -2- |
| Teacher availability | No |
| Student enrolments | Yes |
# Date of prediction analysis execution.
And "##today##%A, %d %B %Y##" "text" should exist in the "Time predicted" "table_row"
And I click on "Select Course 1 for bulk action" "checkbox"
And I press "Accept"
And I press "Confirm"
# Verify that you end up on the page listing predictions for 'No teaching'.
And "Courses at risk of not starting" "text" should exist
And "The following courses due to start in the upcoming days are at risk of not starting because they don't have teachers or students enrolled." "text" should exist
And the following should not exist in the "insights-list" table:
| Description |
| Course 1 |
+1 -1
View File
@@ -45,7 +45,7 @@ require_once($CFG->dirroot . '/analytics/tests/fixtures/test_target_course_level
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @since Moodle 3.8
*/
class external_test extends externallib_advanced_testcase {
final class external_test extends externallib_advanced_testcase {
/**
* test_potential_contexts description
+1 -1
View File
@@ -25,7 +25,7 @@ Feature: Confirm that we can open multiple browser tabs
And I open a tab named "CourseViewer4" on the "My courses" page
# Switch between all the tabs and confirm their different contents.
Then I should see "You're not enrolled in any course"
Then I should see "You're not enrolled in any courses."
And I switch to "CourseViewer2" tab
And "Course 3" "heading" should exist
And I switch to "CourseViewer1" tab
@@ -46,14 +46,14 @@ require_once($CFG->libdir . '/behat/form_field/behat_form_text.php');
* @covers \behat_form_text
* @covers \behat_form_field
*/
class behat_form_text_test extends \basic_testcase {
final class behat_form_text_test extends \basic_testcase {
/**
* Data provider for the test_set_get_value() method.
*
* @return array of value and expectation pairs to be tested.
*/
public function provider_test_set_get_value() {
public static function provider_test_set_get_value(): array {
return [
'null' => [null, null],
'int' => [3, 3],
@@ -68,7 +68,7 @@ class behat_form_text_test extends \basic_testcase {
*
* @param mixed $value value to be set.
* @param mixed $expectation value to be checked.
* @dataProvider provider_test_set_get_value()
* @dataProvider provider_test_set_get_value
*/
public function test_set_get_value($value, $expectation) {
$session = $this->createMock(Session::class);
@@ -85,7 +85,7 @@ class behat_form_text_test extends \basic_testcase {
*
* @return array of decsep, value, match and result pairs to be tested.
*/
public function provider_test_matches() {
public static function provider_test_matches(): array {
return [
'lazy true' => ['.', 'hello', 'hello', true],
'lazy false' => ['.', 'hello', 'bye', false],
@@ -113,7 +113,7 @@ class behat_form_text_test extends \basic_testcase {
* @param mixed $value value to be set.
* @param mixed $match value to be matched.
* @param bool $result expected return status of the function.
* @dataProvider provider_test_matches()
* @dataProvider provider_test_matches
*/
public function test_matches($decsep, $value, $match, $result) {
global $CFG;
@@ -30,7 +30,7 @@ namespace tool_behat\external;
*
* @covers \tool_behat\external\get_entity_generator
*/
class get_entity_generator_test extends \advanced_testcase {
final class get_entity_generator_test extends \advanced_testcase {
/**
* Log in as admin
+1 -5
View File
@@ -1,7 +1,4 @@
<?php
// phpcs:ignoreFile
// @codeCoverageIgnoreStart
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
@@ -43,8 +40,7 @@ require_once($CFG->libdir . '/behat/classes/behat_config_manager.php');
* @copyright 2016 Rajesh Taneja
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class manager_util_test extends \advanced_testcase {
final class manager_util_test extends \advanced_testcase {
/** @var array Fixtures features which are available. */
private $featurepaths = array(
'default' => array(
@@ -245,7 +245,6 @@ class brickfield_accessibility_color_test extends brickfield_accessibility_test
return $luminosity;
}
/**
* Returns the decimal equivalents for a HEX color. Returns null if it cannot be determined.
* @param string $color The hex color value
@@ -268,13 +267,21 @@ class brickfield_accessibility_color_test extends brickfield_accessibility_test
*/
public function convert_color(string $color): string {
$color = trim($color);
if (strpos($color, ' ') !== false) {
$colors = explode(' ', $color);
foreach ($colors as $backgroundpart) {
if (substr(trim($backgroundpart), 0, 1) == '#' ||
in_array(trim($backgroundpart), array_keys($this->colornames)) ||
strtolower(substr(trim($backgroundpart), 0, 3)) == 'rgb') {
$color = $backgroundpart;
// Search for color in rgb format first, as this can potentially contain a space.
if (strpos($color, 'rgb') !== false) {
$colors = explode('rgb', $color, 2); // Getting 2 only in array.
// Getting end point of rgb value, i.e. the end bracket.
$endpos = strpos($colors[1], ')');
$color = 'rgb' . substr($colors[1], 0, ($endpos + 1)); // Recompiling rgb value.
} else {
// Splitting multi-value css background value.
if (strpos($color, ' ') !== false) {
$colors = explode(' ', $color);
foreach ($colors as $backgroundpart) {
if (substr(trim($backgroundpart), 0, 1) == '#' ||
in_array(trim($backgroundpart), array_keys($this->colornames))) {
$color = $backgroundpart;
}
}
}
}
@@ -296,9 +303,20 @@ class brickfield_accessibility_color_test extends brickfield_accessibility_test
}
// RGB values.
if (strtolower(substr($color, 0, 3)) == 'rgb') {
$colors = explode(',', trim(str_replace('rgb(', '', $color), '()'));
if (count($colors) != 3) {
return false;
if (strpos($color, 'rgba') !== false) {
$tmpbg = $this->get_rgb($this->defaultbackground);
$colors = explode(',', trim(str_replace('rgba(', '', $color), '()'));
if (count($colors) != 4) {
return false;
}
$colors[0] = round(((1 - $colors[3]) * $tmpbg['r']) + ($colors[3] * $colors[0]));
$colors[1] = round((1 - $colors[3]) * $tmpbg['g']) + ($colors[3] * $colors[1]);
$colors[2] = round((1 - $colors[3]) * $tmpbg['b']) + ($colors[3] * $colors[2]);
} else {
$colors = explode(',', trim(str_replace('rgb(', '', $color), '()'));
if (count($colors) != 3) {
return false;
}
}
$r = intval($colors[0]);
$g = intval($colors[1]);
@@ -62,9 +62,18 @@ class css_text_has_contrast extends brickfield_accessibility_color_test {
foreach ($entries as $element) {
$style = $this->css->get_style($element);
if (isset($style['background-color']) || isset($style['color'])) {
if (isset($style['background-color']) || isset($style['color']) || isset($style['background'])) {
if (!isset($style['background-color'])) {
$style['background-color'] = $this->defaultbackground;
if (isset($style['background'])) {
// Parsing background-color from CSS background shortcut string.
$style['background-color'] = '#' . $this->convert_color($style['background']);
// If value is empty after hash, then use defaultbackground.
if ($style['background-color'] == '#') {
$style['background-color'] = $this->defaultbackground;
}
} else {
$style['background-color'] = $this->defaultbackground;
}
}
if (!isset($style['color'])) {
@@ -82,11 +91,7 @@ class css_text_has_contrast extends brickfield_accessibility_color_test {
$style['color'] = '#' . $this->convert_color($style['color']);
$style['background-color'] = '#' . $this->convert_color($background);
if (substr($background, 0, 3) == "rgb") {
$background = '#' . $this->convert_color($background);
}
$luminosity = $this->get_luminosity($style['color'], $background);
$luminosity = $this->get_luminosity($style['color'], $style['background-color']);
$fontsize = 0;
$bold = false;
$italic = false;
@@ -26,7 +26,7 @@ use tool_brickfield\local\tool\filter;
* @author Jay Churchward (jay@brickfieldlabs.ie)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class accessibility_test extends \advanced_testcase {
final class accessibility_test extends \advanced_testcase {
/**
* Test get_title().
+1 -1
View File
@@ -28,7 +28,7 @@ require_once($CFG->dirroot . '/admin/tool/brickfield/tests/area_test_base.php');
* @copyright 2020 onward: Brickfield Education Labs, https://www.brickfield.ie
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class area_test extends area_test_base {
final class area_test extends area_test_base {
/**
* Test for the area assign intro
*/
+2 -2
View File
@@ -26,8 +26,8 @@ use tool_brickfield\local\tool\filter;
* @author Jay Churchward (jay.churchward@poetopensource.org)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class filters_test extends \advanced_testcase {
public function test_constructor() {
final class filters_test extends \advanced_testcase {
public function test_constructor(): void {
$this->resetAfterTest();
// Variables.
@@ -23,7 +23,7 @@ namespace tool_brickfield\local\areas\core_question;
* @copyright 2020 onward: Brickfield Education Labs, https://www.brickfield.ie
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class questionanswers_test extends \advanced_testcase {
final class questionanswers_test extends \advanced_testcase {
/**
* Set up before class.
@@ -30,7 +30,7 @@ use tool_brickfield\area_test_base;
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \tool_brickfield\local\areas\core_question\base
*/
class questiontext_test extends area_test_base {
final class questiontext_test extends area_test_base {
/**
* Set up before class.
*/
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class a_links_dont_open_new_window_testcase
*/
class a_links_dont_open_new_window_test extends all_checks {
final class a_links_dont_open_new_window_test extends all_checks {
/** @var string Check type */
protected $checktype = 'a_links_dont_open_new_window';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class a_must_contain_text_testcase
*/
class a_must_contain_text_test extends all_checks {
final class a_must_contain_text_test extends all_checks {
/** @var string Check type */
protected $checktype = 'a_must_contain_text';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class a_suspicious_link_text
*/
class a_suspicious_link_text_test extends all_checks {
final class a_suspicious_link_text_test extends all_checks {
/** @var string Check type */
protected $checktype = 'a_suspicious_link_text';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class area_dont_open_new_window_testcase
*/
class area_dont_open_new_window_test extends all_checks {
final class area_dont_open_new_window_test extends all_checks {
/** @var string Check type */
protected $checktype = 'area_dont_open_new_window';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class area_has_alt_value_testcase
*/
class area_has_alt_value_test extends all_checks {
final class area_has_alt_value_test extends all_checks {
/** @var string Check type */
protected $checktype = 'area_has_alt_value';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class basefont_is_not_used_testcase
*/
class basefont_is_not_used_test extends all_checks {
final class basefont_is_not_used_test extends all_checks {
/** @var string Check type */
protected $checktype = 'basefont_is_not_used';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class blink_is_not_used_testcase
*/
class blink_is_not_used_test extends all_checks {
final class blink_is_not_used_test extends all_checks {
/** @var string Check type */
protected $checktype = 'blink_is_not_used';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class bold_is_not_used_testcase
*/
class bold_is_not_used_test extends all_checks {
final class bold_is_not_used_test extends all_checks {
/** @var string Check type */
protected $checktype = 'bold_is_not_used';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class content_too_long_testcase
*/
class content_too_long_test extends all_checks {
final class content_too_long_test extends all_checks {
/** @var string Check type */
protected $checktype = 'content_too_long';
@@ -30,6 +30,7 @@ require_once('all_checks.php');
/**
* Class test_css_text_has_contrast_test
* @covers \tool_brickfield\local\htmlchecker\brickfield_accessibility
*/
class css_text_has_contrast_test extends all_checks {
/** @var string The check type. */
@@ -229,7 +230,7 @@ EOD;
/**
* Test for the area assign intro
*/
public function test_check() {
public function test_check(): void {
$results = $this->get_checker_results($this->htmlfail1);
$this->assertTrue($results[0]->element->tagName == 'p');
@@ -255,7 +256,7 @@ EOD;
/**
* Test with valid colour names.
*/
public function test_check_for_namedcolours() {
public function test_check_for_namedcolours(): void {
$results = $this->get_checker_results($this->namecolours);
$this->assertTrue($results[0]->element->tagName == 'p');
}
@@ -263,7 +264,7 @@ EOD;
/**
* Test with invalid colour names.
*/
public function test_check_for_invalidcolours() {
public function test_check_for_invalidcolours(): void {
$results = $this->get_checker_results($this->invalidcolours);
$this->assertTrue($results[0]->element->tagName == 'p');
}
@@ -271,7 +272,7 @@ EOD;
/**
* Test with invalid colour numeric values.
*/
public function test_check_for_invalidvalues() {
public function test_check_for_invalidvalues(): void {
$results = $this->get_checker_results($this->invalidvalue);
$this->assertTrue($results[0]->element->tagName == 'p');
}
@@ -279,7 +280,7 @@ EOD;
/**
* Test with empty colour values.
*/
public function test_check_for_emptyvalues() {
public function test_check_for_emptyvalues(): void {
$results = $this->get_checker_results($this->emptyvalue);
$this->assertEmpty($results);
}
@@ -287,7 +288,7 @@ EOD;
/**
* Test for text px18 with insufficient contrast of 4.49.
*/
public function test_check_for_px18_fail() {
public function test_check_for_px18_fail(): void {
$results = $this->get_checker_results($this->px18);
$this->assertTrue($results[0]->element->tagName == 'p');
}
@@ -295,7 +296,7 @@ EOD;
/**
* Test for text px19 bold with sufficient contrast of 4.49.
*/
public function test_check_for_px19bold_pass() {
public function test_check_for_px19bold_pass(): void {
$results = $this->get_checker_results($this->px19bold);
$this->assertEmpty($results);
}
@@ -303,7 +304,7 @@ EOD;
/**
* Test for text px18 with sufficient contrast of 4.81.
*/
public function test_check_for_px18_pass() {
public function test_check_for_px18_pass(): void {
$results = $this->get_checker_results($this->px18pass);
$this->assertEmpty($results);
}
@@ -311,7 +312,7 @@ EOD;
/**
* Test for medium (12pt) text with insufficient contrast of 4.49.
*/
public function test_check_for_medium_fail() {
public function test_check_for_medium_fail(): void {
$results = $this->get_checker_results($this->mediumfail);
$this->assertTrue($results[0]->element->tagName == 'p');
}
@@ -319,7 +320,7 @@ EOD;
/**
* Test for medium (12pt) text with sufficient contrast of 4.81.
*/
public function test_check_for_medium_pass() {
public function test_check_for_medium_pass(): void {
$results = $this->get_checker_results($this->mediumpass);
$this->assertEmpty($results);
}
@@ -327,7 +328,7 @@ EOD;
/**
* Test for larger (14pt) text with insufficient contrast of 2.94.
*/
public function test_check_for_larger_fail() {
public function test_check_for_larger_fail(): void {
$results = $this->get_checker_results($this->largerfail);
$this->assertTrue($results[0]->element->tagName == 'p');
}
@@ -335,7 +336,7 @@ EOD;
/**
* Test for larger (14pt) text with insufficient contrast of 3.02.
*/
public function test_check_for_larger_pass() {
public function test_check_for_larger_pass(): void {
$results = $this->get_checker_results($this->largerpass);
$this->assertTrue($results[0]->element->tagName == 'p');
}
@@ -343,8 +344,118 @@ EOD;
/**
* Test for larger (14pt) bold text with sufficient contrast of 3.02.
*/
public function test_check_for_largerbold_pass() {
public function test_check_for_largerbold_pass(): void {
$results = $this->get_checker_results($this->largerboldpass);
$this->assertEmpty($results);
}
/**
* Test for rgb colors with insufficient contrast.
*/
public function test_bad_rgbcolor(): void {
$html = '<body><p style="color:rgb(255, 255, 255); background-color:rgb(204, 204, 204);">
This is not contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertTrue($results[0]->element->tagName == 'p');
}
/**
* Test for rgb colors with sufficient contrast.
*/
public function test_good_rgbcolor(): void {
$html = '<body><p style="color:rgb(255, 255, 255); background-color:rgb(0, 0, 0);">
This is contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertEmpty($results);
}
/**
* Test for named colors with insufficient contrast.
*/
public function test_bad_namedcolor2(): void {
$html = '<body><p style="color:lightcyan; background-color:lavender;">
This is not contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertTrue($results[0]->element->tagName == 'p');
}
/**
* Test for named colors with sufficient contrast.
*/
public function test_good_namedcolor2(): void {
$html = '<body><p style="color:linen; background-color:darkslategray;">
This is contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertEmpty($results);
}
/**
* Test for background value with insufficient contrast.
*/
public function test_bad_backgroundcss(): void {
$html = '<body><p style="color:lightcyan; background:fixed lavender center;">
This is not contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertTrue($results[0]->element->tagName == 'p');
}
/**
* Test for background value with sufficient contrast.
*/
public function test_good_backgroundcss(): void {
$html = '<body><p style="color:linen; background:fixed darkslategray center;">
This is contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertEmpty($results);
}
/**
* Test for background value with rgb with insufficient contrast.
*/
public function test_bad_backgroundcssrgb(): void {
$html = '<body><p style="color:rgb(255, 255, 255); background:fixed rgb(204, 204, 204) center;">
This is not contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertTrue($results[0]->element->tagName == 'p');
}
/**
* Test for background value with rgb with sufficient contrast.
*/
public function test_good_backgroundcssrgb(): void {
$html = '<body><p style="color:rgb(255, 255, 255); background:fixed rgb(0, 0, 0) center;">
This is contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertEmpty($results);
}
/**
* Test for text with insufficient contrast of 4.3.
*/
public function test_bad_contrastrounding(): void {
$html = '<body><p style="color:#F50000; background-color:white; font-size: 12px">
This is not contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertTrue($results[0]->element->tagName == 'p');
}
/**
* Test for background value with rgba with insufficient contrast.
*/
public function test_bad_backgroundcssrgba(): void {
$html = '<body><p style="color:rgba(255, 255, 255, 0.5); background:fixed rgba(0, 204, 204, 0.5) center;">
This is not contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertTrue($results[0]->element->tagName == 'p');
}
/**
* Test for background value with rgba with sufficient contrast.
*/
public function test_good_backgroundcssrgba(): void {
$html = '<body><p style="color:rgba(255, 255, 255, 0.75); background:fixed rgba(0, 0, 0, 0.75) center;">
This is contrasty enough.</p></body>';
$results = $this->get_checker_results($html);
$this->assertEmpty($results);
}
}
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class embed_has_associated_no_embed_testcase
*/
class embed_has_associated_no_embed_test extends all_checks {
final class embed_has_associated_no_embed_test extends all_checks {
/** @var string Check type */
protected $checktype = 'embed_has_associated_no_embed';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class header_h3_testcase
*/
class header_h3_test extends all_checks {
final class header_h3_test extends all_checks {
/** @var string Check type */
protected $checktype = 'header_h3';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class headers_have_text_testcase
*/
class headers_have_text_test extends all_checks {
final class headers_have_text_test extends all_checks {
/** @var string Check type */
protected $checktype = 'headers_have_text';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class i_is_not_used_testcase
*/
class i_is_not_used_test extends all_checks {
final class i_is_not_used_test extends all_checks {
/** @var string Check type */
protected $checktype = 'i_is_not_used';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class img_alt_is_different_testcase
*/
class img_alt_is_different_test extends all_checks {
final class img_alt_is_different_test extends all_checks {
/** @var string Check type */
protected $checktype = 'img_alt_is_different';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class img_alt_is_too_long_testcase
*/
class img_alt_is_too_long_test extends all_checks {
final class img_alt_is_too_long_test extends all_checks {
/** @var string Check type */
protected $checktype = 'img_alt_is_too_long';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class img_alt_not_empty_in_anchor_testcase
*/
class img_alt_not_empty_in_anchor_test extends all_checks {
final class img_alt_not_empty_in_anchor_test extends all_checks {
/** @var string Check type */
protected $checktype = 'img_alt_not_empty_in_anchor';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class img_alt_not_placeholder_testcase
*/
class img_alt_not_place_holder_test extends all_checks {
final class img_alt_not_place_holder_test extends all_checks {
/** @var string Check type */
protected $checktype = 'img_alt_not_place_holder';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class test_css_text_has_contrast_testcase
*/
class img_has_alt_test extends all_checks {
final class img_has_alt_test extends all_checks {
/** @var string Check type */
public $checktype = 'img_has_alt';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class img_with_map_has_use_map_test
*/
class img_with_map_has_use_map_test extends all_checks {
final class img_with_map_has_use_map_test extends all_checks {
/** @var string Check type */
public $checktype = 'img_with_map_has_use_map';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class legend_text_not_empty_test
*/
class legend_text_not_empty_test extends all_checks {
final class legend_text_not_empty_test extends all_checks {
/** @var string Check type */
public $checktype = 'legend_text_not_empty';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class no_headings_test
*/
class no_headings_test extends all_checks {
final class no_headings_test extends all_checks {
/** @var string Check type */
public $checktype = 'no_headings';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class object_must_have_embeded_test
*/
class object_must_have_embed_test extends all_checks {
final class object_must_have_embed_test extends all_checks {
/** @var string Check type */
public $checktype = 'object_must_have_embed';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class object_must_have_title_test
*/
class object_must_have_title_test extends all_checks {
final class object_must_have_title_test extends all_checks {
/** @var string Check type */
public $checktype = 'object_must_have_title';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class object_must_have_valid_title_test
*/
class object_must_have_valid_title_test extends all_checks {
final class object_must_have_valid_title_test extends all_checks {
/** @var string Check type */
public $checktype = 'object_must_have_valid_title';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class strike_is_not_used_testcase
*/
class strike_is_not_used_test extends all_checks {
final class strike_is_not_used_test extends all_checks {
/** @var string Check type */
public $checktype = 'strike_is_not_used';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class table_data_should_have_th_test
*/
class table_data_should_have_th_test extends all_checks {
final class table_data_should_have_th_test extends all_checks {
/** @var string Check type */
public $checktype = 'table_data_should_have_th';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class table_summary_does_not_duplicate_caption_test
*/
class table_summary_does_not_duplicate_caption_test extends all_checks {
final class table_summary_does_not_duplicate_caption_test extends all_checks {
/** @var string Check type */
public $checktype = 'table_summary_does_not_duplicate_caption';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class table_td_should_not_merge_test
*/
class table_td_should_not_merge_test extends all_checks {
final class table_td_should_not_merge_test extends all_checks {
/** @var string Check type */
public $checktype = 'table_td_should_not_merge';
@@ -31,7 +31,7 @@ require_once('all_checks.php');
/**
* Class table_th_should_have_scope_test
*/
class table_th_should_have_scope_test extends all_checks {
final class table_th_should_have_scope_test extends all_checks {
/** @var string Check type */
public $checktype = 'table_th_should_have_scope';
@@ -24,7 +24,7 @@ namespace tool_brickfield\local\tool;
* @author Jay Churchward (jay.churchward@poetopensource.org)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class activityresults_test extends \advanced_testcase {
final class activityresults_test extends \advanced_testcase {
public function test_toolname() {
$this->resetAfterTest();
@@ -24,7 +24,7 @@ namespace tool_brickfield\local\tool;
* @author Jay Churchward (jay.churchward@poetopensource.org)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class checktyperesults_test extends \advanced_testcase {
final class checktyperesults_test extends \advanced_testcase {
public function test_toolname() {
$this->resetAfterTest();
@@ -24,7 +24,7 @@ namespace tool_brickfield\local\tool;
* @author Jay Churchward (jay.churchward@poetopensource.org)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class errors_test extends \advanced_testcase {
final class errors_test extends \advanced_testcase {
public function test_toolname() {
$this->resetAfterTest();
@@ -24,7 +24,7 @@ namespace tool_brickfield\local\tool;
* @author Jay Churchward (jay.churchward@poetopensource.org)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class printable_test extends \advanced_testcase {
final class printable_test extends \advanced_testcase {
/**
* Test tool name.
+1 -1
View File
@@ -23,7 +23,7 @@ namespace tool_brickfield;
* @copyright 2020 onward: Brickfield Education Labs, https://www.brickfield.ie
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class manager_test extends \advanced_testcase {
final class manager_test extends \advanced_testcase {
/**
* Tests for the function manager::get_all_areas()
@@ -28,7 +28,7 @@ namespace tool_brickfield;
* Unit tests for {@registration tool_brickfield\registration.php}.
* @group tool_brickfield
*/
class registration_test extends \advanced_testcase {
final class registration_test extends \advanced_testcase {
public static function setUpBeforeClass(): void {
global $CFG;
@@ -24,7 +24,7 @@ namespace tool_brickfield;
* @author Jay Churchward (jay@brickfieldlabs.ie)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class scheduler_test extends \advanced_testcase {
final class scheduler_test extends \advanced_testcase {
public function test_request_analysis() {
$this->resetAfterTest();
+6 -6
View File
@@ -27,10 +27,10 @@ use tool_brickfield\local\tool\tool;
* @author Jay Churchward (jay.churchward@poetopensource.org)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_test extends \advanced_testcase {
final class tool_test extends \advanced_testcase {
/** @var string base 64 image */
protected $base64img = <<<EOF
protected static string $base64img = <<<EOF
<img src="data:image/gif;base64,R0lGODlhPQBEAPeoAJosM//AwO/AwHVYZ/z595kzAP/s7P+goOXMv8+fhw/v739/f+8PD98fH/
8mJl+fn/9ZWb8/PzWlwv///6wWGbImAPgTEMImIN9gUFCEm/gDALULDN8PAD6atYdCTX9gUNKlj8wZAKUsAOzZz+UMAOsJAP/Z2ccMDA8PD/95eX5N
WvsJCOVNQPtfX/8zM8+QePLl38MGBr8JCP+zs9myn/8GBqwpAP/GxgwJCPny78lzYLgjAJ8vAP9fX/+MjMUcAN8zM/9wcM8ZGcATEL+QePdZWf/29u
@@ -118,11 +118,11 @@ EOF;
* Base64 image provider.
* @return array
*/
public function base64_img_provider(): array {
public static function base64_img_provider(): array {
$img = '<img src="myimage.jpg" />';
return [
'Image tag alone (base64)' => [
$this->base64img,
self::$base64img,
true,
],
'Image tag alone (link)' => [
@@ -130,7 +130,7 @@ EOF;
false,
],
'Image tag in string (base64)' => [
"This is my image {$this->base64img}.",
"This is my image " . self::$base64img,
true,
],
'Image tag in string (link)' => [
@@ -162,7 +162,7 @@ EOF;
}
public function test_truncate_base64() {
$truncated = tool::truncate_base64($this->base64img);
$truncated = tool::truncate_base64(self::$base64img);
$this->assertStringContainsString('<img src="data:image/gif;base64..."', $truncated);
}
}
@@ -31,7 +31,7 @@ namespace tool_capability\event;
* @copyright 2014 Petr Skoda
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later.
*/
class events_test extends \advanced_testcase {
final class events_test extends \advanced_testcase {
/**
* Setup testcase.
@@ -31,7 +31,7 @@ require_once($CFG->dirroot . '/' . $CFG->admin . '/tool/capability/locallib.php'
/**
* Tests for the capability overview helper functions.
*/
class locallib_test extends \advanced_testcase {
final class locallib_test extends \advanced_testcase {
/**
* Test the function that gets the data - simple case.
+1 -1
View File
@@ -23,7 +23,7 @@ namespace tool_cohortroles;
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class api_test extends \advanced_testcase {
final class api_test extends \advanced_testcase {
/** @var \stdClass $cohort */
protected $cohort = null;
@@ -39,7 +39,7 @@ use core_privacy\local\request\approved_userlist;
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider_test extends \core_privacy\tests\provider_testcase {
final class provider_test extends \core_privacy\tests\provider_testcase {
/**
* Overriding setUp() function to always reset after tests.

Some files were not shown because too many files have changed in this diff Show More