Commit graph

108839 commits

Author SHA1 Message Date
Mark Johnson
958da5b67e MDL-68093 groups: Add visibility and participation settings
These new settings are designed to enchance user privacy surrounding
groups. They allow groups to be configured so that users outside the
group cannot see the group, so that users in the group cannot see each
other, or so that users cannot see the group at all, even if they are in
it. This avoids issues where a group may be assigned based on sensitive
personal information (such as a person requiring special arrangements
due to a disability).

By default, groups are visible to all and available for participation in
activities, which maintains the current behaviour.

For performance, a new cache has been added to track the number of
groups on a course that are not visible to non-members. This allows us
to revert to the existing behaviour if the new features are not being
used at all on a course, and only apply the new visibility conditions if
they are.

Users who have the moodle/course:viewhiddengroups capability should be
concious of exposing hidden groups when showing their screen to other
users. The "Switch role to..." feature can be used to show a course page
on screen without exposing private availability conditions, for example.

The changes cover several specific areas:
* grouplib functions, which most code should use to get lists of groups
  and members (this includes the participants page).
* Activities supporting group overrides will not allow overrides for
  groups that are hidden from all users.
* Activities supporting separate/visible groups modes will only allow
  groups with the new "participation" flag enabled to be selected.
* Group messaging will be disabled for groups where members cannot see
  each other, or cannot see the group at all.
2023-03-14 08:52:25 +00:00
Juan Segarra Montesinos
d7055c80e2 MDL-76257 core: Activity intro should honor user preference on creation 2023-03-14 06:02:39 +01:00
danghieu1407
b875ecdcc4 MDL-77419 Quiz: question/qengine.js tidy-up 2023-03-14 10:26:46 +07:00
Andrew Nicols
39f3b1ab66 MDL-77186 core: Move deprecated cron functions to deprecatedlib 2023-03-14 11:19:03 +08:00
Andrew Nicols
209cfe461d MDL-77186 core: Add upgrade note about core\cron migration 2023-03-14 11:19:03 +08:00
Andrew Nicols
f6d9b81ebc MDL-77186 core: Address coding style violations in cron 2023-03-14 11:19:03 +08:00
Andrew Nicols
3cd05c7a15 MDL-77186 core: Move cron_setup_user to namespaced class 2023-03-14 11:19:03 +08:00
Andrew Nicols
070c781097 MDL-77186 core: Move max/default cron_keepalive to class const 2023-03-14 11:19:03 +08:00
Andrew Nicols
573066ba5f MDL-76867 core_admin: Standardise plugin management when plugin missing from disk 2023-03-14 11:07:43 +08:00
Huong Nguyen
d2ae030fa7 MDL-76911 lib: Update jQuery to 3.6.4 2023-03-14 08:45:31 +07:00
Andrew Nicols
6aba049a64 MDL-76867 core_admin: Migrate media plugin management to dynamic table 2023-03-14 08:44:15 +08:00
Andrew Nicols
9bc9204a52 MDL-76867 core_admin: Migrate admin tool management to plugin management 2023-03-14 08:44:15 +08:00
Andrew Nicols
0d18f6d0d4 MDL-76867 core_admin: Migrate blocks admin ui to plugin management 2023-03-14 08:44:15 +08:00
Andrew Nicols
6d978dd35a MDL-76867 core_admin: Add support for editor sorting via ajax 2023-03-14 08:44:15 +08:00
Andrew Nicols
f54cc61e4b MDL-76867 core_admin: Migrate editors admin ui to plugin management 2023-03-14 08:44:15 +08:00
Andrew Nicols
9f1c596dbd MDL-76867 core_admin: Migrate module management table to dynamic table 2023-03-14 08:44:15 +08:00
Andrew Nicols
e2de093fe8 MDL-76867 editor_tiny: Add plugin management page 2023-03-14 08:44:15 +08:00
Andrew Nicols
51cfde0d3f MDL-76867 core: Add plugin management page 2023-03-14 08:44:15 +08:00
Andrew Nicols
f4a48a517b MDL-76867 core_table: Allow dynamic table filterset to be specified
The previous behaviour guessed the table filterset based on the table's
class name, but this is not very flexible if you wish to create an
abstract table class and use a generic filter for all implementations.

This change adds the ability to specify the filterset class, with the
default behaviour using the table class name as a prefix.
2023-03-14 08:44:15 +08:00
Andrew Nicols
fdb1df2bfd MDL-76867 core: Add plugintype_supports_disabling to plugininfo 2023-03-14 08:34:42 +08:00
Andrew Nicols
6809289cf4 MDL-76867 core: Plugintype coding style fixes 2023-03-14 08:34:42 +08:00
AMOS bot
19992963e6 Automatically generated installer lang files 2023-03-14 00:07:45 +00:00
Paul Holden
6b6e7eaad2
MDL-69882 phpunit: final removal of deprecated 310 helper methods. 2023-03-13 17:46:44 +00:00
Juan Leyva
dd43bfd026 MDL-77585 grade: New WS gradereport_user_get_access_information 2023-03-13 15:20:34 +01:00
Tim Hunt
e52dbcdef4 MDL-77611 tool_uploaduser: fix phpunit assumptions about profile fields 2023-03-13 13:31:33 +00:00
Andrew Nicols
347fc32088 MDL-77186 core: Rename incorrectly named test 2023-03-13 21:21:13 +08:00
Andrew Nicols
9ec46c232d MDL-77186 core: Move all uses of cronlib to new class 2023-03-13 21:21:13 +08:00
Andrew Nicols
99a67b615f MDL-77186 core: Move cronlib to namespaced class 2023-03-13 21:21:13 +08:00
Andrew Nicols
1b59967d71 MDL-77186 core: Add a new keepalive setting to cron 2023-03-13 21:19:55 +08:00
Andrew Nicols
097d2bda6c MDL-77186 admin: Add min/max limits to configduration 2023-03-13 21:19:37 +08:00
Andrew Nicols
733e85487a MDL-77186 core: Improve coding style for cron_run() 2023-03-13 21:19:37 +08:00
Andrew Nicols
fbeb9f8952 MDL-77186 core: Improve coding style for cron.php 2023-03-13 21:19:36 +08:00
Sara Arjona
f0a20c0a76 MDL-76802 core: Create a grunt task to get upgradable libs
A new grunt task, upgradablelibs, has been added in order to get the
list of libraries that have a newer version in their repositories.

Co-author: Andrew Lyons <andrew@moodle.com>
2023-03-13 11:53:23 +01:00
Amaia Anabitarte
6d2c321d7c MDL-76991 tool_mobile: Return course format indentation setting 2023-03-13 11:47:13 +01:00
Amaia Anabitarte
a7c64595c8 MDL-76991 core_course: New course format setting to enable/disable indentation in weeks and topics 2023-03-13 11:47:13 +01:00
Sara Arjona
edcfb3b27f MDL-76802 core: Add or update missing third-party repositories
While preparing the libraries that need to be upgraded for 4.2 in
MDL-76373 I've seen that the new Tiny editor missed the repository.
2023-03-13 11:39:30 +01:00
Paul Holden
3cb70de95f
MDL-77608 mod_h5pactivity: namespace component lib testcase. 2023-03-13 09:36:40 +00:00
Laurent David
301c56ae1d MDL-77275 mod_data: Template reset button changes
* Remove the reset button in the sticky footer (template page)
* Add the reset button action in the Action menu
2023-03-13 07:35:44 +01:00
Simey Lameze
06cfcc8dae MDL-77574 myoverview: wait until next button exists before clicking 2023-03-13 14:11:35 +08:00
Jun Pataleta
b711e80069 Merge branch 'MDL-77598' of https://github.com/paulholden/moodle 2023-03-13 14:08:45 +08:00
Jun Pataleta
973a6c39d6 Merge branch 'MDL-73144/402' of https://github.com/skodak/moodle 2023-03-13 13:34:19 +08:00
Jake Dallimore
d0789c1a7a MDL-77382 core: fix error handling in oauth2 callback for auth'd users
Pass the errors back to the calling code when the user is authenticated,
otherwise, fall back on the existing redirection to the login page.
2023-03-13 10:47:23 +08:00
Jake Dallimore
2c38a73fe7 MDL-76926 enrol_lti: remove guzzle shim code as guzzle now in core 2023-03-13 10:42:56 +08:00
Jake Dallimore
550e45520d MDL-76926 libraries: update upgrade steps and 3rd party libs for lt1p3 2023-03-13 10:42:56 +08:00
Jake Dallimore
efae8d36d5 MDL-76926 libraries: upgrade lib/lti1p3 to patched v5.2.6 2023-03-13 10:42:56 +08:00
Meirza
170561ee94 MDL-76914 libraries: upgrade Chart.js to 4.2.1 2023-03-13 08:53:26 +07:00
AMOS bot
9b79ec922c Automatically generated installer lang files 2023-03-12 00:07:55 +00:00
Petr Skoda
80d32fc93a MDL-76680 core: disable $USER->ignoresesskey on next page 2023-03-11 10:37:12 +01:00
Paul Holden
9bf8699b7c
MDL-77598 editor_tinymce: ensure sub-plugins are also uninstalled. 2023-03-10 16:37:32 +00:00
Paul Holden
61cd980fb7
MDL-77598 logstore_legacy: complete plugin uninstallation step. 2023-03-10 16:19:12 +00:00