Commit Graph

2540 Commits

Author SHA1 Message Date
Jun Pataleta 5cf7f99638 Merge branch 'MDL-80119-master' of https://github.com/andrewnicols/moodle 2024-01-23 14:16:43 +08:00
Andrew Nicols 6f23ef183d MDL-80005 core: Formally deprecate PARAM_CLEANFILE 2024-01-17 12:19:57 +08:00
Andrew Nicols b05fc42db9 MDL-80005 core: Emit deprecation notices for params
Most params are formally deprecated here. This was originally planned
for MDL-80042, but I realised that having an emit, and final param is a
very useful option going forward.

This patch also moves the is_deprecated(), and related methods to the
\core\deprecated attribute.
2024-01-17 12:19:45 +08:00
Andrew Nicols d937e01550 MDL-80005 core: Move all param validation methods 2024-01-16 22:54:46 +08:00
Andrew Nicols 0d7d5d2e56 MDL-80005 core: Move clean_param and PARAM definitions
Move these into a new enum object which ensures that all content is
together.
2024-01-16 22:53:55 +08:00
Santosh Nagargoje ee4a176866 MDL-80333 Authentication: Fixed new login notification adhoc task 2024-01-10 15:32:16 +05:30
Jun Pataleta c8c6f72e58 Merge branch 'MDL-79761-main' of https://github.com/marinaglancy/moodle 2023-12-07 08:54:21 +08:00
Ilya Tregubov 6172d847f5 Merge branch 'MDL-76109-main' of https://github.com/meirzamoodle/moodle 2023-12-06 15:41:19 +08:00
Marina Glancy aad5cd7c6a MDL-79761 navigation: fix default setting during web installation 2023-12-04 13:04:49 +00:00
Meirza 84b053f088 MDL-76109 core: Don't check password policy for guest user
Besides adding the is_guest() check in the check_password_policy() condition,
I also changed the temporary user ID because the temporary user and
the guest must not share the same ID. Otherwise, it will raise an error.

Co-authored-by: Andrei Bautu <abautu@gmail.com>
2023-11-30 10:35:04 +07:00
Ilya Tregubov 37737a92d6 Merge branch 'MDL-79890-master' of https://github.com/andrewnicols/moodle 2023-11-30 10:44:35 +08:00
Andrew Nicols 53416b1c1e MDL-80119 core: Address issues with saner inc/dec operators 2023-11-15 09:16:13 +08:00
Andrew Nicols 75587e23c6 MDL-79890 core: Update uses of array_keys with multiple params
These now call the newly minted `moodle_array_keys_filter` method.
2023-11-15 09:14:40 +08:00
Andrew Nicols 0efbc79e5f MDL-79890 core: Add polyfill for array_keys with filter
This is a Moodle version of a proposed function `array_keys_filter`.

Since this method has not yet been created in upstream PHP, I have
elected to name it with a Moodle prefix as the signature is not known.

In the future, if and when this method is created, we can replace its
content with new method and deprecate it.
2023-11-15 09:14:40 +08:00
Paul Holden 73143443b8 MDL-79996 communication: valid instance checks during user deletion. 2023-11-03 12:54:00 +00:00
Andrew Nicols 0e05d93d3a MDL-79735 core: Drop PHP 7 support for component_callback 2023-10-17 09:48:48 +08:00
Andrew Nicols 99c1543aa8 MDL-79581 communication: Context is a mandatory field
The API was incorrectly assuming that all uses of the API were for a
course, and that the instanceid of the communication instance was a
course id. These assumptions are both entirely wrong.

The API is intended to support a range of uses including use at the
site, user, and activity levels.

Furthermore, if a group were to be used, then the instanceid should be
of that group's id, and therefore the contextid would need to be fetched
or that group's course instead.

The only solution here is to add a new contextid field to the table, and
implement it all parts of the API.
2023-10-04 20:37:57 +08:00
Sara Arjona 89eae3a811 Merge branch 'MDL-79350-master' of https://github.com/daledavies/moodle 2023-09-28 07:47:55 +02:00
Sara Arjona cc9430929d MDL-77708 docs: Update references from docs.moodle.org/dev 2023-09-26 10:30:19 +02:00
Dale Davies 06a9b91e17 MDL-79350 core: Do not store lang in session when readonly 2023-09-18 14:30:14 +01:00
sam marshall 0f8577784d MDL-78467 core_cache: Improve cache locking API
* Makes it possible to safely call acquire_lock so that it throws an
  exception instead of returning false if it can't get a lock (which
  most existing uses assumed it already does).
* Fix some omissions from the requirelockingbeforewrite option (it
  now checks on delete).
* Modinfo uses a versioned cache, so it is not necessary to delete
  items, only increase the version. (Provided we keep track of
  cacherev carefully...)
2023-09-14 09:28:10 +01:00
Stevani Andolo dbf83c72c7 MDL-70371 core: Defined password length
1. Modified the password related forms
2. Added a new constant in moodlelib.php called MAX_PASSWORD_CHARACTERS
3. Added a new method in moodlelib.php called exeeds_password_length
4. Updated the upgrade.text
2023-09-07 12:29:10 +08:00
Matt Porritt 1560be7b7e MDL-67774 Authentication: Specify password peppers in config.php
Add a pepper to the users supplied password.
The pepper is stored in CFG and user to add extra security to
the password hash. By effectively breaking the information to
create the hashed password into two and storing it in more
than one place.
2023-09-06 13:47:51 +10:00
Jun Pataleta 2e7b5475a7 Merge branch 'MDL-79017' of https://github.com/paulholden/moodle 2023-08-31 20:32:17 +08:00
Andrew Nicols fa05f66052 Merge branch 'MDL-74810-master' of https://github.com/junpataleta/moodle 2023-08-29 11:12:35 +08:00
Huong Nguyen 59bed31f53 Merge branch 'master_MDL-67390' of https://github.com/mattporritt/moodle 2023-08-28 16:21:35 +07:00
Jun Pataleta ec90b342da MDL-74810 core: get_time_interval_string() improvements
* Add parameter to drop zero time units. So a time interval like
  "3d 0h 0s" will be returned as "3d" only.
* Add parameter to display full format for time units. E.g. Instead of
  "3d 2h", it will be returned as "3 days 2 hours"
* Deprecate unused dateintervaldayshoursmins langconfig string.
2023-08-28 16:40:36 +08:00
Matt Porritt 07af783b9a MDL-67390 Authentication: Update password hashing to SHA-512
Replace the bcrypt password hashing algorithm with SHA-512.
Existing bcrypt hashes will be updated to SHA-512 when a user
logs in next. Support for old md5 hashes has been removed.
Any reamining md5 hashes are replaced with SHA-512 hashes
from strong random passwords.
2023-08-25 11:53:54 +10:00
Jun Pataleta 29ec472284 Merge branch 'MDL-53368-master-3' of https://github.com/HuongNV13/moodle 2023-08-24 22:51:26 +08:00
Huong Nguyen 0cd29afb6f MDL-53368 core_auth: Implement reCaptcha on login page 2023-08-24 15:18:31 +07:00
Ilya Tregubov e4a1ca2f34 Merge branch 'MDL-78630-master' of https://github.com/cameron1729/moodle 2023-08-24 09:46:47 +08:00
Paul Holden ae57526ed0 MDL-79017 core: re-factor method to unserialize array.
We can use the existing helper for object unserialization as the
base for this method, rather than manual string parsing.
2023-08-21 20:29:36 +01:00
Ilya Tregubov d7461c9eff Merge branch 'master_MDL-78698' of https://github.com/mattporritt/moodle 2023-08-17 09:13:18 +02:00
Cameron Ball 230fcddd62 MDL-78630 auth: Display lock/unlock messages 2023-08-15 10:59:09 +08:00
raortegar 058b830b07 MDL-74289 lib: Improve the proxy bypass matching 2023-08-10 18:31:44 +07:00
Matt Porritt 2772b2b9dc MDL-78698 Libraries: Deprecate random_bytes_emulate function
Since PHP 7.0 the random_bytes() is nativley available and Moodle
LMS requires greater than PHP 7, the native PHP funciton can be
used exclusively. Deprecating random_bytes_emulate.
2023-08-08 12:35:00 +10:00
Petr Skoda 48df84a4a3 MDL-78525 core: fix word and character counting 2023-07-14 08:44:41 +02:00
Jun Pataleta 14d37a274e Merge branch 'MDL-74893-master-fix_auto_login_guest' of https://github.com/praxisdigital/moodle 2023-07-06 09:14:29 +08:00
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
Anders Rasmussen 0c188eefc8 MDL-74893 authentication: Fix auto-login guest
Fixed auto-login as guest, when Guest login button is hidden
2023-06-19 07:52:03 +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