Commit graph

109565 commits

Author SHA1 Message Date
Meirza
f0aa52f75e MDL-77350 search: Added class properties that are not declared
In PHP 8.2 and later, setting a value to an undeclared class property is
deprecated and emits a deprecation notice.
So we need to add missing class properties that still need to be declared.
2023-05-16 00:33:19 +07:00
Meirza
4fbb4f552f MDL-77350 webservice: Added class properties that are not declared
In PHP 8.2 and later, setting a value to an undeclared class property is
deprecated and emits a deprecation notice.
So we need to add missing class properties that still need to be declared.
2023-05-16 00:33:19 +07:00
Andrew Nicols
2410a1538a
Merge branch 'MDL-77432-master' of https://github.com/lucaboesch/moodle 2023-05-15 22:12:09 +08:00
Andrew Nicols
99e8362272
Merge branch 'MDL-78149' of https://github.com/paulholden/moodle 2023-05-15 22:05:52 +08:00
Andrew Nicols
f35db64f81
Merge branch 'MDL-78140' of https://github.com/paulholden/moodle 2023-05-15 22:00:45 +08:00
Andrew Nicols
c25b54d12e
Merge branch 'MDL-77144-master' of https://github.com/davewoloszyn/moodle 2023-05-15 21:59:24 +08:00
Andrew Nicols
08b1be026a
Merge branch 'MDL-77667' of https://github.com/paulholden/moodle 2023-05-15 21:41:59 +08:00
Paul Holden
5404200d9d
MDL-76900 enrol: new enrolment method and role report entities.
The new entities encapsulate related data for easier re-use across
reports, and are also intended to replace similar columns/filters
from the current enrolment entity.
2023-05-15 14:12:31 +01:00
Paul Holden
69a888cec3
MDL-78242 roles: consistently check course contact config. 2023-05-15 12:57:35 +01:00
Tim Hunt
60dbaa0065 MDL-75576 quiz/question statistics: don't expire by time
Previously, a set of calculated quiz statistics would only 'last' for
15 minutes. Then they would be considered invalid and not used.

Now, computed statistics are kept indefinitely. Instead, when a new
batch of values are computed for a particular set of settings, older numbers
for the same settings are deleted first. Therefore,
question_stats_cleanup_task is no more.
2023-05-15 10:01:27 +01:00
Tim Hunt
7994f1c985 MDL-75576 quiz statistics: don't time-limit the use of cached values
This should have been done as part of  MDL-74762, but was missed.
2023-05-15 09:59:34 +01:00
Tim Hunt
174e2ae3b5 MDL-75576 quiz statistics: don't compute when a user views the qbank
Previously, when a user viewed the question bank, if the quiz statistics
had not already been calculated, we would try to compute them there an then.
This could be very, very slow, leading to session lock problems.

Now, we never try to compute the statistics on the fly. Instead, we rely
on the existing \quiz_statistics\task\recalculate scheduled task to do it.
2023-05-15 09:59:34 +01:00
Tim Hunt
056db339d6 MDL-75576 question bank: bulk-load statistics for all questions at once
There is a new method on the column class, for the column to declare any
statistics it requires. The question then efficiently loads all those
statistics in one go, and makes them available as the columns are
rendererd, or do any subsequent processing.
2023-05-15 09:59:34 +01:00
Tim Hunt
a919335213 MDL-75576 qbank_statistics: remove copy-pasted PHPdoc comments
These methods are already correctly documented on the base class.
2023-05-15 09:59:33 +01:00
Luca Bösch
b5a730cf9a MDL-78120 login: handle empty wantsurl on login with alternateloginurl. 2023-05-15 10:21:43 +02:00
Paul Holden
4a10e36ae4
MDL-77995 javascript: more precise path matching building JS. 2023-05-15 09:05:38 +01:00
Paul Holden
2881840cca
MDL-77723 user: ensure identity refers to a valid custom profile field. 2023-05-15 09:03:28 +01:00
Andrew Nicols
9d8e8d5c5c
Merge branch 'MDL-78156' of https://github.com/stronk7/moodle 2023-05-15 12:28:36 +08:00
Andrew Nicols
e657e342d4
Merge branch 'MDL-77576-master-mvp' of https://github.com/safatshahin/moodle 2023-05-15 12:16:14 +08:00
Jun Pataleta
b8b9216ee5 Merge branch 'MDL-76903-master' of https://github.com/laurentdavid/moodle 2023-05-15 12:06:14 +08:00
Andrew Nicols
d9fb5152f7
Merge branch 'MDL-78125-master' of https://github.com/junpataleta/moodle 2023-05-15 11:52:44 +08:00
Ilya Tregubov
95a0ba16da
MDL-75512 core_grades: Add sticky footer to setup page. 2023-05-15 10:50:17 +08:00
Jun Pataleta
df496e57d6 MDL-78125 qtype_multianswer: Convert popover trigger to link
According to Boostrap Popovers documentation for popovers triggered
on focus:
"For proper cross-browser and cross-platform behavior, you must use the
<a> tag, not the <button> tag, and you also must include a tabindex
attribute."
2023-05-12 22:46:45 +08:00
Luca Bösch
f4e390fcf7 MDL-77432 mod_assign: Confirm submission page standard and not incourse 2023-05-12 09:25:18 +02:00
Andrew Nicols
6a417a3632
MDL-77168 backup: Switch from YUI to confirmation modal 2023-05-12 15:21:20 +08:00
Andrew Nicols
2078efeca9
MDL-77168 core: Allow core/utility alerts to submit forms 2023-05-12 15:21:20 +08:00
Andrew Nicols
53577b678c
MDL-78169 core: Immediate deprecation of htmllize_file_tree
This should have been done back in 2010 as part of MDL-22950. It has not
been called in that time, and is entirely untested and untestable.
2023-05-12 15:17:47 +08:00
Ilya Tregubov
063ffc8073
weekly release 4.3dev 2023-05-12 08:56:37 +08:00
Ilya Tregubov
9cc3491de6
Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2023-05-12 08:56:35 +08:00
Cameron Ball
94cf5b1fd3 MDL-75898 assignfeedback_editpdf: Improve page count mismatch logic
MDL-45580 introduced the readonlypages filearea, and when loading
page images for an attempt, the code would check if the pages existed
, creating them if not. The code inside this block also contained
a guard clause for the case where no readonly pages existed - which
is a situation that should not happen. Whenever readonly pages are
requested, they should exist.

MDL-66626 introduced a situation where page counts not matching would
also retrigger page generation. However this led to a situation where
the guard clause could be entered when requesting readonly pages.

This patch refactors the guard clause, and improves the logic to
regenerate pages.
2023-05-12 08:53:38 +10:00
Cameron Ball
a243d46620 MDL-75898 assignfeedback_editpdf: Don't poll readonly pages
When requesting the readonly version of pages (which contain
teacher annotations), they should always be available - the
PHP side even throws an exception when they're not. This
means we don't need to worry about polling document converters
from the JS side and can just return the pages immediately.
2023-05-12 08:53:38 +10:00
Cameron Ball
f95892766b MDL-75898 assignfeedback_editpdf: Add randomness to PDF annotations
The behat step "I draw on the pdf" creates the exact same line every
time it is called. This can cause issues in a situation like the following:

- Student uploads PDF
- Teacher annotates page 1
- Student edits submission, adding another PDF
- Teacher annotates page 1 again
- When the student looks at their annotated PDF it appears the same as
  before they added the second PDF (i.e., they don't see extra pages for
  the second PDF)

Exactly why this happens isn't clear, and in practice this probably never
happens because the chances of drawing the exact same line twice are almost
0. However, when testing the functionality added in MDL-45580 it was causing
issues.
2023-05-12 08:53:37 +10:00
Paul Holden
802b638b6c
MDL-78226 contentbank: verify presence of bank heading element. 2023-05-11 23:15:29 +01:00
Paul Holden
af42f88c42
MDL-78225 output: add sesskey for post requests only in renderables. 2023-05-11 22:46:18 +01:00
Meirza
6772c9b8e8 MDL-75963 filter: Added code highlighter filter
If enabled, the filter will convert text wrapped by language-* style class
into a well-styled block of code.
The filter uses PrismJS, and it also used by the TinyMCE editor to
highlight the code sample plugin.
2023-05-11 23:05:00 +07:00
Laurent David
e489ae2492 MDL-76903 mod_book: Fix activity completion
* Check only visibles pages to set completion status.
* Make sure we have consistent completion value in API and on the view page.
2023-05-11 11:47:18 +02:00
Paul Holden
a06b8d978b
MDL-78140 analytics: improve context restrictions manager test.
This test apparently fails sporadically on Oracle, without obvious
causes. The failure however was hard to interpret, and the test
itself made a lot of assumptions about the system re. naming of
categories/courses. This could be prone to errors, so improve that.
2023-05-11 09:39:39 +01:00
Sara Arjona
5372f54440 MDL-78087 h5p: Fix TimeLine display bug
When the H5P third-party library was upgraded to moodle-1.23, the calls to
libraryToString(xxx, true) where replaced with libraryToFolderName().
We missed this, which was doing the H5P Timeline activities weren't
displayed properly.

Thanks Joseph for raising this and preparing a patch! Well done!

Co-authored: Joseph Rézeau
2023-05-11 10:19:45 +02:00
Paul Holden
ebcc7e58ce
MDL-77946 access: fix category sort order of capability contexts. 2023-05-11 08:33:22 +01:00
Jun Pataleta
6a404783d2 Merge branch 'MDL-76344-master-fix' of https://github.com/stevandoMoodle/moodle 2023-05-11 14:34:50 +08:00
Safat
019f74f8b6 MDL-77576 core_communication: Implement privacy api 2023-05-11 13:35:17 +10:00
Safat
ab3c78e873 MDL-77576 core_user: Update room membership on user update
This commit implements the communication api updates
when a user is updated. It handles the room membership
when a user is suspended and deleted.

Originally implemented as MDL-76703.

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
David Woloszyn
86ab66e60a MDL-77576 core_enrol: Implement communication api
This commit implementes the communication api for
enrolment changes for a user, or enrolment method
and triggers the communication api update.

Originally implemented MDL-76703.

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
Safat
ad5c10016a MDL-77576 core_course: Implement communication api
This commit implements the core communication api in the
core course to create or update matrix roomand its members
according to course settings. This commit will add the
communicaiton room in the course so that users can access
communication room from course.

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

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
Safat
9a060a6d8d MDL-77576 communication_matrix: Create Matrix plugin
This commit will implement a matrix communication plugin
to integrate matrix services with core communication.

Originally implemented as MDL-76701, MDL-76702, MDL-77357,
MDL-76705, MDL-77473 and  MDL-76708.

Co-Authored-By: Stevani Andolo <stevani.andolo@moodle.com>
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
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
Jake Dallimore
01cea25154
Merge branch 'MDL-75552-master' of https://github.com/sarjona/moodle 2023-05-11 11:23:14 +08:00
Stevani Andolo
d3c2698b83 MDL-76344 course: Fixed course image 'non image file' layout 2023-05-11 11:12:41 +08:00
David Woloszyn
f3f816ced9 MDL-77144 core_grades: fix headings in grade area
Previous to this, heading logic was performed in print_grade_page_head.
With the deprecation of the showtitle param, it makes sense now to
explicitly set the heading when the function is called. This prevents
duplicated text between the heading and teriary dropdown. This patch
also fixes unnecessary text that was concatenated onto headings.
2023-05-11 10:09:09 +10:00
David Woloszyn
d81da7aba1 MDL-77144 core_grades: deprecated showtitle in print_grade_page_head 2023-05-11 09:55:17 +10:00