moodle.git
3 months agoMerge branch 'install_main' of https://git.in.moodle.com/amosbot/moodle-install into...
Mihail Geshoski [Sun, 6 Jul 2025 01:25:02 +0000 (09:25 +0800)]
Merge branch 'install_main' of https://git.in.moodle.com/amosbot/moodle-install into main

3 months agoMerge branch 'MDL-85350_main' of https://github.com/PhilippImhof/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 03:42:18 +0000 (11:42 +0800)]
Merge branch 'MDL-85350_main' of https://github.com/PhilippImhof/moodle into main

3 months agoMerge branch 'MDL-84487_main' of https://github.com/marxjohnson/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 03:28:10 +0000 (11:28 +0800)]
Merge branch 'MDL-84487_main' of https://github.com/marxjohnson/moodle into main

3 months agoMerge branch 'MDL-85200_main' of https://github.com/marxjohnson/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 03:21:41 +0000 (11:21 +0800)]
Merge branch 'MDL-85200_main' of https://github.com/marxjohnson/moodle into main

3 months agoMerge branch 'MDL-85563' of https://github.com/NeillM/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 03:07:24 +0000 (11:07 +0800)]
Merge branch 'MDL-85563' of https://github.com/NeillM/moodle into main

3 months agoMerge branch 'MDL-85210_main' of https://github.com/marxjohnson/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 02:52:30 +0000 (10:52 +0800)]
Merge branch 'MDL-85210_main' of https://github.com/marxjohnson/moodle into main

3 months agoMerge branch 'MDL-85432-main' of https://github.com/sh-csg/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 02:25:18 +0000 (10:25 +0800)]
Merge branch 'MDL-85432-main' of https://github.com/sh-csg/moodle into main

3 months agoMDL-85037 block_html: correct access checks for plugin file serving.
Paul Holden [Tue, 1 Apr 2025 13:54:19 +0000 (14:54 +0100)]
MDL-85037 block_html: correct access checks for plugin file serving.

3 months agoMDL-41924 quiz: Annotate questions for backups
Mark Johnson [Fri, 28 Feb 2025 09:59:30 +0000 (09:59 +0000)]
MDL-41924 quiz: Annotate questions for backups

Find question bank entries for all questions referenced by a question
slot, and for all questions matching a question bank referenced used for
a random question, and record their IDs so they can be included in
backups.

3 months agoMDL-41924 backup: Reduce questions included in backups
Mark Johnson [Thu, 13 Feb 2025 09:31:11 +0000 (09:31 +0000)]
MDL-41924 backup: Reduce questions included in backups

Historically, backups of an activity using questions would include all
questions for the entire context, where any question had been used. This
could lead to very large backup files, and exacerbated problems with
question duplication.

This changes the process for annotating categories to include in the
backup to find specific categories, rather than whole contexts. It
includes 3 groups of categories:
1. Those that belong to the backed up activity's context.
2. Those that contain a question used directly in a question_reference
belonging to the activity.
3. Those that contain a question used via a question_set_reference
belonging to the activity.
It also adds in any parent categories that are not included by the
above, so we have a complete hierarchy.

For group 1, the backup will include all questions belonging to these
categories, as before. For groups 2 and 3, it will only include
questions for question bank entries that have been annotated by the
activity.

3 months agoMDL-83896 mod_lesson: Add course overview integration
Mikel Martín [Wed, 28 May 2025 06:53:16 +0000 (08:53 +0200)]
MDL-83896 mod_lesson: Add course overview integration

- Implement course overview integration
- Redirect index.php to course overview

3 months agoMDL-83896 mod_lesson: Add new methods to lesson class
Mikel Martín [Wed, 18 Jun 2025 12:52:40 +0000 (14:52 +0200)]
MDL-83896 mod_lesson: Add new methods to lesson class

Add new methods to the lesson class that will be needed by
the overview page.

3 months agoMerge branch 'MDL-76342-main' of https://github.com/yusufwib01/moodle
Huong Nguyen [Thu, 3 Jul 2025 02:07:20 +0000 (09:07 +0700)]
Merge branch 'MDL-76342-main' of https://github.com/yusufwib01/moodle

3 months agoMerge branch 'MDL-85769-main' of https://github.com/meirzamoodle/moodle
Huong Nguyen [Thu, 3 Jul 2025 02:05:06 +0000 (09:05 +0700)]
Merge branch 'MDL-85769-main' of https://github.com/meirzamoodle/moodle

3 months agoMerge branch 'patch/MDL-85666-main' of https://github.com/skodak/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 01:56:06 +0000 (09:56 +0800)]
Merge branch 'patch/MDL-85666-main' of https://github.com/skodak/moodle into main

3 months agoMerge branch 'MDL-85725' of https://github.com/paulholden/moodle into main
Mihail Geshoski [Thu, 3 Jul 2025 01:42:53 +0000 (09:42 +0800)]
Merge branch 'MDL-85725' of https://github.com/paulholden/moodle into main

3 months agoMDL-83896 mod_lesson: Add generators for lesson submissions
Mikel Martín [Wed, 18 Jun 2025 12:49:22 +0000 (14:49 +0200)]
MDL-83896 mod_lesson: Add generators for lesson submissions

3 months agoMDL-83896 mod_lesson: Update strings to improve consistency
Mikel Martín [Tue, 17 Jun 2025 14:11:34 +0000 (16:11 +0200)]
MDL-83896 mod_lesson: Update strings to improve consistency

Update how the word ‘attempts’ is used to  make the terminology more consistent
within Lesson and better aligned with how ‘attempts’ is used in other activities.

3 months agoMDL-85069 qbank_bulkmove: Load banks and categories dynamically
Mark Johnson [Mon, 2 Jun 2025 12:49:28 +0000 (13:49 +0100)]
MDL-85069 qbank_bulkmove: Load banks and categories dynamically

The bulk move question dialogue presents 2 autocomplete fields for
selection of the target bank and category to move questions to. This was
loading all banks and categories the user could access, and filtering
categories based on the selected bank.

On large sites, this was not usable as there were too many banks and
categories to load leading to timeouts.

This refactors the dialogue to load just the current bank and cagtegory
initially, then load other options on demand via AJAX.

3 months agoMDL-85069 question: Services for question bank and category search
Mark Johnson [Thu, 29 May 2025 14:09:12 +0000 (15:09 +0100)]
MDL-85069 question: Services for question bank and category search

This updates the core_question_search_shared_banks external function
with additional parameters to make it applicable outside of the "Switch
bank" dialogue in the quiz, with the corresponding changes to the
question_banks_datasource Javascript module, and unit test coverage.

It also adds a new \core_question\output\question_category_selector
class for rendering a select list of question categories, migrating
the logic used in qbank_managecategories to a core namespace. There
is a fragment callback for rendering this via AJAX.

3 months agoMerge branch 'MDL-83891-main' of https://github.com/aanabit/moodle
Amaia Anabitarte [Wed, 2 Jul 2025 06:56:44 +0000 (08:56 +0200)]
Merge branch 'MDL-83891-main' of https://github.com/aanabit/moodle

3 months agoAutomatically generated installer lang files
AMOS bot [Wed, 2 Jul 2025 00:10:02 +0000 (00:10 +0000)]
Automatically generated installer lang files

3 months agoMDL-85721 qtype_numerical: Prevent duplication on restore
Mark Johnson [Thu, 12 Jun 2025 12:37:35 +0000 (13:37 +0100)]
MDL-85721 qtype_numerical: Prevent duplication on restore

If question_numerical record for a question has been deleted, when its
options are loaded its answers will not have a tolerance property. This
can lead to duplication.

Also, older questions may not have a question_numerical_options record.

To avoid this, we use 0 as a default tolerance for all answers if there
is no matching record, and do the same when reading the question
structure from backups. We also generate default values for the rest of
the options.

3 months agoMDL-85721 qtype: Cope with missing options records
Mark Johnson [Thu, 12 Jun 2025 12:32:20 +0000 (13:32 +0100)]
MDL-85721 qtype: Cope with missing options records

If we restore a question (or any other) which has had its
qtype_xxx_options record deleted, we get a notification output when we
try to build the options.

This may be called from an AJAX request (such as when we duplicate a
quiz), and outputting the notification breaks the AJAX response.
Returning false also means we don't get the answers attached to the
questiondata options, so the structure doesn't match the restored data,
and we get duplication.

This emits the errors via debugging instead, which allows it to be
supressed or logged, and allows get_question_options() to continue
running.

3 months agoMDL-85721 qtype_multianswer: Clean up duplicate subquestions
Mark Johnson [Tue, 10 Jun 2025 13:09:30 +0000 (14:09 +0100)]
MDL-85721 qtype_multianswer: Clean up duplicate subquestions

This adds an ad-hoc task to clean up duplicate subquestions created by
the bug.

When the upgrade is run, it will run a query to check if any
subquestions have been duplicated (if there are multiple questions with
the same parent, text and stamp), and queue the cleanup task if there
are.

For each stamp identified, the task will find instances of the question
that are not referred to in their parent's sequence field, confirm that
they have 0 usages, and delete them.

3 months agoMDL-85721 qtype_multichoice: Generate default options on restore
Mark Johnson [Mon, 9 Jun 2025 14:40:21 +0000 (15:40 +0100)]
MDL-85721 qtype_multichoice: Generate default options on restore

qtype_multichoice::get_question_options() will create a default options
object if no qtype_multichoice_options record exists. This means if we
restore a backup containing a multichoice question without any options
(see previous commit), it will always create a duplicate.

This change generates a default set of options for the backupdata if
none exists, so the identity hash will match if the same question exists
in the database without options, and we dont get duplicates.

3 months agoMDL-85721 qtype_multianswer: Don't delete qtype data for subquestions
Mark Johnson [Mon, 9 Jun 2025 14:37:16 +0000 (15:37 +0100)]
MDL-85721 qtype_multianswer: Don't delete qtype data for subquestions

Historically, multianswer would re-use question IDs from subquestions,
so it was necessary to delete qtype-specific data if the qtype changed.
Since versioning was introduced, editing creates new versions of the
qtype and subquestions. Deleting the data means the original versions of
the subquestions cannot function correctly, so we shouldn't do that
anymore.

3 months agoMerge branch 'MDL-84531' of https://github.com/paulholden/moodle
Andrew Nicols [Tue, 1 Jul 2025 09:33:38 +0000 (17:33 +0800)]
Merge branch 'MDL-84531' of https://github.com/paulholden/moodle

3 months agoMDL-85666 phpunit: add general plugin tests
Petr Skoda [Tue, 10 Jun 2025 09:12:27 +0000 (11:12 +0200)]
MDL-85666 phpunit: add general plugin tests

This defines new group which can be used
to limit execution of these tests to one plugin only.

For example to execute all tests for Label module use:

phpunit --testsuite=mod_label_testsuite
phpunit --group=plugin_checks --filter=mod_label

or

phpunit --filter=mod_label

3 months agoMDL-84795 reportbuilder: consistent/performant loading of context data.
Paul Holden [Mon, 3 Mar 2025 10:25:30 +0000 (10:25 +0000)]
MDL-84795 reportbuilder: consistent/performant loading of context data.

Ensure we select only context related fields as provided by the helper,
and avoid empty joins by loading instances with the helper-specified ID
field `{$tablealias}.ctxid`.

3 months agoMDL-85069 question: Fix return URL parameters after moving questions
Mark Johnson [Thu, 29 May 2025 14:04:13 +0000 (15:04 +0100)]
MDL-85069 question: Fix return URL parameters after moving questions

When calling the core_question_move_questions external function, the
returned $returnurl paramater kept the original `cat`, `category` and
`lastchanged` parameters.

If the question was moved to another question bank, this meant the user
would be redirected to that bank, but the URL would still refer to the
category in the original bank. Opening the bulk move dialogue again
would then show the original bank and category selected by default, not
the current one.

This change ensures the cat parameter is updated to match the new
category, unsets the `category` parameter as it is redundant. If a single
question is moved, "lastchanged" is updated to that question, otherwise
it is unset.

3 months agoMDL-85069 qbank: Add tool_generator callback
Mark Johnson [Thu, 29 May 2025 13:59:07 +0000 (14:59 +0100)]
MDL-85069 qbank: Add tool_generator callback

This adds a callback for tool_generator and the required lang strings to
allow qbanks to be generated as part of test courses, by passing the
--additionalmodules=qbank argument to maketestcourse.php.

3 months agoMDL-85563 phpunit: Clock API should always use Moodle system time
Neill Magill [Thu, 22 May 2025 09:17:37 +0000 (10:17 +0100)]
MDL-85563 phpunit: Clock API should always use Moodle system time

When using `clock::now()` the frozen cloxk and incrementing clock will now
always return a `DateTimeImmutable` that uses the configured Moodle system
time. In unit tests this will be Australia/Perth.

Before this change, it would sometimes be UCT.

3 months agoMDL-85881 questions: Handle multi-byte names during migration
Mark Johnson [Mon, 30 Jun 2025 10:07:14 +0000 (11:07 +0100)]
MDL-85881 questions: Handle multi-byte names during migration

We were using strlen() instead of core_text::strlen() when checking the
length of a question bank name created during the migration. This meant
that multibyte strings were counted as being too long, even though they
were within the character limit.

3 months agoMDL-85880 reportbuilder: replace jQuery usage for parsing Javascript.
Paul Holden [Thu, 5 Jun 2025 20:15:58 +0000 (21:15 +0100)]
MDL-85880 reportbuilder: replace jQuery usage for parsing Javascript.

3 months agoMerge branch 'MDL-85533-main-v03' of https://github.com/ferranrecio/moodle
cescobedo [Mon, 30 Jun 2025 07:12:54 +0000 (09:12 +0200)]
Merge branch 'MDL-85533-main-v03' of https://github.com/ferranrecio/moodle

3 months agoMDL-85533 course: activity chooser full refactor
ferran [Mon, 19 May 2025 16:17:22 +0000 (18:17 +0200)]
MDL-85533 course: activity chooser full refactor

3 months agoMDL-85533 course: remove activitychoosertabmode setting
ferran [Thu, 22 May 2025 14:00:31 +0000 (16:00 +0200)]
MDL-85533 course: remove activitychoosertabmode setting

3 months agoMerge branch 'MDL-79319-main' of https://github.com/laurentdavid/moodle
cescobedo [Mon, 30 Jun 2025 06:24:55 +0000 (08:24 +0200)]
Merge branch 'MDL-79319-main' of https://github.com/laurentdavid/moodle

3 months agoMDL-85779 block_timeline: fix/restore sort toggle dropdown behaviour.
Paul Holden [Sun, 29 Jun 2025 15:06:09 +0000 (23:06 +0800)]
MDL-85779 block_timeline: fix/restore sort toggle dropdown behaviour.

Changes during Bootstrap upgrade, in conjunction with both 8a8c8ab2 and
0c586b41, caused the layout to deviate from that expected elsewhere for
managing of Bootstrap dropdown elements. Thus the dynamically chosen
item was no longer being shown as selected. Fix that here.

3 months agoweekly release 5.1dev
Huong Nguyen [Sun, 29 Jun 2025 09:18:19 +0000 (16:18 +0700)]
weekly release 5.1dev

3 months agoNOBUG: Add upgrade notes
Huong Nguyen [Sun, 29 Jun 2025 09:18:19 +0000 (16:18 +0700)]
NOBUG: Add upgrade notes

3 months agoMDL-85769 AI: Trap focus within AI drawer on smaller screens
meirzamoodle [Tue, 24 Jun 2025 02:07:18 +0000 (09:07 +0700)]
MDL-85769 AI: Trap focus within AI drawer on smaller screens

Co-authored-by: Laurent David <laurent.david@moodle.com>
3 months agoMDL-85855 calendar: format course shortname attribute correctly.
Paul Holden [Thu, 26 Jun 2025 13:45:34 +0000 (21:45 +0800)]
MDL-85855 calendar: format course shortname attribute correctly.

3 months agoMDL-84487 mod_quiz: Use modal form for editing random questions
Mark Johnson [Tue, 17 Jun 2025 15:32:02 +0000 (16:32 +0100)]
MDL-84487 mod_quiz: Use modal form for editing random questions

Creating and editing random questions were using 2 different forms - one
dynamic form in a modal, and the other a regular form on a standalone
page. The "Switch bank" UI only works in a modal, so while it was
displayed on the edit page, it didn't function.

This combines the editing functionality with the existing modal form, so
the same UI can be used for both operations, and the "Switch bank"
functionality works.

3 months agoMDL-83891 mod_data: Redirect index.php to activities overview page
Amaia Anabitarte [Wed, 28 May 2025 09:43:23 +0000 (11:43 +0200)]
MDL-83891 mod_data: Redirect index.php to activities overview page

3 months agoMDL-83891 mod_data: Add overview page
Amaia Anabitarte [Tue, 20 May 2025 16:55:28 +0000 (18:55 +0200)]
MDL-83891 mod_data: Add overview page

3 months agoMDL-85825 behat: Exclude fieldsets
Jayce Birrell [Thu, 26 Jun 2025 05:53:45 +0000 (15:23 +0930)]
MDL-85825 behat: Exclude fieldsets

Fieldsets were getting incorrectly picked up from the 'form_row' selector
which was causing the i_expand_the_autocomplete() function to target the wrong element

3 months agoMerge branch 'MDL-85665-main' of https://github.com/andelacruz/moodle into main
Mihail Geshoski [Thu, 26 Jun 2025 02:46:54 +0000 (10:46 +0800)]
Merge branch 'MDL-85665-main' of https://github.com/andelacruz/moodle into main

3 months agoMerge branch 'MDL-83752' of https://github.com/ziegenberg/moodle
Huong Nguyen [Thu, 26 Jun 2025 02:19:27 +0000 (09:19 +0700)]
Merge branch 'MDL-83752' of https://github.com/ziegenberg/moodle

3 months agoMerge branch 'MDL-83365-main' of https://github.com/andrewnicols/moodle
Huong Nguyen [Thu, 26 Jun 2025 02:06:28 +0000 (09:06 +0700)]
Merge branch 'MDL-83365-main' of https://github.com/andrewnicols/moodle

3 months agoMDL-83365 upgradenotes: Add release notes link generator
Andrew Nicols [Fri, 4 Oct 2024 08:47:42 +0000 (16:47 +0800)]
MDL-83365 upgradenotes: Add release notes link generator

3 months agoMerge branch 'MDL-76414-main' of https://github.com/yusufwib01/moodle
Huong Nguyen [Thu, 26 Jun 2025 01:29:32 +0000 (08:29 +0700)]
Merge branch 'MDL-76414-main' of https://github.com/yusufwib01/moodle

3 months agoMerge branch 'MDL-85734-main' of https://github.com/lucaboesch/moodle
Huong Nguyen [Thu, 26 Jun 2025 01:25:41 +0000 (08:25 +0700)]
Merge branch 'MDL-85734-main' of https://github.com/lucaboesch/moodle

3 months agoMerge branch 'MDL-85466-main' of https://github.com/lucaboesch/moodle
Huong Nguyen [Thu, 26 Jun 2025 01:22:13 +0000 (08:22 +0700)]
Merge branch 'MDL-85466-main' of https://github.com/lucaboesch/moodle

3 months agoMerge branch 'MDL-82109' of https://github.com/paulholden/moodle
Huong Nguyen [Thu, 26 Jun 2025 01:19:38 +0000 (08:19 +0700)]
Merge branch 'MDL-82109' of https://github.com/paulholden/moodle

3 months agoMDL-83895 mod_h5pactivity: Fix Overview column name
Amaia Anabitarte [Tue, 24 Jun 2025 08:02:54 +0000 (10:02 +0200)]
MDL-83895 mod_h5pactivity: Fix Overview column name

3 months agoMDL-60799 enrol: update_instance() needs separate objects passed
Jonathon Fowler [Tue, 28 Jan 2025 04:43:59 +0000 (14:43 +1000)]
MDL-60799 enrol: update_instance() needs separate objects passed

Passing the same object means enrol_cohort does not recognise a change
in role when an edit or batch course upload operation is done.

 * enrol/editinstance.php was modifying $instance before passing it to
   enrol_plugin::update_instance() so the latter never sees a difference
   versus $data. This is redundant since update_instance() is doing the
   same thing a second time.
 * admin/tool/uploadcourse/classes/course.php is passing the same object
   as both arguments to enrol_plugin::update_instance().

There is an expectation that update_enrol_plugin_data() is to mutate its
$instance argument and then return it based on how derived classes in
enrol_guest and enrol_self behave, so cloning $instance within
update_enrol_plugin_data() before mutating it isn't an option.

4 months agoMDL-85665 mod_quiz: Behat to build quiz in single activity format course
andelacruz [Wed, 11 Jun 2025 09:21:03 +0000 (17:21 +0800)]
MDL-85665 mod_quiz: Behat to build quiz in single activity format course

4 months agoMDL-83752 workshop: Handle empty feedbackreviewer
Daniel Ziegenberg [Mon, 18 Nov 2024 17:00:42 +0000 (18:00 +0100)]
MDL-83752 workshop: Handle empty feedbackreviewer

Causes PHP warnings when null on PHP 8.1.

Signed-off-by: Daniel Ziegenberg <daniel@ziegenberg.at>
4 months agoMerge branch 'MDL-85683' of https://github.com/paulholden/moodle
Huong Nguyen [Tue, 24 Jun 2025 02:21:06 +0000 (09:21 +0700)]
Merge branch 'MDL-85683' of https://github.com/paulholden/moodle

4 months agoMerge branch 'MDL-85644' of https://github.com/paulholden/moodle
Huong Nguyen [Tue, 24 Jun 2025 02:18:59 +0000 (09:18 +0700)]
Merge branch 'MDL-85644' of https://github.com/paulholden/moodle

4 months agoMerge branch 'MDL-85407' of https://github.com/durenadev/moodle
Huong Nguyen [Tue, 24 Jun 2025 02:16:42 +0000 (09:16 +0700)]
Merge branch 'MDL-85407' of https://github.com/durenadev/moodle

4 months agoMerge branch 'MDL-83895-main' of https://github.com/aanabit/moodle
cescobedo [Mon, 23 Jun 2025 13:14:31 +0000 (15:14 +0200)]
Merge branch 'MDL-83895-main' of https://github.com/aanabit/moodle

4 months agoMerge branch 'MDL-85436-main' of https://github.com/sarjona/moodle
cescobedo [Mon, 23 Jun 2025 08:20:31 +0000 (10:20 +0200)]
Merge branch 'MDL-85436-main' of https://github.com/sarjona/moodle

4 months agoMDL-83891 mod_data: Add approved option to entries generator
Amaia Anabitarte [Wed, 28 May 2025 09:30:34 +0000 (11:30 +0200)]
MDL-83891 mod_data: Add approved option to entries generator

4 months agoMDL-85734 calendar: support multilang group names.
Luca Bösch [Tue, 10 Jun 2025 13:56:28 +0000 (15:56 +0200)]
MDL-85734 calendar: support multilang group names.

4 months agoMDL-85466 course: space between number and course icon.
Luca Bösch [Tue, 20 May 2025 15:38:08 +0000 (17:38 +0200)]
MDL-85466 course: space between number and course icon.

4 months agoMDL-85436 lib: Deprecate unused icons
Sara Arjona [Mon, 16 Jun 2025 15:22:56 +0000 (17:22 +0200)]
MDL-85436 lib: Deprecate unused icons

4 months agoMDL-85825 core_form: enable hideIf() on header element
Andrew Gosali [Wed, 11 Jun 2025 06:24:17 +0000 (13:24 +0700)]
MDL-85825 core_form: enable hideIf() on header element

4 months agoweekly release 5.1dev
Huong Nguyen [Fri, 20 Jun 2025 08:14:03 +0000 (15:14 +0700)]
weekly release 5.1dev

4 months agoNOBUG: Add upgrade notes
Huong Nguyen [Fri, 20 Jun 2025 08:14:03 +0000 (15:14 +0700)]
NOBUG: Add upgrade notes

4 months agoMerge branch 'install_main' of https://git.in.moodle.com/amosbot/moodle-install
Huong Nguyen [Fri, 20 Jun 2025 08:13:45 +0000 (15:13 +0700)]
Merge branch 'install_main' of https://git.in.moodle.com/amosbot/moodle-install

4 months agoMerge branch 'MDL-75947-integration-main-fix' of https://github.com/mihailges/moodle
Sara Arjona [Thu, 19 Jun 2025 15:21:57 +0000 (17:21 +0200)]
Merge branch 'MDL-75947-integration-main-fix' of https://github.com/mihailges/moodle

4 months agoMDL-85210 mod_qbank: Update question set references during upgrade
Mark Johnson [Tue, 3 Jun 2025 10:26:44 +0000 (11:26 +0100)]
MDL-85210 mod_qbank: Update question set references during upgrade

When moving question categories during the migration to mod_qbank, set
references using questions in those categories were not updated with the
new context.

Furthermore, since top categories from system, category and course
contexts are deleted and not moved, and set references that filtered
based on a top category were left pointing to a non-existant category.

This change updates set references using the top category to point to
the new top category where its subcategories are moved, and updates set
references for all subcategories to set the new context.

4 months agoMDL-85210 question: Update move_question_set_references
Mark Johnson [Tue, 3 Jun 2025 13:08:54 +0000 (14:08 +0100)]
MDL-85210 question: Update move_question_set_references

move_question_set_references expected the set reference to use the old
filter format.

This change converts the filter to the new format if required, before
updating the category and context ids.

4 months agoMDL-75947 ltiservice_gradebookservices: Fix unit test
Mihail Geshoski [Thu, 19 Jun 2025 08:15:36 +0000 (16:15 +0800)]
MDL-75947 ltiservice_gradebookservices: Fix unit test

Fixes the test_sequential_score_posts() unit test in lineitem_test
by removing dynamic class property assignments, which were triggering
deprecation notices.

4 months agoMDL-76414 navigation: Show 'Calendar' link in primary nav to guests
yusufwib01 [Wed, 4 Jun 2025 20:40:58 +0000 (03:40 +0700)]
MDL-76414 navigation: Show 'Calendar' link in primary nav to guests

4 months agoMDL-85307 filter_glossary: Do not filter concept
Jayce Birrell [Wed, 28 May 2025 22:57:10 +0000 (08:27 +0930)]
MDL-85307 filter_glossary: Do not filter concept

Filtering the concept here causes a recursive loop, disabling it here will prevent this.

4 months agoMerge branch 'MDL-85399' of https://github.com/paulholden/moodle
Huong Nguyen [Thu, 19 Jun 2025 04:33:31 +0000 (11:33 +0700)]
Merge branch 'MDL-85399' of https://github.com/paulholden/moodle

4 months agoMerge branch 'MDL-85120' of https://github.com/paulholden/moodle
Huong Nguyen [Thu, 19 Jun 2025 04:29:35 +0000 (11:29 +0700)]
Merge branch 'MDL-85120' of https://github.com/paulholden/moodle

4 months agoMerge branch 'MDL-85223' of https://github.com/paulholden/moodle
Huong Nguyen [Thu, 19 Jun 2025 04:25:58 +0000 (11:25 +0700)]
Merge branch 'MDL-85223' of https://github.com/paulholden/moodle

4 months agoMerge branch 'MDL-75947-main' of https://github.com/Jayce0808/moodle into main
Mihail Geshoski [Thu, 19 Jun 2025 04:19:50 +0000 (12:19 +0800)]
Merge branch 'MDL-75947-main' of https://github.com/Jayce0808/moodle into main

4 months agoMerge branch 'MDL-79052_final-deprecation-of-removing-the-legacy-theme-settings'...
Huong Nguyen [Thu, 19 Jun 2025 04:15:45 +0000 (11:15 +0700)]
Merge branch 'MDL-79052_final-deprecation-of-removing-the-legacy-theme-settings' of https://github.com/ziegenberg/moodle

4 months agoMerge branch 'MDL-78375_final-deprecation-of-device-related-theme-functions' of https...
Huong Nguyen [Thu, 19 Jun 2025 04:13:19 +0000 (11:13 +0700)]
Merge branch 'MDL-78375_final-deprecation-of-device-related-theme-functions' of https://github.com/ziegenberg/moodle

4 months agoMerge branch 'MDL-85678-main' of https://github.com/junpataleta/moodle
Huong Nguyen [Thu, 19 Jun 2025 04:07:23 +0000 (11:07 +0700)]
Merge branch 'MDL-85678-main' of https://github.com/junpataleta/moodle

4 months agoMerge branch 'MDL-83487-main' of https://github.com/muhammadarnaldo/moodle into main
Mihail Geshoski [Thu, 19 Jun 2025 03:33:17 +0000 (11:33 +0800)]
Merge branch 'MDL-83487-main' of https://github.com/muhammadarnaldo/moodle into main

4 months agoMerge branch 'MDL-85159-main' of https://github.com/stevandoMoodle/moodle
Huong Nguyen [Thu, 19 Jun 2025 03:03:25 +0000 (10:03 +0700)]
Merge branch 'MDL-85159-main' of https://github.com/stevandoMoodle/moodle

4 months agoMerge branch 'MDL-85514-main' of https://github.com/snake/moodle into main
Mihail Geshoski [Thu, 19 Jun 2025 03:01:07 +0000 (11:01 +0800)]
Merge branch 'MDL-85514-main' of https://github.com/snake/moodle into main

4 months agoMDL-76342 core_output: Wrap buttons below heading on small screens
yusufwib01 [Wed, 11 Jun 2025 15:34:08 +0000 (22:34 +0700)]
MDL-76342 core_output: Wrap buttons below heading on small screens

4 months agoMDL-85514 core_form: support 'in' rule for multiselects via subset of
Jake Dallimore [Fri, 16 May 2025 02:17:10 +0000 (10:17 +0800)]
MDL-85514 core_form: support 'in' rule for multiselects via subset of

The 'in' rule currently behaves the same way that 'eq' does when used
with multi-selects, which is not correct. It should be modelled by
checking whether the selected values are a subset of the rule values
(i.e. selected values are 'in' the rule values). This patch implements
that for core form rules as well as for the admin settings show/hide.
Several behat features are updated as well, because these were verifying
the incorrect behaviour for multi-select in rules.

4 months agoMerge branch 'MDL-83904-master' of https://github.com/ngtrdai/moodle
Sara Arjona [Wed, 18 Jun 2025 15:19:05 +0000 (17:19 +0200)]
Merge branch 'MDL-83904-master' of https://github.com/ngtrdai/moodle

4 months agoMerge branch 'MDL-85463-main' of https://github.com/sarjona/moodle
Sara Arjona [Wed, 18 Jun 2025 11:18:07 +0000 (13:18 +0200)]
Merge branch 'MDL-85463-main' of https://github.com/sarjona/moodle

4 months agoMDL-79052 core: Final deprecation of removing the legacy theme settings
Daniel Ziegenberg [Thu, 13 Feb 2025 13:26:15 +0000 (14:26 +0100)]
MDL-79052 core: Final deprecation of removing the legacy theme settings

4 months agoMDL-78375 core: Final deprecation of device related theme functions
Daniel Ziegenberg [Thu, 13 Feb 2025 11:26:12 +0000 (12:26 +0100)]
MDL-78375 core: Final deprecation of device related theme functions

Signed-off-by: Daniel Ziegenberg <daniel@ziegenberg.at>
4 months agoMerge branch 'MDL-85158' of https://github.com/pedrojordao/moodle into main
Paul Holden [Wed, 18 Jun 2025 09:01:45 +0000 (10:01 +0100)]
Merge branch 'MDL-85158' of https://github.com/pedrojordao/moodle into main

4 months agoMerge branch 'MDL-42263-main' of https://github.com/Jayce0808/moodle into main
Mihail Geshoski [Wed, 18 Jun 2025 08:19:24 +0000 (16:19 +0800)]
Merge branch 'MDL-42263-main' of https://github.com/Jayce0808/moodle into main

4 months agoMDL-73003 core_grades: Don't use 'scale' to determine grading method.
Jayce Birrell [Tue, 10 Jun 2025 00:54:13 +0000 (10:24 +0930)]
MDL-73003 core_grades: Don't use 'scale' to determine grading method.

When a forum activity used a rubrics with a scale for grading, it was not treated as an advanced grading method, causing
the code to mishandle the grading object and not return any grades.

4 months agoMDL-83904 badges: Add namespace to badges/classes/observer.php
Dai Nguyen Trong [Thu, 20 Mar 2025 02:37:01 +0000 (09:37 +0700)]
MDL-83904 badges: Add namespace to badges/classes/observer.php

4 months agoMerge branch 'MDL-85742-main' of https://github.com/lucaboesch/moodle
Huong Nguyen [Wed, 18 Jun 2025 03:10:39 +0000 (10:10 +0700)]
Merge branch 'MDL-85742-main' of https://github.com/lucaboesch/moodle