Commit Graph

2501 Commits

Author SHA1 Message Date
Petr Skoda 3c25ccdcd1 MDL-78552 core: tidy up MDL_PERF constants
* all constans usable in ABORT_AFTER_CONFIG should be always defined
* MDL_PERFDB and $PERF->logwrites not used after legacy log removal
* MDL_PERF_TEST should be documented in codebase
* deprecated warnings in shutdowb manager
2023-06-25 08:39:09 +02:00
Andrew Nicols 7de0cb32d1 Merge branch 'MDL-76838' of https://github.com/paulholden/moodle 2023-06-08 11:54:05 +08:00
Stevani Andolo 429c403c3f MDL-78215 core: support checking if 0.0.0.0 is in subnet 2023-06-08 09:36:00 +08:00
Sara Arjona 1d2e8bcc33 Merge branch 'MDL-76936' of https://github.com/HirotoKagotani/moodle 2023-06-06 11:22:08 +02:00
Jun Pataleta ac0767cac4 Merge branch 'MDL-77353_Master' of https://github.com/catalyst/moodle-MDL-76126 2023-05-24 20:18:59 +08:00
Nathan Nguyen f897ecd627 MDL-77353 core_user: new functions
New functions:
    * `core_user::get_profile_picture` for retrieving user picture.
    * `core_user::get_profile_url` for retrieving profile url.
    * `core_user::get_fullname` for retrieving user full name.

Note: the context is not used as this stage. It will be used by "User Disguises" plugin, which will be implemented later.
2023-05-24 13:05:02 +10:00
Paul Holden 3bfb7f759a MDL-76838 backup: remove invalid utf8 code sequences writing XML.
The surrogate blocks FFFE and FFFF are non-characters, specifically
disallowed in the character range for XML documents.
2023-05-22 21:04:02 +01:00
Petr Skoda 99a7a7c782 MDL-74954 core: add Hooks based on PSR-14 2023-05-20 11:03:46 +02: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
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
Marina Glancy 8fc1486d36 MDL-77164 various: fix incorrect phpdocs 2023-04-13 11:35:06 +01:00
Peter Burnett 027c770eab MDL-65471 upgrade: framework to reduce maintenance mode 2023-04-06 11:38:26 +10:00
fcbsd e2d138f250 MDL-77365 count_words: Make span> an inline tag 2023-03-06 10:59:44 +00:00
Andrew Nicols 43962ec9ce Merge branch 'MDL-72559-master' of https://github.com/keevan/moodle 2023-02-09 10:17:12 +08:00
Hiroto Kagotani dcc8d93533 MDL-76936 course: purge course cache on resetting start date 2023-01-19 00:37:29 +09:00
Kevin Pham 0072559aa7 MDL-72559 cache: core/plugin_functions cache can be local
Co-Authored-By: Tim Hunt <T.J.Hunt@open.ac.uk>
2023-01-16 16:29:48 +11:00
Eloy Lafuente (stronk7) 7827edc78d MDL-76537 core: Fix date_format_string() to work with php-intl
With Moodle 4.1 and up, we have stopped to work with strftime(),
because it's deprecated for PHP 8.1 and up and, instead we are
using core_date::strftime() that performs the conversions using
the php-intl extension.

The original strftime() had a lot of OS-specific dependencies,
both about locale names and charsets used to provide the information.

Instead, the php-intl gets rid of all those OS-specific nightmares
and only uses ICU/Unicode locales and UTF-8.

Because of that, the old utf-8 => windows charset => utf-8
conversions aren't needed anymore. Hence, removing them.
2023-01-13 09:57:28 +01:00
Tim Hunt 192f993906 MDL-76649 quiz statistics task: output more useful trace info
At the moment, quiz_statistics\task\recalculate gives no useful
information about what it is doing, which makes it hard to investigate
if the task fails. This commit makes it more usefully verbose.

Also, following this change, one instance of this task will not
run for more than one hour at a time.

As part of this commit, I have added a new helper mtrace_exception.
to consistently log exceptions in scheduled tasks. It is sad to
add a new function to moodlelib.php, but that seemed the logical place.
Looking at other tasks, this method is badly needed. Many are just
logging the ->getMessage() which is normaly insufficient for proper
debugging. However, swiching all existing tasks to use the new function
will need to wait for a future MDL.
2023-01-09 13:26:41 +00:00
Noemie Ariste 60d3823bec MDL-60038 moodlelib: ignore site policy if user auth type = 'webservice' 2022-12-23 10:11:11 +13:00
Paul Holden 652b2e496a MDL-76235 core: compare email diversion exceptions case-insensitively.
Co-authored-by: Jan Kristoffer Roth <roth@dhbw-mosbach.de>
2022-12-09 11:19:18 +00:00
Marina Glancy a800e7e62f MDL-74853 various: add second parameter to htmlentities functions
Default value of the $flag argument changed in PHP 8.1 from ENT_COMPAT to ENT_QUOTES | ENT_SUBSTITUTE
To ensure consistent behavior across different PHP version the second parameter is now required for the functions:
htmlspecialchars(), htmlentities(), htmlspecialchars_decode(), html_entity_decode() and get_html_translation_table()
2022-11-28 16:12:20 +01:00
Stevani Andolo e4da62b5f1 MDL-73964 core: Update support site/email usage to use supportemail
This ensures the correct link is provided (and not email address
itself), and honours the supportavailability setting.
2022-11-23 11:44:19 +08:00
Marina Glancy 7bbb5434bf MDL-75100 core: replace function strftime deprecated in PHP 8.1 2022-11-21 11:41:12 +01:00
David Woloszyn 7bb44ef712 MDL-76091 lib: Add additional check to local URLs params 2022-11-09 19:28:49 +08:00
Jun Pataleta 03f298a71c MDL-72882 core: Use default site lang when user lang no longer available
* Check that the lang attribute for the output HTML exists. If not,
use the default site language.
* Also fix the current language for the user.
2022-11-03 13:27:11 +08:00
Andrew Nicols f50b622319 Merge branch 'mdl-75010' of https://github.com/danmarsden/moodle 2022-11-01 11:51:33 +08: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
Dan Marsden a81c5593a5 MDL-75010 core: Prevent user last access update on user key login 2022-10-31 14:18:31 +13:00
hieuvu c6e018e04e MDL-58266 core_completion: Add new view table. 2022-10-14 00:30:28 +07:00
Andrew Nicols 461fb1b6f6 Merge branch 'MDL-75200-master' of https://github.com/marinaglancy/moodle 2022-09-28 12:35:42 +08:00
Andrew Nicols 1c0b3337a3 Merge branch 'MDL-75168' of https://github.com/paulholden/moodle 2022-09-27 23:41:50 +08:00
Paul Holden fd583ac9f0 MDL-75168 tag: cleanup module tag instances upon course deletion. 2022-09-27 13:40:28 +01:00
sam marshall 81b4f04fb3 MDL-74960 core\lock: Performance info - display lock performance
Show performance information about locks (time taken to acquire lock,
time lock is held for) in the 'perfinfo' display.

Also show existing information (that was already calculated but not
shown before) about the session lock, which is not a 'core\lock' type
lock, but the information is similarly useful.
2022-09-26 11:24:10 +01:00
Marina Glancy c2e18d7912 MDL-75200 core: function clean_param should work with null - php 8.1 2022-09-16 13:30:21 +02:00
Jun Pataleta a4fb12a1a3 Merge branch 'MDL-69888-user-fully-setup-cache' of https://github.com/brendanheywood/moodle 2022-09-14 11:33:47 +08:00
Sara Arjona eef0a430be Merge branch 'MDL-75548' of https://github.com/timhunt/moodle 2022-09-05 13:09:09 +02:00
Tim Hunt 797b9fbd62 MDL-75548 misc: final Required parameter follows optional notices 2022-08-22 15:20:13 +01:00
Tomo Tsuyuki a6a7b16846 MDL-75171 Auth: extend user logged in event
Co-authored-by: Heena Agheda <heenaagheda@catalyst-au.net>
2022-08-19 18:38:59 +10:00
Andrew Nicols 903f04a320 Merge branch 'MDL-74608' of https://github.com/timhunt/moodle 2022-08-18 10:52:02 +08:00
Brendan Heywood f0d91ec708 MDL-69888 core: Cache user fully setup status 2022-08-18 10:29:44 +10: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
Petr Skoda a50c80b52a MDL-75237 core: improve PARAM_SAFEPATH docs 2022-08-12 04:14:18 +02:00
Petr Skoda 5ed64ce150 MDL-75237 core: Revert MDL-72029
This reverts commit d585f902fc.
2022-08-12 04:14:18 +02:00
Sujith Haridasan 73d604369d MDL-71062 core: Step 1 deprecation of print_error function 2022-07-13 08:20:54 +05:30
Huong Nguyen d585f902fc MDL-72029 lib: Prevent path traversal for clean_param with PARAM_SAFEPATH 2022-07-06 05:24:15 +02:00
Andrew Nicols 9783c54df1 Merge branch 'MDL-74408' of https://github.com/paulholden/moodle 2022-07-06 11:02:15 +08:00
Andrew Nicols 694ef721b6 MDL-74379 core: Update date_format_string to use x-os functions 2022-06-30 10:35:19 +08:00
Andrew Nicols 09858c06d7 Merge branch 'MDL-74379_master' of https://github.com/aya-saad1/moodle 2022-06-30 10:34:58 +08:00
Simey Lameze c85b88c1b6 MDL-74967 core: deprecate groupmember hack from USER object 2022-06-29 04:55:42 +08:00
Aya Saad 8be0dfc928 MDL-74379 language: injecting am/pm in date string
patching the date_format_string() function in moodlelib to add am/pm for languages that don't suuport it.
2022-06-26 10:36:52 +02:00