3067 Commits

Author SHA1 Message Date
Ferran Recio
1c0abade3e MDL-71863 core_courseformat: mode site renderer to autoload 2021-06-29 11:52:48 +02:00
Ferran Recio
21d93554d4 MDL-71863 courseformat: create courseformat subsystem 2021-06-28 13:50:18 +02:00
Sara Arjona
6347b916bc MDL-71165 course: core_course_update_course external method 2021-06-14 14:36:20 +08:00
Andrew Nicols
7782eeb55e Merge branch 'MDL-65637-master' of git://github.com/peterRd/moodle 2021-06-09 13:22:49 +08:00
Sara Arjona
5f91cbb611 MDL-71135 course: core_course_get_state external method 2021-06-04 16:43:28 +02:00
Eloy Lafuente (stronk7)
0f5e9aa759 Merge branch 'master-MDL-71438_v2' of https://github.com/golenkovm/moodle 2021-06-02 23:51:52 +02:00
Mikhail Golenkov
ee3c6ad3ac MDL-71438 blocks: Add index on mdl_user_preferences.name 2021-06-02 22:10:37 +10:00
Peter Dias
8e71f6b1f1 MDL-65637 core_oauth2: Introduce a new custom linkedin oauth2 client 2021-06-02 08:11:38 +08:00
Ilya Tregubov
430746d3a2 MDL-66431 core: Remove activity chooser user preference.
This commit removes activity chooser user preference and
course preference page. Separate dropdowns to activity and
resource is also removed.
2021-05-01 16:21:59 +02:00
Jun Pataleta
fca42002f7 MDL-71370 course: Make showcompletionconditions nullable
* When completion tracking is not enabled for the course, it does not
make sense for the course's showcompletionconditions setting to
be set according to the default value indicated by the
"moodlecourse | showcompletionconditions" admin setting. Setting
showcompletionconditions as enabled when completion tracking is disabled
makes even less sense. So in such a case, we should not be setting a
default value for showcompletionconditions and allow it to be null.

* When the course is edited and completion tracking is enabled, this
also would set the "Show completion conditions" field to default to the
value set in the "moodlecourse | showcompletionconditions" admin
setting.
2021-04-24 19:07:42 +08:00
Jun Pataleta
e853e6b7db Merge branch 'MDL-71156-master' of git://github.com/lameze/moodle 2021-04-22 11:51:59 +08:00
Simey Lameze
5b0282847e MDL-71156 core: machinery to recover orphaned calendar events
The machinery to fix orphaned calendar events that were broken by MDL-67494.

The solution consists of:

1) Upgrade step that checks if this site has executed the problematic upgrade steps and
   if positive, it will schedule a new run for calendar_fix_orphaned_events adhoc task.

2) Adhoc task that will self-spawn calling the recovery machinery, running until
   all the orphaned calendar events are fixed. It also sets the maximum runtime of
   60 seconds. It is also possible to override that number by specifing the desired
   number setting the ->calendareventsmaxseconds in your config.php

3) CLI script that will look for all the calendar events which userids
   where broken by a wrong upgrade step, affecting to Moodle 3.9.5
   and up.

   It performs checks to both:
     a) Detect if the site was affected (ran the wrong upgrade step).
     b) Look for orphaned calendar events, categorising them as:
       - standard: site / category / course / group / user events
       - subscription: events created via subscriptions.
       - action: normal action events, created to show common important dates.
       - override: user and group override events, particular, that some activities support.
       - custom: other events, not being any of the above, common or particular.

   By specifying it (--fix) try to recover as many broken events (missing userid) as
   possible. Standard, subscription, action, override events in core are fully supported but
   override or custom events should be fixed by each plugin as far as there isn't any standard
   API (plugin-wise) to launch a rebuild of the calendar events.

4) Unit tests and helper functions to generate calendar events. We have decided to
   keep the tests simple, testing only true and false and not using data generators because
   the code is purely to recover the calendar events and won't turn into an API or something
   and also due to the urgency of this issue.
   The helpers have been created in calendar/tests/helpers.php since there are no data generators
   for calendar.
2021-04-22 10:28:52 +08:00
abgreeve
8a53fe7f6b Merge branch 'MDL-28452-master' of git://github.com/bmbrands/moodle 2021-04-22 09:38:50 +08:00
Bas Brands
f9e1c2587a MDL-28452 core_user: migrate social profile fields
Create a new profile field type, move all existing content of the fields
'icq', 'skype', 'aim', 'yahoo', 'msn' and 'url' in the mdl_user table to
theses new profile fields if needed.

AMOS BEGIN
MOV [aimid,core],[aimid,courseimage,profilefield_social]
MOV [yahooid,core],[yahooid,profilefield_social]
MOV [skypeid,core],[skypeid,profilefield_social]
MOV [icqnumber,core],[icqnumber,profilefield_social]
MOV [msnid,core],[msnid,profilefield_social]
MOV [webpage,core],[webpage,profilefield_social]
AMOS END
2021-04-21 11:22:25 +02:00
Jun Pataleta
610b339c6e Merge branch 'MDL-71017-master-2' of git://github.com/marinaglancy/moodle 2021-04-21 14:58:06 +08:00
Marina Glancy
0152fdbdff MDL-71017 oauth2: configure some oauth2 services for login only 2021-04-20 10:50:40 +02:00
Eloy Lafuente (stronk7)
be927f0327 MDL-71031 external: Minor tweaks towards coding style and external rules
- Some small namespace/use/MOODLE_INTERNAL/requires reorganization.
- Move file phpdocs to class phpdocs.
- Move external method names to be new "execute" default ones.
- Move unit tests to matching core_grades\external namespace.
- Add missing clean_returnvalue() calls.
2021-04-18 11:52:14 +02:00
Peter Burnett
71ffad7ea6 MDL-71031 webservices: Extended gradecategory creation API
This adds a new webservice that creates gradecategories as a batch,
and deprecates the old single creation call, which is superseded.
It also patches a few small issues in the single WS, for any integrations
currently relying on that webservice.
2021-04-18 11:52:07 +02:00
Sara Arjona
d3d3b3bdc0 MDL-69331 core_h5p: Add enabled field to libraries
The "enabled" field has been added to the H5P libraries to let
admins decide whether a library should be used or not in the site.
2021-04-15 09:03:56 +02:00
Andrew Nicols
c10791cab9 Merge branch 'MDL-71169-master-execute' of git://github.com/mudrd8mz/moodle 2021-04-14 08:35:07 +08:00
Adrian Greeve
03e0523e22 MDL-70817 lib: Update the install xml file to use the correct length.
The showactivitydates field had the wrong length of 4. This changes
it to 1.
2021-04-06 15:42:27 +08:00
Simey Lameze
a4f7c1d91f MDL-70781 course: setting for displaying completion conditions
Part of MDL-70817
2021-04-02 21:53:20 +08:00
Simey Lameze
680018c95d MDL-70782 course: add setting to show activity dates
Part of MDL-70817
2021-04-02 21:53:20 +08:00
Jun Pataleta
6fc9b23d3d MDL-70817 core: Allow the manual completion update WS function for AJAX
Allow the core_completion_update_activity_completion_status_manually
web service function to be called from AJAX as well. This is needed
by the new manual completion toggle button in the
core_course/completion_manual template.
2021-04-02 21:53:20 +08:00
Simey Lameze
1fcd850859 MDL-71182 calendar: Revert "Merge branch 'MDL-67494-master' of git://github.com/lameze/moodle"
This reverts commit 9d58d4de46e9415eb4ac405a340381de44c510c1, reversing
changes made to 535c0277de3547f02d94959fbe103e44a6706d4e.
2021-03-24 09:11:01 +08:00
David Mudrák
22ecf2f9b8 MDL-71169 external: Do not explicitly specify the default methodname 2021-03-22 15:56:46 +01:00
Eloy Lafuente (stronk7)
3edac87e20 Merge branch 'MDL-70689-master' of git://github.com/sarjona/moodle 2021-03-17 23:20:37 +01:00
Eloy Lafuente (stronk7)
f0733b2f41 Merge branch 'MDL-67748-master-managewebservices' of git://github.com/mudrd8mz/moodle 2021-03-16 19:02:10 +01:00
David Mudrák
f51d3a81d6 MDL-67748 user: Add a new core_user_search_identity external function
The purpose of this external function is to provide data for
asynchronous user selectors and similar widgets. It allows to search
users matching the given query in their name or other available identity
fields.
2021-03-15 21:24:05 +01:00
Jun Pataleta
839abe254c Merge branch 'MDL-66667-cache-course-image-master' of https://github.com/dmitriim/moodle 2021-03-15 17:19:06 +08:00
Adrian Greeve
00cb88c352 Merge branch 'MDL-65974-master-iteration03' of git://github.com/ferranrecio/moodle 2021-03-15 15:16:44 +08:00
Dmitrii Metelkin
2affc87d2b MDL-66667 course: add course image cache 2021-03-15 12:50:35 +11:00
Sara Arjona
5066c60206 MDL-70689 oauth2: add support to IMS OBv2.1 service
In order to make easier to create and maintain new OAuth2 services,
a couple of classes have been added:

- discovery\* contains methods related to the discovery system. Until
now, only OpenID Connect was supported by Moodle so all the code was
centralised in api.php.
With this patch, as IMS OBv2.1 has a different discovery system, a new
abstract class (base_definition) has been added to be called and let
every discovery system (OpenID Connect, IMS Badge Connect...)
implement their own methods.

- service\* . Instead of keep adding methods to the api, the service
namespace has been created to store all the standard issuer services.
An interface (issuer_interface) has been created and all the services
should implement it.
This patch creates the "IMS OBv2.1" and "Custom" services and moves
the methods for "Google" service because it uses the OpenID connect
discovery system.
2021-03-12 12:31:22 +01:00
Ferran Recio
1c839f9072 MDL-65974 course: move format_base to core_course\course_format 2021-03-11 17:36:34 +01:00
Sara Arjona
49c1d41a60 MDL-70911 core_badges: Remove $CFG->badges_site_backpack
The $CFG->badges_site_backpack setting has been completely removed
because it's not required anymore. From now, the primary site
backpack will be the first one in the "Manage backpacks" list (so,
the one with lower sortorder value).
2021-03-10 09:09:05 +01:00
Sara Arjona
9d58d4de46 Merge branch 'MDL-67494-master' of git://github.com/lameze/moodle 2021-03-03 11:45:28 +01:00
Simey Lameze
ba04a79ac6 MDL-67494 calendar: step to set userid 0 to all shared events 2021-03-03 16:06:32 +08:00
Sara Arjona
9e5655b7c7 MDL-70913 core_badges: Use and update properly sortorder
Sortorder field in badge_external_backpack was updated with a wrong
value. This patch fixes this behaviour and adds sortorder as
sorting criteria for displaying the list of site backpacks.

In the phpunit method reviewed for covering this, a couple of
assertEquals() calls have been changed too to put the expected value
first.
2021-03-01 13:04:00 +01:00
Andrew Nicols
d6e50d14d2 Merge branch 'MDL-64554-master' of git://github.com/andrewnicols/moodle 2021-02-18 10:21:55 +08:00
Marina Glancy
72be49c473 MDL-64554 core_form: new API for modal forms 2021-02-17 18:06:49 +01:00
Eloy Lafuente (stronk7)
3d117c1934 Merge branch 'MDL-48269-master-4' of git://github.com/junpataleta/moodle 2021-02-16 19:45:44 +01:00
Frederic Massart
3aed37ee4d MDL-48269 group: Remove the option to hide the picture of a group
Plus additional amendments to Fred's original commit:
1. Updating the version numbers
2. Merging the original two-step upgrade below into one for simplicity:
   1. Deleting the pictures for groups with hidepicture set to 1; and
   2. Dropping the hidepicture field itself.
3. Converted array() usages to the short syntax [].
2021-02-16 12:46:58 +08:00
François Moreau
3776fbafb2 MDL-69762 core_contentbank: let users hide their content 2021-02-15 13:26:32 -05:00
Sara Arjona
a35c197a4a Merge branch 'MDL-66769-master' of git://github.com/ilyatregubov/moodle 2021-02-03 09:32:30 +01:00
Ilya Tregubov
dde8a5b62c MDL-66769 core_h5p: Clean up orphaned h5p records task. 2021-02-03 10:10:30 +02:00
Eloy Lafuente (stronk7)
cd4d387936 Merge branch 'MDL-70648-master' of git://github.com/lameze/moodle 2021-02-01 19:13:47 +01:00
Simey Lameze
e8bd3b41a3 MDL-70648 calendar: upgrade step to delete wrong cat events 2021-01-20 09:36:24 +08:00
Sara Arjona
7d24686e59 Merge branch 'MDL-69308' of https://github.com/stronk7/moodle 2021-01-14 12:03:30 +01:00
Eloy Lafuente (stronk7)
77342b96fc MDL-69308 upgrade: remove all the < 3.6.0 upgrade steps
This just deletes all the upgrade steps previous to 3.6.0. Some
small adjustments, like tweaking globals can also be applied
when needed.

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

Note that in this case, there wasn't any case of upgradelib
functions being used, hence we haven't to deprecate/remove
anything in codebase. When there is such a need, that is done
in separate commits (one for each function) and documented here.

See MDL-65809 commits for an example removing/deprecating a
good number of functions.
2021-01-13 19:11:19 +01:00
Juan Leyva
7f02879ce7 MDL-70387 files: New WS core_files_get_unused_draft_itemid 2021-01-13 13:01:40 +01:00