Commit Graph

1591 Commits

Author SHA1 Message Date
Andrew Nicols
e657e342d4 Merge branch 'MDL-77576-master-mvp' of https://github.com/safatshahin/moodle 2023-05-15 12:16:14 +08:00
Safat
ca1e5d0beb MDL-77576 core_communication: Add core communication api
This commit will implement the base api for core
communication. This will include the room creation,
room membership, room access url and all associated
api and related interfaces.

Originally implemented as MDL-76702, MDL-76703 and MDL-76705.

Co-Authored-By: David Woloszyn <david.woloszyn@moodle.com>
Co-Authored-By: Safat Shahin <safat.shahin@moodle.com>
2023-05-11 13:35:16 +10:00
Jun Pataleta
9095bb0ef9 MDL-78000 upgrade: add the 4.2.0 separation line to all upgrade scripts 2023-04-22 23:17:50 +08:00
Jun Pataleta
4bf6bb37c2 MDL-77927 core: Delete other mod_assignment subplugins
Non-core mod_assignment subplugin data may still be present on the
database. We need to make sure to remove these too during upgrade.
2023-04-21 12:32:10 +08:00
Jun Pataleta
dddc9a08cd MDL-77927 core: Move assignment removal upgrade code
Move the fixed assignment removal upgrade code to the end of the upgrade
script as a new upgrade step. Already upgraded sites with mod_assignment
removed should just be able to rerun this without any issues.
2023-04-21 12:31:11 +08:00
Stevani Andolo
d023b5356c MDL-77927 grade: Delete mod_assignment orphaned data before its removal 2023-04-21 12:31:07 +08:00
Sara Arjona
ea2e9d5920 MDL-76722 core: Fix upgrade failures with MariaDB
The 'enable' field doesn't exist, and this is causing some failures
with MariaDB (and probably with MySQL too).
2023-04-12 11:43:52 +02:00
Shamim Rezaie
caa9fe6e42 Merge branch 'MDL-76722-master' of https://github.com/andrewnicols/moodle 2023-04-12 19:23:17 +10:00
Alex Morris
7c843b380b MDL-76722 lib/db: Add new publickey field to user_devices table 2023-04-11 08:58:26 +08:00
Paul Holden
fa921f87f2 MDL-77686 logstore_legacy: final plugin uninstallation step.
This supersedes the partial uninstallation from 61cd980f, ensuring
we also now clear up any remaining data (e.g. scheduled tasks).
2023-04-06 14:46:31 +01:00
Sara Arjona
1147a9fe9d MDL-72350 mod: Remove mod_assignment
The Assignment 2.2 activity module was disabled in 2012 but kept to
enable pre-2.2 backups to be restored and have the assignments
auto-converted to new assignments. After almost 10 years, it's time
to remove it from Moodle core.
2023-03-30 09:00:10 +08:00
Sara Arjona
3acf967276 MDL-77608 h5p: Fix after rewrite
Minor changes, like removing extra line at the end of the file or adding
comment in lib/db/upgrade.php.
2023-03-17 13:20:41 +01:00
Andrew Nicols
060b63cd1c Merge branch 'MDL-67789-master' of https://github.com/sarjona/moodle 2023-03-17 13:03:24 +01:00
Ferran Recio
03a4abde0f MDL-67789 xapi: Add support to save content state 2023-03-15 09:42:18 +01:00
Ilya Tregubov
a34dbbe6fe Merge branch 'MDL-68093_master' of https://github.com/marxjohnson/moodle 2023-03-15 10:19:07 +08:00
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
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
Ilya Tregubov
58fb00eb18 Merge branch 'MDL-77308-master' of https://github.com/andrewnicols/moodle 2023-03-09 17:02:07 +08:00
Andrew Nicols
f58a71baab MDL-77308 core: Remove editor_tiny from core 2023-03-09 15:28:35 +08:00
Ilya Tregubov
25254ceea3 Merge branch 'MDL-77163-master' of https://github.com/andrewnicols/moodle 2023-03-08 17:28:13 +08:00
Sara Arjona
5c20b537b4 MDL-70226 course: Add more options to the activitychoosertabmode setting
Some extra options have been added to the activitychoosertabmode setting, to let
admins decide when to display the Recommended tab.
Apart from that, one of these values have be set as default value for this setting,
as suggested by the UX/PX teams. So the Starter and Full presets have been updated
too with the new values.
2023-03-03 13:45:15 +01:00
Andrew Nicols
8ae5ebb507 MDL-77163 cachestore_mongodb: Remve from core 2023-02-28 22:24:04 +08:00
Paul Holden
6111426f1d Merge branch 'MDL-76146-master' of https://github.com/ilyatregubov/moodle 2023-02-20 16:41:29 +00:00
Tomo Tsuyuki
9e725bc168 MDL-45301 assign: Add font options for EditPDF 2023-02-17 15:30:25 +11:00
Ilya Tregubov
1b8ac1ff8c MDL-76146 gradereport_grader: remove deprecated preferences. 2023-02-17 11:35:05 +08:00
Jun Pataleta
e6343d70fd Merge branch 'MDL-76584' of https://github.com/paulholden/moodle 2023-02-16 11:49:21 +08:00
Jun Pataleta
5ab615c610 Merge branch 'MDL-77161-master' of https://github.com/andrewnicols/moodle 2023-02-09 11:18:24 +08:00
Andrew Nicols
7bf57d9850 MDL-77161 cachestore_memcached: Remove from core 2023-02-07 21:42:50 +08:00
Eloy Lafuente (stronk7)
fa269897c7 MDL-74905 upgrade: remove all the < 3.11.0 upgrade steps
Note that, despite the commit message, this is not possible. Moodle
3.11.0 (and 3.10.0) were developed in parallel with Moodle 4.0, and
when they were released, the master branch had already diverged, so
the master branch does not contain the comment lines:

"// Automatically generated Moodle v3.11.0 release upgrade line"

And they are needed to know which parts of the upgrade are safe to delete.

So we only proceed to delete all those steps from lib/db/upgrade.php
which version is known to be < 2021051708 (v3.11.8), master ones will
be, always bigger than that. We don't touch plugin upgrade scripts
because they may have different versions, not 100% matching the
2021051708 rule, so there will be an excess of steps there.

Note this is not a big problem, just a few more steps will be skipped and
that's all. Whenever we bump the Moodle requirements again (to Moodle
4.0 or up), the lines will be back and we'll be able to safely remove
all the steps before them. See previous Moodle requirements issues as
example.

The upgrade steps deleted by this commit weren't using any stuff from
upgradelib, tasks..., so there isn't anything else to be removed but
the core steps themselves.

Also includes an upgrade step to prevent upgrading from any
version < 2021051708 (v3.11.8) as anti-cheating measure.
2023-02-03 19:48:02 +01:00
Paul Holden
89db417402 MDL-76584 question: correct temporary questionid upgrade field.
Pass correct parameter/type in field constructor (`XMLDB_NOTNULL`)
for consistency. This corrects the definition and preserves the
truthyness of the value that was incorrectly passed previously.
2023-01-23 09:16:48 +00:00
Andrew Nicols
1ac2eb53fb MDL-58615 core: Remove the useexternalyui setting
I have opted not to go through any deprecation process for this as there
is not really much we can do about it anyway. There is no loss of
functionality - just a change of where things are served from.

The Yahoo! CDN was only used for http connections as it did not
officially support SSL, and it is not guaranteed to continue existing in
the future since YUI has been deprecated for a number of years now.
2023-01-03 11:43:01 +08:00
Farhan Karmali
b4e5e47a0f MDL-75667 admin: Avoid DB calls within loops on admin/blocks.php 2022-12-16 18:53:58 +05:30
Andrew Nicols
c198147268 Merge branch 'MDL-76509-master' of https://github.com/safatshahin/moodle 2022-12-13 20:30:57 +08:00
Safat
307f832732 MDL-76509 core: Upgrade error resolve for slot tags 2022-12-13 12:45:32 +11:00
Paul Holden
7bab1754c4 MDL-76536 enrol: prevent invalid role assignments in course creation.
Upgrade step to fixup existing bad data.
2022-12-09 11:38:41 +00:00
Jun Pataleta
c6ab792ddf MDL-76497 upgrade: add the 4.1.0 separation line to all upgrade scripts 2022-11-28 14:43:04 +08:00
Eloy Lafuente (stronk7)
df227f3819 MDL-76052 webservice_xmlrpc: Remove it completely from core
Normal removal procedure:
  - Remove the plugin completely from core.
  - Document it in the webservices upgrade.txt file.
  - Add a core upgrade step to proceed to remove any configuration
    if the plugin has not been re-installed manually.

Plus:
  - Remove a few remaining uses in the hub/sites registration scripts,
    that were moved from xmlrpc to hand.made rest calls by MDL-31436
    (Moodle 3.4.1 and up) and never removed then.
  - Remove the php-xmlrpc extension as a recommendation in composer.
  - Remove "xmlrpc" from various comments, trivial cleanup.

Note:
  - While working on this MDL-76078 has been created about to
    fix a serious design problem detected (it does not affect
    functionality). That's out from this issue scope.
2022-11-04 16:49:52 +01:00
Michael Hawkins
e3b3ba90c8 MDL-74643 core_user: New admin setting for site support availability
This allows admins to configure whether contact site support is
available to everyone, authenticated users, or nobody.

The behat testing checks linked and direct access for each setting,
as well as adding testing that the support page override works as
expected.
2022-10-31 18:58:06 +08:00
Ilya Tregubov
4272ccd65f MDL-58266 core_completion: Fix upgrade script.
Remove 0 default value for timecreated
in course_module_viewed table
2022-10-17 16:40:07 +03:00
Ilya Tregubov
d5e9b5ba2b MDL-58266 core_completion: Fix incorrect version bump.
Version was bumped in previously merged issue
2022-10-17 14:49:22 +03:00
Ilya Tregubov
057f732bf1 Merge branch 'MDL-58266-master' of https://github.com/JBThong/moodle 2022-10-17 12:51:59 +03:00
Matthew Hilton
cfb643293c MDL-56567 competency: Course module competency option to override grade
Previously, if a course module had already been graded, course module
completion linked to the course module would not update. This
commit adds the option to enable overriding the grade at the course
module competency level.

This ensures that if enabled and a user completes a module associated
with a competency, that competency will be graded appropriately.
2022-10-17 08:00:20 +10:00
hieuvu
c6e018e04e MDL-58266 core_completion: Add new view table. 2022-10-14 00:30:28 +07:00
Paul Holden
fd583ac9f0 MDL-75168 tag: cleanup module tag instances upon course deletion. 2022-09-27 13:40:28 +01:00
anisa kusumadewi
6330c482bd MDL-71129 core_h5p: Added index for pathnamehash to h5p table 2022-09-12 11:41:06 +02:00
Andrew Nicols
903f04a320 Merge branch 'MDL-74608' of https://github.com/timhunt/moodle 2022-08-18 10:52:02 +08:00
Tim Hunt
8babdbd396 MDL-74608 activities: a new option to force the activity language
For a long time, Moodle has had the feature to force the language
for a whole course. This change adds the same feature at activity
level.

The course-level feature was controlled by a capability
moodle/course:setforcedlanguage, and I decided to use the same
capability to control this feature. I think a new capability would be
overkill.
2022-08-15 22:15:52 +01:00
Kevin Pham
af71e4f412 MDL-49795 core: Add foreign keys to core tables in lib
- Includes changes to tables like course, enrol, stage, etc
2022-08-03 15:17:04 +10:00
Eloy Lafuente (stronk7)
58b56e2395 MDL-71747 upgrade: remove all the < 3.9.0 upgrade steps
This just deletes all the upgrade steps previous to 3.9.0. Some
small adjustments, like tweaking globals can also be applied
when needed.

Also includes an upgrade step to prevent upgrading from any
version < 2020061500 (v3.9.0) as anti-cheating measure.

The next commits will proceed to deprecate / remove functions
that were exclusively (usually belonging to upgradelib) being
used by those, now removed, upgrade steps. This is the list
of code to remove and document in upgrade.txt files:

  - upgrade_analytics_fix_contextids_defaults()
  - upgrade_convert_hub_config_site_param_names()
  - upgrade_rename_prediction_actions_useful_incorrectly_flagged()
  - \mod_forum\task\refresh_forum_post_counts adhoc task.

And these is the code that has NOT been removed
because it may be needed later (no matter there aren't uses now):

  - \core_search\manager::clean_up_non_existing_area(), used by
  - \core\task\clean_up_deleted_search_area_task adhoc task
2022-07-07 19:16:37 +02:00