Compare commits

...

4531 Commits

Author SHA1 Message Date
Eloy Lafuente (stronk7) fa0b5768cc Moodle release 3.5.9 2019-11-09 11:57:38 +01:00
Sara Arjona 7b33c5e9ec weekly release 3.5.8+ 2019-11-08 15:39:52 +01:00
Sara Arjona d394a22ee6 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-11-08 15:39:50 +01:00
Adrian Greeve 83fe3c44c0 Merge branch 'MDL-67169_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-11-08 10:46:34 +08:00
Sara Arjona 282c4224da Merge branch 'MDL-66683-35' of git://github.com/cescobedo/moodle into MOODLE_35_STABLE 2019-11-07 17:41:53 +01:00
cescobedo 1312197a82 MDL-66683 core: Revert MDL-66181 because created regressions
This reverts commit ed080a580f.
This issue reverts the behaviour modified in MDL-66181, as that change
negatively impacted course-creation workflows. As this appears to be
the intended functionality, the Security team has agreed to revert
this change.
2019-11-07 17:31:25 +01:00
Jake Dallimore 5dc6fd3b23 MDL-66257 tool_cohortroles: unit test for users in multiple cohorts 2019-11-07 23:48:43 +08:00
cescobedo b49b76f397 MDL-66257 tool_cohortroles: Unassign the role on removal cohortroles. 2019-11-07 23:48:43 +08:00
Eloy Lafuente (stronk7) a4f4656110 MDL-67169 phpunit: fix clear flaw in unit test provider
Basically the provider is ignoring the CRLF to LF normalization
results and loading the original file again.

This doesn't have any impact normally, because all moodle
files are LF ones and people using other systems have their
git configurations set to work that way (not modify or force LF).

But there may be checkouts out there (for example travis) where
the git configuration by defult is to convert to the OS, causing
windows runs to fail badly there. See the issue for more info
and links.
2019-11-07 13:42:35 +01:00
Jun Pataleta 83bdb872dc MDL-66598 auth_oauth2: OAuth2 upgrade step
This basically does two things:
1. Updates all non-Facebook/Google/Microsoft issuers and sets their
'requireconfirmation' field to 1 so that future OAuth2 logins on these
issuers will always have an email confirmation sent to them.
2. Deletes the linked logins of users with non-Facebook/Google/Microsoft
OAuth2 issuers.
2019-11-07 18:46:05 +08:00
Jun Pataleta 39a83aa250 MDL-66598 auth_oauth2: Add warning messages in confirm emails 2019-11-07 18:46:05 +08:00
Jun Pataleta e70853386d MDL-66598 tool_oauth2: Make account confirmation required by default
* Only Facebook, Google, and Microsoft issuers can optionally offer to
require account confirmation via email. We will require email
confirmation for the rest of the issuers.
2019-11-07 18:46:05 +08:00
AMOS bot 451d514d84 Automatically generated installer lang files 2019-11-06 00:16:53 +00:00
Michael Hawkins 72f5a6e119 MDL-66161 output: Escaping fatal error message and URL strings 2019-11-05 13:51:42 +01:00
Paul Holden 7f624852e4 MDL-66228 mod_lesson: ensure return URL parameters are always local. 2019-11-05 13:51:42 +01:00
Eloy Lafuente (stronk7) 8abe8980d6 weekly release 3.5.8+ 2019-11-05 13:34:17 +01:00
Eloy Lafuente (stronk7) 431c7ba150 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-11-05 13:34:14 +01:00
Jake Dallimore 9b632e17d8 Merge branch 'MDL-67009_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-11-04 14:57:19 +08:00
AMOS bot b731ea9798 Automatically generated installer lang files 2019-11-02 00:09:46 +00:00
Eloy Lafuente (stronk7) 472b1b095e weekly release 3.5.8+ 2019-10-29 21:01:29 +01:00
Eloy Lafuente (stronk7) 2cddf32f7e Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-10-29 21:01:22 +01:00
Jake Dallimore 9b898bf8b4 Merge branch 'MDL-66945_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-10-29 14:57:04 +08:00
Andrew Nicols a87d3a64bb MDL-66945 composer: Update behat extension
(using php70 for this branch)

This uses a new version of the moodlehq-behat-extension which ensures
that a node is visible and in the view port before it is clicked on.

This resolves an issue with Firefox on Ubuntu 18.04 whereby the node is
only brought into the viewport instead of clicked on.
2019-10-28 13:44:27 +01:00
AMOS bot 55cd43d397 Automatically generated installer lang files 2019-10-28 00:09:34 +00:00
AMOS bot 9c1462ecfe Automatically generated installer lang files 2019-10-27 00:09:31 +00:00
Eloy Lafuente (stronk7) e22aba78ca weekly release 3.5.8+ 2019-10-25 15:29:30 +02:00
Eloy Lafuente (stronk7) d952f227d0 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-10-25 15:29:26 +02:00
Jake Dallimore d80cec9c2b Merge branch 'MOODLE_35_MDL-66973' of https://github.com/golenkovm/moodle into MOODLE_35_STABLE 2019-10-25 11:11:16 +08:00
Eloy Lafuente (stronk7) 77fe56108a MDL-67009 behat: get rid of invalid void type hinting for php70 2019-10-24 10:50:30 +02:00
AMOS bot 03550b7b8f Automatically generated installer lang files 2019-10-24 00:09:42 +00:00
Mikhail Golenkov 274ccc948b MDL-66973 search: Reset Content writer after test. 2019-10-22 09:41:46 +11:00
AMOS bot bc8d5da483 Automatically generated installer lang files 2019-10-19 00:09:35 +00:00
Eloy Lafuente (stronk7) 94bf3e9c78 weekly release 3.5.8+ 2019-10-18 10:31:16 +02:00
Andrew Nicols e92bd648db Merge branch 'MDL-66919_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-10-18 08:29:48 +08:00
Eloy Lafuente (stronk7) e4bb1cc603 MDL-66919 behat: fix typo in error message
Also fix a couple of phpdocs that were incorrect.
2019-10-16 00:49:32 +02:00
Eloy Lafuente (stronk7) c2f12aa742 weekly release 3.5.8+ 2019-10-15 22:59:44 +02:00
Jun Pataleta 454af7cf52 Merge branch 'MDL-66821_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-10-15 07:35:57 +08:00
Andrew Nicols f73e64f166 Merge branch 'MDL-66335_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-10-15 07:32:17 +08:00
Eloy Lafuente (stronk7) 18a738f88f MDL-66335 behat: Avoid double processing the page type
resolve_page_instance_helper() already processes the type, returning
the correct context that should be processing the navigation URL.

With that extra call to parse_page_name() the 2nd call always returns
"core", ultimately leading to tons of behat failures because "core" is
not aware of those (plugin, quiz for now) pages typology.
2019-10-15 00:04:54 +02:00
Eloy Lafuente (stronk7) 493a30cdc2 Merge branch 'MDL-66335_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-10-14 19:22:28 +02:00
Eloy Lafuente (stronk7) 65edc59a51 Merge branch 'MDL-66559-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-10-14 16:41:29 +02:00
Tim Hunt 28b9209af5 MDL-66335 quiz behat: using the new generic navigation steps
This converts all the navigation to quiz pages when that is not
the thing under test. Also, I decided that the Quiz settings form
belonged to the course, so did not do that here.
2019-10-14 13:20:29 +01:00
Tim Hunt 8b2c91e627 MDL-66335 behat: new step to log in and go straight to a particular page
I did not think thought through if this new URL parameter would be a
potential security hole. The simple cop-out option is to make it only
work on Behat sites for now.
2019-10-14 13:17:11 +01:00
Tim Hunt 8256d18453 MDL-66335 behat: generic step for navigating direct to specific pages 2019-10-14 13:15:27 +01:00
Tim Hunt ab11164395 MDL-66821 question behat: new step for acting on question in the bank
There is a proposed change MDL-66816 which will change the question
bank UI. This will break any Behat tests which uses low-level steps
like

    When I click on "Duplicate" "link" in the "Test question" "table_row"

to perform an action on a question in the question bank. This commit
introduces a new step:

    When I "Duplicate" the "Test question" question in the question bank

This commit also converts all core Behat tests to use the new step.
2019-10-14 12:02:42 +01:00
Andrew Nicols 29933a945f MDL-66559 behat: Register component selectors earlier 2019-10-14 14:24:05 +08:00
Andrew Nicols c7b384ce66 MDL-66559 behat: Update running suite 2019-10-14 14:17:47 +08:00
Jake Dallimore 665e256961 Merge branch 'MDL-66559-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-10-14 11:10:56 +08:00
Andrew Nicols 879532b41f MDL-66779 phpunit: Correct component name for core_grades 2019-10-13 02:34:16 +02:00
Eloy Lafuente (stronk7) 4e83a79cd5 weekly release 3.5.8+ 2019-10-11 22:43:20 +02:00
Eloy Lafuente (stronk7) 3ecba892e3 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-10-11 22:43:07 +02:00
Tim Hunt b92f4ba9f1 MDL-66559 behat: Documentation for component selectors 2019-10-11 12:58:16 +08:00
Andrew Nicols 6a3a83af93 MDL-66559 behat: Allow per-component selectors and replacements 2019-10-11 12:58:16 +08:00
AMOS bot 6e3a070030 Automatically generated installer lang files 2019-10-11 00:11:51 +00:00
Tim Hunt 5d701a706c MDL-66815 behat: question category generator must find right parent id
This is implemented in a bit of a hacky way, because the only other
alternative would be a large rewrite of the whole class, which is
not feasible for me right now. Note that many other types of thing
that can be generated suffer from the same issue. (E.g. if you ever
wanted to generate two groups with the same name in two different
courses and then add group memebers.)

It is worth doing a special-case fix for question categories, because
way Moodle works, it is inevitable that we end up with many categories
called 'top' in the database.
2019-10-11 00:51:39 +02:00
AMOS bot 612e4d9d02 Automatically generated installer lang files 2019-10-10 00:09:44 +00:00
Jun Pataleta df6f010a86 Merge branch 'MDL-66835_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-10-09 20:44:17 +08:00
Tim Hunt bf4904c32b MDL-66835 behat: steps for setting/checking fields in containers 2019-10-09 13:24:03 +01:00
Jun Pataleta 2821f78e6c weekly release 3.5.8+ 2019-09-27 11:12:16 +08:00
Jun Pataleta f904215fa7 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-09-27 11:12:15 +08:00
Jun Pataleta 635b605eab Merge branch 'MDL-66262_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-09-26 11:34:26 +08:00
Eloy Lafuente (stronk7) 08dd41b304 Merge branch 'MDL-66675-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-09-25 20:06:38 +02:00
AMOS bot 04cd0cb2ca Automatically generated installer lang files 2019-09-22 00:09:35 +00:00
Andrew Nicols 5cacda33bb MDL-66675 behat: Fix typo in step function name 2019-09-19 07:30:56 +08:00
Andrew Nicols 864ef22534 MDL-66675 behat: Add option to pause on behat failures 2019-09-19 07:30:55 +08:00
Andrew Nicols f008a03c60 MDL-66675 CLI: Add ANSI formatting options 2019-09-19 07:30:54 +08:00
Eloy Lafuente (stronk7) 8831cc14c7 MDL-66262 env: Moodle 3.6.x and 3.7.x do not support PHP 7.4 2019-09-13 17:44:58 +02:00
Jake Dallimore ebb87a1e63 weekly release 3.5.8+ 2019-09-13 11:30:14 +08:00
Jake Dallimore 93d9b19607 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-09-13 11:30:13 +08:00
Eloy Lafuente (stronk7) 92d04a7913 Merge branch 'MDL-66550-35-2' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-09-12 15:32:14 +02:00
Andrew Nicols a5cdde3c79 MDL-66550 admin: The execute wrapper MUST be used in behat 2019-09-12 15:46:04 +08:00
Andrew Nicols d073f5daf0 MDL-66550 theme: Wrap JS calls in pendingJS 2019-09-12 14:59:03 +08:00
AMOS bot 3972ef0a32 Automatically generated installer lang files 2019-09-12 00:09:38 +00:00
Jake Dallimore 01b63287ef Merge branch 'MDL-66550-35-2' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-09-11 10:42:07 +08:00
Andrew Nicols b3259b51bb MDL-66550 forum: Target fields in a fieldset for behat test 2019-09-10 21:24:20 +08:00
Andrew Nicols b683a48f69 MDL-66550 behat: Transform fields to search in a fieldset 2019-09-10 21:24:20 +08:00
Andrew Nicols 944888a509 MDL-66550 behat: Standardise finding in core functionality 2019-09-10 21:24:20 +08:00
Andrew Nicols 21ac04e12e MDL-66550 behat: Add ability to transform a specific selector 2019-09-10 21:24:15 +08:00
Andrew Nicols ab9b65b6a7 MDL-66550 behat: Normalise selectors better 2019-09-10 21:24:07 +08:00
Jake Dallimore 4a852e8467 Moodle release 3.5.8 2019-09-06 11:50:39 +08:00
Eloy Lafuente (stronk7) 9c211250ed weekly release 3.5.7+ 2019-09-05 17:14:30 +02:00
Eloy Lafuente (stronk7) a4eb84f12f Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-09-05 17:14:27 +02:00
AMOS bot 1e3da12a5f Automatically generated installer lang files 2019-09-05 00:12:14 +00:00
Ryan Wyllie d5ac2c69cf MDL-62284 javascript: prevent nested JS mustache handler calls
Prevent the JS mustache helper from being executed from within
the render call of another mustache helper because it can allow
users to inject JS into the page.
2019-09-04 11:24:34 +08:00
Ryan Wyllie 3cf2cce110 MDL-62284 output: prevent nested JS mustache handler calls
Prevent the JS mustache helper from being executed from within
the render call of another mustache helper because it can allow
users to inject JS into the page.
2019-09-04 11:24:34 +08:00
Jake Dallimore 1df418416b Merge branch 'MDL-66265-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-09-04 11:07:44 +08:00
Andrew Nicols fdee2f256c MDL-66265 javascript: More specific overrides in eslintrc 2019-09-04 10:49:17 +08:00
Eloy Lafuente (stronk7) 15974729df Merge branch 'MDL-66265-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-09-04 02:15:49 +02:00
Eloy Lafuente (stronk7) 99f8dea24b Merge branch 'MDL-66532-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-09-04 02:01:46 +02:00
Andrew Nicols 27829f24e1 MDL-66265 javascript: Add jshint ignore for ES6 files in root dir 2019-09-04 06:53:54 +08:00
Andrew Nicols 6fd3764d99 MDL-66265 javascript: Add basic jshint ignores 2019-09-04 06:53:53 +08:00
Andrew Nicols 8563f23446 MDL-66265 javascript: Bump jshint version 2019-09-04 06:53:52 +08:00
Andrew Nicols 033afe1028 MDL-66532 javascript: Lock NPM version for NVM 2019-09-04 06:53:52 +08:00
Andrew Nicols c21f3b540b MDL-66532 javascript: Lock NPM version for NVM 2019-09-04 06:45:51 +08:00
AMOS bot 9fa3c6756e Automatically generated installer lang files 2019-09-03 00:11:49 +00:00
Eloy Lafuente (stronk7) d543802d90 Merge branch 'MDL-66457-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-09-03 00:55:14 +02:00
Juan Leyva 374d0b4702 MDL-66501 tool_mobile: Prevent URLs in custom scheme 2019-09-02 15:30:19 +08:00
Andrew Nicols 043da28910 MDL-66457 behat: simplify selector search 2019-08-30 15:13:07 +08:00
Jun Pataleta b35de2fdf0 MDL-66187 format_singleactivity: Make sure available types is not empty 2019-08-30 07:21:39 +02:00
Andrew Nicols 2b1b27dfbd MDL-66187 course: Respect :addinstance in single activity format 2019-08-30 07:21:39 +02:00
Simey Lameze bd370cda69 MDL-65749 lib: fix phpmailer file handling 2019-08-30 07:21:39 +02:00
Andrew Nicols 86cbf2a643 MDL-66181 course: Only assign roles that the user is allowed to assign 2019-08-30 07:21:39 +02:00
Andrew Nicols d33ae6c0cc MDL-66181 behat: You check checkboxes, not click them 2019-08-30 07:21:39 +02:00
Michael Hawkins 61b51f93ef MDL-55451 mod_forum: Limit subscription redirect to internal URLs 2019-08-30 07:21:39 +02:00
David Monllaó eb2f9593a7 MDL-66069 mlbackend_python: Bump to a new version of the package 2019-08-30 07:21:39 +02:00
Jake Dallimore e8b6cb418f weekly release 3.5.7+ 2019-08-30 13:12:06 +08:00
Jake Dallimore f8798a6b07 Merge branch 'MDL-66139_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-08-29 11:52:15 +08:00
Netica Informática 75259ad00f MDL-66139 cachestore_redis: Fix connection problems when port is not set
Due to some changes in Redis 5 php extension Moodle fails to connect via TCP when
no port is set. It's fixed upstream in phpredis repo (version 5.0.0, 5.0.1 and
5.0.2 affected so far), but with this patch we'll send the right port anyway.
2019-08-28 20:59:59 +02:00
Luca Bösch e149838c2a MDL-63852 behat: Using correct exception class path. 2019-08-28 17:43:27 +02:00
Eloy Lafuente (stronk7) 7e0c5d1c38 MDL-66184 core: Update composer to apply for php 7.0.0 as min
With behat extension v3.35.3 we started requiring php 7.0.0
(same requirement than core 3.5.x). This bumps all the components
in the lock file to suit that requirement.

Generated with php 7.0.x.
2019-08-27 00:25:28 +02:00
Eloy Lafuente (stronk7) b78a289579 Merge branch 'MDL-66312-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-08-26 19:43:10 +02:00
Adrian Greeve de168198e6 weekly release 3.5.7+ 2019-08-23 12:55:16 +08:00
Adrian Greeve d4cd76a5c8 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-08-23 12:55:08 +08:00
Adrian Greeve 7430be37c5 Merge branch 'MDL-66378-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-08-22 09:32:16 +08:00
Andrew Nicols 327c830b2a MDL-66378 behat: Increase window size for rubric tests 2019-08-22 07:56:19 +08:00
Andrew Nicols f2c38390c9 MDL-66378 behat: Change screen size to small to work around UI bugs 2019-08-22 07:56:19 +08:00
Adrian Greeve 55bbdac9d9 Merge branch 'MDL-66378-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-08-21 09:04:02 +08:00
Andrew Nicols 7ed867fa20 MDL-66378 behat: Correct grammar of resize step 2019-08-21 08:39:51 +08:00
Andrew Nicols fc6f41655b MDL-66378 grade: Set window size to large for rubric tests 2019-08-21 08:39:28 +08:00
Andrew Nicols 15ddbf3907 MDL-66378 behat: All args are required for document.evaluate 2019-08-21 08:24:08 +08:00
AMOS bot 27b547db5a Automatically generated installer lang files 2019-08-21 00:11:34 +00:00
Adrian Greeve 0d13442b29 Merge branch 'MDL-66378-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-08-20 14:13:57 +08:00
AMOS bot d1bc79e02a Automatically generated installer lang files 2019-08-20 00:10:59 +00:00
Andrew Nicols 3abca9b368 MDL-66378 course: Navigation tests need small window 2019-08-19 08:16:41 +08:00
Andrew Nicols 3a000a8def MDL-66378 competency: Add pending promises to competency chooser 2019-08-19 08:16:41 +08:00
Andrew Nicols 1c3c38fb00 MDL-66378 behat: JS does not work with newlines in an xpath 2019-08-19 08:16:40 +08:00
Andrew Nicols 86cbd0840b MDL-66378 behat: Fix use of before/after selectors 2019-08-19 08:16:40 +08:00
Andrew Nicols 2ea211e78a MDL-66378 behat: Backport expand autocomplete step 2019-08-18 07:15:00 +08:00
Andrew Nicols b60ec99fec MDL-66378 behat: Add partial named selector for whole autocomplete field 2019-08-18 07:15:00 +08:00
Andrew Nicols 953b1b85da MDL-66378 behat: Before/after detection should be constrainable
The default before/after detection checks the entire body. Any match of
the text will therefore be found.

Add support for specification of a container for the nodes.
2019-08-18 07:15:00 +08:00
Andrew Nicols 45e2df1ce4 MDL-66378 behat: Add non-JS fallback for before/after 2019-08-18 07:15:00 +08:00
sam marshall 9f1149ac13 MDL-66378 Behat: Speed up 'before/after' step in Chrome
On some Chrome versions the xpath used for before/after is slow
and (sometimes) uses a lot of memory. This change uses pure
JavaScript to do the before/after calculation, which should always
be fast.
2019-08-18 07:15:00 +08:00
Andrew Nicols a157baa65a MDL-66378 behat: Correct invalid uses of selection from dropdown 2019-08-18 07:15:00 +08:00
Andrew Nicols 15d2dcf037 MDL-66378 report_participation: Correct label for target 2019-08-18 07:15:00 +08:00
Andrew Nicols 9eab90a827 MDL-66378 gradereport_singleview: Add missing label for dropdown 2019-08-18 07:15:00 +08:00
Andrew Nicols 2bee1f66b9 MDL-66378 behat: Update screen sizes to Y2K standards 2019-08-17 10:32:19 +08:00
Andrew Nicols c3731344e5 MDL-66378 behat: Update dependencies for chrome webdriver fix 2019-08-17 10:32:19 +08:00
Andrew Nicols c46b2eaf18 MDL-66312 js: Autocomplete promises were inside out
The pending promise should nott be resolved until the changes are
complete.
Previously the resolution of the pendingPromise was triggering the other
changes.
2019-08-16 11:56:25 +08:00
Andrew Nicols d6af305bb9 weekly release 3.5.7+ 2019-08-16 11:07:12 +08:00
Andrew Nicols fa319a92b8 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-08-16 11:07:09 +08:00
AMOS bot e11d0e35de Automatically generated installer lang files 2019-08-15 00:13:11 +00:00
Jun Pataleta 313fd64469 Merge branch 'MDL-65925-grade-page-broken-for-deleted-submission-MOODLE_35_STABLE' of https://github.com/ilya-catalyst/moodle into MOODLE_35_STABLE 2019-08-14 15:25:36 +08:00
Ilya Tregubov 9f51263a37 MDL-65925 assign: Grade page broken if submission was deleted. 2019-08-12 09:25:50 +10:00
AMOS bot b375088f23 Automatically generated installer lang files 2019-08-10 00:11:37 +00:00
Jun Pataleta 6cdfbdc119 weekly release 3.5.7+ 2019-08-09 16:23:59 +08:00
Jun Pataleta c3e7a570f3 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-08-09 16:23:58 +08:00
Sara Arjona b12ee51f8b Merge branch 'MDL-66281-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-08-05 13:41:18 +08:00
AMOS bot 9192613a6a Automatically generated installer lang files 2019-08-02 00:11:41 +00:00
AMOS bot 74fc0a9620 Automatically generated installer lang files 2019-08-02 00:11:40 +00:00
AMOS bot 264ea8c7fc Automatically generated installer lang files 2019-07-31 00:09:31 +00:00
Jun Pataleta 06079db957 MDL-66281 tool_dataprivacy: Set sensitive data processing default value 2019-07-30 13:59:42 +08:00
Eloy Lafuente (stronk7) 59c9dd780b weekly release 3.5.7+ 2019-07-25 13:44:49 +02:00
Eloy Lafuente (stronk7) 5ec6a4e462 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-07-25 13:44:48 +02:00
Eloy Lafuente (stronk7) 4ce08a765d Merge branch 'MDL-65788-35' of git://github.com/Chocolate-lightning/moodle into MOODLE_35_STABLE 2019-07-22 21:33:28 +02:00
sam marshall 0498684ae2 MDL-66132 Search: Behat tests should use simpledb, fix mock count
When searching using mock results (the 'global search expects the
query' step), the result count is not correctly set. As a result, the
page incorrectly reports that there are no results and doesn't
correctly show the first page of multi-page results.

Additionally, some of the core Behat tests can now be moved to use
real searching with the simpledb engine, rather than using mock
results at all. This gives better tests.

Unfortunately it was not possible to move all of the core Behat tests
and deprecate the mock step, because some of the tests are related to
the UI for 'special' features searching by user or group, neither of
which are supported by the simpledb engine.
2019-07-22 20:57:10 +02:00
Mihail Geshoski 9a0078f100 MDL-66136 assign: Verify presence of resources in online text submission 2019-07-22 10:44:53 +08:00
Mihail Geshoski d9126f03dc MDL-66136 assignfeedback_comments: Extend testcase 2019-07-22 10:44:41 +08:00
Eloy Lafuente (stronk7) 382fc36eba Merge branch 'MDL-50733_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-07-20 00:25:27 +02:00
Mathew May defe05cbcf MDL-50733 core: Update composer to updated behat-extension 2019-07-19 16:41:03 +02:00
Mathew May 71548acf7e MDL-65788 tool_policy: Move accept_policy JS call into an array 2019-07-18 10:51:19 +08:00
Mathew May de75e7471d MDL-65788 tool_policy: Prevent two modals rendering for guests.
With the Guest registration calling policyactions.js the [data-action="view"]
was having two click handlers set on the inital policy modal trgger.
With this commit we state what we want the click event to be set on.
2019-07-18 10:49:58 +08:00
AMOS bot 8635cc3871 Automatically generated installer lang files 2019-07-18 00:09:21 +00:00
Eloy Lafuente (stronk7) a8d72a836c weekly release 3.5.7+ 2019-07-11 23:33:37 +02:00
Eloy Lafuente (stronk7) 140b417065 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-07-11 23:33:35 +02:00
Jun Pataleta 0094a77ccc Merge branch 'MDL-65926-MOODLE_35_STABLE_lowercase_username_sql_query' of https://github.com/andrewmadden/moodle into MOODLE_35_STABLE 2019-07-11 10:59:29 +08:00
Andrew Madden c7f46956d4 MDL-65926 moodlelib: Convert username to lowercase prior to SQL query
Within a very large project, it was found that searching for a user with their username in the user table using a case insensitive
search was inefficient. Instead it is proposed that the username input is made to be lowercase prior to executing a database query
as the username for each user in the database must be lowercase. This allows for a case sensitive query to find the user data.
Essentially we are moving a case insensitive search for a user from SQL into PHP to increase performance.
2019-07-10 20:04:23 +10:00
Andrew Nicols 648e72316d Merge branch 'MDL-65965-35-fix' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-07-09 11:01:05 +08:00
Jun Pataleta 6b8c4ddacc MDL-65965 behat: Do not fetch grouping IDs for empty grouping idnumbers 2019-07-09 10:49:25 +08:00
Shamim Rezaie 3bf1e69a3e MDL-66054 behat: typo fix 2019-07-09 00:58:05 +02:00
Eloy Lafuente (stronk7) df4041b745 Merge branch 'MDL-65965-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-07-09 00:55:26 +02:00
AMOS bot ac9e0f9ad5 Automatically generated installer lang files 2019-07-08 00:10:29 +00:00
AMOS bot c0cfb0ee09 Automatically generated installer lang files 2019-07-07 00:09:13 +00:00
Sara Arjona 5725188035 Moodle release 3.5.7 2019-07-05 12:27:14 +02:00
AMOS bot acb34a20c2 Automatically generated installer lang files 2019-07-05 00:10:07 +00:00
Eloy Lafuente (stronk7) e8c5c935a5 weekly release 3.5.6+ 2019-07-04 16:50:48 +02:00
Eloy Lafuente (stronk7) 5db144950d Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-07-04 16:50:43 +02:00
AMOS bot 904399daaf Automatically generated installer lang files 2019-07-04 00:08:56 +00:00
Shamim Rezaie 498fa3c1ae MDL-61114 mod_assign: Check if the teacher can access the override 2019-07-03 18:06:22 +02:00
Shamim Rezaie a8f2981158 MDL-61114 mod_assign: assignment overrides to observe group membership 2019-07-03 18:06:22 +02:00
Shamim Rezaie ccca3fc6e4 MDL-61115: mod_lesson: Check if the teacher can access the override 2019-07-03 17:50:44 +02:00
Shamim Rezaie 5d16523422 MDL-61115 mod_lesson: Lesson overrides to observe group membership 2019-07-03 17:50:44 +02:00
Sara Arjona 1953f78e3e Merge branch 'MDL-64794_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-07-03 11:16:08 +02:00
AMOS bot 6504388f3e Automatically generated installer lang files 2019-07-03 00:09:03 +00:00
AMOS bot 902d300967 Automatically generated installer lang files 2019-07-03 00:09:03 +00:00
Sara Arjona 9399070f9f Merge branch 'MDL-64614_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-07-02 21:21:57 +02:00
Shamim Rezaie 96b2794f29 MDL-34411 mod_quiz: Check if the teacher can access the override 2019-07-01 19:01:39 +02:00
Shamim Rezaie d551e89fad MDL-34411 groups: copy/paste error in test_groups_user_groups_visible 2019-07-01 19:01:39 +02:00
Shamim Rezaie 3bb633edc4 MDL-34411 mod_quiz: quiz overrides to observe group membership 2019-07-01 19:01:39 +02:00
Damyon Wiese 862d20bac0 MDL-64623 glossary: Check the entry id
The entry must match the glossary before you can do any action on it.
2019-07-01 19:01:39 +02:00
Damyon Wiese cf2beaf8c5 MDL-53689 xmldb: Require a sesskey to load xml
Loading and unloading xml files is not protected from XSS with a sesskey.
2019-07-01 19:01:39 +02:00
Eloy Lafuente (stronk7) d3eeabcf04 Merge branch 'MDL-64511-35' of https://github.com/paulholden/moodle into MOODLE_35_STABLE 2019-07-01 18:53:20 +02:00
Dan Marsden 8c678d9aa9 MDL-60347 core: debugsmtp should be a developer only setting. 2019-07-01 12:17:12 +02:00
Eloy Lafuente (stronk7) 9d86101204 MDL-64614 environment: mssql requirement up to 2012 (11.0) 2019-06-30 11:59:11 +02:00
Eloy Lafuente (stronk7) 2f535a7c43 MDL-64614 environment: 3.8 base information
This is a direct copy of the 3.7 branch to have
changes under control easier for next commits.
2019-06-30 11:59:10 +02:00
AMOS bot 776141f4d3 Automatically generated installer lang files 2019-06-30 00:09:32 +00:00
AMOS bot f33dbc4223 Automatically generated installer lang files 2019-06-29 00:09:37 +00:00
AMOS bot 11685ae642 Automatically generated installer lang files 2019-06-29 00:09:37 +00:00
Paul Holden 4cf939c638 MDL-64511 privacy: encode data URL when loading content.
Previously paths that included ? or # characters would break loading.
2019-06-28 13:17:42 +01:00
Eloy Lafuente (stronk7) 7a5e8583d9 weekly release 3.5.6+ 2019-06-27 18:54:28 +02:00
Eloy Lafuente (stronk7) 63b2abcc34 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-06-27 18:54:26 +02:00
Sara Arjona 16a14f010d Merge branch 'MDL-60088-35' of git://github.com/Chocolate-lightning/moodle into MOODLE_35_STABLE 2019-06-26 18:11:31 +02:00
Eloy Lafuente (stronk7) da6a75fcc7 Merge branch 'MDL-65249-35-fix' of https://github.com/snake/moodle into MOODLE_35_STABLE 2019-06-26 10:30:21 +02:00
Jake Dallimore 522a84d484 MDL-65249 session: use redis host constant in unit tests 2019-06-26 16:12:35 +08:00
Jake Dallimore 09325c5a80 Merge branch 'MDL-65249-redis-catch-exception-after-retry-MOODLE_35_STABLE' of https://github.com/ilya-catalyst/moodle into MOODLE_35_STABLE 2019-06-26 14:53:01 +08:00
Jake Dallimore db72e5b94e Merge branch 'MDL-60978-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-06-26 13:27:55 +08:00
AMOS bot 2a7d1c59e8 Automatically generated installer lang files 2019-06-26 00:09:44 +00:00
Ilya Tregubov ed13b5bff3 MDL-65249 Session: Throw exception if number of attempts exceeded. 2019-06-25 15:06:42 +10:00
AMOS bot d4345429ec Automatically generated installer lang files 2019-06-25 00:09:34 +00:00
AMOS bot dccc4f0338 Automatically generated installer lang files 2019-06-24 00:08:33 +00:00
Mathew May 300afd6ab4 MDL-60088 travis: add dist:trusty to travis
We are doing this because travis changed its default release to xenial.
So this is a stop gap and we will add xenial support moving forward.
2019-06-23 23:55:34 +08:00
Jun Pataleta 91998db5f5 MDL-65965 behat: Map grouping for activity data generator 2019-06-21 15:41:14 +08:00
Jun Pataleta e76b0e1014 MDL-65965 availability: Behat test for activity grouping restriction 2019-06-21 15:41:14 +08:00
Andrew Nicols 5e5789ab09 MDL-60978 session: Run redis tests in isolation 2019-06-21 14:36:13 +08:00
Andrew Nicols 50d3ef02b9 MDL-60978 testing: Support ability to run phpunit in isolated process 2019-06-21 14:36:13 +08:00
AMOS bot cea931e57e Automatically generated installer lang files 2019-06-18 00:08:53 +00:00
AMOS bot ee4ea23869 Automatically generated installer lang files 2019-06-15 00:08:30 +00:00
Eloy Lafuente (stronk7) 473d664b4a weekly release 3.5.6+ 2019-06-13 18:15:37 +02:00
Eloy Lafuente (stronk7) f4c3a9e129 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-06-13 18:15:35 +02:00
Andrew Nicols d29528c4db Merge branch 'm35_MDL-61038_Fix_uuid_extensions_usage_v2' of https://github.com/scara/moodle into MOODLE_35_STABLE 2019-06-10 14:12:23 +08:00
Matteo Scaramuccia 88f85ede8e MDL-61038 setuplib: Fixed PECL UUID extension support 2019-06-08 23:14:11 +02:00
AMOS bot b2a600563e Automatically generated installer lang files 2019-06-07 00:10:06 +00:00
Eloy Lafuente (stronk7) 7f5049c7bc weekly release 3.5.6+ 2019-06-06 16:46:39 +02:00
Eloy Lafuente (stronk7) 321125cadb Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-06-06 16:46:36 +02:00
AMOS bot 9c2796097f Automatically generated installer lang files 2019-06-06 00:08:33 +00:00
AMOS bot cc6bd24c30 Automatically generated installer lang files 2019-06-05 00:08:35 +00:00
Eloy Lafuente (stronk7) 9b37061aba Merge branch 'MDL-65576-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-06-04 21:40:25 +02:00
AMOS bot 8ac0bb82df Automatically generated installer lang files 2019-06-04 00:08:30 +00:00
AMOS bot 7ff9602c7a Automatically generated installer lang files 2019-06-03 00:08:32 +00:00
Andrew Nicols 2918831394 MDL-65576 behat: Reset Selenium driver between scorm scenarios 2019-05-31 08:17:29 +08:00
Eloy Lafuente (stronk7) bce54527f7 MDL-64794 tcpdf: Bump to tcpdf 6.2.26 2019-05-30 23:51:50 +02:00
Eloy Lafuente (stronk7) 39cd996f62 weekly release 3.5.6+ 2019-05-30 12:18:25 +02:00
Eloy Lafuente (stronk7) 2edb40d973 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-05-30 12:18:23 +02:00
AMOS bot 1fa428ffcf Automatically generated installer lang files 2019-05-29 00:09:36 +00:00
Simey Lameze 40f3c1a50a MDL-65697 qtype_missingtype: include missing class 2019-05-28 13:36:05 +08:00
AMOS bot c1aea9fd14 Automatically generated installer lang files 2019-05-25 00:08:50 +00:00
AMOS bot 4e4d4e37b8 Automatically generated installer lang files 2019-05-24 00:15:24 +00:00
Eloy Lafuente (stronk7) 16eeee959b weekly release 3.5.6+ 2019-05-23 20:52:12 +02:00
Eloy Lafuente (stronk7) 3d44463106 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-05-23 20:52:10 +02:00
AMOS bot 8fd0ca20b9 Automatically generated installer lang files 2019-05-23 00:13:01 +00:00
Jun Pataleta eafc231dd8 Merge branch 'MDL-65636_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-05-22 19:31:07 +08:00
Tim Hunt e8b72dabe6 MDL-65636 filter_multilang: add some basic unit tests
This commit includes suggestions from Jun Pataleta on how to improve the
unit tests.
2019-05-22 11:04:21 +01:00
AMOS bot 3dff98b036 Automatically generated installer lang files 2019-05-21 00:13:04 +00:00
AMOS bot 5e82098480 Automatically generated installer lang files 2019-05-21 00:13:04 +00:00
AMOS bot eff7030f7e Automatically generated installer lang files 2019-05-18 00:12:46 +00:00
AMOS bot 1dd2ee3f49 Automatically generated installer lang files 2019-05-17 00:14:38 +00:00
Sara Arjona 263b3cb643 weekly release 3.5.6+ 2019-05-14 13:17:33 +02:00
Sara Arjona 55ca32ba74 Merge branch 'MDL-65581-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2019-05-13 21:20:22 +02:00
Bas Brands 7a548abf01 MDL-65581 core_blocks: change classname for hidden blocks
Changing the added class .invisible to .ivisibleblock to avoid hiding
the block completely
2019-05-13 12:43:34 +02:00
Eloy Lafuente (stronk7) 73d401b462 Moodle release 3.5.6 2019-05-11 23:17:42 +02:00
Eloy Lafuente (stronk7) 7ea8581868 weekly release 3.5.5+ 2019-05-10 20:31:14 +02:00
Eloy Lafuente (stronk7) 3f923b4570 Merge branch 'MDL-65537-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-05-10 20:09:24 +02:00
David Mudrák 8ef6c25a98 MDL-65537 lang: Use fixed strings in tests, too 2019-05-10 16:14:30 +02:00
Helen Foster 007b946948 MDL-65537 lang: Import fixed English strings (en_fix) 2019-05-10 16:14:16 +02:00
Eloy Lafuente (stronk7) d1e419d86f Merge branch 'MDL-65558-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-05-10 11:30:31 +02:00
Jun Pataleta 2e190e4739 Merge branch 'MDL-65540-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-05-10 15:58:28 +08:00
Andrew Nicols e81ac514ca MDL-65558 enrol_database: use , as port separator 2019-05-10 12:24:58 +08:00
Andrew Nicols 563f08ff54 MDL-65558 auth_db: use , as port separator 2019-05-10 12:24:58 +08:00
Andrew Nicols 8e70179f4d MDL-63959 feedback: Adjust unit test for perf 2019-05-10 11:43:19 +08:00
Andrew Nicols 30ac3bcfeb Merge branch 'MDL-63959-35' of git://github.com/tobiasreischmann/moodle into MOODLE_35_STABLE 2019-05-10 11:43:13 +08:00
Shamim Rezaie b287771272 MDL-65540 core_search: Explicit component name in the str helper 2019-05-10 08:12:40 +08:00
Shamim Rezaie 4b00d8392c MDL-65540 tool_dataprivacy: Explicit component name in the str helper 2019-05-10 08:12:40 +08:00
Eloy Lafuente (stronk7) abe4ff5534 Merge branch 'MDL-65197-35' of https://github.com/paulholden/moodle into MOODLE_35_STABLE 2019-05-09 20:02:49 +02:00
Eloy Lafuente (stronk7) 5b641c4187 Merge branch 'MDL-29320-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-05-09 19:49:57 +02:00
Andrew Nicols 02dc7147c7 Merge branch 'MDL-65435_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-05-09 14:52:13 +08:00
Jun Pataleta 8ab8dee8c9 Merge branch 'MDL-65141-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2019-05-09 12:27:30 +08:00
Adrian Greeve b9569a887e Merge branch 'MDL-58315_35_boost_block_classes' of https://github.com/zpottie/moodle into MOODLE_35_STABLE 2019-05-09 11:35:07 +08:00
Adrian Greeve efee2e4c8b Merge branch 'MDL-65387-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-05-09 11:25:06 +08:00
Eloy Lafuente (stronk7) 33f22e1e83 MDL-65435 behat: Support any arg type with behat reruns
Right now, when executing a single rerun of a parallel run
using vendor/bin/behat, not all the argument alternatives
are supported (equal or space). This commit allows both to work.
2019-05-08 23:23:36 +02:00
Luca Bösch 500fc1b8f0 MDL-65387 dataformats: Table download formats choose pulldown style. 2019-05-08 20:20:11 +02:00
Michael Hawkins e36f1c9896 MDL-61738 messageinbound: Fix quota checks & filesize for email uploads
Private files uploaded by email will now honour the file quota limit,
because the filesize is set correctly and checked against users'
remaining personal quota limit. Previously, attachment size was always
set to zero, and quota was checked against the draft area (this is
not valid for email uploads, because each file is moved out of the
draft area as it is processed, so multiple files totalling greater
than the remaining quota would still pass the check).
2019-05-08 17:51:45 +02:00
Dan Marsden cd6fb4322b MDL-64708 cohort: Return url is not used anywhere in core. 2019-05-08 17:51:45 +02:00
Eloy Lafuente (stronk7) 1398145998 weekly release 3.5.5+ 2019-05-08 17:48:41 +02:00
Adrian Greeve ec6f1419dc Merge branch 'MDL-65484-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-05-08 11:24:55 +08:00
Andrew Nicols 473145c2c7 Merge branch 'MDL-35396-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2019-05-08 09:48:33 +08:00
Damyon Wiese 469ac6dd08 MDL-65484 assign: Scrolling overflow CSS
Use relatively positioned elements, not absolutely positioned to prevent
elements being visible when they are scrolled outside the containing drawing region.
2019-05-07 16:23:04 +08:00
Mihail Geshoski 5ddac4b5b9 MDL-35396 lesson: Fix detailed statistics display for essay questions 2019-05-07 14:00:58 +08:00
Jun Pataleta 0c8113bf8c Merge branch 'MDL-65153-35-fix1' of http://github.com/damyon/moodle into MOODLE_35_STABLE 2019-05-07 10:09:07 +08:00
Damyon Wiese f4110673d4 MDL-65153 competencies: course competencies page
The webservice to fetch the data for the course competencies page requires the
pluginbaseurl to be set.
2019-05-07 10:01:51 +08:00
Sara Arjona fdecf60bab Merge branch 'MDL-65374-35' of https://github.com/lucaboesch/moodle into
MOODLE_35_STABLE
2019-05-06 12:09:48 +02:00
Jun Pataleta bef3d096fc Merge branch 'MDL-65399-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-05-06 16:26:27 +08:00
Sara Arjona bb1cfe25cf Merge branch 'MDL-65396-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-05-06 10:20:15 +02:00
Shamim Rezaie 1150862f9d MDL-65399 mod_quiz: Handling the edge case when section name is '' 2019-05-06 18:14:00 +10:00
Shamim Rezaie b94ea41bbf MDL-65399 mod_quiz: UI should prevent deleting the last slot of section 2019-05-06 18:14:00 +10:00
Shamim Rezaie 6946a25e9f MDL-65399 mod_quiz: remove_slot should update the existing info
The remove_slot method should update the remaining slot's slot
attribute. It also should update the remaining slot's question number
and section info.
2019-05-06 18:14:00 +10:00
Shamim Rezaie 2a75ea0ec9 MDL-65399 mod_quiz: Remove $slots from the \mod_quiz\structure class
It's enough to have $slotsinorder, and the $slots property
was redundant. There should only be a single source of truth.
2019-05-06 18:14:00 +10:00
Jun Pataleta dafd6f136c Merge branch 'MDL-65153-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-05-06 16:13:40 +08:00
Adrian Greeve b6147f7e80 Merge branch 'MDL-64968-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-05-06 16:00:36 +08:00
Adrian Greeve 531036848c Merge branch 'MDL-65104-35' of git://git.cameron1729.xyz/moodle into MOODLE_35_STABLE 2019-05-06 12:01:55 +08:00
Jake Dallimore c0e1742985 Merge branch 'MDL-64988-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-05-06 10:34:51 +08:00
Luca Bösch bedb1ffc49 MDL-65396 theme_boost: Style duration chooser pulldown select. 2019-05-04 11:00:29 +02:00
Luca Bösch 4a6b23937a MDL-65374 core_grades: style "Move selected items to" pulldown. 2019-05-04 11:00:15 +02:00
Luca Bösch 83d8624eec MDL-64968 mod_lesson: Style "Yes, I'd like to try again" button. 2019-05-04 11:00:05 +02:00
Eloy Lafuente (stronk7) 6e311854b7 weekly release 3.5.5+ 2019-05-03 17:52:03 +02:00
Eloy Lafuente (stronk7) 12531500d3 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-05-03 17:51:59 +02:00
Shamim Rezaie 73c4aa313b MDL-64988 mod_quiz: Fix questions always being added to the last section 2019-05-03 20:49:10 +10:00
zpottie b22947d3b7 MDL-58315 core: Add support for custom block classes in Boost 2019-05-03 16:17:50 +12:00
Adrian Greeve e208a8d307 Merge branch 'MDL-64851-35' of https://github.com/s-cenni/MDL-64851 into MOODLE_35_STABLE 2019-05-03 10:45:58 +08:00
Andrew Nicols a4c878c734 Merge branch 'MDL-64394-accesslog-MOODLE_35_STABLE' of https://github.com/brendanheywood/moodle into MOODLE_35_STABLE 2019-05-03 08:54:29 +08:00
AMOS bot 54d672958d Automatically generated installer lang files 2019-05-03 00:14:40 +00:00
Jun Pataleta 13e1ef0300 Merge branch 'MDL-65411-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2019-05-02 17:02:55 +08:00
Jun Pataleta b1899fcc4a Merge branch 'MDL-65446-35' of https://github.com/ryanwyllie/moodle into MOODLE_35_STABLE 2019-05-02 15:01:31 +08:00
Jake Dallimore 31c96d5e7f Merge branch 'MDL-64439-MOODLE_35_STABLE' of https://github.com/ilya-catalyst/moodle into MOODLE_35_STABLE 2019-05-02 14:53:21 +08:00
Jun Pataleta 3bb9a613c6 Merge branch 'MDL-65273-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-05-01 17:24:13 +08:00
Paul Holden 29fcc59f88 MDL-65197 editor: handle empty user preference in privacy export. 2019-05-01 09:52:59 +01:00
Luca Bösch 3cf521a427 MDL-65273 roles: Roles permissions buttons styles. 2019-05-01 09:26:51 +02:00
Adrian Greeve a27c089b40 Merge branch 'MDL-65149-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-05-01 15:00:34 +08:00
Adrian Greeve 4d1fbba086 Merge branch 'MDL-64959_35_STABLE' of https://github.com/abhimanyuZ/moodle into MOODLE_35_STABLE 2019-05-01 14:32:15 +08:00
Adrian Greeve c8c229e08b Merge branch 'MDL-65178-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-05-01 11:59:16 +08:00
Simey Lameze 7d78aeece1 MDL-65411 core_calendar: wrap long description text 2019-05-01 09:56:05 +08:00
Jake Dallimore 4d0fa8abdc Merge branch 'MDL-60851-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-05-01 09:33:31 +08:00
Damyon Wiese 4c775e4618 MDL-60851 backup: coding style fixes 2019-05-01 08:51:57 +08:00
Damyon Wiese 9462d6f1c8 MDL-60851 backup: Sanitise setting dependencies
The only different between each setting dependency type is the evaluation of the condition,
and the mform js validation arguments - so that should be the only thing that is extended
by each subclass.
2019-05-01 08:51:57 +08:00
Damyon Wiese 2aeff9cfd7 MDL-60851 backup: Fix undefined $value 2019-05-01 08:51:57 +08:00
Damyon Wiese 5b01f0099f MDL-60851 backup: More unit tests for dependencies 2019-05-01 08:51:57 +08:00
Eloy Lafuente (stronk7) 6e3f19324a Merge branch 'MDL-65397-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-05-01 01:43:11 +02:00
Eloy Lafuente (stronk7) 34a46486ef weekly release 3.5.5+ 2019-05-01 00:28:41 +02:00
Eloy Lafuente (stronk7) 2a373db105 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-05-01 00:28:39 +02:00
Juan Leyva 08135b0689 MDL-65141 tool_mobile: Return all the language translations 2019-04-30 15:25:29 +02:00
Jun Pataleta 1bd6794d80 MDL-29320 user: Make email query case-insensitive 2019-04-30 16:29:39 +08:00
Jun Pataleta 3e854512c5 MDL-29320 admin: Improve test for multiple accounts with same email
* Use Scenario Outlines
* More coverage:
  - Test for email case-sensitivity
  - Updating user profile as admin
  - Updating own user profile
2019-04-30 16:29:36 +08:00
Jun Pataleta 8326233128 MDL-29320 user: Remove @javascript tag for add new user behat test
* It's not necessary and will improve Behat execution time
2019-04-30 16:23:03 +08:00
Tobias Reischmann eb29ebefb4 MDL-63959 mod_feedback: Add phpunit tests for get_pages in completion 2019-04-30 07:57:21 +02:00
Zoltán Szarvas 638ba35597 MDL-63959 mod_feedback: Fixed nested dependency handling
For example the dependecy chain is the following: A->B->C. When a
question (A) depends on another dependent item (B) and B hasn't
displayed (because of C's response), the $value for the B's response
will be null. In this case the can_see_item() method returned
null. Because the can_see_item() returned null (not false), the
get_pages() method displayed the question A, because it checks for
explicit false: $this->can_see_item($item) !== false.
Now, false is also returned, if the dependent question is not visible.
2019-04-30 07:57:21 +02:00
Ryan Wyllie 94cbb103ef MDL-65446 admin: fix admin email option for cli install 2019-04-30 13:38:25 +08:00
Eloy Lafuente (stronk7) efaad61031 MDL-63137 mod_feedback: discern between user or id better
is_int('1') => false, so better we invert the check that is safer.
2019-04-30 08:50:20 +08:00
AMOS bot 05e4efbcee Automatically generated installer lang files 2019-04-30 00:12:35 +00:00
Eloy Lafuente (stronk7) 3451667bc9 Merge branch 'MDL-65293-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-04-29 22:46:47 +02:00
Eloy Lafuente (stronk7) 9efdbf36d7 Merge branch 'MDL-63137-35' of git://github.com/aanabit/moodle into MOODLE_35_STABLE 2019-04-29 20:11:13 +02:00
Helen Foster 23bb771193 MDL-65397 lang: Import fixed English strings (en_fix)
Significant string changes:

* direct:view,gradeimport_direct - wording corrected from 'CSV' to
  'spreadsheet'
* limitanswers_help,mod_choice - additional wording added explaining how
  the setting works with groups
2019-04-29 11:50:36 +02:00
Jun Pataleta f47cc5ce3f Merge branch 'MDL-65279-35' of https://github.com/tkorner/moodle into MOODLE_35_STABLE 2019-04-29 17:08:29 +08:00
AMOS bot 9f504db2f3 Automatically generated installer lang files 2019-04-27 00:12:52 +00:00
Eloy Lafuente (stronk7) 9e5cda1f6c weekly release 3.5.5+ 2019-04-26 18:41:11 +02:00
Amaia Anabitarte 3751ec0e68 MDL-63137 mod_feedback: PHPUnit tests for new userid parameter 2019-04-26 17:32:57 +02:00
Amaia Anabitarte 5a93c6c9ab MDL-63137 mod_feedback: mod_feedback_core_calendar_provide_event_action
Update mod_feedback_core_calendar_provide_event_action function to add a new userid parameter
Add userid to check capabilities, etc. to feedback completion and structure.
2019-04-26 17:32:57 +02:00
Amaia Anabitarte 596aa22c4e MDL-63137 mod_feedback: Pointing TODO tasks to right deprecation issue 2019-04-26 17:32:57 +02:00
Eloy Lafuente (stronk7) cc72ae7f29 MDL-60418 Behat: Fix missing $installurl 2019-04-25 23:39:11 +02:00
Eloy Lafuente (stronk7) 7aa7b392c0 Merge branch 'MDL-60418_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-04-25 23:26:19 +02:00
Tim Hunt 11a4683cfd MDL-60418 Behat: Fix broken docs links in Behat code. 2019-04-25 21:39:28 +01:00
Eloy Lafuente (stronk7) b6af039890 Merge branch 'MDL-64151-35-fix' of https://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2019-04-24 12:49:58 +02:00
Marina Glancy 69e9f234e1 MDL-64151 forms: select element without selection
Select element that is not multiple should export null when nothing is
selected. If the element is displayed there will always be something
selected.
2019-04-24 11:42:03 +02:00
Sara Arjona b7f0a3fd9c Merge branch 'MDL-65170-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2019-04-24 09:02:54 +02:00
Adrian Greeve 4f701a0e67 Merge branch 'MDL-65375-m35' of https://github.com/sammarshallou/moodle into MOODLE_35_STABLE 2019-04-24 10:31:46 +08:00
Eloy Lafuente (stronk7) 45b9bae80f Merge branch 'MDL-64151-35' of git://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2019-04-23 19:39:16 +02:00
Eloy Lafuente (stronk7) 5d3bf61c27 weekly release 3.5.5+ 2019-04-23 17:36:22 +02:00
David Monllaó c344124599 Merge branch 'MDL-65102-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-04-23 13:31:05 +02:00
sam marshall 22baf5c0aa MDL-65375 Restore: Null data in other field should be serialised
If the 'other' field is empty, then following a restore of course
logs, it should still be serialised so that it is consistent with
the normal behaviour when logging.

Without this change, an event with null value for other has the
field set to NULL if you restore it, but 'N;' when the event is
initially created.
2019-04-18 15:07:40 +01:00
Adrian Greeve f1125775fe Merge branch 'MDL-29318-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-04-18 13:51:36 +08:00
Eloy Lafuente (stronk7) ca0f244e09 weekly release 3.5.5+ 2019-04-17 20:04:20 +02:00
Eloy Lafuente (stronk7) 216ea27814 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-04-17 20:04:16 +02:00
AMOS bot e0ea44ae29 Automatically generated installer lang files 2019-04-13 00:13:30 +00:00
Eloy Lafuente (stronk7) 8ffac7d8e3 weekly release 3.5.5+ 2019-04-12 21:35:08 +02:00
Eloy Lafuente (stronk7) 8d0c6ac9dd Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-04-12 21:35:06 +02:00
Jake Dallimore 5b7563dbb2 Merge branch 'MDL-62974-35' of github.com:abgreeve/moodle into MOODLE_35_STABLE 2019-04-12 11:18:24 +08:00
Adrian Greeve 8bf1ffc9ed MDL-62974 mod_lesson: Minor update to html class. 2019-04-12 11:10:41 +08:00
Eloy Lafuente (stronk7) b3d49c46eb Merge branch 'MDL-62974-35' of https://github.com/jmvedrine/moodle into MOODLE_35_STABLE 2019-04-11 23:50:18 +02:00
Marina Glancy 98af4c736d MDL-64151 form: autocomplete element remove last choice
This is the same situation as was in MDL-56864 but now in 'course', 'autocomplete' and 'select' elements
- if the element allows multiple selection it is impossible to remove the last element
2019-04-11 16:46:33 +02:00
Sara Cenni 2653ea76be MDL-64851 badge: reviewing badges of invisible courses 2019-04-11 12:03:42 +02:00
Adrian Greeve 367a45a60b Merge branch 'MDL-64719-purge_user_cache-35' of git://github.com/leonstr/moodle into MOODLE_35_STABLE 2019-04-11 13:40:15 +08:00
Adrian Greeve 1da8aa30e0 Merge branch 'MDL-46975-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-04-10 14:26:50 +08:00
AMOS bot 2e9bc58475 Merge branch 'MOODLE_35_STABLE' into install_35_STABLE 2019-04-10 00:12:29 +00:00
Jean-Michel Vedrine dd74898f63 MDL-62974 lesson: Suppress HTML font tags 2019-04-09 23:04:26 +02:00
Eloy Lafuente (stronk7) 12476a35a6 weekly release 3.5.5+ 2019-04-09 20:37:04 +02:00
Eloy Lafuente (stronk7) bf35831359 Merge branch 'MDL-64819-35' of https://github.com/sarjona/moodle into MOODLE_35_STABLE 2019-04-09 16:04:02 +02:00
Sara Arjona cc145e54fd MDL-64819 course: fix behat errors with the move icon
Some errors have been detected when using Clean + Goutte.
2019-04-09 14:16:42 +02:00
AMOS bot 48f96614ff Automatically generated installer lang files 2019-04-09 00:11:32 +00:00
AMOS bot 4066dda725 Automatically generated installer lang files 2019-04-09 00:11:32 +00:00
Sara Arjona 0a91d215c6 Merge branch 'MDL-64819-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-04-08 14:20:03 +02:00
Adrian Greeve 6d0e1fe82d Merge branch 'MDL-65218-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-04-08 16:56:31 +08:00
Damyon Wiese b7218d8a10 MDL-64819 output: Hide icons with no title
When output from javascript they should match what gets output from php.
2019-04-08 15:42:07 +08:00
Shamim Rezaie de2f0d85e7 MDL-65293 core_calendar: Privacy deletion fix
Deleting in course context should not delete from course modules
2019-04-08 15:41:09 +10:00
Jake Dallimore 077825f8c9 MDL-65170 core_user: perf improvement for user_get_user_details_courses
We don't always need to iterate over the user's courses, so only fetch
them when we do.
2019-04-08 09:05:40 +08:00
Jake Dallimore 06d2ee0fde MDL-65170 core_user: user_get_user_details_courses respects groupmode
This had a relatively simply check for course profile visibility, which
meant that users in separate groups could see one another's profile.
This has been replaced with the more correct check in
user_can_view_profile().
2019-04-08 09:05:40 +08:00
Eloy Lafuente (stronk7) 96607cf5b3 weekly release 3.5.5+ 2019-04-05 18:32:34 +02:00
Eloy Lafuente (stronk7) b290b3eded NOBUG: Fixed file access permissions 2019-04-05 18:32:34 +02:00
Thomas Korner f059d1176c MDL-65279 core: typo in categoriesandcourses fixed
AMOS BEGIN
 MOV [categoriesandcoures,core],[categoriesandcourses,core]
AMOS END
2019-04-05 14:35:09 +02:00
Damyon Wiese 0f389d44b6 MDL-64819 output: Activity menu icons
Remove duplciate alt text from activity menu icons and the links to add new sections.
2019-04-05 12:03:10 +08:00
Eloy Lafuente (stronk7) 29dba99cdf Merge branch 'MDL-65029_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-04-05 00:48:08 +02:00
Eloy Lafuente (stronk7) 7e7b71fbeb Merge branch 'MDL-65094-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-04-04 22:40:10 +02:00
Eloy Lafuente (stronk7) 4f2ee1dec1 Merge branch 'MDL-65038_MOODLE_35_STABLE' of https://github.com/maksudr/moodle into MOODLE_35_STABLE 2019-04-04 20:31:31 +02:00
Jun Pataleta f7a4ef3866 Merge branch 'MDL-62307_MOODLE_35_STABLE' of https://github.com/maksudr/moodle into MOODLE_35_STABLE 2019-04-03 16:47:56 +08:00
Jun Pataleta 6181040347 Merge branch 'MDL-65112-MOODLE_35_STABLE' of https://github.com/dmitriim/moodle into MOODLE_35_STABLE 2019-04-03 16:19:16 +08:00
Eloy Lafuente (stronk7) 8082ff4805 Merge branch 'MDL-64994-35-pythonmlversion' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-04-03 00:09:45 +02:00
Eloy Lafuente (stronk7) 5e2338c868 weekly release 3.5.5+ 2019-04-02 15:52:50 +02:00
Eloy Lafuente (stronk7) 6909b8aada Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-04-02 15:52:44 +02:00
Adrian Greeve 80c1b6bcd0 Merge branch 'MDL-65144-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-04-02 10:17:37 +08:00
Brendan Heywood d6455734d8 MDL-64394 core: Fixed bug when using access log with pre_loginpage_hook 2019-04-02 11:41:00 +11:00
Ilya Tregubov c91c235fb6 MDL-64439 auth: Refresh $cm in require_login after pre_loginpage_hook. 2019-04-02 10:22:41 +11:00
Leon Stringer f9ea236c4f MDL-64719 cache: Implement purge_current_user() in \cache
\cache::make() may return a cache_disabled subclass but callers, specifically
user/lib.php:user_create_user(), invoke \cache::purge_current_user() which was
only implemented by the cache_session subclass.  Added empty
\cache::purge_current_user() which subclasses can implement, i.e.
cache_session, or not, i.e. cache_disabled.
2019-04-01 15:32:42 +01:00
Damyon Wiese 61adf3b25b MDL-65144 output: Add img-fluid to logo
Extra wide logos do not scale to the screen size - this change adds the bootstrap class
img-fluid to logos on the loginpage, signupform and in the context header.

Thanks to Maksud R for working on this.
2019-04-01 15:52:16 +08:00
Jake Dallimore e9c0b71aee Merge branch 'MDL-65089_35' of https://github.com/dvdcastro/moodle into MOODLE_35_STABLE 2019-04-01 15:34:40 +08:00
Jun Pataleta 3304b0728c Merge branch 'MDL-64524-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-04-01 13:46:34 +08:00
Damyon Wiese d831bfbf04 MDL-64524 gradingform_guide: Marking guide comments
When there are too many comments, scroll the list so they still fit in the dialogue.
2019-04-01 13:03:59 +08:00
Damyon Wiese 6bfcfd9a1f MDL-64524 assign: Styles editpdf comments
Properly display the list of comments, but limiting their size (use title to indicate the full comments).
When there are too many comments, show a scrollbar in the menu.
2019-04-01 13:03:58 +08:00
Jun Pataleta 9cbdd41129 Merge branch 'MDL-63906_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2019-04-01 10:31:51 +08:00
Adrian Greeve c56206cebf Merge branch 'MDL-65173_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2019-04-01 10:23:54 +08:00
Eloy Lafuente (stronk7) 71c0f9c055 MDL-65218 recycle bin: cover immunization via settings provider
Both for course and category recycle bins
2019-04-01 09:26:55 +08:00
Eloy Lafuente (stronk7) 5e3ce4ef7d MDL-65218 recycle bin: immunize recycle bin from backup_auto_storage
As far as recycle bin is using MODE_AUTOMATED, it observes the backup_auto_storage
setting (storing backups @ real location. For recycle bin we want to ensure that
backup files are always stored in Moodle file area. In order to achieve that, we
hack the setting here via $CFG->forced_plugin_settings, so it won't interfere other
operations.  See MDL-65218 for more information.

This hack will be removed once recycle bin switches to use its own backup mode, with
own preferences and 100% appart from MODLE_AUTOMATED.
2019-04-01 09:26:55 +08:00
Eloy Lafuente (stronk7) 1e21aeb97c MDL-65218 recycle bin: Course backups (cat bin) to use MODE_AUTOMATED
Surely this should have been done as part of MDL-63263, but it wasn't.
Better let's do it here so every recycle bin backup is using the
very same mode.
2019-04-01 09:26:54 +08:00
Tim Hunt 403f2d450c MDL-65029 questions: refactor generation of question div id
We are planning to change the id in Moodle 3.7. However, the new
method name has been back-ported to stable branches, because we
know a lot of third-party question types like to have a single
branch which supports multiple Moodle versions.
2019-03-29 13:44:46 +00:00
Jun Pataleta c8ce874199 MDL-46975 core_auth: Make email validation case-insensitive
* Make email query case-insensitive
* Check only for duplicate emails if $CFG->allowaccountssameemail
is empty.
* Compare the values in "Email address" and "Email (again)" in the
signup form in a case-insensitive fashion.
2019-03-29 13:38:19 +08:00
Jun Pataleta 13cdeaf6a4 MDL-46975 auth_email: Behat test for email validation on signup 2019-03-29 13:38:19 +08:00
Jun Pataleta 0503fc7a35 MDL-29318 login: Handle email in case-insensitive manner
* Let get_complete_user_data() handle the fetching of user data and
  handle the logic of the errors to be shown based on the exception
  it throws. This also saves us 1 DB query by eliminating the need to
  count for the users that match a given email first before fetching
  user information.
2019-03-29 13:33:55 +08:00
Jun Pataleta 6abbe519d6 MDL-29318 login: Additional test for forgot_password_data_provider() 2019-03-29 13:33:55 +08:00
Jun Pataleta bdca601d03 MDL-29318 core: Fixes for get_complete_user_data()
* Added email in the list of case-insensitive fields.
* New optional parameter $throwexception for \get_complete_user_data().
  If true, an exception will be thrown when there's no matching record
  found or when there are multiple records found for the given field
  value. If false, it will simply return false.
  Defaults to false when not set. This ensures that
  get_complete_user_data() fetches the correct user data.
2019-03-29 13:33:55 +08:00
Jun Pataleta 4477b21322 MDL-29318 core: More unit tests for get_complete_user_data() 2019-03-29 13:30:19 +08:00
AMOS bot 1625acf3eb Automatically generated installer lang files 2019-03-29 00:15:35 +00:00
David Castro 8326e3d1a9 MDL-65089 glossary: Enforcing case comparison in SQL. 2019-03-28 18:33:02 -05:00
Dmitrii Metelkin c4658fd9e2 MDL-65112 mod_lesson: fix html for shortanswer responses 2019-03-29 08:31:24 +11:00
Eloy Lafuente (stronk7) d28abb632d weekly release 3.5.5+ 2019-03-28 16:49:09 +01:00
Eloy Lafuente (stronk7) 819ff2f3d7 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-03-28 16:49:03 +01:00
Shamim Rezaie 2787bb5593 MDL-65102 core_form: autocomplete element to handle submit event 2019-03-28 15:18:49 +11:00
Eloy Lafuente (stronk7) 2ca6891e1f Merge branch 'MDL-63196-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2019-03-28 00:12:54 +01:00
Eloy Lafuente (stronk7) 5381aad94a Merge branch 'MDL-64996-35-untrainedstaticmodels' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-03-27 23:46:29 +01:00
Eloy Lafuente (stronk7) 618b27a8ae Merge branch 'MDL-62992-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2019-03-27 23:06:29 +01:00
Jun Pataleta 1ed39a4991 Merge branch 'MDL-65008_moodle_35_stable' of https://github.com/dvdcastro/moodle into MOODLE_35_STABLE 2019-03-27 10:39:49 +08:00
Simey Lameze 2427689f4c MDL-62992 quiz: fix tags filtering on random question modal 2019-03-27 10:26:33 +08:00
Simey Lameze 89b9e4f805 MDL-62992 question: conditionaly enable question tags feature 2019-03-27 10:26:33 +08:00
Paul Holden 4418ec9411 MDL-43130 access: fix user counting when retrieving assignable roles.
Previously users assigned the same role in a context via multiple
components would be counted multiple times.
2019-03-27 00:18:13 +01:00
Eloy Lafuente (stronk7) 5fbbcddd0c Merge branch 'MDL-65081-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-03-26 22:44:10 +01:00
Eloy Lafuente (stronk7) 25570f80dc Merge branch 'MDL-63152-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-03-26 13:28:31 +01:00
Eloy Lafuente (stronk7) 0f038af8de Merge branch 'MDL-63149-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-03-26 13:25:20 +01:00
Eloy Lafuente (stronk7) 5e97ea1423 Merge branch 'MDL-63151-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-03-26 13:16:06 +01:00
Shamim Rezaie 2e790a9741 MDL-65094 registration: don't encourage registration if on localhost 2019-03-26 17:26:35 +11:00
Damyon Wiese 68b61978e8 MDL-65178 competencies: count_competencies fix
Fix sql error in course_module_competency::count_competencies() function.
2019-03-26 09:49:08 +08:00
Sara Arjona 0eff5b7765 Merge branch 'MDL-64615-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2019-03-25 18:20:22 +01:00
Sara Arjona fd0b312303 Merge branch 'MDL-64790-35_apidoc_fix' of https://github.com/nicoroeser/moodle into MOODLE_35_STABLE 2019-03-25 12:38:30 +01:00
Mark Nelson cfa3409712 MDL-65173 message_email: removed bogus logic
This reverts commit ecb4b0260e.
2019-03-25 17:19:27 +08:00
David Mudrák 15d1157600 MDL-64994 analytics: Improve the Python package version check
Use the new method to check that the installed Python package has high
enough yet still API-compatible version.
2019-03-25 09:19:51 +01:00
David Mudrák a1026db0fe MDL-64994 analytics: Add a simple semantic version check method
This method is to be used for checking that a compatible version of the
moodlemlbackend package is installed on the server. The package is
expected to use the semantic versioning scheme (semver.org).
2019-03-25 09:19:51 +01:00
David Mudrák 959c70e87b MDL-64996 analytics: Make sure the no_teaching model is trained
Due to the bug, the no_teaching model might have been marked as
not-trained in the database. Static predictions models (i.e. those using
a target based on assumptions, not facts) are always considered as
trained. If they were marked as not-trained, the prediction scheduled
task would skip them and they would produce no predictions.

Ideally, such a fix should be done for all static models. But there is
no easy way to do it during the upgrade where accessing the analytics
API is not possible. I don't think there are many models out there that
would be affected by this so this seems to be good enough solution for
now (and the future ability to reset models will cover the rest).
2019-03-25 09:16:13 +01:00
David Mudrák 8e2360f9c8 MDL-64996 analytics: Don't mark static model as untrained after clearing
Static predictions models (i.e. those using a target based on
assumptions, not facts) are always considered as trained. Clearing them
must not mark them as untrained. Doing so would make them being skipped
by the prediction scheduled task.
2019-03-25 09:14:32 +01:00
Adrian Greeve 55d5362ab6 Merge branch 'MDL-60339-35' of git://github.com/Chocolate-lightning/moodle into MOODLE_35_STABLE 2019-03-25 11:12:12 +08:00
Adrian Greeve e1c280f951 Merge branch 'MDL-64492-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-03-25 11:00:40 +08:00
AMOS bot 238585c911 Automatically generated installer lang files 2019-03-25 00:09:32 +00:00
Abhimanyu Kumar d7903d34f0 MDL-64959 uploaduser: remove leading/trailing spaces from CSV headings
Earlier while uploading users via CSV, if any leading or trailing space was there in
headings of CSV file then error was displayed which will be difficult for a non-technical
person to understand. After this patch, leading and trailing spaces from headings will
be trimmed automatically.
2019-03-23 22:34:28 +05:30
maksudr 710b4e0a4b MDL-62307 mod_feedback: Decode HTML special char in add_form_element() 2019-03-22 15:45:16 +00:00
Mathew May 0c74fb3f82 MDL-60339 course: Course editing only checked against site:manageblocks.
Add in additional capabilities to the page. When all_editing_caps is called it'll check against
moodle/site:manageblocks & added capabilities. If moodle/site:manageblocks
was not set the user would have trouble editing the page.
2019-03-22 13:51:58 +08:00
Damyon Wiese ab3236199d MDL-65153 competencies: Urls course competencies
The template for the course competencies page expects a pluginbaseurl parameter
but the webservice that fetches when rendered by AJAX is missing this property.
2019-03-22 13:18:03 +08:00
Jun Pataleta 67d62946ff MDL-65081 core_output: Unit tests for single_select and url_select 2019-03-22 11:15:24 +08:00
Jun Pataleta 9415d26ea4 MDL-65081 core_output: Set single_select and url_select attributes 2019-03-22 11:15:24 +08:00
Damyon Wiese c2a956a63d MDL-64492 course: Hide activity icons for Ally
Empty alt text results in an image with no label.
role="presentation" does not hide - it only removes the semantic information.
If the image provides no information, make it hidden with aria-hidden.
2019-03-22 11:01:42 +08:00
Simey Lameze d9af5335c2 MDL-63196 core_calendar: add behat scenario 2019-03-22 10:46:02 +08:00
Simey Lameze 4c0ea3f45e MDL-63196 calendar: add missing option to export category events 2019-03-22 10:46:02 +08:00
Damyon Wiese d707892d0c MDL-65149 emoticons: Do not show all emoticons
Allow some emoticons to still work, but not be selectable from the text editor plugins.
2019-03-22 10:07:15 +08:00
Eloy Lafuente (stronk7) d70651f787 weekly release 3.5.5+ 2019-03-21 20:19:36 +01:00
Cameron Ball c55d75120a MDL-65104 registration: Ensure $registration is always null when no record exists 2019-03-21 16:12:31 +08:00
Adrian Greeve 59f0c4b48a Merge branch 'MDL-46803-greedy-roles-reset-MOODLE_35' of https://github.com/DSI-Universite-Rennes2/moodle into MOODLE_35_STABLE 2019-03-21 11:23:42 +08:00
Eloy Lafuente (stronk7) f4ae633fa5 Merge branch 'wip-35-MDL-64563' of https://github.com/adpe/moodle into MOODLE_35_STABLE 2019-03-21 00:44:05 +01:00
Eloy Lafuente (stronk7) 89eded8477 MDL-63263 tool_recyclebin: show the note as part of the heading element
It looks better (IMO) than using admin_setting_description and works in all
branches.
2019-03-21 00:15:08 +01:00
Eloy Lafuente (stronk7) 57b5bf77b7 Merge branch 'MDL-63263-MOODLE_35_STABLE' of https://github.com/tuanngocnguyen/moodle into MOODLE_35_STABLE 2019-03-20 23:16:26 +01:00
Eloy Lafuente (stronk7) dc5d047953 Merge branch 'MDL-65022-35' of https://github.com/Dagefoerde/moodle into MOODLE_35_STABLE 2019-03-20 22:32:10 +01:00
M 8f9f22aeb3 MDL-65038 core_files: Fix typo in function mock_response 2019-03-20 20:52:48 +00:00
Jun Pataleta 500ea66aba Merge branch 'MDL-62872-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-03-20 16:30:20 +08:00
Adrian Greeve 5c12024435 Merge branch 'MDL-65005-35-fix' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-03-20 13:58:38 +08:00
Jun Pataleta 51feaeafa2 MDL-65005 tool_policy: Ensure the user's on the Dashboard after agreeing 2019-03-20 13:13:35 +08:00
Eloy Lafuente (stronk7) bccd34fa0a Merge branch 'MDL-65085_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2019-03-20 00:40:38 +01:00
Eloy Lafuente (stronk7) 77e067dc2e Merge branch 'MDL-64979-m35' of https://github.com/sammarshallou/moodle into MOODLE_35_STABLE 2019-03-19 22:09:43 +01:00
sam marshall 0ec20a18a4 MDL-64979 Behat: Add option to increase timeouts 2019-03-19 17:13:47 +00:00
Adrian Greeve d402e44ab9 Merge branch 'MDL-64958-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-03-19 13:43:54 +08:00
Adrian Greeve a8ad45b9e8 Merge branch 'MDL-63144-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-03-19 11:27:32 +08:00
Eloy Lafuente (stronk7) b60590a2fa Merge branch 'MDL-64974-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2019-03-19 00:23:58 +01:00
Eloy Lafuente (stronk7) 25160a2a05 Merge branch 'MDL-65006-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2019-03-18 23:36:08 +01:00
Julien Boulen 849f7f40c8 MDL-46803 course: Prevent unenrol users with multiple roles during reset 2019-03-18 11:17:58 +01:00
David Monllaó 36ec2d7503 MDL-63906 analytics: Release the lock on \Throwable received 2019-03-18 09:31:46 +01:00
Shamim Rezaie e3a7647ec3 MDL-63152 mod_workshop: Add userid param to calendar callbacks 2019-03-18 15:53:42 +11:00
Shamim Rezaie 70c84f07d7 MDL-63152 mod_workshop: check if the module is visible to the user 2019-03-18 15:53:42 +11:00
Shamim Rezaie 485ac4aeba MDL-62872 atto_recordrtc: max_filesize detection fix 2019-03-18 15:42:15 +11:00
Jake Dallimore ca39432c7a Merge branch 'MDL-65291_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-03-16 07:19:30 +08:00
Eloy Lafuente (stronk7) e1de53be9f Merge branch 'MDL-65179-m35' of https://github.com/sammarshallou/moodle into MOODLE_35_STABLE 2019-04-16 20:44:42 +02:00
David Monllaó 7c05382b75 Merge branch 'MDL-62572-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-04-15 11:07:14 +02:00
David Monllaó 8d371c2174 Merge branch 'wip-MDL-65220-MOODLE_35_STABLE' of https://github.com/jason-platts/moodle into MOODLE_35_STABLE 2019-04-15 07:58:10 +02:00
David Monllaó 457f84654e Merge branch 'MDL-64894-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-04-15 07:45:48 +02:00
David Monllaó 87648029c4 Merge branch 'MDL-29317-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-04-15 07:43:38 +02:00
Eloy Lafuente (stronk7) 5fd2f276f1 MDL-65291 phpunit: Make a test immune to DST changes 2019-04-15 01:23:03 +02:00
Trisha Milan ba8f84021f MDL-64894 Theme: Fix unable to expand collapsible topics 2019-04-12 14:20:59 +08:00
Damyon Wiese 7f84843045 MDL-62572 backup: Duplicating an activity
Don't apply admin defaults for import when using the duplicate function.
2019-04-12 14:05:09 +08:00
Jason Platts 41bb7608e8 MDL-65220 behat: test scenarios sometimes do not clear database data 2019-03-29 15:30:30 +00:00
Jun Pataleta b9ceefadf0 MDL-29317 gradeimport_csv: Case-insensitive query for email and username
Query using the following fields for
\gradeimport_csv_load_data::check_user_exists() should be done in a
case-insensitive manner:
* email - As agreed in MDL-29315
* username - Although usernames can only be in lowercase during
  registration, usernames are being handled in a case-insensitive
  fashion when logging in. It makes sense to make check_user_exists()
  consistent with this behaviour.
2019-03-29 13:30:06 +08:00
Jun Pataleta 2ff2274ffc MDL-29317 gradeimport_csv: Tests for case-insensitivity 2019-03-29 13:30:06 +08:00
sam marshall 82a46e6f07 MDL-65179 Web service: Token last access is updated too frequently 2019-03-28 17:15:29 +00:00
David Monllaó e34384ed18 MDL-65085 analytics: noreply user sends insights 2019-03-15 13:50:09 +01:00
Nicolas Roeser 43121fbe8b MDL-64790 upgrade: parameter API doc regression fix
Partially update the API documentation of function
upgrade_plugin_savepoint.

This restores consistency between function parameters and API
documentation; as commit 17da2e6f28 (fix
for MDL-16438) had renamed parameter $dir to $plugin, but not also
applied this change to the API documentation.

Also reword the parameter comment text so that it is more meaningful to
developers: document that the parameter contains the name of the plugin.

Change the API documentation of parameter $type as well so that it is
a) correct, and
b) not in conflict with the API documentation for $plugin.
2019-03-15 11:11:44 +01:00
Nathan Nguyen fe033417a6 MDL-63263 tool_recyclebin: Apply automated backup setting
Use Automated backup settings as settings for Recycle bin backup and restore.
2019-03-15 14:53:15 +11:00
Rex Lorenzo 73c24fa02c MDL-63263 tool_recyclebin: Recycle bin should always save user data. 2019-03-15 14:53:15 +11:00
Jake Dallimore b1376641d4 weekly release 3.5.5+ 2019-03-15 11:01:27 +08:00
Paul Holden 546ea12179 MDL-46931 roles: retrieve distinct users in sub-query.
Prevents duplicate key column warning when a user is enrolled in
a course via multiple enrolment methods.
2019-03-14 01:27:42 +01:00
Eloy Lafuente (stronk7) 55c0301d33 Merge branch 'MDL-63146-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-03-14 01:22:19 +01:00
Eloy Lafuente (stronk7) cca1025271 Merge branch 'MDL-61585_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2019-03-14 01:16:14 +01:00
Eloy Lafuente (stronk7) dda86847b1 Merge branch 'MDL-63524-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-03-13 23:56:58 +01:00
Andrew Nicols 12abff6943 MDL-63524 behat: Do not skip tests on Step 0 error 2019-03-14 06:55:23 +08:00
Juan Leyva e247dabc3a MDL-64615 tool_mobile: Do not modify custom download URLs 2019-03-13 17:10:36 +01:00
Jan Dageförde 22f5807e22 MDL-65022 wiki: declare the cancel button secondary 2019-03-12 09:06:22 +01:00
Shamim Rezaie 3be7a5ce18 MDL-63151 mod_wiki: Add userid param to mod_wiki calendar callbacks 2019-03-12 17:17:05 +11:00
Shamim Rezaie 34667451cf MDL-63151 mod_wiki: check if the module is visible to the user 2019-03-12 17:17:04 +11:00
Sara Arjona b02583be81 MDL-65006 policy: avoid loop when no policies need to be agreeded
Avoid an infinite loop when the user has no policies to agreed but
the policyagreed = 0.
2019-03-11 10:36:37 +01:00
Sara Arjona 4d53d44f2e MDL-64974 badges: add missing configurecriteria capability check 2019-03-11 10:25:49 +01:00
David Monllaó deb6d89f94 MDL-61585 analytics: Include missing indicators 2019-03-11 09:39:51 +01:00
Jun Pataleta 9820d27a23 MDL-64958 gradeimport_csv: Better unit tests for check_user_exists() 2019-03-11 09:36:00 +08:00
Jun Pataleta 78615db17f MDL-64958 grade_import: Ensure correct user is being fetched
* We need to ensure that we are checking the correct user account.
  Since email and idnumber are not unique fields, there's a chance that
  multiple user records will match when querying for user data using
  these fields. This might lead to a different user's grades being
  inadvertently modified during grade import. In such a case, this
  function needs to return a null userid.
2019-03-11 09:36:00 +08:00
David Castro 8d34e84bb9 MDL-65008 question: Query enhancement.
Adding core_question as an additional filter to the tag backup.
2019-03-08 16:34:25 -05:00
Sara Arjona 5e878219fb Moodle release 3.5.5 2019-03-08 11:03:11 +01:00
AMOS bot e8c0748998 Automatically generated installer lang files 2019-03-08 00:15:31 +00:00
Eloy Lafuente (stronk7) 8360ef9293 weekly release 3.5.4+ 2019-03-07 16:41:53 +01:00
Eloy Lafuente (stronk7) d750647969 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-03-07 16:41:51 +01:00
Shamim Rezaie f20c9009fa MDL-63149 mod_survey: Add userid param to mod_survey calendar callbacks 2019-03-07 17:54:54 +11:00
Shamim Rezaie 3be433b5d2 MDL-63144 mod_lti: Add userid param to mod_lti calendar callbacks 2019-03-07 17:49:30 +11:00
Shamim Rezaie 3086259abb MDL-63144 mod_lti: Check if the module is visible to the user 2019-03-07 17:49:30 +11:00
Adrian Greeve 2a3758ace1 Merge branch 'MDL-63905_35' of git://github.com/jmvedrine/moodle into MOODLE_35_STABLE 2019-03-07 09:14:46 +08:00
Andrew Nicols a868b63085 Merge branch 'MDL-64774-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-03-06 15:47:36 +08:00
Jean-Michel Vedrine ffe4e082b0 MDL-63905 qtype_multianswer: validate imported questions 2019-03-06 08:36:43 +01:00
Andrew Nicols e4a8e40912 Merge branch 'MDL-64950-35-2' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-03-06 13:48:18 +08:00
Jun Pataleta b51a2ccba5 MDL-64950 core: Handle username in a case-insensitive fashion 2019-03-06 12:46:14 +08:00
Jun Pataleta 0cdffdca4c MDL-64950 core: Unit tests for get_complete_user_data() 2019-03-06 12:46:14 +08:00
Jun Pataleta bdf22ec3b7 MDL-64950 login: core_login_validate_forgot_password_data() unit tests 2019-03-06 12:46:14 +08:00
Andrew Nicols 5d4597cda7 MDL-64971 access: Ensure that the capability exists when fetching 2019-03-06 10:16:54 +08:00
Jun Pataleta 90a5693234 MDL-64774 user: Make email query case-insensitive 2019-03-06 09:00:32 +08:00
Jun Pataleta aec6391bc2 MDL-64774 user: Better unit tests for updating users with similar emails 2019-03-06 09:00:32 +08:00
AMOS bot 21f27a2bd3 Automatically generated installer lang files 2019-03-06 00:09:40 +00:00
Eloy Lafuente (stronk7) 9f071b48c5 Merge branch 'MDL-64943_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-03-05 22:49:54 +01:00
Eloy Lafuente (stronk7) 3717e40450 MDL-64943 behat: fix some remaining uses of old strings 2019-03-05 17:02:28 +01:00
Eloy Lafuente (stronk7) f7e4dacd1e Merge branch 'MDL-64943-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-03-05 11:09:42 +01:00
Jun Pataleta c80db2680f Merge branch 'MDL-62465-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-03-05 15:29:55 +08:00
Damyon Wiese 438cf695bf MDL-62465 assign: Remove behat step
We don't need to open the menu to choose the "Grade" item, we can just click the button.
2019-03-05 14:49:51 +08:00
Adrian Greeve cc52293498 Merge branch 'MDL-64864-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-03-05 14:27:21 +08:00
Adrian Greeve 3eab97cc34 Merge branch 'MDL-64678-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-03-05 13:54:09 +08:00
Andrew Nicols e225d71259 Merge branch 'MDL-64961-m35' of https://github.com/sammarshallou/moodle into MOODLE_35_STABLE 2019-03-05 13:25:17 +08:00
Andrew Nicols 2504aa33e0 Merge branch 'MDL-64981_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-03-05 13:23:07 +08:00
Shamim Rezaie 4480118b5d MDL-63146 mod_quiz: Add userid param to mod_quiz calendar callbacks 2019-03-05 14:23:47 +11:00
Shamim Rezaie 816e6abb1b MDL-64830 core_calendar: Do cap check on event edit form 2019-03-05 04:21:41 +01:00
Damyon Wiese d3f2f990dd MDL-64651 comments: Do not send referrer
Use blanktarget option on all comments to prevent malicious links.
2019-03-05 04:21:41 +01:00
Viktor 427463a525 MDL-62702 core_lib: fix broken verification signature 2019-03-05 04:21:41 +01:00
Mark Nelson f46413cb03 MDL-62702 core_lib: updated the 'ltiprovider' readme_moodle.txt 2019-03-05 04:21:41 +01:00
Brendan Cox 723d1a7475 MDL-62702 core_lib: parameters in POST override other LTI values
This fixes an exploit where you could alter the 'Content-Type' of the
request and bypass the case-sensitive check 'strstr'. For example,
setting it to 'application/x-www-FORM-urlencoded'. However, changing
this to use 'stristr' was also not an acceptable approach as you
could also bypass it by setting the value to 'multipart/form-data'.
2019-03-05 04:21:41 +01:00
Ryan Wyllie 070f24d006 MDL-63786 core: set $CFG->forceclean for logged in as sessions
Turn on the forceclean config setting when a user is logged in as a
different user. This is a precautionary measure, which forces all
user submitted content to be cleaned of JavaScript before rendering
it to the logged in as user.
2019-03-05 04:21:41 +01:00
Luca Bösch 911f748806 MDL-64706 theme_boost: Remove logo link in secure template 2019-03-05 04:21:41 +01:00
Jun Pataleta 9ed8cafff3 Merge branch 'MDL-64652-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-03-05 11:13:13 +08:00
Adrian Greeve d85fed227b Merge branch 'MDL-64941-35' of https://github.com/MartinGauk/moodle into MOODLE_35_STABLE 2019-03-05 11:11:58 +08:00
Andrew Nicols 0b9e9bf89d MDL-64652 mod_data: Break LEFT JOINs to multiple INNER 2019-03-05 10:17:36 +08:00
Andrew Nicols ed5a080034 MDL-64652 glossary: Break LEFT JOINs to multiple INNER 2019-03-05 10:17:36 +08:00
Andrew Nicols 419275478b MDL-64652 forum: Use an inner join when fetching ratings 2019-03-05 10:17:36 +08:00
Andrew Nicols 6a06c7ca03 MDL-64652 rating: Add optional inner join option to sql 2019-03-05 10:17:35 +08:00
Andrew Nicols 6b9cce6b98 MDL-64652 mod_forum: Performance improvement for provider
There are possibly some further improvements that can be made to:
- export_discussion_data
- export_all_posts
2019-03-05 10:17:10 +08:00
Adrian Greeve f8e7257327 Merge branch 'MDL-64863-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-03-05 09:51:11 +08:00
Jun Pataleta 37a1983740 Merge branch 'MDL-62143-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-03-05 09:41:20 +08:00
Damyon Wiese ebbb7f9a5f MDL-64864 core_competency: Include course category
These courses are passed through to the course_summary_exporter which
requires a category id in each course record.
2019-03-05 08:54:17 +08:00
Damyon Wiese 95209cb64a MDL-64678 assign: More ios touch
Only disable touch scrolling when the touch event is within the drawing region of the canvas.
2019-03-05 08:49:49 +08:00
AMOS bot 973c2551aa Automatically generated installer lang files 2019-03-04 00:09:51 +00:00
sam marshall cdfdef65b5 MDL-64961 REST web service: Fatal error in error handler 2019-03-01 11:57:52 +00:00
Tim Hunt 7f5479a142 MDL-64981 dml tests: pgsql_native_recordset_testcase port number 2019-03-01 11:14:20 +00:00
Martin Gauk 5320dc6722 MDL-64941 qtype_multianswer: keep order of existing wrapped questions 2019-03-01 09:50:05 +00:00
AMOS bot c67c536dfe Automatically generated installer lang files 2019-03-01 00:15:55 +00:00
David Mudrák 4c73fd62b0 MDL-64943 lang: Fix regression in the test caused by the reworded string 2019-02-28 20:00:52 +01:00
Eloy Lafuente (stronk7) b38eb7882b weekly release 3.5.4+ 2019-02-28 18:51:41 +01:00
Eloy Lafuente (stronk7) c4af3e8ec1 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-02-28 18:51:38 +01:00
David Mudrák d5cdc97b2f MDL-64943 lang: Fix regressions in Behat caused by reworded strings 2019-02-28 18:07:03 +01:00
Helen Foster bc2a000664 MDL-64943 lang: Import fixed English strings (en_fix)
Significant string changes:

* importgroups_help,core_group - Correcting optional fieldnames
  (removing picture, hidepicture and adding groupidnumber, groupingname
  and enablemessaging)

* penaltyforeachincorrecttry_help,core_question - additional paragraph
  about scoring logic

* resultdownloadready,tool_dataprivacy - wording corrected (no need to
  go to a download page)

* auth_dbfielduser,auth_db - varchar data type requirement
2019-02-28 18:02:44 +01:00
Juan Leyva 651f5c494b MDL-64444 mod_assign: Use correct permissions for viewing grades
Some WebServices does not use the correct permissions.
Now we are using assign own API (require_view_grades()) instead.

Note this patch is different from the 36_STABLE and master ones
because there isn't context freezing here. Just we decided to
apply the changes for consistent perm evaluation in all branches.
2019-02-28 01:25:13 +01:00
Sara Arjona 536faec42a Merge branch 'MDL-55135-35-competencies-manage-in-coursecontext' of https://github.com/wjroes/moodle into MOODLE_35_STABLE 2019-02-27 11:51:51 +01:00
Sara Arjona c7ff973845 Merge branch 'MDL-62454-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2019-02-27 08:58:31 +01:00
Andrew Nicols 3235bb616d Merge branch 'MDL-64889_35_STABLE' of https://github.com/marxjohnson/moodle into MOODLE_35_STABLE 2019-02-27 14:44:18 +08:00
Andrew Nicols 86c240ddfa Merge branch 'wip-35-MDL-62345' of https://github.com/adpe/moodle into MOODLE_35_STABLE 2019-02-27 14:14:35 +08:00
Andrew Nicols a94b5db132 Merge branch 'MDL-63674-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-02-27 13:04:33 +08:00
Andrew Nicols 47ff684a89 Merge branch 'MDL-64591_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-02-27 09:55:05 +08:00
AMOS bot 50733f26f7 Automatically generated installer lang files 2019-02-27 00:09:51 +00:00
Eloy Lafuente (stronk7) d14925e818 Merge branch 'MDL-63417-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2019-02-26 23:19:25 +01:00
Sara Arjona a5dfb4cb3b Merge branch 'MDL-43428-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-02-26 14:09:15 +01:00
Tim Hunt 591a7952c2 MDL-64591 User tours: don't show during redirects & other bad times 2019-02-26 13:06:36 +00:00
Shamim Rezaie f4713ca7ec MDL-43428 accessrule_timelimit: timeclose can be ealier than timelimit 2019-02-26 14:45:37 +11:00
Adrian Greeve ce0a325481 Merge branch 'MDL-64640-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-02-25 10:29:35 +01:00
Andrew Nicols e12a258678 Merge branch 'MDL-64561-35-test' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-02-25 15:53:34 +08:00
Charles Fulton 2f9592c57a MDL-64561 install: show help text before database check 2019-02-25 16:44:35 +11:00
Shamim Rezaie 79cbc5ca4c MDL-63674 core_messaging: Bidi text support 2019-02-25 14:44:05 +11:00
Adrian Perez e6e776dc77 MDL-62345 navigation: Change data-key for dashboard rootnode 2019-02-22 16:59:04 +01:00
Andrew Nicols f5dde8d05e weekly release 3.5.4+ 2019-02-22 10:51:25 +08:00
Andrew Nicols e8833c4a18 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-02-22 10:51:20 +08:00
Bas Brands a71f1f4336 MDL-62454 theme_boost: numerical qtype answer inline 2019-02-21 14:38:32 +01:00
Adrian Greeve 6e3e7d3a01 Merge branch 'MDL-64729-35' into MOODLE_35_STABLE 2019-02-21 12:36:34 +01:00
John Beedell a37d6ab8ff MDL-64729 mod_glossary: glossary_get_entries_search case sensitivity 2019-02-21 12:35:45 +01:00
Adrian Greeve 96803a9db7 Merge branch 'MDL-64856_m35v1' of git://github.com/sbourget/moodle into MOODLE_35_STABLE 2019-02-20 18:06:16 +01:00
Adrian Greeve dfff9d51bb Merge branch 'MDL-64200-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-20 16:00:43 +01:00
Adrian Greeve c9bb208ba8 Merge branch 'MDL-64450-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2019-02-20 11:39:10 +01:00
Matteo Scaramuccia 7b5b613820 MDL-64443 git: Excluded vim swap files
Vim swap filenames are deterministic someway.
Refs:
- http://vimdoc.sourceforge.net/htmldoc/recover.html#swap-file
- https://github.com/vim/vim/blob/4efe73b478d3ba689078da502fd96f45204ff1f5/src/memline.c#L4683
- https://unix.stackexchange.com/a/326737
- https://github.com/github/gitignore/blob/master/Global/Vim.gitignore
2019-02-20 10:24:31 +01:00
David Monllaó 93551b5f58 MDL-64500 tool_analytics: noanalysables negation better than analysables 2019-02-20 10:10:18 +01:00
Andrew Nicols 6fb045026e Merge branch 'MDL-64570-35-fix1' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-20 10:55:32 +08:00
Damyon Wiese a6ad453ad7 MDL-64570 user: input field purpose
Do not autocomplete the user fields when editing another user.
2019-02-20 09:51:32 +08:00
Eloy Lafuente (stronk7) 6456fa0617 Merge branch 'MDL-64679_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2019-02-20 00:07:09 +01:00
Eloy Lafuente (stronk7) 903be41022 Merge branch 'MDL-63134-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-02-20 00:01:11 +01:00
Eloy Lafuente (stronk7) 72163b6f59 Merge branch 'MDL-64806-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-19 23:35:13 +01:00
Eloy Lafuente (stronk7) 461981dca0 Merge branch 'MDL-64242_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-02-19 23:23:14 +01:00
Eloy Lafuente (stronk7) d9b034dadb Merge branch 'MDL-62008-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-19 17:24:03 +01:00
Eloy Lafuente (stronk7) 0937c18c6d Merge branch 'MDL-64500_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2019-02-19 17:10:56 +01:00
Eloy Lafuente (stronk7) 2e80ca02f3 Merge branch 'MDL-64540-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-19 15:42:11 +01:00
Adrian Greeve 331aec2f27 Merge branch 'MDL-60459_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2019-02-19 11:51:11 +01:00
David Monllaó 6d31a91aff MDL-64570 user: Remove empty line 2019-02-19 09:26:57 +01:00
David Monllaó df51b94410 Merge branch 'MDL-64570-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-19 09:26:27 +01:00
David Monllaó c96968b7e9 Merge branch 'MDL-45151-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-19 06:40:33 +01:00
Damyon Wiese e995a79f7b MDL-64540 assign: Backport of MDL-60008
This patch combines the following changes:

* Basically we should produce a combined PDF from all the files that it was possible to convert.
* If any one submission input file fails conversion, it should just be omitted in the result.
* When not all files are available in the online pdf, display a warning to graders
that some files must be downloaded.
* Better support for information messages from the conversion process.
* Remove the z-index values from the expand / collapse panels. They cause errors when mixed with dialogues.
* The edit pdf menus are all broken on small screen sizes. They consume 100% of the page with for no reason.
* The heights of the buttons to hide/show panels are arbitrarily big. There is not need to set them specifically.
2019-02-19 10:23:50 +08:00
Damyon Wiese f148fa37cb MDL-64570 user: coding style
Fix cibot warnings on line length.
2019-02-19 09:45:24 +08:00
Damyon Wiese 1e1ab33625 MDL-64570 accessibility: autocomplete user profile fields
Only if editing your own user details and not logged in as someone else.
2019-02-19 09:45:24 +08:00
Damyon Wiese b049fa2c8d MDL-64570 accessibility: purpose login fields
Provide the autocomplete attribute and username / current-password values to username
and password fields in login forms.

https://www.w3.org/WAI/WCAG21/Understanding/identify-input-purpose.html
2019-02-19 09:45:23 +08:00
Adrian Greeve d6f6c78c73 Merge branch 'MDL-64452-35-cachesession' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-02-18 15:55:59 +01:00
Mark Johnson 4c0a87629f MDL-64889 completion: Fix performance of get_course_progress_percentage 2019-02-18 14:06:37 +00:00
willem fb5836b42e MDL-55135 competencies: fix capabilities managing course competencies
Capability check in a course was using global competency capabilities 
moodle/competency:competencyview and  moodle/competency:competencymanage 
instead of the course equivalents. Users outside the course context 
could not manage course competencies.
2019-02-18 10:51:02 +01:00
AMOS bot 8fd354bc92 Automatically generated installer lang files 2019-02-16 00:14:07 +00:00
David Mudrák 8374e2db3f MDL-64452 cache: Add tests for key prefix based on session id
Unfortunately, we can't simply use session_id() to regenerate the
session id in unit tests. Starting from PHP 7.2, it would trigger
"session_id(): Cannot change session id when headers already sent",
refer to MDL-60978 and PHP bug #75628 for more details.

As a workaround, we use a static property allowing us to inject the
value that we then use as a session identifier. This is reasonably
enough to make sure that the identifier is used as a part of the key
prefix.
2019-02-15 09:38:09 +01:00
David Mudrák c4f137749d MDL-64452 cache: Always use the current session id in the key prefix
The current logic in the cache_session::check_tracked_user() is not
right. We must always set the current session id. A typical use case is
when the cache instance is instantiated for a not logged in user. We
can't let the sessionid property null in that case as it forms an
important part of the parsed key.

Similarly, even if we have the same user currently loaded, we must still
set the sessionid to make sure the data will be associated with the
current PHP session. Same user (including visitors or guest users) can
access the site from different browsers and each must end up with its
own key prefix.
2019-02-15 09:38:09 +01:00
David Monllaó 18735c9f51 MDL-64679 tool_analytics: Allow trained models to be cleared 2019-02-15 08:43:34 +01:00
Damyon Wiese 77474f4733 MDL-64863 tool_lp: Progress if needed
Do not immediately show progress bars since most operations work
in under a second. This will use the default timeout (5 seconds)
before showing progress bars.
2019-02-15 09:10:29 +08:00
Andrew Nicols 41a15e6d73 weekly release 3.5.4+ 2019-02-15 08:29:24 +08:00
Andrew Nicols bcd2debd4e Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-02-15 08:29:22 +08:00
Stephen Bourget 4440ca8121 MDL-64856 mod_glossary: Always show the settings cog on the view page. 2019-02-14 12:47:01 -05:00
Jun Pataleta 4d67bcdb5e Merge branch 'MDL-64736-35-2' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-02-14 15:00:42 +08:00
Jun Pataleta af3214adae Merge branch 'MDL-63892-35-rework' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2019-02-13 21:00:46 +08:00
Michael Hawkins a3f16eb4ea MDL-63892 mod_forum: Behat update for post order 2019-02-13 16:47:46 +08:00
Jun Pataleta 579700dcf4 Merge branch 'MDL-64835-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-02-13 16:27:00 +08:00
Andrew Nicols ea2ed45ec7 Merge branch 'MDL-64714-35' of git://github.com/cescobedo/moodle into MOODLE_35_STABLE 2019-02-13 11:25:24 +08:00
Andrew Nicols c35399cc17 Merge branch 'MDL-63892-35-rework' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2019-02-13 10:19:56 +08:00
Andrew Nicols f0f468ba1f MDL-64835 JS: Reduce cache invalidation checks
The cache invalidation check was previously occuring every time either
the `set` or `get` function was called on the cache. However, the cache
invalidation check is based on the jsrev which is static for the
lifetime of the page.

This change moved the invalidation to happen during the setup of the AMD
module such that it only happens one time per storage type (Local +
Session).
2019-02-13 10:13:56 +08:00
Andrew Nicols 8bb8d213db MDL-64835 JS: Stop using the jsrev in the jsrevPrefix
We only use the jsrevPrefix to determine if the cache should be
invalidated, but the prefix that we were using is based on the new
jsrev.

For example, the jsrevPrefix will be:

    hash(wwwroot + '/ + config.jsrev) + '/jsrev'

Where config.jsrev is the _current_ (new) jsrev.

As a result when searching for the jsrev used to store the data which is
currently in the storage cache, no key is returned, and we instead set
an 'initial' value and the cache is not cleared

This patch changes the jsrevPrefix to be:

    hash(wwwroot) + '/jsrev'

Since the wwwroot does not change, the key remains static for the
current site. As a result, when the jsrev is bumped via a Moodle cache
purge, we are able to correctly fetch the old jsrev from the cache,
determine that the jsrev has changed, and purge the cache.
2019-02-13 10:13:56 +08:00
AMOS bot a75f2c2f1b Automatically generated installer lang files 2019-02-13 00:11:52 +00:00
Eloy Lafuente (stronk7) 85da5ed5e2 Merge branch 'MDL-64420-2_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-02-12 12:56:46 +01:00
David Monllaó 82b6519647 Merge branch 'MDL-64590_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-02-12 12:47:06 +01:00
David Monllaó 799e4e2fbf Merge branch 'MDL-64730-lti-adv-0score-35' of https://github.com/CengageEng/moodle into MOODLE_35_STABLE 2019-02-12 12:33:38 +01:00
John Beedell ecbcbb2a7f MDL-64420 qtype: gapselect unit tests unsafe 2019-02-12 11:27:01 +00:00
David Monllaó 6699b20eb9 MDL-63706 tasks: Fix typo in pathtophp 2019-02-12 09:49:51 +01:00
David Monllaó 5af18c34e3 Merge branch 'MDL-63706_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2019-02-12 09:46:39 +01:00
David Monllaó fb911d3422 Merge branch 'MDL-32096-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2019-02-12 09:41:45 +01:00
Andrew Nicols 895ec79efd Merge branch 'MDL-64291_35' of https://github.com/KietChan/moodle into MOODLE_35_STABLE 2019-02-12 10:55:53 +08:00
Jun Pataleta 7ccf3ebdf2 Merge branch 'MDL-64493-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-12 10:10:28 +08:00
Andrew Nicols e3c4a1fc9f MDL-64736 course: Rewrite behat step to avoid changing a checkbox 2019-02-12 07:43:54 +08:00
Eloy Lafuente (stronk7) 1bcf9c913f Merge branch 'MDL-61326-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2019-02-12 00:20:43 +01:00
Peter ecf8e7eda9 MDL-61326 repository_equella: Pass proper labels for roles with no name 2019-02-12 07:11:16 +08:00
Eloy Lafuente (stronk7) 9b6f09eeeb Merge branch 'MDL-64694_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2019-02-12 00:10:35 +01:00
Eloy Lafuente (stronk7) 83e40aa825 Merge branch 'MDL-64606-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-02-12 00:02:44 +01:00
Eloy Lafuente (stronk7) 008121e57f Merge branch 'MDL-64238-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2019-02-11 23:57:18 +01:00
Peter 67bc6c6ebb MDL-64238 mod_quiz: Check enrollment on calendar_action generator
* Updated unit tests to account for participants
2019-02-12 06:26:23 +08:00
Peter 649ffed15d MDL-64238 mod_lesson: Check enrollment calendar_action generator
* Updated unit tests to account for participants
2019-02-12 06:26:23 +08:00
Eloy Lafuente (stronk7) 57ac26edae Merge branch 'MDL-64725-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-02-11 17:05:02 +01:00
Eloy Lafuente (stronk7) f05e71a443 Merge branch 'M3.5-MDL-64599' of https://github.com/marcusboon/moodle into MOODLE_35_STABLE 2019-02-11 12:51:20 +01:00
Eloy Lafuente (stronk7) 0cccbe18f2 Merge branch 'MDL-64385-35' of git://github.com/aanabit/moodle into MOODLE_35_STABLE 2019-02-11 12:35:43 +01:00
Sara Arjona 861b48d332 Merge branch 'MDL-64031-35' of https://github.com/lethevinh/moodle into MOODLE_35_STABLE 2019-02-11 12:33:21 +01:00
David Monllaó 5719590cb1 Merge branch 'MDL-64391_35' of git://github.com/vmdef/moodle into MOODLE_35_STABLE 2019-02-11 11:09:35 +01:00
Sara Arjona 571b22a693 Merge branch 'MDL-48338-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-02-11 10:41:31 +01:00
David Monllaó 603aaf66c4 Merge branch 'MDL-62666-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-02-11 09:49:00 +01:00
Tim Hunt 99f29e2580 MDL-64242 qtype_essay: more efficient query in restore code
Thanks to Juan Ibarra for the suggestion that lead to this fix.
2019-02-11 08:40:57 +00:00
Andrew Nicols 3ae9b14420 Merge branch 'MDL-64597-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-02-11 16:34:56 +08:00
Jun Pataleta 302a14d287 Merge branch 'MDL-64488-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-11 16:05:20 +08:00
Jun Pataleta 1e41439336 Merge branch 'MDL-64644_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2019-02-11 15:28:29 +08:00
Shamim Rezaie b8ddf80ca6 MDL-63134 mod_chat: Check if the module is visible to the user 2019-02-11 16:10:41 +11:00
Shamim Rezaie d2abeb3b3c MDL-63134 mod_chat: Add userid param to mod_chat calendar callbacks 2019-02-11 16:10:41 +11:00
AMOS bot fd0bbd3201 Automatically generated installer lang files 2019-02-10 00:10:24 +00:00
Adrian Perez ed73a073a3 MDL-64563 theme_boost: Add page site admin category name word-break 2019-02-09 20:17:03 +01:00
Luca Bösch 1084a0afe4 MDL-64606 templates: Show & instead of & in url-select. 2019-02-08 13:21:45 +01:00
Jun Pataleta 43f894f2ba weekly release 3.5.4+ 2019-02-08 14:54:34 +08:00
Damyon Wiese 29086bc3b3 MDL-64806 theme_boost: Do not label "More" icon
The icon is next to the text that says the same thing. Hide it from screenreaders.
2019-02-08 09:37:42 +08:00
Jun Pataleta 395b1f8fe7 Merge branch 'MDL-63614_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-02-08 08:38:00 +08:00
Eloy Lafuente (stronk7) 1a20233e7f MDL-63614 tests: Perform attempt the old way
The functions being used here only are available for 36_STABLE and up,
so we switch to the old way of performing an attempt.
2019-02-08 00:13:34 +01:00
Eloy Lafuente (stronk7) 2a26069c13 Merge branch 'MDL-62680-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-07 10:22:39 +01:00
Anthony Ales 4e9c2677e5 MDL-48338 forum: Missing #unread in discussion post url
When a user user selects the unread messages link from the forum
discussion page, the link does not include '#unread' in the url.
This patch appends '#unread' to the url by changing the appropriate
value in the reference link assigned to $out within the function
forum_cm_info_view() of the 'lib.php'file.

A similar change is on the forum index.
2019-02-07 15:17:21 +08:00
Andrew Nicols 763c1bc6fb Merge branch 'MDL-64633-35' of https://github.com/ewallah/moodle into MOODLE_35_STABLE 2019-02-07 14:54:05 +08:00
Peter Eliyahu Kornfeld e5f929a854 MDL-60459 core_course: set default for 'visibleoncoursepage' 2019-02-07 10:54:25 +08:00
Damyon Wiese 78bb834249 MDL-62680 output: Only hide icons with no label
For accessibility we don't want to read an icon with a label immediately next to the label,
but in this case it's clearer for the icon to have no alt text / title for both
screen readers and non-screen readers. Worse is not reading important information just
because it's displayed as an icon.
2019-02-07 10:12:47 +08:00
Eloy Lafuente (stronk7) a4c9320fae Merge branch 'MDL-64577-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-02-07 00:47:14 +01:00
Eloy Lafuente (stronk7) c59ad632a2 Merge branch 'MDL-64551-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-02-06 23:44:57 +01:00
Eloy Lafuente (stronk7) ab2a6da0da Merge branch 'MDL-64469-35' of https://github.com/lethevinh/moodle into MOODLE_35_STABLE 2019-02-06 22:55:29 +01:00
Eloy Lafuente (stronk7) fb14b2aab7 Merge branch 'MDL-63372-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-02-06 18:58:26 +01:00
Eloy Lafuente (stronk7) cf775cb602 Merge branch 'MDL-63148-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2019-02-06 13:28:40 +01:00
Eloy Lafuente (stronk7) 0603a6db6d Merge branch 'MDL-63614_M35v1' of https://github.com/sbourget/moodle into MOODLE_35_STABLE 2019-02-06 13:20:01 +01:00
Mihail Geshoski 9fb8d55550 MDL-63417 lesson: Re-apply class variable to the question response 2019-02-06 15:02:34 +08:00
Jun Pataleta 9f19bb9dfb Merge branch 'MDL-61405-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-06 13:12:16 +08:00
Damyon Wiese 06e372a3c8 MDL-61405 assign: Multiple pdfs are expected
In the same page it is normal (expected) to have multiple links to different annotated pdfs.

In the grading page, we also abort pending ajax progress when the current user is changed.
2019-02-06 09:38:08 +08:00
Eloy Lafuente (stronk7) 2980c823f8 Merge branch 'MDL-63516-MOODLE_35_STABLE' of https://github.com/dmitriim/moodle into MOODLE_35_STABLE 2019-02-06 00:16:48 +01:00
Dmitrii Metelkin c025ce8af1 MDL-63516 groups: fix unexpected debugging message 2019-02-06 09:39:55 +11:00
Sara Arjona 3144a87a57 Merge branch 'MDL-62893_35' of https://github.com/mfabriczy/moodle into MOODLE_35_STABLE 2019-02-05 20:06:58 +01:00
Eloy Lafuente (stronk7) 07579a6bba Merge branch 'MDL-61441_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-02-05 13:09:12 +01:00
cescobedo 1210555318 MDL-64714 core_auth: Fix early break foreach in delete_data_for_user 2019-02-05 12:51:59 +01:00
Marcus Fabriczy 68bc7c4658 MDL-62893 mod: Grade visibility bug in the Outline/Complete reports
Grades that have been hidden will appear in the outline/complete
report - even if the user is a student.

The modules that have been fixed are:
* mod_assign
* mod_data
* mod_forum
* mod_glossary
* mod_lesson
* mod_scorm
* mod_workshop
2019-02-05 20:12:14 +10:30
Peter f0f73daeb9 MDL-64450 mod_lesson: Update the css for lesson forms
* Reduce the width for the mediaplugin when displayed in forms
* Correct the css to exclude mediaplugin when applying styles
2019-02-05 12:55:22 +08:00
Olivier Piton 46f6c0da7b MDL-61535 report_security: SQL Perf improvement 2019-02-05 01:44:29 +01:00
Eloy Lafuente (stronk7) b69c36612d Merge branch 'wip-MDL-64404-35' of https://github.com/Beedell/moodle into MOODLE_35_STABLE 2019-02-05 01:31:24 +01:00
Eloy Lafuente (stronk7) c2587d48ba Merge branch 'MDL-64649-35' of https://github.com/felicemcc/moodle into MOODLE_35_STABLE 2019-02-04 16:51:46 +01:00
Eloy Lafuente (stronk7) 9400329867 Merge branch 'MDL-63975-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-02-04 13:22:03 +01:00
Damyon Wiese 2486b50a7b MDL-62008 output: Help icon text is escaped
The argument to render the pix_icon template from the help_icon template should not
be escaped, they will be escaped by the pix_icon template when it generates the HTML.
2019-02-04 13:46:30 +08:00
Damyon Wiese ac3a49cd4a MDL-62465 assign: Allow grade scrolling
Remove the custom override that disables no-overflow in the grading table. This page is better to use
when the grading table is scrollable and the controls around it are not scrollable.
2019-02-04 11:40:37 +08:00
Damyon Wiese 9cf38a5d24 MDL-62465 grade: scrolling CSS
Grading pages have their own special javascript to force "fixed" headers
when scrolling a large table. They rely on the entire page being scrolled,
not just the main region.
2019-02-04 11:40:37 +08:00
Damyon Wiese 1b7a0a4d1a MDL-62465 CSS: scrolling tables
Tables displayed inside a flex box container need position:relative to
calculate their size or they cause incorrect scrollable regions to appear in the page.
2019-02-04 11:40:37 +08:00
Jun Pataleta d403ff368e MDL-64725 composer: Use lowercase for package name of dev dependencies 2019-02-04 09:36:53 +08:00
David Monllaó 541122f622 MDL-64694 report_insights: Remove unnecessary cell classes 2019-02-01 09:10:07 +01:00
Luca Bösch 960fef4854 MDL-64577 grade: style "Add ID numbers" button. 2019-02-01 07:08:18 +01:00
Luca Bösch 88e90e3a6b MDL-63372 theme_boost: leave bootstrap card-decks untouched. 2019-02-01 07:01:33 +01:00
David Monllao 16e46ae78b MDL-64500 tool_analytics: No invalid analysables message 2019-02-01 06:59:23 +01:00
Damyon Wiese db3008e2fa MDL-45151 assign: Add anonymous flag to events if blindmarking 2019-02-01 09:14:12 +08:00
Jun Pataleta 06c98804f8 weekly release 3.5.4+ 2019-02-01 08:57:10 +08:00
Jun Pataleta 8e85d900db Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-02-01 08:57:09 +08:00
Eloy Lafuente (stronk7) e25999cfeb Merge branch 'MDL-64737-35-attoprivacysql' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-01-31 22:46:46 +01:00
Sara Arjona a2740b43c5 MDL-62514 form: Add missing data-tags attribute
The data-tags=1 attribute was missing for the autocomplete forms
without suggestions.
2019-01-31 13:53:47 +01:00
David Mudrák b14eb813a0 MDL-64737 editor_atto: Fix the privacy export_user_data() implementation
Multiple issues fixed:

* Fixed order of the statements to avoid access to undefined variables.
* Fixed population of the SQL query parameter to make sure they match
  the placeholder in the query.
* Fixed missing table aliases in the second query to make sure the query
  actually works as expected.
2019-01-31 12:51:18 +01:00
David Mudrák 7ed8b29579 MDL-64737 privacy: Fix privacy provider testsuite file names
Only files ending with "_test.php" suffix are implicit part of a
testsuite. So these two were not actually executed.
2019-01-31 12:51:18 +01:00
Felice Candilio 64d7b87888 MDL-64649 amd: Removing underscores from icons in [Roles/Groups] forms 2019-01-31 11:03:02 +01:00
Damyon Wiese 5944f26805 MDL-63975 assign: Fix error when there is no grader 2019-01-31 13:09:30 +08:00
Damyon Wiese 420daee391 MDL-64200 atto_media: Improve behat test
By setting the window size before the modal dialogs are opened, we will get
consistent behaviour when interacting with the modal.
2019-01-31 11:56:18 +08:00
Eloy Lafuente (stronk7) 2afeb308b6 Merge branch 'MDL-64320_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2019-01-31 00:30:17 +01:00
Eloy Lafuente (stronk7) eacb5e71d5 Merge branch 'MDL-64521_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-01-30 23:49:08 +01:00
Eloy Lafuente (stronk7) ad2ee11aae Merge branch 'MDL-62514-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-01-30 23:01:27 +01:00
Claude Vervoort be5dd33e4d MDL-64730 LTI Adv: do not ignore 0 score 2019-01-30 16:15:23 -05:00
Sara Arjona a16553fc55 Merge branch 'MDL-47247-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2019-01-30 14:03:27 +01:00
David Monllao a8159737cf MDL-64320 analytics: Validate discrete indicators separately 2019-01-30 12:11:40 +01:00
Andrew Nicols 88c0ab547b MDL-62514 behat: Inplace editable pendingjs wrapper 2019-01-30 08:26:31 +08:00
Andrew Nicols 9b71e8a8b0 MDL-62514 behat: Remove potentially conflicting names from description 2019-01-30 08:26:31 +08:00
Andrew Nicols 6c461125c5 MDL-62514 behat: Add additional autocomplete validation 2019-01-30 08:26:31 +08:00
Andrew Nicols e3138b870e MDL-62514 behat: Rewrite handling of autocomplete
This includes a minor restructure of the autocomplete JS to make use of
promises and improve tracking of pending JS.

In particular it improves the way in which throttled text input is
handled to ensure that the behat does not continue until:
- typing is fully complete; and
- all possible ajax requests have been sent; and
- all possible ajax requests complete; and
- the suggestions are updated.

A number of conditions existed where behat would move on to the next
step too early in a race condition effect between Behat and Autocomplete.
2019-01-30 08:26:31 +08:00
Andrew Nicols eb18ff3cf3 MDL-62514 behat: Add a wait_for_pending_js to form field 2019-01-30 08:26:31 +08:00
AMOS bot 8c435f5f42 Automatically generated installer lang files 2019-01-30 00:10:24 +00:00
Eloy Lafuente (stronk7) 75153c10e6 Merge branch 'MDL-64424-35-expiredfrontpage' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-01-29 23:48:45 +01:00
Eloy Lafuente (stronk7) 328aa06432 Merge branch 'MDL-64464_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-01-29 19:41:03 +01:00
Sara Arjona 64a588ccca Merge branch 'MDL-63168_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2019-01-29 13:01:10 +01:00
Sara Arjona 2844f968b0 Merge branch 'MDL-64313-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-29 12:35:49 +01:00
Sara Arjona 82e028d7bd Merge branch 'MDL-61623-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-29 11:20:34 +01:00
Damyon Wiese c14b0c9bcd MDL-61623 accessibility: Use role, not aria-role 2019-01-29 14:00:06 +08:00
Mihail Geshoski 7c815adea4 MDL-47247 mod_folder: Apply site config when showexpanded is not set 2019-01-29 08:59:05 +08:00
Sara Arjona a5fb32a623 Merge branch 'MDL-62668-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2019-01-28 19:43:34 +01:00
Binh Thai c0d4b3ba08 MDL-64291 GDPR export: Context paths can be very long, not unique 2019-01-28 20:04:35 +07:00
Sara Arjona 4a6403f068 Merge branch 'MDL-56604-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-28 13:33:07 +01:00
Sara Arjona 1e0cf52994 Merge branch 'MDL-63378-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-28 11:38:24 +01:00
Sara Arjona 6ad3397d69 Merge branch 'MDL-54804_35' of https://github.com/mfabriczy/moodle into MOODLE_35_STABLE 2019-01-28 10:21:52 +01:00
Garrett Boone 4fc6d79fa3 MDL-64640 feedback: Fix target link on deletion 2019-01-27 18:15:51 +08:00
Andrew Nicols cbf5a395a3 MDL-64640 usertours: Fix target link on deletion 2019-01-27 18:15:51 +08:00
Eloy Lafuente (stronk7) be521ca625 weekly release 3.5.4+ 2019-01-24 15:12:31 +01:00
Eloy Lafuente (stronk7) 16e61e37ac Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-01-24 15:12:28 +01:00
Shamim Rezaie e39f009680 MDL-52132 qbehaviour_manualgraded: no change when comment is left blank 2019-01-24 16:20:20 +08:00
Damyon Wiese be1f9cfba2 MDL-56604 assign: Group submission status
On the page listing all assignments for the course,
show the status of the group submission if teamsubmissions is enabled
for the assignment.
2019-01-24 14:34:47 +08:00
Jun Pataleta b895b8b74f MDL-64597 behat: Properly import behat_util when dropping parallel sites 2019-01-24 12:51:49 +08:00
Damyon Wiese 4777f33bbe MDL-64493 completion: Manual completion Ally
Do not use duplicate title attributes on buttons, use aria-live to force the correct state to be
read after clicking on a button.
2019-01-24 08:37:18 +08:00
Damyon Wiese 2f4185c8ba MDL-64488 output: User picture Ally
Do not include alt and title for a user picture if it is hidden from screen readers.

Use aria-hidden to properly hide the image from screen readers.
2019-01-24 08:32:16 +08:00
Eloy Lafuente (stronk7) 8eaffb287a Merge branch 'MDL-64240-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2019-01-24 00:57:03 +01:00
Eloy Lafuente (stronk7) 1f666f276e Merge branch 'MDL-62963-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-24 00:38:37 +01:00
Eloy Lafuente (stronk7) d7072f15e9 Merge branch 'MDL-64609-35' of git://github.com/merrill-oakland/moodle into MOODLE_35_STABLE 2019-01-23 18:05:46 +01:00
Mark Sharp cf1f48b322 MDL-64391 core_analytics: courseextendednamedisplay 2019-01-23 12:04:01 +00:00
David Mudrák 787991f1d4 MDL-64424 privacy: Use system context purpose on the front page, too
For activities on the site's front page, use the purpose and retention
periods as defined for the system context, not for the courses.
2019-01-23 11:11:36 +01:00
Mark Nelson b5a94c3e85 MDL-64644 completion: fixed assertions in privacy test 2019-01-23 17:31:17 +08:00
Mark Nelson 2e77251c8b MDL-64644 completion: set status correctly in provider 2019-01-23 17:31:17 +08:00
Mark Nelson 124c24eb0e MDL-64644 completion: ensure we return array for provider 2019-01-23 17:31:17 +08:00
Sara Arjona f958fafc60 Merge branch 'MDL-64107-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-23 10:22:32 +01:00
Sara Arjona 70a11e3daa Merge branch 'MDL-63628-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-23 08:25:19 +01:00
Mark Nelson 58a6e4bfe4 MDL-63168 core_message: added unit test 2019-01-23 13:24:17 +08:00
eWallah 6e81e436bf MDL-63168 core_message: fix failures in migrate_message_data task. 2019-01-23 13:24:17 +08:00
Eric Merrill 85fec2b605 MDL-64609 gradebook: Prevent infinite loop in regrading 2019-01-22 21:42:28 -05:00
Jake Dallimore b8360b3cfb Merge branch 'MDL-52132-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-01-23 09:21:36 +08:00
Eloy Lafuente (stronk7) 2baaed1860 Merge branch 'MDL-63870_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-01-23 00:09:47 +01:00
Eloy Lafuente (stronk7) b56666b99c Merge branch 'MDL-64465_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2019-01-23 00:02:07 +01:00
Eloy Lafuente (stronk7) 983ae52810 Merge branch 'MDL-64629-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2019-01-22 19:01:06 +01:00
Shamim Rezaie 2c6d5bf004 MDL-64521 groups: add more unit tests
These tests were created for MDL-64526, just before MDL-64521 came along
and removed the buggy code. These are good tests, so they are being
kept.
2019-01-22 16:43:38 +00:00
Tim Hunt 11cf3ecc56 MDL-64521 grouplib: reduce memory use in groups_get_all_groups
This avoids loading multiple copies of g.* when $withmembers is true
2019-01-22 16:43:36 +00:00
Sara Arjona 3ebff5cc76 Merge branch 'MDL-63480-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2019-01-22 15:19:14 +01:00
Justus Dieckmann 609203ada6 MDL-58256 group: prevents users to be added to a group twice 2019-01-22 13:05:34 +01:00
eWallah b50e1b2450 MDL-64633 behat: fix FormatterNotFoundException when updating steps. 2019-01-22 11:35:36 +01:00
Jun Pataleta 6649b4f560 MDL-63706 tool_task: Remove run_task_now.feature
This test cannot be run on Behat anymore as the "Run now" feature
depends on $CFG->pathtophp. Even if it's set, the task executed via
"Run now" will be executed for the installed site itself and not on the
Behat test site.

Backport of MDL-60514.
2019-01-22 17:14:21 +08:00
Toni Barberà Melià 365435182e MDL-63706 tasks: added new config parameter. changes in cron execution
Backport of MDL-60514.
2019-01-22 17:14:21 +08:00
Sara Arjona 279ec1f986 Merge branch 'MDL-64486-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2019-01-22 08:23:31 +01:00
Michael Hawkins b52735e2b4 MDL-63892 mod_forum: Updating lib unit test 2019-01-22 13:55:10 +08:00
Michael Hawkins ee95b9c319 MDL-63892 mod_forum: Fix last post details in forum view 2019-01-22 13:55:10 +08:00
Michael Hawkins 81e8a74a7b MDL-63892 mod_forum: Correction to timestamp added to edit strings 2019-01-22 13:55:10 +08:00
Peter 5a76a51e3a MDL-32096 core_report: Remove duplicate filters in reports
* Remove duplicate filters from activity completion and course completion report pages
2019-01-22 13:41:31 +08:00
Damyon Wiese 152e59f56d MDL-63628 accessibility: Trigger file links with keyboard 2019-01-22 08:41:01 +08:00
AMOS bot d41a75ffad Automatically generated installer lang files 2019-01-22 00:10:06 +00:00
David Mudrák f9d389f45b MDL-64553 message: Add index for the notifications.useridfrom field
The useridfrom would normally be a foreign key to the users table. But
it can also contain some extra negative values with special semantics
(-10 or -20 for no-reply or support user). Therefore we can't make it a
foreign key and the index must be created explicitly.
2019-01-21 13:31:17 +01:00
Jake Dallimore 284b7c820e Merge branch 'MDL-28445-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2019-01-21 15:59:10 +08:00
Jun Pataleta 6a09040e4d MDL-62666 course: Only set the groups setting to true when necessary
* Plus update the comment to be more descriptive.
2019-01-21 14:43:19 +08:00
Andrew Hancox 46bd72dc4f MDL-62666 course: Ignore restore_general_groups on activity duplication 2019-01-21 14:43:19 +08:00
Mihail Geshoski 1f3fd18541 MDL-63480 reports: Fix name filters in completion reports 2019-01-21 09:24:52 +08:00
Jake Dallimore 247b70b0de Merge branch 'MDL-60972-35_delete_section_files' of https://github.com/awagner/moodle into MOODLE_35_STABLE 2019-01-21 09:03:46 +08:00
Tim Hunt 61319327b1 MDL-64590 questions: wrong comments shown in the state history table 2019-01-18 18:06:58 +00:00
Sara Arjona 1237fe9140 MDL-64629 theme_clean: Remove underscore near the help icon 2019-01-18 14:33:06 +01:00
Sara Arjona e489ebbb0b Merge branch 'MDL-62968-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2019-01-18 12:40:07 +01:00
Amaia Anabitarte 15c3d7e208 MDL-64385 user: Case insensitive comparison for email domains 2019-01-18 10:12:18 +01:00
Marcus Boon c1aa2c28c2 MDL-64599 phpunit: Fix typo in arraydataset 2019-01-18 07:10:20 +10:00
Tim Hunt 901c95587f MDL-63870 quiz: new preview should abandon, not finish, current attempt 2019-01-17 17:55:41 +00:00
Eloy Lafuente (stronk7) b39f7194a8 weekly release 3.5.4+ 2019-01-17 17:47:58 +01:00
Andreas Wagner 9ebaea25f6 MDL-60972 core_course: delete section files, when section is deleted. 2019-01-17 08:18:34 +01:00
Peter a67284cb47 MDL-28445 mod_glossary: Use compound strings as opposed to anglicised
* Use compound strings on buttons to help with proper translations
* Updated behat tests
2019-01-17 10:59:13 +08:00
Eloy Lafuente (stronk7) f14ed54861 Merge branch 'MDL-63103-m35' of https://github.com/NeillM/moodle into MOODLE_35_STABLE 2019-01-16 19:02:36 +01:00
Sara Arjona e618ee9fb5 Merge branch 'MDL-63916-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-16 15:33:57 +01:00
Eloy Lafuente (stronk7) b4ce080632 Merge branch 'MDL-63607-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-01-16 00:37:21 +01:00
Sara Arjona a660a74f7a Merge branch 'MDL-64346-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2019-01-15 15:38:40 +01:00
Adrian Greeve 017578d64f MDL-64346 mod_resource: Fix problems with # in file name. 2019-01-15 14:30:35 +01:00
Sara Arjona e37c1f7ed0 Merge branch 'MDL-62439-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-01-15 12:02:37 +01:00
Sara Arjona 57768467dc Merge branch 'MDL-63881-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2019-01-15 11:39:26 +01:00
Andrew Nicols b562767744 MDL-52132 core_question: Comment is different if format has changed 2019-01-15 18:57:42 +11:00
Shamim Rezaie 95f2f79218 MDL-52132 qbehaviour_manualgraded: unit test for changing comment format 2019-01-15 18:57:41 +11:00
Eloy Lafuente (stronk7) 021143d5cc Merge branch 'MDL-63677-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2019-01-14 23:04:07 +01:00
Sara Arjona fcd19e1faf Merge branch 'MDL-60082-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-14 12:28:30 +01:00
Shamim Rezaie c9d4bb2d53 MDL-64551 core_question: Fix double ampersand escaping in tag button 2019-01-14 18:24:12 +11:00
Eloy Lafuente (stronk7) 4c6ae316d8 Moodle release 3.5.4 2019-01-12 13:25:56 +01:00
Tim Hunt 8b1bf65b22 MDL-64465 qtypes: fix incorrect context passed to format_string 2019-01-11 10:52:49 +00:00
Tim Hunt 6f60c7a6f2 MDL-64464 drag-drop qtypes: allow <span lang=".."> id draggables
This is for accessibility, so that screen readers can read the drag
items with correct pronunciation.
2019-01-11 10:52:34 +00:00
Tim Hunt 8c6a45020e MDL-61441 accesslib: get_users_by_capability groups perf improvement 2019-01-11 10:52:17 +00:00
Sara Arjona 38f65afecf MDL-63677 core_user: Avoid redirection during signup
Purge cache just for the current user to avoid redirection when 2
simultaneous users try to sign up at the same time and some policy
has to be agreed.
The 'createduser' invalidation event has been removed also because
is not used any more.
Thanks John Azinheira for spotting it!
2019-01-11 10:26:14 +01:00
Neill Magill cd05eba738 MDL-63103 filebrowser: Speed up finding activities with files
Before this change the query examined at every course_module record in
the context table.

With this change we use the course_modules table to more efficiently
find all the activities in the course, which means that many less
records in the context table need to be examined.
2019-01-11 09:06:06 +00:00
VinhLe 4b1a578e2e MDL-64469 Question bank: Change link questions in category question.
Make it easier to navigate from the category list to the questions in a category.
2019-01-11 11:31:11 +07:00
VinhLe 22497d9d74 MDL-64031 enrol_manual: Fix hard-coded list of user fields
Respect get_extra_user_fields() in PHP code
2019-01-11 11:25:43 +07:00
Luca Bösch 1e90a547e9 MDL-63881 tool_dataprivacy: 'Contact the privacy officer' profile link. 2019-01-10 22:15:35 +01:00
Luca Bösch e2e9df59d7 MDL-62439 output: Debugstringids in overlay windows. 2019-01-10 22:15:06 +01:00
Sara Arjona 609b020512 weekly release 3.5.3+ 2019-01-10 17:51:28 +01:00
Sara Arjona da5d00f2b2 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2019-01-10 17:51:26 +01:00
Jake Dallimore 765c99d4d9 Merge branch 'MDL-64004-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-10 11:00:43 +08:00
AMOS bot 4b04cbdbab Automatically generated installer lang files 2019-01-10 00:08:50 +00:00
Marcus Fabriczy 88d5dbb63f MDL-54804 templates: Prevent posting when no option is selected
When no value is set for an option element and a user selects it, a
POST request is made, which is incorrect. Usually that option is a
placeholder value, e.g., "Choose..." - the form expecting the end user
to choose an actual value.
2019-01-10 09:05:29 +10:30
Eloy Lafuente (stronk7) 4412db99fc Merge branch 'MDL-63686-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-01-09 12:36:47 +01:00
Andrew Nicols ef227b403e MDL-63686 core: recordset => records when fetching contexts 2019-01-09 19:08:08 +08:00
Jake Dallimore 96457d1739 Merge branch 'MDL-64375-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-09 15:34:06 +08:00
Damyon Wiese e293c3deb3 MDL-62143 accessibility: Label breadcrumbs 2019-01-09 15:18:42 +08:00
Andrew Nicols 26f70e8f28 Merge branch 'MDL-62550-35-2' of https://github.com/snake/moodle into MOODLE_35_STABLE 2019-01-09 15:13:27 +08:00
Jake Dallimore 3fdd140150 Merge branch 'MDL-64345-35' of https://github.com/s-cenni/MDL-64345 into MOODLE_35_STABLE 2019-01-09 14:15:05 +08:00
Jake Dallimore 29cb950320 MDL-62550 core_theme: remove unused #fgroup_ and #fitem_ rules
These ids didn't exists in form elements in Boost until now, so we'll
remove the rules to prevent them having any effect now.
2019-01-09 11:27:40 +08:00
Jake Dallimore ac25e4ace6 MDL-62550 core_form: bring back the form item unique ids to fix js fails
This id matches the id seen on the clean theme elements and is needed by
the forms js.
2019-01-09 11:27:38 +08:00
Jake Dallimore c00f5586f3 Merge branch 'MDL-63761-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2019-01-09 09:07:56 +08:00
Eloy Lafuente (stronk7) 821a753844 Merge branch 'MDL-64285-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2019-01-09 00:03:47 +01:00
Andrew Nicols 3cd69fd335 Merge branch 'MDL-24951_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-01-09 06:45:00 +08:00
Eloy Lafuente (stronk7) 67d77a2456 MDL-24951 mod_forum: Apply new string to related scenarios
Plus amend an scenario name that was clearly incorrect.
2019-01-08 16:48:25 +01:00
Michael Hawkins 9ca8ccbefc MDL-64395 groups: Added XSS Risk to the manage groups capability 2019-01-08 16:21:48 +01:00
Michael Hawkins 4166d28e1f MDL-64372 userpix: Escape fullname string on userpix index page 2019-01-08 16:21:48 +01:00
Sara Arjona 57e3305b41 MDL-64222 badge: Removed backpackurl from the edit_form 2019-01-08 16:21:48 +01:00
Eloy Lafuente (stronk7) 80f46ee1c0 Merge branch 'MDL-64509-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2019-01-08 16:19:56 +01:00
Andrew Nicols 7d837832e5 Merge branch 'MDL-58596-35' of git://github.com/vmdef/moodle into MOODLE_35_STABLE 2019-01-08 16:16:15 +08:00
Leon Stringer 43246bd859 MDL-58596 core_stats: fixed infinite loop cause by DST change 2019-01-08 08:09:38 +00:00
Jake Dallimore 29e7974006 Merge branch 'MDL-63686-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2019-01-08 14:38:31 +08:00
Andrew Nicols 7c512ad12f Merge branch 'MDL-24951-35' of git://github.com/Chocolate-lightning/moodle into MOODLE_35_STABLE 2019-01-08 14:20:25 +08:00
Andrew Nicols 5b01d6249b MDL-63686 core: Preload parent contexts 2019-01-08 14:12:27 +08:00
Andrew Nicols a36f9d20ed Merge branch 'MDL-64497-m35' of https://github.com/sammarshallou/moodle into MOODLE_35_STABLE 2019-01-08 12:29:16 +08:00
Andrew Nicols 68da8600b7 Merge branch 'MDL-64400-35' of git://github.com/aanabit/moodle into MOODLE_35_STABLE 2019-01-08 08:32:16 +08:00
Andrew Nicols b366722a14 Merge branch 'MDL-63276_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2019-01-08 06:56:29 +08:00
Eloy Lafuente (stronk7) 712fc8341c Merge branch 'MDL-63809-35-5' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2019-01-07 22:13:40 +01:00
Helen Foster ed72175e45 MDL-64509 lang: Import fixed English strings (en_fix) 2019-01-07 20:21:09 +01:00
Andrew Nicols 042748a342 Merge branch 'MDL-57636_m35' of https://github.com/dasistwas/moodle into MOODLE_35_STABLE 2019-01-07 13:48:32 +08:00
David Bogner 98125d376a MDL-57636 frontpage: Fix display enrolled courses 2019-01-04 10:56:24 +01:00
Damyon Wiese aa3c3bd353 MDL-64375 gradingform_rubric: Styles for overflow
Allow people to define lots of levels, and make the scroll region just the rubric table,
not the entire content region.
2019-01-04 08:44:41 +08:00
sam marshall 02fab5539c MDL-64497 GDPR: moodle_content_writer can cause endless loop
Fixes a buggy function by replacing it with a call to file_get_contents,
and adds error detection on a couple of file accesses.
2019-01-03 17:04:13 +00:00
Jake Dallimore a32a22f07f Merge branch 'MDL-49651-35' of git://github.com/Chocolate-lightning/moodle into MOODLE_35_STABLE 2019-01-03 10:50:01 +08:00
Peter f8be708257 MDL-64486 mod_glossary: Add missing separator for special links 2019-01-03 08:39:46 +08:00
Eloy Lafuente (stronk7) 2e8f29095f MDL-63276 environment: PHP 7.1 and Moodle 3.2 required 2019-01-03 01:18:54 +01:00
Eloy Lafuente (stronk7) 56ce8d00da MDL-63276 environment: 3.7 base information
This is a direct copy of the 3.6 branch to
have changes under control easier in next commits.
2019-01-03 01:18:54 +01:00
Peter 40bf3feacd MDL-63148 mod_scorm: Accept userid param in event action
* Update lib scorm functions to accept and use a passed in userid
* Additional phpunit tests
2019-01-02 14:36:20 +08:00
Michael Hawkins 3691ff2f40 MDL-62968 Boost: Adding editor SCSS support 2019-01-02 14:21:24 +08:00
Damyon Wiese fdfa0d497f MDL-63761 grade: Performance fix for regrading
Don't use a separate variable to count the number of items in finalids.
2019-01-02 10:25:08 +08:00
Amaia Anabitarte ecb4b0260e MDL-64400 core_messages: Mark notifications sent via email as read 2018-12-27 09:32:25 +01:00
Amaia Anabitarte da73f1364d MDL-64400 core_messages: Allow cron to delete unread notifications too 2018-12-27 09:32:25 +01:00
Mathew 3430f5252a MDL-49651 mod_forum: Respect course visibility in cron
This checks the courses' current visibility and the users permissions.
If they have the permission to view the course when it is hidden they'll get messages.

We already have checks for the users enrolled & subscription status.
2018-12-24 09:34:47 +08:00
Mathew 2f56e8a287 MDL-24951 mod_forum: Check user capability to know what message to show.
If the user has the following capabilty: mod/forum:canposttomygroups then show them
the more technical of the strings. Otherwise we use something a bit easier for them to ask their
tutor or teacher about.
2018-12-24 09:13:36 +08:00
Víctor Déniz Falcón 566978d358 MDL-58596 core_stats: unit test for stats_get_base_weekly 2018-12-20 13:54:46 +00:00
Adrian Greeve 79d87ad683 weekly release 3.5.3+ 2018-12-20 11:09:14 +01:00
Adrian Greeve f4b78030ae Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-12-20 11:09:13 +01:00
Andrew Nicols 97eac5487e Merge branch 'MDL-63512-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2018-12-20 13:04:22 +08:00
Peter f5065aad46 MDL-63512 mod_lesson: Update the lesson css to exclude mediaplugin div 2018-12-20 12:50:53 +08:00
Peter b5cc9d4e96 MDL-63512 mod_lesson: Fix video links provided in feedback 2018-12-20 12:50:53 +08:00
Stephen Bourget 29d25b33a5 MDL-63614 badges: Add COMPLETION_FAIL support to badge criteria 2018-12-19 10:31:28 -05:00
Adrian Greeve 5f2edc4df7 Merge branch 'MDL-64392-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-12-19 12:06:05 +01:00
Adrian Greeve 5900a79aca MDL-59954 course: Remove unused global. 2018-12-19 10:40:06 +01:00
Peter 18d086a8a4 MDL-59954 mod_course: Remove file size restriction on D&D on course page
Remove file size restrictions for teachers on course page.
Use user_max_upload_file_size instead of the max_file_size
2018-12-19 10:37:08 +01:00
Jake Dallimore cb14d331fe Merge branch 'MDL-64216-m35' of https://github.com/micaherne/moodle into MOODLE_35_STABLE 2018-12-19 11:08:35 +08:00
Andrew Nicols 56ec2b0949 Merge branch 'MDL-63512-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2018-12-19 10:01:00 +08:00
AMOS bot d8aba89429 Automatically generated installer lang files 2018-12-19 00:09:13 +00:00
Adrian Greeve 4632b4a151 Merge branch 'MDL-64025-35' of https://github.com/christianwolters/moodle into MOODLE_35_STABLE 2018-12-18 16:01:48 +01:00
Michael Hawkins 9d046294fb MDL-64240 mod_forum: Clean forum post text before storing
Previously only edited messages were cleaned, so longer strings could
be stored in the database, which would never be displayed.
This update takes into account trusted text before cleaning (as editing does).
2018-12-18 15:10:21 +08:00
Michael Hawkins 968c6115dc MDL-64240 mod_forum: Update word count to use current message length
Previously this used the length of the message stored in the database,
before scripts etc are cleaned to display the content. That resulted
in cases where the count would seem much larger than the message size.
2018-12-18 15:10:16 +08:00
Shamim Rezaie e4eb5170a1 MDL-63809 question: handling bad questions in question_has_capability_on 2018-12-18 15:44:36 +11:00
Tim Hunt 1340c03ba6 MDL-63809 question bank: ensure question_has_capability_on can be called 2018-12-18 15:44:36 +11:00
Damyon Wiese 16668320a6 MDL-60082 assign: Grading worksheet with no grade
If the grade type is NONE - do not include the maxgrade column.
2018-12-18 11:14:19 +08:00
Damyon Wiese a912d44652 MDL-64004 webservice: Do not update accesstime
Do not update the automatically update the course access time when a
course is accessed via a webservice or ajax.
2018-12-18 09:08:20 +08:00
John Beedell dfce9c02d2 MDL-64404 qtype: gapselect currency like options dont show 2018-12-17 12:15:39 +00:00
Sara Cenni 9ffc3296cc MDL-64345 core: Make FB logo upgrade cross-DB compatible 2018-12-17 11:33:50 +01:00
Eloy Lafuente (stronk7) 7650dbcaae MDL-63891 assignfeedback_editpdf: add missing UK to install.xml
Backport of MDL-57610.
2018-12-17 11:22:18 +01:00
Adam Olley 4015cb2d05 MDL-63891 assignfeedback_editpdf: integration cleanup
* Add a note to upgrade.php to notify devs/admins of the new setting.
* Replace update_record with set_field.
* Add missing phpdoc.

Backport of MDL-57610.
2018-12-17 11:22:17 +01:00
Adam Olley b1aac17d18 MDL-63891 assignfeedback_editpdf: Add test coverage for conversion task
Without this, we have no coverage of the convert_submissions task. This test
validates it both works normally, and that it also skips queued items that have
exceeded the conversion attempt limit introduced in this improvement.

Backport of MDL-57610.
2018-12-17 11:21:38 +01:00
Adam Olley de341c20d4 MDL-63891 assignfeedback_editpdf: remove queued jobs that keep failing
Without this, its possible to get a document in the editpdf conversion queue
that keeps failing - and in some cases completely crashing the PHP script
despite exception handling - which ends up blocking the processing of the queue
entirely.

This change allows for a configurable number of attempts the conversion
task will perform before removing the item from the queue.

Backport of MDL-57610.
2018-12-17 11:21:38 +01:00
Jun Pataleta 5156ced934 Merge branch 'MDL-59629-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2018-12-17 15:56:04 +08:00
Damyon Wiese 512044f0c9 MDL-62963 boost: Increase contrast btn-secondary
The background colour of these buttons is too light, so they don't look like buttons.
2018-12-17 15:49:45 +08:00
Tomasz Muras 9d8470e4b8 MDL-52966 core: static cache fix for file types. 2018-12-17 15:40:54 +08:00
Andrew Nicols 613d4f9e6d Merge branch 'MDL-61633-35' of https://github.com/lucisgit/moodle into MOODLE_35_STABLE 2018-12-17 15:29:40 +08:00
Andrew Nicols fc28257e09 Merge branch 'MDL-60518-35' of git://github.com/aanabit/moodle into MOODLE_35_STABLE 2018-12-17 14:59:59 +08:00
Jun Pataleta 672905cb4f Merge branch 'MDL-63260_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-12-17 14:10:02 +08:00
Damyon Wiese 1aaa130376 MDL-63378 theme_boost: Contrast of menu items
Enforce the :active menu text colour during a mouse click on an action menu.
2018-12-17 14:07:18 +08:00
Damyon Wiese ee38a8d1e4 MDL-64107 questions: Increase highlight contrast
When a question has just been edited, it is highlighted. We need to ensure
the colour contrast of text on background is accessible.
2018-12-17 12:36:03 +08:00
Jake Dallimore 084dadaa86 Merge branch 'MDL-62756' of https://github.com/miotto/moodle into MOODLE_35_STABLE 2018-12-17 11:25:20 +08:00
Christian Wolters 790c306bf7 MDL-64025 admin_bookmarks: Enable bookmarking of admin categories 2018-12-16 15:49:56 +01:00
Bas Brands 16db1b8083 MDL-64392 core_question: flexbox compatible separator for question types
* the br tag does not work well in a flexbox context, a 100% with div
works in both clean and boost.
2018-12-14 16:31:18 +01:00
Amaia Anabitarte f91e884d68 MDL-60518 core_competency: Set $USER global variable for tests 2018-12-14 10:27:41 +01:00
Frédéric Massart 7dcc1e721c MDL-60518 core_user: A user with ID 0 is never a real user 2018-12-14 10:27:41 +01:00
Mirko Otto f32c2f7c47 MDL-62756 form: Remove any click handler first.
The handler has the old state variable. Remove any click handler first.
2018-12-14 10:22:11 +01:00
Jun Pataleta 808e7c80dc MDL-64285 core: Fix environment check test
* Looping the environment results and skipping some items mean that
if a test gets skipped, the rest of the environment results won't be
tested. It's better to use a data provider for this in order to
individually test each environment result.
2018-12-14 11:22:07 +08:00
Peter bb13181338 MDL-59629 mod_block: Set the default region in add_region
Check and update default region in add_region if none set.
2018-12-14 10:29:55 +08:00
Peter f13544412e MDL-63512 mod_lesson: Fix video links provided in feedback 2018-12-14 10:27:12 +08:00
Jake Dallimore c8b4ee45a4 weekly release 3.5.3+ 2018-12-14 07:51:44 +08:00
Tony Butler 773e24cad4 MDL-61633 assignfeedback_editpdf: Scroll back to top when changing pages 2018-12-13 12:21:07 +00:00
Jake Dallimore 86eb5bb7e2 Merge branch 'MDL-62624-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-12-12 16:14:04 +08:00
Damyon Wiese 55a1e8b719 MDL-63916 backup: Do not display timestamp
Convert the date+time field to a userdate for display.
2018-12-12 12:20:18 +08:00
Jun Pataleta 76570e405a Merge branch 'MDL-41507-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-12-12 11:17:05 +08:00
Shamim Rezaie eeb374e2e6 MDL-41507 core_group: Consistent default value for FEATURE_GROUPS 2018-12-12 14:05:01 +11:00
Jake Dallimore b4999d92d9 MDL-63887 auth_ldap: fix unclean exit from sync when users not found
We should return, not exit, and we should clean up before we do.
2018-12-12 09:43:51 +08:00
Jake Dallimore 113c94cf9a Merge branch 'MDL-63887_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-12-12 09:43:45 +08:00
Jake Dallimore 583799d5b9 Merge branch 'MDL-63150-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2018-12-12 08:32:55 +08:00
Jake Dallimore 7f0903200f Merge branch 'MDL-63145-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2018-12-12 08:30:20 +08:00
Jake Dallimore 061db30ef7 Merge branch 'MDL-63147-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2018-12-12 08:25:43 +08:00
Peter 91ef3d2e40 MDL-63145 mod_page: Accept userid param as override
Accept a userid as an override in the lib function instead of
relying on $USER
2018-12-12 07:31:59 +08:00
Peter 07baf8e940 MDL-63150 mod_url: Accept a userid override in event action
Accept a userid in the event action instead of depending on $USER
2018-12-12 07:18:28 +08:00
Peter 5362c6f185 MDL-63147 mod_resource: Accept userid in resource event_action 2018-12-12 07:08:13 +08:00
Tim Hunt 2a0ee3647f MDL-63260 qtype_random: orphaned random questions should be deleted
This fix is based on some original code written by Bo Pierce.
2018-12-11 14:09:22 +00:00
Jake Dallimore 2496dc283c Merge branch 'MDL-64357_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-12-11 17:45:16 +08:00
Jake Dallimore 5b10127f11 Merge branch 'MDL-63485_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-12-11 17:30:10 +08:00
Mark Nelson 551975b2ac MDL-64357 ltiservice_gradebookservices: updated unit tests 2018-12-11 17:03:26 +08:00
Claude Vervoort 111998407c MDL-64357 ltiservice_gradebookservices: fix cleanup deleting lineitems 2018-12-11 17:03:26 +08:00
Damyon Wiese 7afbae7e1a MDL-64313 assign: feedback viewed event
When a student views their submission, if it has feedback create an event.
2018-12-11 14:07:23 +08:00
Jake Dallimore 7fc84f65de Merge branch 'MDL-62922-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-12-11 12:50:58 +08:00
Jun Pataleta 6cc427e025 Merge branch 'MDL-64280-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-12-11 09:53:20 +08:00
Luca Bösch 1188a6e41b MDL-64280 core_outcome: Add/remove outcome buttons style. 2018-12-10 17:56:03 +01:00
Sara Arjona 9cfb533e2d MDL-63485 core_user: Allow filtering by No groups on participants page
A new optional parameter $context has been added to the
core_group::groups_get_members_join() function.
Besides, some core_group methods now accept -1 (USERSWITHOUTHGROUP) for
the groupid field.

Backport of MDL-61967.
2018-12-10 20:29:04 +08:00
Jun Pataleta 2203bf4ad4 Merge branch 'MDL-62061-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-12-10 14:46:30 +08:00
Mihail Geshoski 82f74c8e2b MDL-62624 lesson: Fix alignment in matching questions in boost 2018-12-10 13:47:48 +08:00
Jake Dallimore 2fbae51df0 weekly release 3.5.3+ 2018-12-10 08:10:18 +08:00
Jake Dallimore f087b00ea6 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-12-10 08:10:17 +08:00
AMOS bot 1bfa3f5697 Automatically generated installer lang files 2018-12-07 00:09:32 +00:00
Adrian Greeve 3692fe595c MDL-62061 core_privacy: Stop directories being created.
This stops directories being created in the root directory
while running unit tests.
2018-12-06 11:39:01 +01:00
papillon326 10097b1b61 MDL-63887 auth_ldap: avoid infinite loop when search limit is reached 2018-12-06 15:40:47 +08:00
papillon326 4c7af8f17b MDL-63887 auth_ldap: changed variable names to be conform to core 2018-12-06 15:40:47 +08:00
Jun Pataleta 864374faf2 Merge branch 'MDL-64283-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-12-06 14:57:25 +08:00
Jake Dallimore f6b4c923ec Merge branch 'MDL-63710-MOODLE_35' of https://github.com/ilya-catalyst/moodle into MOODLE_35_STABLE 2018-12-06 11:45:04 +08:00
Jake Dallimore a702f2b935 Merge branch 'MDL-46783_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-12-06 10:23:50 +08:00
Ilya Tregubov daa7d65f34 MDL-63710 repository: Delete orphaned file records. 2018-12-06 12:38:25 +11:00
Jun Pataleta b7e4fbb246 Merge branch 'MOODLE_35_STABLE-MDL-64290-imscc-restore-temp-dir' of https://github.com/mspall/moodle into MOODLE_35_STABLE 2018-12-06 08:56:44 +08:00
AMOS bot 4745892272 Automatically generated installer lang files 2018-12-06 00:08:01 +00:00
Michael Spall 559759aa4a MDL-64290 backup imscc: Use correct tempdir for imscc restore
Use configured temp directory $CFG->tempdir instead of hard coded
$CFG->dataroot . '/temp/backup/'
Remove unused variable, $CFG
2018-12-05 11:05:44 -07:00
Tim Hunt edb89914d8 MDL-46783 accesslib: tests for MDL-63818
MDL-46783 and MDL-63818 were originally coded on the
assumption that MDL-46783 would get integrated first. However it wasn't.
Therefore, it was not easy to add unit tests for MDL-63818
at the time, but it is now, so here they are.
2018-12-05 16:41:42 +00:00
Jun Pataleta c2e3ca2f6c MDL-62922 core_user: Check auth mechanism before validating password
* External authentication mechanisms (e.g. via oauth2, etc.) don't store
  password in the user table, so we shouldn't be requiring password in
  such case when creating users via the core_user_create_users WS
  function.
2018-12-05 15:33:33 +08:00
Jake Dallimore c758547bd7 Merge branch 'MDL-64198-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-12-05 14:31:02 +08:00
Damyon Wiese f20b808629 Merge branch 'MDL-60267-35' of https://github.com/rogerbaba/moodle into MOODLE_35_STABLE 2018-12-05 12:56:48 +08:00
Tim Hunt 6a58779607 MDL-46783 permissions: let some moodle/ caps be overriden in all mods
The capabilities changed ('contextlevel' => CONTEXT_COURSE changed to
'contextlevel' => CONTEXT_MODULE) are:

* moodle/site:accessallgroups
* moodle/site:viewfullnames
* moodle/site:trustcontent
* moodle/site:viewuseridentity

This list came from reviewing the _get_extra_capabilities functions in
all core activities. They were all somewhat inconsistent, but I think it
makes sense that these capabilities are consistently overridable in all
activities. E.g. moodle/site:accessallgroups affects conditional
availability even if there is no other user of groups, and
moodle/site:viewuseridentity and moodle/site:viewfullnames affect the
logs report, if nothing else.

As a result of this, several _get_extra_capabilities functions are no
longer needed, and all the rest have been simplified.
2018-12-04 18:01:29 +00:00
Michael Aherne 83c4b6d01e MDL-64216 privacy: Split query to use indexes. 2018-12-04 15:07:40 +00:00
Luca Bösch 7c72db7d7e MDL-64198 course: set formatted modulename for togglecompletion js. 2018-12-04 14:32:09 +01:00
Eloy Lafuente (stronk7) 3aca528730 weekly release 3.5.3+ 2018-12-04 13:06:05 +01:00
Jun Pataleta 0dc3fbf069 Merge branch 'MDL-64206_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-12-04 10:49:43 +08:00
Damyon Wiese c5dab021db Merge branch 'MDL-64286_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-12-03 15:40:47 +08:00
Jake Dallimore a08ecb70f0 Merge branch 'MDL-63459_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-12-03 14:26:29 +08:00
Mark Nelson d5901aa09c MDL-64206 core: updated FB logo URL 2018-12-03 12:26:28 +08:00
Eloy Lafuente (stronk7) 394c5ae9b8 weekly release 3.5.3+ 2018-11-30 18:02:10 +01:00
Eloy Lafuente (stronk7) 79bfd75d15 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-11-30 18:02:08 +01:00
Tim Hunt 35e9c7202e MDL-64286 qtype_gapselect: removed unneeded line of code
The extended Behat test show the qtype works fine without it.
2018-11-30 12:36:06 +00:00
Jun Pataleta 4ff43a278b Merge branch 'MDL-64214-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-11-30 09:45:00 +08:00
Damyon Wiese 9485649edd MDL-64283 competency: Correct numbering in tests 2018-11-30 09:38:23 +08:00
Jun Pataleta 673340157a MDL-64214 calendar: Populate the groups select box on page load 2018-11-30 09:26:25 +08:00
Simey Lameze c6dd258bfd MDL-64214 calendar: fix failing unit tests 2018-11-30 09:26:25 +08:00
Simey Lameze f4a61ac99a MDL-64214 core_calendar: fix event types form element handling 2018-11-30 09:26:25 +08:00
AMOS bot df367e966a Automatically generated installer lang files 2018-11-30 00:07:41 +00:00
AMOS bot 276097e0d7 Automatically generated installer lang files 2018-11-29 00:08:25 +00:00
David Monllao b64e7253b2 weekly release 3.5.3+ 2018-11-28 11:23:14 +01:00
Jun Pataleta 02b46dd142 Merge branch 'MDL-64223-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-11-28 13:59:35 +08:00
Jake Dallimore ce2684efd9 MDL-64223 libraries: PHP7.1 compatibility fixes for Jabber lib 2018-11-28 09:58:58 +08:00
Eloy Lafuente (stronk7) 23c05fe9ce Merge branch 'MDL-64220-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-11-27 16:44:25 +01:00
Andrew Nicols 944d0fd395 Merge branch 'MDL-64161-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-11-27 15:17:28 +08:00
Adrian Greeve fa2a738f80 MDL-64161 gradereport_singleview: Single updates reported correctly.
If there is an error with the update of individual entries this is
also correctly displayed as not being updated.
2018-11-27 15:04:27 +08:00
Damyon Wiese 35bc9f8bb2 MDL-64220 privacy: Clean path params
We need to consistently clean the path params before we use them. This
shows a difference on windows where dir separators are different.
2018-11-27 15:02:44 +08:00
Jun Pataleta 2e36915e1f Merge branch 'MDL-64181-35-fix' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-27 14:49:22 +08:00
Andrew Nicols aad94d9332 MDL-64181 core: Ensure that self is included in parentage 2018-11-27 14:47:34 +08:00
Jun Pataleta 96c3b2042e Merge branch 'MDL-64181-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-11-27 11:45:09 +08:00
Andrew Nicols c7390b1c4f Merge branch 'MDL-64161-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-11-27 11:37:22 +08:00
Damyon Wiese 60b951eca5 MDL-64181 javascript: Recursive template fix
This change prevents template rendering from waiting for itself, but does
allow it to wait for another async call to render.
2018-11-27 08:45:15 +08:00
David Monllao 89d45109aa Merge branch 'MDL-64205-35-sarunconfirmeduser' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-11-26 15:47:53 +01:00
David Mudrák 690e03bfea MDL-64205 privacy: Delete orphaned data request records on upgrade
As a result of the bug, some requests can be orphaned - the linked user
record may not exist any more. This is a cleanup of such records.
2018-11-26 14:17:55 +01:00
Tim Hunt 37438b2a00 MDL-63459 qtype_calculatedmulti: fix incorrect hint object type 2018-11-26 12:55:15 +00:00
Tim Hunt 89e3b8aa80 MDL-63459 qtype_calculatedmulti: unit test should test this qtype
This also demonstrates the bug to be fixed
2018-11-26 12:55:12 +00:00
Adrian Greeve b87ad367d9 MDL-64161 gradereport_singleview: Behat test for out of bounds grade. 2018-11-26 11:46:06 +08:00
Adrian Greeve 27cfbf2986 MDL-64161 gradereport_singleview: Stop updating grades with errors. 2018-11-26 11:45:55 +08:00
David Mudrák 8575b451c4 MDL-64205 users: Do not delete the actual records of unconfirmed users
There is an automatic data privacy request created to get rid of all the
personal data upon the user deletion. With the actual user record
absent, the data privacy requests page throws an error. Let's do here
same as we do in `delete_incomplete_users_task` and let us not delete
the actual user record.
2018-11-25 07:21:59 +01:00
Eloy Lafuente (stronk7) e3a1c26bd7 Merge branch 'MDL-64186-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-11-24 00:27:14 +01:00
Eloy Lafuente (stronk7) 51b022db9b weekly release 3.5.3+ 2018-11-23 16:36:48 +01:00
Eloy Lafuente (stronk7) 33a95ab889 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-11-23 16:36:46 +01:00
Helen Foster a6a0cc37ed MDL-64186 lang: Import fixed English strings (en_fix) 2018-11-23 14:46:51 +01:00
Jun Pataleta e452305994 Merge branch 'MDL-64030-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-23 11:15:07 +08:00
AMOS bot 135a5df634 Automatically generated installer lang files 2018-11-23 00:07:32 +00:00
Andrew Nicols b78c5102ac MDL-64030 tool_dataprivacy: Process requests when system purpose not set 2018-11-23 07:54:20 +08:00
Eloy Lafuente (stronk7) b9c412be9f Merge branch 'MDL-62988_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-11-22 23:16:06 +01:00
Jun Pataleta 01eeab4ed2 Merge branch 'MDL-64119-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-11-22 20:31:45 +08:00
Sara Arjona 30f7f010a9 MDL-64119 output: Use context of renderer_base's page object 2018-11-22 20:31:04 +08:00
Eloy Lafuente (stronk7) f8c43813de Merge branch 'MDL-63571-35-fix' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-11-22 10:35:13 +01:00
Jun Pataleta e92bb861d4 MDL-63571 grade_report_grader: Use correct context for capability check 2018-11-22 16:20:22 +08:00
Jun Pataleta 83a6d7a194 MDL-63571 grade_report_grader: Set correct type for the context variable 2018-11-22 16:20:22 +08:00
Cory Buecker 0a39efd896 MDL-62988 LTI provider: fix missing info. for LTI 2.X tool provider
Fixes missing capabilities (user information) when membership service is called
from a LTI 2.X tool provider.
2018-11-22 12:27:07 +08:00
Jun Pataleta bfc740821b Merge branch 'MDL-64119-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2018-11-22 09:52:24 +08:00
Eloy Lafuente (stronk7) 9112915855 Merge branch 'MDL-63920-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-11-21 16:48:00 +01:00
Eloy Lafuente (stronk7) a6ff7933a1 Merge branch 'MDL-63798_assign_restore_groups_35' of git://github.com/davosmith/moodle into MOODLE_35_STABLE 2018-11-21 16:09:09 +01:00
Davo Smith e35c7c2c50 MDL-63798 mod_assign: fix restore when group is missing 2018-11-21 08:02:47 +00:00
David Monllao d699efb4ba Merge branch 'MDL-64063-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-11-21 06:28:46 +01:00
Adrian Greeve 0073588e27 MDL-64063 core_calendar: Unit test for suspended users. 2018-11-21 09:55:08 +08:00
Adrian Greeve 80cf67eaba MDL-64063 core_calendar: events by time considers enrolment status. 2018-11-21 09:54:58 +08:00
Víctor Déniz Falcón a23caa49b9 MDL-64077 block_site_main: modify style to fix layout in boost theme 2018-11-21 09:03:31 +08:00
Sara Arjona 0a519e70d4 MDL-64119 user: Display full names consistently for teachers
Fix an error with users with the moodle/site:viewfullnames capability
in a course context (like teachers), to display properly the full
names in pages like the participants one.
2018-11-20 19:48:23 +01:00
David Monllao dfecd50ac3 Merge branch 'MDL-63571-35' of git://github.com/peterRd/moodle into MOODLE_35_STABLE 2018-11-20 17:19:47 +01:00
David Monllao 56d8e413ba weekly release 3.5.3+ 2018-11-20 12:55:14 +01:00
David Monllao 3955dde284 Merge branch 'MDL-63394-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-11-20 10:34:09 +01:00
Damyon Wiese dc47c7fc8c MDL-63920 backup: Email string improvement
Change from semicolon to colon in email.
2018-11-20 16:28:37 +08:00
Juan Leyva d55565066c MDL-63394 mod_quiz: Do not fail overdue if there is a grace period 2018-11-20 09:27:40 +01:00
Peter 810bb4bef5 MDL-63571 gradebook: Display the name header based on config setting 2018-11-20 14:16:09 +08:00
Luca Bösch b6f83c07ed MDL-63571 grades: switch firstname/lastname order in title row 2018-11-20 14:16:09 +08:00
Andrew Nicols 58c02975d1 MDL-64049 core: Cache prefs for current user
We were already caching these preferences when a user object is provided
to get_user_preferences, or when $USER is provided.

This changee swaps get_user_preferences to use the global USER object
when the USER->id matches the userid supplied to the function.
2018-11-20 00:34:58 +01:00
Eloy Lafuente (stronk7) ef212b671e Merge branch 'MDL-63976-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-11-19 22:09:15 +01:00
Helen Foster cac9d8d665 MDL-63976 lang: Merge English strings from the en_fix language pack 2018-11-19 19:21:59 +01:00
David Monllao 127c4954a5 Merge branch 'MDL-63627-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-11-19 09:46:16 +01:00
Jun Pataleta af1a540eab Merge branch 'MDL-63994-35-castoken' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-11-19 15:51:27 +08:00
David Monllao 421b7b0c12 Merge branch 'MDL-63487-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-11-19 08:07:55 +01:00
David Monllao 8b508a6004 Merge branch 'MDL-63768-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-11-19 06:06:50 +01:00
Jun Pataleta 8bee660d88 Merge branch 'MDL-64001-35' of https://github.com/christianwolters/moodle into MOODLE_35_STABLE 2018-11-19 11:46:41 +08:00
Luca Bösch 54216a57a8 MDL-63768 atto_link: dialog auto width. 2018-11-16 17:27:55 +01:00
Luca Bösch d078274a59 MDL-63487 badges: Style "◀ Award badge" and "Revoke badge ▶" buttons 2018-11-16 17:27:44 +01:00
Juan Leyva 5fdb6183e5 MDL-63627 enrol: Return progress field correctly
- Check permissions and
- Return the progress for the given user
2018-11-16 15:58:07 +01:00
Juan Leyva d6b498f6ae MDL-62668 mod_workshop: Return feedback for reviewer in assessment phase
Teachers were not able to view the existing feedback.
2018-11-16 15:49:18 +01:00
Eloy Lafuente (stronk7) fc2cde8f80 weekly release 3.5.3+ 2018-11-16 12:03:10 +01:00
Jun Pataleta 28ca1302e5 Merge branch 'MDL-63999-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-11-16 14:36:07 +08:00
Simey Lameze 5809488bb6 MDL-63999 calendar: double escape event name on templates 2018-11-16 13:59:29 +08:00
Jun Pataleta 4e0886f362 Merge branch 'MDL-63660-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-11-16 10:52:58 +08:00
Jun Pataleta 96388117d4 MDL-63660 tool_dataprivacy: Increase expected export file size 2018-11-16 10:49:10 +08:00
Mark Johnson c2650d3f3d MDL-63660 privacy: Include CSS locally for data export 2018-11-16 10:49:10 +08:00
Damyon Wiese e7fd2113c0 Merge branch 'wip-MDL-63854-MOODLE_35_STABLE' of https://github.com/kwiliarty/moodle into MOODLE_35_STABLE 2018-11-16 10:45:05 +08:00
Eloy Lafuente (stronk7) 32878692e3 Merge branch 'MDL-64012_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-11-16 01:03:45 +01:00
Kevin Wiliarty 696ecda501 MDL-63854 competencies, themes: misplaced dropdown arrows 2018-11-15 15:52:45 -05:00
David Mudrák 31bfc01e9d MDL-63994 auth_cas: Include the login token in the simulated login form
The CAS login process relies on the standard authenticate_user_login()
call to set up the user. So we need to inject the login token to pass
the validation.
2018-11-15 20:44:03 +01:00
David Mudrák f779e204ac MDL-63994 login: Improve the logintoken param input
The logintoken is supposed to arrive as a part of the login form ($frm)
together with the username and password. So it should be handled the
same way - including the opportunity for the auth plugins to provide the
form data via the loginpage_hook().

This also implies that only logintoken coming as a part of the POST
request are taken into account, which is a good thing and another thin
layer in this security mechanism.
2018-11-15 20:35:46 +01:00
David Mudrák 9ccfa64940 MDL-63994 login: Clarify inline comments on loginpage_hook() usage
While working on the issue, I found these inline comments outdated and
confusing. The auth plugin types can implement a loginpage_hook()
method, the purpose of which is to inject the $user and/or $frm into
this login/index.php script. The new comments should make it more clear.

Note the second comment mentioned a prelogin_hook() which was an old
name of what is now called loginpage_hook(). It had nothing to do with
the existing pre_loginpage_hook() and was only confusing.
2018-11-15 20:27:58 +01:00
Jun Pataleta 2ca939b838 Merge branch 'MDL-63832-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-11-15 23:11:55 +08:00
Christian Wolters d04454fed5 MDL-64001 boost: Dropdown menu adding missing href 2018-11-15 12:39:09 +01:00
Jun Pataleta 315ffed9fb Merge branch 'MDL-62287-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-15 17:10:43 +08:00
Tim Hunt 9933be5fad MDL-64012 filters: activity name autolinking fails for names with () 2018-11-14 16:07:48 +00:00
Juan Leyva 1978e7205d MDL-63832 assign: Check current user can view submission 2018-11-14 16:54:17 +01:00
Eloy Lafuente (stronk7) 307ee3442b Merge branch 'MDL-63653-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-11-14 16:30:25 +01:00
Eloy Lafuente (stronk7) 42add6e9ef Merge branch 'MDL-63842-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-14 16:12:01 +01:00
David Monllao 6e493f59b8 Merge branch 'MDL-61990_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-11-14 12:09:59 +01:00
Damyon Wiese 512547df7e Merge branch 'MDL-64005-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-11-14 16:00:34 +08:00
Andrew Nicols 971d02f6f4 MDL-62287 tool_usertours: Pull v0.12.3 for background click fix 2018-11-14 14:14:17 +08:00
Adrian Greeve 841a0bc6e2 MDL-64005 gradebook: Fix to remove debugging message.
The progress bar is being used when there are a large amount
of grades being recalculated. This was throwing a debugging message
about NO_OUTPUT_BUFFERING being unset.
2018-11-14 12:42:30 +08:00
Damyon Wiese 17439b2c46 Merge branch 'MDL-63868-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-11-14 12:08:26 +08:00
Luca Bösch b675d6c5ee MDL-63653 tool_xmldb: style form elements 2018-11-13 18:14:16 +01:00
Tim Hunt edfc17d7ba MDL-61990 outputrequirementslib: improve debug message 2018-11-13 17:13:09 +00:00
David Monllao ab16666f05 Merge branch 'MDL-63882-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-11-13 16:07:27 +01:00
David Monllao 628a7bb557 weekly release 3.5.3+ 2018-11-13 13:10:48 +01:00
David Monllao 058db3e6c8 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-11-13 13:10:46 +01:00
Adrian Greeve ca2f0f052c MDL-63868 core_calendar: Clicking link leads to events.
The mini calendar did not link to the daily events properly.
2018-11-13 15:36:17 +08:00
Damyon Wiese 7ef3dbf5f4 Merge branch 'MDL-63927_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-11-13 11:57:55 +08:00
Damyon Wiese f0e03e6918 MDL-63882 core_message: Use validate_parameters
external_api::validate_parameters() sets defaults, and does cleaning and sanitisation of the
inputs. It returns the cleaned params. We can't be re-using the arguments to this function
instead of the results, because they have not been cleaned.
2018-11-13 11:02:40 +08:00
AMOS bot bb56746b61 Automatically generated installer lang files 2018-11-13 00:07:39 +00:00
Andrew Nicols 11a19454d7 Merge branch 'm35_MDL-63953' of https://github.com/danmarsden/moodle into MOODLE_35_STABLE 2018-11-13 07:54:18 +08:00
Eloy Lafuente (stronk7) aa4f226f5c Merge branch 'MDL-63907-35' of git://github.com/cescobedo/moodle into MOODLE_35_STABLE 2018-11-12 12:08:41 +01:00
David Monllao a3c626c7e7 Merge branch 'MDL-63925-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-11-12 11:57:54 +01:00
David Monllao 8ff8f4e558 Merge branch 'MDL-63940-35-recaptchaurl' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-11-12 10:56:12 +01:00
David Monllao 63510633b4 Merge branch 'MDL-63823-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-11-12 10:09:46 +01:00
Simey Lameze 82447d7ded MDL-63823 tool_lpimportcsv: supress progress bar debugging 2018-11-12 09:53:49 +08:00
Dan Marsden 6dae57a102 MDL-63953 mod_scorm: Use correct value for first attempt. 2018-11-12 10:06:39 +13:00
Eloy Lafuente (stronk7) 789dcd6975 Moodle release 3.5.3 2018-11-10 20:36:27 +01:00
Eloy Lafuente (stronk7) b908052850 weekly release 3.5.2+ 2018-11-10 12:53:24 +01:00
Eloy Lafuente (stronk7) f96287e91b Merge branch 'MDL-63960-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-10 10:28:16 +01:00
Andrew Nicols 55df5e4c05 MDL-63960 dataprivacy: Do not perform strict type checks for id
When inherit is specified in the data registry it is stored as a
string and we cannot perform a strict comparison with it.

We should still compare strict comparison checks against null, or false,
but not for the NOTSET (0) or INHERIT values (-1).
2018-11-10 15:34:11 +08:00
Eloy Lafuente (stronk7) 68987522ea MDL-63919 tool_dataprivacy: admin & notify fixes
This includes the following:

1) Replace $ADMIN->id by get_admin()->id. The former doesn't exist.
2) Only change the notify parameter when it has not been specified
   at creation time (null). If specified, observe it.
3) Set the current user in tests to admin, able to create those
   requests.
2018-11-10 11:00:46 +08:00
Eloy Lafuente (stronk7) cd496c0307 Merge branch 'MDL-63596-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-10 03:51:34 +01:00
Andrew Nicols 977632b715 MDL-63596 backup: Add missing include 2018-11-10 10:49:19 +08:00
Eloy Lafuente (stronk7) d8231aee5e Merge branch 'MDL-63596-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-09 19:32:53 +01:00
Damyon Wiese d3b5e29e2e MDL-63596 backup: Deal with controller types
For privacy requests, deal with all 3 controller types.
2018-11-09 17:56:05 +08:00
Mihail Geshoski 8f7f422709 MDL-63596 core_backup: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-11-09 17:56:05 +08:00
Andrew Nicols 4c7f930af8 MDL-62564 tool_dataprivacy: Do not delete deleted user
This also ensures that we do not call delete_user on an already deleted
user.
2018-11-09 17:36:10 +08:00
cescobedo 7625b00200 MDL-63907 core_message: Pass user object to show_online_status.
Fix create_contact() to pass user object as parameter in show_online_status.
2018-11-09 10:02:13 +01:00
Jun Pataleta df2ed3c8bc Merge branch 'MDL-63867-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-11-09 15:30:30 +08:00
Michael Hawkins b2e67dc913 MDL-63867 tool_dataprivacy: Add site purpose checks to tasks
If a site purpose is not defined, requests cannot be processed.
2018-11-09 15:21:24 +08:00
Michael Hawkins a000765a13 MDL-63867 tool_dataprivacy: Fix context expired/unprotected user check
It now checks the system context has been defined, since that is
required for data privacy to be set up correctly, and the check
to be valid. This also fixes an error being thrown when checking
pending delete requests in cron.
2018-11-09 15:21:24 +08:00
Jun Pataleta e1921cead6 Merge branch 'MDL-63946-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-09 13:41:33 +08:00
Andrew Nicols a3c30c9fc8 MDL-63946 plagirism: Filename typo fix 2018-11-09 13:25:33 +08:00
Jun Pataleta 3af336b41a Merge branch 'MDL-63924-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-09 11:57:31 +08:00
Jun Pataleta a757b3f80b Merge branch 'MDL-63942-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-09 11:42:50 +08:00
Peter d206c98d98 MDL-62415 repo_filepicker: Display search results in tree view
Disable overriding call to list all files in tree view and show search results instead
2018-11-09 10:54:58 +08:00
Andrew Nicols a2793d3850 Merge branch 'MDL-63919-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-09 10:52:34 +08:00
Jun Pataleta ee522a9f42 Merge branch 'MDL-62589-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-09 10:36:44 +08:00
Damyon Wiese 23c79dff60 Merge branch 'wip-MDL-63894-MOODLE_35_STABLE' of https://github.com/kwiliarty/moodle into MOODLE_35_STABLE 2018-11-09 09:51:51 +08:00
Andrew Nicols b94e3e5f56 MDL-63942 dataprivacy: Disable deleted user task by default 2018-11-09 09:31:16 +08:00
Damyon Wiese f4e1906562 Merge branch 'MDL-63671-35-2' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-09 09:14:06 +08:00
David Mudrák bdbecafdc0 MDL-63940 recaptcha: Use www.recaptcha.net in the service endpoint URL
There are countries where www.google.com is a being blocked and
recaptcha does not work there. As shown at
https://developers.google.com/recaptcha/docs/faq#can-i-use-recaptcha-globally
it is enough to simply use www.recaptcha.net in the service endpoint
URL.
2018-11-08 22:59:28 +01:00
Eloy Lafuente (stronk7) e1f1cf9bec Merge branch 'MDL-62564-integration-35-1' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-08 16:50:15 +01:00
Andrew Nicols a07e8d7023 MDL-63924 privacy: Add shared user providers to subsytsems 2018-11-08 21:27:22 +08:00
Andrew Nicols a14a44ee13 MDL-63924 core_privacy: Add shared_userlist provider 2018-11-08 21:27:22 +08:00
Eloy Lafuente (stronk7) 763f4e1e52 MDL-63927 performance: Update the plan to support the new login token 2018-11-08 10:26:31 +01:00
Mihail Geshoski 60987ecfae MDL-63671 tool_cohortroles: Limit data to the system context in provider 2018-11-08 16:07:44 +08:00
Michael Hawkins 20957bbd12 MDL-63925 privacy: Fixed Moodle URL in template 2018-11-08 15:54:42 +08:00
Mihail Geshoski 4b56876fe4 MDL-63919 privacy: Store the creation method of the data request 2018-11-08 14:50:08 +08:00
Mihail Geshoski 33ae40340d MDL-63919 privacy: Disable notifications for auto created data requests 2018-11-08 14:50:08 +08:00
Jun Pataleta 923a97629d Merge branch 'MDL-63902-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-08 13:38:54 +08:00
Kevin Wiliarty 37e1f7dbd9 MDL-63894 themes: adds flex-wrap to boost inline date_time_selector 2018-11-07 23:51:41 -05:00
Andrew Nicols 9ae66863bc MDL-62589 dataprivacy: Add ability to resubmit a request 2018-11-08 11:45:35 +08:00
Jun Pataleta 180d76c5f8 Merge branch 'MDL-63840-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-11-08 11:30:54 +08:00
Mihail Geshoski 4913f8f270 MDL-62564 privacy: Create request for deleted users when setting enabled 2018-11-08 09:52:16 +08:00
Mihail Geshoski d364d88a51 MDL-62564 privacy: Improve bulk deletion 2018-11-08 09:51:24 +08:00
Mihail Geshoski fe552e47f0 MDL-62564 privacy: Add unit tests 2018-11-08 09:33:25 +08:00
Andrew Nicols b0ea09e200 MDL-63902 dataprivacy: Check course children not the course
When checking the expiry and protected state of a context, we need to do
so knowing what kind of use that context has.

If it is used in the user context, then only the user context matters.
If it is used within a course, then that child context must be checked
in relation to the course.
2018-11-08 09:13:15 +08:00
Andrew Nicols a1d910f2e8 MDL-62589 dataprivacy: Correct not in sql 2018-11-08 09:03:15 +08:00
Luca Bösch f7dec77e56 MDL-63840 theme: block menu cog size. 2018-11-07 18:03:41 +01:00
Eloy Lafuente (stronk7) f0f4270a8d Merge branch 'MDL-62294-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-11-07 17:25:37 +01:00
Jun Pataleta 1523c8bc6f Merge branch 'm35_MDL-63800' of https://github.com/danmarsden/moodle into MOODLE_35_STABLE 2018-11-07 15:28:07 +08:00
Damyon Wiese 68c72aadc2 Merge branch 'MDL-63839_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-11-07 14:28:46 +08:00
Damyon Wiese 4c21639e66 Merge branch 'MDL-63451_35' of https://github.com/peterspicer-catalyst/moodle into MOODLE_35_STABLE 2018-11-07 13:05:12 +08:00
Jun Pataleta ead79c8627 MDL-63183 auth_shibboleth: Don't render page when already logged in 2018-11-07 00:11:47 +01:00
Jun Pataleta 50edf48571 MDL-63183 auth_shibboleth: Add hidden login token in guest login form 2018-11-07 00:11:47 +01:00
Damyon Wiese b427ab4f70 MDL-63183 auth: Login protection
CSRF protection for the login form. The authenticate_user_login function was
extended to validate the token (in \core\session\manager) but by default it
does not perform the extra validation. Existing uses of this function from
auth plugins and features like "change password" will continue to work without
changes. New config value $CFG->disablelogintoken can bypass this check.
2018-11-07 00:11:47 +01:00
Eloy Lafuente (stronk7) 15c87e0bb1 Merge branch 'm35_MDL-63789_Search_SOLR_Fixes_Proxy_Auth' of https://github.com/scara/moodle into MOODLE_35_STABLE 2018-11-07 00:08:23 +01:00
Eloy Lafuente (stronk7) 4ead20ffea weekly release 3.5.2+ 2018-11-06 19:06:47 +01:00
Eloy Lafuente (stronk7) f37269b124 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-11-06 19:06:45 +01:00
Andrew Nicols f9de59ada9 Merge branch 'MDL-63711-35-fix' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-11-06 14:20:59 +08:00
Jun Pataleta f5cf23270a MDL-63711 core_grade: Use canonicalize for checking userlist IDs 2018-11-06 14:16:57 +08:00
Andrew Nicols 88c2c6758a Merge branch 'MDL-62563-35-3' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-06 09:47:26 +08:00
AMOS bot 0da99d3c4d Automatically generated installer lang files 2018-11-06 00:07:25 +00:00
Dan Marsden 4aa5cee144 MDL-63800 mod_assign: don't show grade if not set. 2018-11-06 10:04:54 +13:00
David Monllao ad6b515ab6 Merge branch 'MDL-63711-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-11-05 16:36:05 +01:00
Eloy Lafuente (stronk7) 56cc378799 Merge branch 'MDL-63748-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-11-05 13:11:47 +01:00
David Monllao 3b8730628b Merge branch 'MDL-63764-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-11-05 12:46:35 +01:00
David Monllao ce8ada051d Merge branch 'MDL-63700-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-11-05 11:14:47 +01:00
Mihail Geshoski d2481db6b0 MDL-62563 privacy: Create delete data request for existing deleted users 2018-11-05 16:24:02 +08:00
Mihail Geshoski e3eb339d89 MDL-62563 privacy: Add unit tests 2018-11-05 16:21:52 +08:00
Andrew Nicols d906136aa5 Merge branch 'MDL-63689-35-workshopprivacy' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-11-05 15:00:40 +08:00
Damyon Wiese c675598ac0 Merge branch 'MDL-63717-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-11-05 13:45:39 +08:00
Andrew Nicols ea321f34c4 Merge branch 'MDL-63564-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-05 13:21:33 +08:00
Mark Nelson bb34fe0838 MDL-63839 core_message: use component name for Behat tag 2018-11-05 10:36:32 +08:00
Andrew Nicols 748409df5b Merge branch 'MDL-63712-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-11-05 09:34:17 +08:00
Eloy Lafuente (stronk7) d07431a2c6 Merge branch 'MDL-63818-35-2' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-11-05 00:03:17 +01:00
Matteo Scaramuccia 60735e6bee MDL-63789 search_solr: use proxy creds, if any
Also use proxy port, IF any.
2018-11-02 23:34:13 +01:00
Eloy Lafuente (stronk7) 9d870a800d weekly release 3.5.2+ 2018-11-02 21:08:38 +01:00
Roger Barras 82083929b1 MDL-60267 user: Fix set default data for the user profile field 2018-11-02 20:10:31 +01:00
Adrian Greeve 52efa6a2f0 MDL-63711 core_grades: Delete data for specified users in a context. 2018-11-03 02:59:58 +08:00
Juan Leyva 8396ade620 MDL-63748 core_auth: Fix redirect parameter being ignored 2018-11-02 15:23:26 +01:00
Juan Leyva e159265c55 MDL-63717 tool_mobile: Ensure URLs are valid
We need to clean the URLs returned by the get_public_config WS because some old plugins didn't validate the stored data.
2018-11-02 14:35:34 +01:00
Mihail Geshoski 46782ecb13 MDL-63564 core_question: Avoid using UNION in get_users_in_context() 2018-11-02 14:40:38 +08:00
Shamim Rezaie 2a34d4b3fd MDL-63564 mod_quiz: Added delete_quizaccess_data_for_users to polyfill
This issue is a part of the MDL-62560 Epic.
2018-11-02 14:40:38 +08:00
Shamim Rezaie e1dca20127 MDL-63564 mod_quiz: support removal of multiple users in a context
This issue is a part of the MDL-62560 Epic.
2018-11-02 14:40:37 +08:00
Shamim Rezaie 73b5e30559 MDL-63564 mod_quiz: Added quizaccess_user_provider interface
This issue is a part of the MDL-62560 Epic.
2018-11-02 14:40:37 +08:00
Shamim Rezaie d7c85ebb3d MDL-63564 question: Add helper to fetch users in context
This issue is a part of the MDL-62560 Epic.
2018-11-02 14:40:37 +08:00
Shamim Rezaie 44451a6a40 MDL-63564 core_question: support removal of multiple users in a context
This issue is a part of the MDL-62560 Epic.
2018-11-02 14:40:37 +08:00
Andrew Nicols 9bb62d6cdd Merge branch 'MDL-63701-35-1' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-02 12:03:20 +08:00
Andrew Nicols 13ed41e499 Merge branch 'MDL-63666-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-02 10:52:40 +08:00
Mihail Geshoski 9825658af9 MDL-63666 logging: Rename delete_data_for_all_users() function 2018-11-02 09:42:16 +08:00
Adrian Greeve 2a939b9f7f MDL-63666 logging: Add support for removal of context users.
This creates a new interface for the logging subplugins to
implement for the users to be deleted separately.
2018-11-02 09:42:16 +08:00
Andrew Nicols 57eae451f1 MDL-63842 core_user: Remove unnecessary DB fetch 2018-11-02 09:07:49 +08:00
Andrew Nicols 30d8fed964 Merge branch 'MDL-63703-35-1' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-11-02 09:00:12 +08:00
Andrew Nicols dc23a75d68 MDL-63702 core_block: Correct phpdoc for get_users 2018-11-02 08:34:45 +08:00
Andrew Nicols 78552ea548 MDL-63422 blog: Correct phpdoc for get_users 2018-11-02 08:34:45 +08:00
Andrew Nicols 6404971918 Merge branch 'MDL-63816-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-11-02 08:00:49 +08:00
Eloy Lafuente (stronk7) 414ca3e1c1 Merge branch 'MDL-63746-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-11-01 15:38:34 +01:00
Andrew Nicols 4d79fb98a5 MDL-63818 core: Add all relevant module context caps
This change ensures that all capabilities at module context level are
shown within a module, only filtering out those which belong to another
module or the subplugins of another module.

This has the effect that module-level capabilities are included
providing they relate to
- the module being queried
- any subplugin of that module
- any capability at module level which does not belong to another module
  or its subplugin
- any other explicitly included capability

This allows permissions to be defined on a capability at a context
level.
2018-11-01 20:52:02 +08:00
Michael Hawkins 199d36febc MDL-63712 core_message: Unit test improvements for fetching context/user
This issue is part of the MDL-62560 Epic.
2018-11-01 16:53:07 +08:00
Mihail Geshoski 3cd0a770d6 MDL-63701 editor_atto: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-11-01 14:21:12 +08:00
Shamim Rezaie 55e5747d04 MDL-63712 core_message: support removal of multiple users in a context
This issue is a part of the MDL-62560 Epic.
2018-11-01 13:06:27 +08:00
Shamim Rezaie 3433b0bfb5 MDL-63712 core_message: Data should be in user context, not system
This issue is a part of the MDL-62560 Epic.
2018-11-01 13:05:58 +08:00
Mihail Geshoski 7f4d3aac07 MDL-63703 core_role: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-11-01 12:13:52 +08:00
Damyon Wiese 790235e123 MDL-63746 boost: Dropdown menu styles
Remove btn styling from menu buttons as the additional padding makes things not line up.
2018-11-01 11:05:37 +08:00
Andrew Nicols 0ee1075ec4 Merge branch 'MDL-63566-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-11-01 10:11:57 +08:00
Adrian Greeve f7d57a3d96 MDL-63566 tool_dataprivacy: New interface check for userlist.
This adds another check to see if the plugins are implementing the
new core_userlist_provider.
2018-11-01 10:08:13 +08:00
Jun Pataleta bbb9ffb0c1 Merge branch 'MDL-63826_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-11-01 09:28:30 +08:00
Eloy Lafuente (stronk7) e882740a56 MDL-63826 tests: Don't rely on random array keys for testing 2018-11-01 00:35:21 +01:00
Andrew Nicols 1da0d646b3 Merge branch 'm35_MDL-63727_Wrong_SCO_Launched_Link' of https://github.com/scara/moodle into MOODLE_35_STABLE 2018-11-01 07:01:42 +08:00
Matteo Scaramuccia b193f7754d MDL-63727 mod_scorm: Fixed typo in test_launch_sco() 2018-10-31 22:42:06 +01:00
Davo Smith 73c8d34ab8 MDL-63727 mod_scorm: fix typo in sco_launched URL 2018-10-31 22:42:05 +01:00
David Monllao bf1b7ef8c9 Merge branch 'MDL-63726-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-10-31 10:21:52 +01:00
Luca Bösch 662878b6b5 MDL-63726 tool_dataprivacy: En-/disable 'Data retention summary' link 2018-10-31 09:10:48 +01:00
Andrew Nicols bc35326e3e Merge branch 'MDL-63684-35-1' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-31 15:13:17 +08:00
Mihail Geshoski df0a4ec014 MDL-63684 core_calendar: Fix test_get_contexts_for_userid() test
This issue is part of the MDL-62560 Epic.
2018-10-31 14:12:08 +08:00
Mihail Geshoski 8782043946 MDL-63684 core_calendar: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-31 14:12:08 +08:00
Andrew Nicols f669a63cca Merge branch 'MDL-63702-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-31 14:05:39 +08:00
David Monllao a25a4d30be Merge branch 'MDL-62601-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-31 06:47:43 +01:00
Michael Hawkins aae2aa2d81 MDL-63700 core_analytics: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-31 13:47:07 +08:00
Andrew Nicols 1760650216 MDL-62601 core_privacy: Ensure providers can handle deleted users 2018-10-31 13:45:00 +08:00
Andrew Nicols 52a16f409d MDL-62601 editor_atto: Do not use context_user 2018-10-31 13:45:00 +08:00
David Monllao 19768075ff Merge branch 'MDL-63582-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-10-31 06:10:38 +01:00
Jun Pataleta fdc3a96e54 Merge branch 'MDL-63690-35-integration' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-31 12:53:47 +08:00
Michael Hawkins a25222e9c4 MDL-63816 privacy: Corrected provider get_users_in_context descriptions 2018-10-31 12:14:43 +08:00
Michael Hawkins eaae1a7ea1 MDL-63816 privacy: Corrected interface get_users_in_context description 2018-10-31 12:14:43 +08:00
Mihail Geshoski c81cc39a02 MDL-63690 core_blog: Handle when user blog posts are not being returned 2018-10-31 11:50:35 +08:00
Jun Pataleta a3d372061a Merge branch 'MDL-60897-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-10-31 11:34:47 +08:00
Andrew Nicols 5de480c21b Merge branch 'MDL-63624-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-31 11:16:47 +08:00
Jun Pataleta 446de56bfc MDL-60897 qtype_multianswer: Code style fixes
And Behat steps improvement, too!
2018-10-31 11:12:53 +08:00
Jean-Michel Vedrine 5e997d239c MDL-60897 qtype_multianswer: Invalid cloze-questions saved to db 2018-10-31 11:12:53 +08:00
Mihail Geshoski cb69e0ca88 MDL-63624 tool_cohortroles: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-31 11:09:44 +08:00
Adrian Greeve 0a0e5a03a0 MDL-63702 core_block: Update to use new userlist interface.
This allows user data to be deleted on a role basis.
2018-10-31 10:05:21 +08:00
Andrew Nicols 12a3bcee4f Merge branch 'MDL-63530-35-2' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-31 09:22:06 +08:00
Andrew Nicols ddf649109d Merge branch 'MDL-63606-35-2' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-31 08:56:25 +08:00
Andrew Nicols 18b69cc33d Merge branch 'MDL-63690-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-31 08:23:28 +08:00
Luca Bösch 4283575676 MDL-63582 theme_boost: Fix the license field in the file picker width. 2018-10-30 22:42:33 +01:00
Eloy Lafuente (stronk7) e1e20d0c9b weekly release 3.5.2+ 2018-10-30 18:24:07 +01:00
Eloy Lafuente (stronk7) 009f51644d Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-10-30 18:24:05 +01:00
David Mudrák 5171746d5a MDL-63689 workshop: Add support for removal of multiple context users
The mod_workshop\privacy\provider now implements the new
core_userlist_provider interface. Deleting (erasing) data follows the
same principles as in other existing methods - we do not actually delete
data that might affect other users. Instead, we only erase the sensitive
owned personal information such as provided content.
2018-10-30 14:31:49 +01:00
Mihail Geshoski a395c8a60e MDL-63606 core_badges: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-30 16:42:24 +08:00
Mihail Geshoski 575584cb94 MDL-63530 core_notes: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-30 16:19:26 +08:00
Andrew Nicols 8fe266c09d Merge branch 'MDL-63634-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-30 12:05:15 +08:00
Andrew Nicols a7b6eaa544 Merge branch 'MDL-63626-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-30 10:59:28 +08:00
Jun Pataleta 831b2f6729 Merge branch 'MDL-63531-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-30 10:50:46 +08:00
Adrian Greeve e2f9bdd44b MDL-63531 privacy: Update to comments provider to simplfy sql.
This updates the get_users_in_context_from_sql query to include
the context id to simplify the calls made from other components.
2018-10-30 09:47:14 +08:00
Adrian Greeve 707586883b MDL-63531 assignfeedback: Update to use the new privacy interface.
This now uses the new interface to allow the deletion of users based
on a context.
2018-10-30 09:47:14 +08:00
Adrian Greeve f5029c213a MDL-63531 assignsubmission: Update to use the new interface.
This updates the plugins to use the new inteface for deleting
data for users in a context.
2018-10-30 09:47:14 +08:00
Andrew Nicols b96835a505 Merge branch 'MDL-63656-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-10-30 09:37:07 +08:00
Adrian Greeve 5e0b16e369 MDL-63531 mod_assign: Update mod assign to use new interface.
This introduces a new interface for assign sub-plugins and
updates the mod_assign provider to implement the new general
interface for deleting data for users in a context.
2018-10-30 08:47:41 +08:00
Eloy Lafuente (stronk7) 7b9e3e0336 Merge branch 'MDL-63730-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-10-29 13:20:24 +01:00
David Monllao eb5263ec3f Merge branch 'MDL-63528-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-10-29 11:18:21 +01:00
Michael Hawkins ac2524447e MDL-63656 tool_messageinbound: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-29 14:15:11 +08:00
Michael Hawkins ea1f81dd64 MDL-63764 core_competency: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-29 13:01:40 +08:00
Michael Hawkins 95c2cadcb8 MDL-63764 core_competency: Support bulk user delete course competencies
This issue is a part of the MDL-62560 Epic.
Also made user IDs optional, so user course competencies can be deleted by course ID only.
2018-10-29 13:01:40 +08:00
Jun Pataleta 116b0d26eb Merge branch 'MDL-63622-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-10-29 11:41:18 +08:00
Adrian Greeve 07c7af673b MDL-63622 core_grading: Add support for removal of context users.
Core grading now implements the new core_userlist_provider
interface to allow for deletion of specific users in a context.
2018-10-29 11:22:04 +08:00
Andrew Nicols a32ea64a88 Merge branch 'MDL-63665-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-29 08:57:04 +08:00
Andrew Nicols de6f2519a5 Merge branch 'MDL-63680-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-29 08:22:58 +08:00
AMOS bot 6539fe917f Automatically generated installer lang files 2018-10-29 00:07:23 +00:00
Andrew Nicols 23b8d594b5 Merge branch 'MDL-63267-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-10-27 19:20:39 +08:00
AMOS bot 7b1593ad5c Automatically generated installer lang files 2018-10-27 00:07:26 +00:00
Tim Lock b6960fa224 MDL-63267 tool_privacy: Handle modules without privacy support. 2018-10-26 18:31:11 -04:00
Adrian Greeve 5704b265ab MDL-63267 grading methods: Unit test update for fix. 2018-10-26 18:31:31 -04:00
Adrian Greeve a5915ed4fc MDL-63267 grading methods: Fix for multiple intances.
We were only exporting the one instance per item id.
Instead we should have been exporting all instances for each
item id.
2018-10-26 18:31:11 -04:00
Adrian Greeve 73a8c336c9 MDL-63267 tool_dataprivacy: Registry shows deprecated interfaces. 2018-10-26 18:26:32 -04:00
Adrian Greeve 710c4de820 MDL-63267 privacy: Create deprecated provider interface.
Any interfaces that have become deprecated should extend
this interface.
2018-10-26 18:26:19 -04:00
Adrian Greeve e6d622106c MDL-63267 core_grading: Unit test for new methods. 2018-10-26 18:26:07 -04:00
Adrian Greeve 9383ee853c MDL-63267 mod_assign: Update to providers to include adv grading. 2018-10-26 18:25:46 -04:00
Adrian Greeve fa92fcbe15 MDL-63267 core_grading: Update to providers and interface.
The previous interface was inadequate for retrieving user
information stored in the sub-plugins.

A new interface and methods have been added to successfully
deal with user data.
2018-10-26 18:24:49 -04:00
Eloy Lafuente (stronk7) f2eb4c0b8f weekly release 3.5.2+ 2018-10-26 18:05:09 +02:00
Eloy Lafuente (stronk7) cc9c1ed9a0 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-10-26 18:05:07 +02:00
Damyon Wiese 76793973e5 MDL-62139 output: Menus fixes
Change the boost custom behat step to click on a button.

Revert the clean templates to unchanged versions.

(it seems that we missed this commit originally in
MOODLE_35_STABLE and it was the cause of hundreds of
failures, so cherry picked from master. More info @ MDL-63765)
2018-10-26 17:40:49 +02:00
David Mudrák d3e89fec58 MDL-63730 lang: Update Behat scenarios to use the new strings 2018-10-26 13:43:17 +02:00
Helen Foster 8757d7cb6b MDL-63730 lang: Merge English strings from the en_fix language pack
Significant string changes:

* withselectedusers_help, core - removing mention of 'Add a common note'
  as the option no longer exists
* considereddigitalminor and digitalminor_desc, core - more
  child-friendly wording
* auth_dbtype, auth_db - fixed broken link
2018-10-26 13:40:07 +02:00
Shamim Rezaie f61b827260 MDL-63634 enrol_paypal: Improve query performance
This issue is a part of the MDL-62560 Epic.
2018-10-26 19:36:39 +11:00
Shamim Rezaie 2f6a91dbdb MDL-63634 enrol_paypal: support removal of multiple users in a context
This issue is a part of the MDL-62560 Epic.
2018-10-26 19:36:39 +11:00
Shamim Rezaie f9ba909869 MDL-63634 enrol_paypal: Fix a typo in unit tests
This issue is a part of the MDL-62560 Epic.
2018-10-26 19:36:39 +11:00
Eloy Lafuente (stronk7) 5b8e3123a9 Merge branch 'MDL-63765-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-26 10:22:36 +02:00
Damyon Wiese eaf9da10ad MDL-63765 behat: Fix behat tests opening a menu
If javascript is disabled, we don't need to open the menus at all. If it is enabled
we should use the custom step where possible.

In some tests (user profile) we have to use link_or_button because
the element that opens the menu will be a link or a button in different themes.
2018-10-26 16:12:00 +08:00
Shamim Rezaie 0f9997a4ec MDL-63665 mod_choice: no exception when course_modules doesn't exist
This issue is a part of the MDL-62560 Epic.
2018-10-26 18:49:35 +11:00
Shamim Rezaie 591b16786c MDL-63665 mod_choice: support removal of multiple users in a context
This issue is a part of the MDL-62560 Epic.
2018-10-26 18:49:35 +11:00
Mihail Geshoski b1208d8bf8 MDL-63680 report_stats: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-26 13:09:10 +08:00
Andrew Nicols f4fcee9a9d Merge branch 'MDL-63673-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-26 11:42:10 +08:00
Andrew Nicols d320454567 Merge branch 'MDL-63682-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-26 11:03:09 +08:00
Mihail Geshoski 24eeb8ba01 MDL-63682 mnetservice_enrol: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-26 10:24:08 +08:00
Andrew Nicols 0feb84a5dd Merge branch 'MDL-63688-35-1' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-26 10:17:36 +08:00
Mihail Geshoski 90be3a42f3 MDL-63690 core_privacy: Handle when add_users() receives an empty array 2018-10-26 09:26:55 +08:00
Adrian Greeve 2b227258e0 MDL-63690 core_blog: Update providers for userlist deletion. 2018-10-26 09:26:31 +08:00
AMOS bot b6cfa1975a Automatically generated installer lang files 2018-10-26 00:07:27 +00:00
Eloy Lafuente (stronk7) 8b4a53ca75 Merge branch 'MDL-62904-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-10-26 00:03:53 +02:00
Andrew Nicols 7de43df7ad Merge branch 'MDL-63552-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-10-25 15:44:10 +08:00
Andrew Nicols 497d75ae71 Merge branch 'MDL-63679-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-25 15:13:15 +08:00
Andrew Nicols b9c01f1f70 Merge branch 'MDL-63678-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-25 15:11:53 +08:00
Andrew Nicols 3cf54a0743 Merge branch 'MDL-63655_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-10-25 14:56:58 +08:00
Michael Hawkins d7bd4532f8 MDL-63552 search_solr: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-25 11:43:21 +08:00
Michael Hawkins 1ba678ef3b MDL-63552 search_simpledb: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
Also added test_get_contexts_for_userid unit test.
2018-10-25 11:43:21 +08:00
Damyon Wiese 062bc628df Merge branch 'MDL-63755-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-25 08:37:51 +08:00
Andrew Nicols 412b9c0451 MDL-63755 theme_boost: Behat selector fix 2018-10-25 07:39:27 +08:00
Eloy Lafuente (stronk7) 5c61e693af Merge branch 'MDL-62145-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-25 01:35:21 +02:00
Eloy Lafuente (stronk7) de2b3bfdd8 Merge branch 'MDL-63714-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-25 01:08:38 +02:00
Mihail Geshoski 46120189e3 MDL-63688 core_tag: Add method that returns users in context
This issue is part of the MDL-62560 Epic.
2018-10-24 09:28:00 +08:00
Andrew Nicols 8f30163736 MDL-63619 tool_dataprivacy: Cache purposes in form 2018-10-24 08:49:24 +08:00
Andrew Nicols 62b97d84ee MDL-63619 tool_dataprivacy: Performance improvement 2018-10-24 08:49:24 +08:00
Andrew Nicols 899e07d9a8 MDL-63619 tool_dataprivacy: Fix inheritance from parent contexts
Inheritance should behave such that all contexts inherit from their
parent context.

Prior to this fix, if the value was not set on a context, then it was
getting a default of 'Inherit', but instead of inheritting from the
parent context, it was inheritting from its parent context _level_ which
is just wrong.
2018-10-24 08:49:24 +08:00
Andrew Nicols c85128260f MDL-63714 javascript: Add new core/pending module 2018-10-24 08:43:50 +08:00
Andrew Nicols 527f895e93 MDL-63714 core: Wrap doRender in pendingjs 2018-10-24 08:43:50 +08:00
Andrew Nicols abca4753b4 MDL-63714 javascript: Improve docs for pendingjs 2018-10-24 08:43:50 +08:00
Mihail Geshoski 4b91080095 MDL-63673 fileconverter_googledrive: Support removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-24 07:03:19 +08:00
David Monllao 76528a767e weekly release 3.5.2+ 2018-10-23 16:39:30 +02:00
David Monllao 16b34d53f2 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-10-23 16:39:28 +02:00
David Monllao 25934551cc Merge branch 'MDL-62139-35-fix3' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-23 11:17:08 +02:00
Damyon Wiese 4b31593964 MDL-62139 behat: Invalid test
If javascript is disabled, we can't open the menu.
2018-10-23 16:44:16 +08:00
Damyon Wiese 9c9e2d3e5e MDL-62139 output: Revert template changes
Revert accessibility changes for menus in standard themes.
2018-10-23 10:14:44 +02:00
Damyon Wiese cd786f0d0d MDL-62139 output: Revert template changes
Revert accessibility changes for menus in standard themes.
2018-10-23 15:47:20 +08:00
Mihail Geshoski 58d63790c2 MDL-63679 ltiservice_memberships: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-23 13:36:02 +08:00
Mihail Geshoski 00a7f99146 MDL-63678 ltiservice_gradebookservices: Support removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-23 13:13:48 +08:00
Andrew Nicols 6d0014c5e1 MDL-63657 completion: Coding style fix 2018-10-23 11:32:53 +08:00
Andrew Nicols 85f052f4b8 Merge branch 'MDL-63668-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-10-23 11:32:49 +08:00
Andrew Nicols 17f5816739 MDL-63657 core_files: Coding style fix 2018-10-23 11:27:26 +08:00
Andrew Nicols 9cb3947dff Merge branch 'MDL-63640-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-23 11:27:22 +08:00
Andrew Nicols efc90f828b MDL-63657 tool_mobile: Coding style fix 2018-10-23 11:22:05 +08:00
Andrew Nicols da5827b559 Merge branch 'MDL-63657-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-10-23 11:21:59 +08:00
Andrew Nicols 9f01d23302 MDL-63535 core_rss: Coding style fix 2018-10-23 11:16:56 +08:00
Andrew Nicols a4f148707e Merge branch 'MDL-63535-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-10-23 11:16:45 +08:00
Michael Hawkins 7d08cc710b MDL-63657 tool_mobile: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-23 10:59:38 +08:00
Andrew Nicols 79a266ee48 MDL-63664 tool_policy: Whitespace fix 2018-10-23 10:54:13 +08:00
Michael Hawkins ad33de11d9 MDL-63668 core_course: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-23 10:45:36 +08:00
Michael Hawkins dd897cc398 MDL-63668 core_completion: Add get and delete by approved userlist.
This issue is a part of the MDL-62560 Epic.
2018-10-23 10:45:36 +08:00
Andrew Nicols 68f64fe990 Merge branch 'MDL-63664-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-10-23 10:44:35 +08:00
Michael Hawkins a7ebe98214 MDL-63664 tool_policy: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-23 10:40:12 +08:00
Mihail Geshoski 8ac3bac143 MDL-63535 core_userkey: Add method that returns users in context
This issue is part of the MDL-62560 Epic.
2018-10-23 10:27:42 +08:00
Mihail Geshoski 4910753dce MDL-63535 core_rss: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-23 10:27:42 +08:00
Andrew Nicols d54cbaff46 Merge branch 'MDL-63649-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-23 10:17:50 +08:00
Andrew Nicols 9e715a225c Merge branch 'MDL-63713-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-23 10:09:13 +08:00
Mihail Geshoski 015e70cbcf MDL-63640 core_files: Add method that returns users in context
This issue is part of the MDL-62560 Epic.
2018-10-23 10:07:38 +08:00
Shamim Rezaie 0b28290a50 MDL-63649 enrol_lti: support removal of multiple users in a context
This issue is a part of the MDL-62560 Epic.
2018-10-23 13:06:33 +11:00
Shamim Rezaie 63e4e0d69d MDL-63713 core: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-23 13:05:36 +11:00
Andrew Nicols aff8604240 MDL-62560 tool_dataprivacy: Behat fix for protected check 2018-10-23 09:22:05 +08:00
AMOS bot 505851f045 Automatically generated installer lang files 2018-10-23 00:07:22 +00:00
David Monllao 5cccfd2eab Merge branch 'MDL-62144-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-22 16:34:37 +02:00
David Monllao f9f8edce1d Merge branch 'MDL-61052-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-22 14:37:33 +02:00
David Monllao a9354dbbd6 Merge branch 'MDL-62560-35' into MOODLE_35_STABLE 2018-10-22 12:58:00 +02:00
Andrew Nicols 05b441c5ef MDL-62560 tool_dataprivacy: Add a purpose override cache 2018-10-22 12:57:08 +02:00
Andrew Nicols 9fc1390e35 MDL-62560 tool_dataprivacy: Fetch user purpose once 2018-10-22 12:57:07 +02:00
Andrew Nicols 360b7f43b8 MDL-62560 tool_dataprivacy: Add status logging 2018-10-22 12:57:07 +02:00
Andrew Nicols 20342fca7e MDL-62560 tool_dataprivacy: Add unit test for filtered userlist 2018-10-22 12:57:06 +02:00
Mihail Geshoski 598d0b3c20 MDL-63636 block_recent_activity: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:06 +02:00
Mihail Geshoski 3d9de9c6d6 MDL-63621 core_cohort: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:05 +02:00
Mihail Geshoski cdd2633a99 MDL-63633 block_comments: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:05 +02:00
Mihail Geshoski 7027daa89c MDL-63635 block_community: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:04 +02:00
Mihail Geshoski bd77a90267 MDL-63593 auth_mnet: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:04 +02:00
Mihail Geshoski 3288990694 MDL-63592 auth_oauth2: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:04 +02:00
Mihail Geshoski 64793424f2 MDL-63637 block_rss_client: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:03 +02:00
Mihail Geshoski 56cd4f7b84 MDL-63638 block_tag_flickr: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:03 +02:00
Mihail Geshoski fdf6d94a1b MDL-63639 core_fileconverter: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:02 +02:00
Shamim Rezaie 84a98a4202 MDL-63647 enrol_flatfile: Improving existing unit tests
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:57:02 +02:00
Shamim Rezaie f38e592d5d MDL-63647 enrol_flatfile: support removal of multiple users in context
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:57:01 +02:00
Michael Hawkins 25b6c54c68 MDL-63659 tool_monitor: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:57:01 +02:00
Mihail Geshoski 49f281ac53 MDL-63615 message_airnotifier: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:00 +02:00
Mihail Geshoski e16d2a8fc6 MDL-63616 message_email: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:57:00 +02:00
Mihail Geshoski 5447955b2e MDL-63617 message_jabber: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:59 +02:00
Adrian Greeve b1a8e921cd MDL-63618 core_plagiarism: Added support to remove users in a context.
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:55 +02:00
Mihail Geshoski 97a6d18372 MDL-63572 profilefield_checkbox: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:54 +02:00
Mihail Geshoski c2c4125f13 MDL-63575 profilefield_datetime: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:54 +02:00
Mihail Geshoski b0a2591274 MDL-63586 profilefield_menu: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:53 +02:00
Mihail Geshoski 6cbefb4064 MDL-63587 profilefield_text: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:53 +02:00
Mihail Geshoski 35fbfe23b5 MDL-63588 profilefield_textarea: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:53 +02:00
Michael Hawkins 053eb1d5b9 MDL-63538 repository_onedrive: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:52 +02:00
Michael Hawkins 5b8a649d4a MDL-63538 repository_youtube: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:52 +02:00
Michael Hawkins 29f71e53b5 MDL-63538 repository_wikimedia: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:51 +02:00
Michael Hawkins 5f6e9d5185 MDL-63538 repository_picasa: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:51 +02:00
Michael Hawkins 290c9bc478 MDL-63538 repository_merlot: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:51 +02:00
Michael Hawkins 58cc3aa1ab MDL-63538 repository_googledocs: Support removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:50 +02:00
Michael Hawkins 658b6742f5 MDL-63538 repository_flickr_public: Support removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:50 +02:00
Michael Hawkins 32a103cd69 MDL-63538 repository_flickr: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:49 +02:00
Michael Hawkins 88c29f7fbe MDL-63538 repository_dropbox: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:49 +02:00
Michael Hawkins 7902349b06 MDL-63538 repository_boxnet: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:49 +02:00
Mihail Geshoski 0857000602 MDL-63536 core_repository: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:48 +02:00
Mihail Geshoski ce55556b2e MDL-63534 core_user: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:48 +02:00
Mihail Geshoski ddcf2245a8 MDL-63532 core_portfolio: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:47 +02:00
Mihail Geshoski 39a072f09f MDL-63529 core_enrol: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:47 +02:00
Michael Hawkins d233c5d063 MDL-63514 mod_wiki: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:47 +02:00
Michael Hawkins f27a271a8e MDL-63510 mod_survey: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:46 +02:00
Michael Hawkins 38839b0afb MDL-63501 mod_scorm: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:46 +02:00
Michael Hawkins 07606ab87f MDL-63497 mod_lesson: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:45 +02:00
Michael Hawkins 9143b3db12 MDL-63497 mod_feedback: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:45 +02:00
Michael Hawkins 063f886160 MDL-63497 mod_glossary: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
Also added missing ratings include and test to mod_glossary unit tests.
2018-10-22 12:56:45 +02:00
Michael Hawkins e43fcd4373 MDL-63497 mod_data: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:44 +02:00
Michael Hawkins 4369b8d6e5 MDL-63497 block_html: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:43 +02:00
Michael Hawkins 7cb0129e59 MDL-63497 mod_chat: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:43 +02:00
Shamim Rezaie 80ead07e28 MDL-63554 cachestore_memcache: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:43 +02:00
Shamim Rezaie b6a5ae21c7 MDL-63554 cachestore_session: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:42 +02:00
Shamim Rezaie 22b0849f45 MDL-63554 cachestore_redis: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:42 +02:00
Shamim Rezaie 73a5fcacf6 MDL-63554 cachestore_mongodb: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:41 +02:00
Shamim Rezaie 25b3094acb MDL-63554 cachestore_memcached: Support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:41 +02:00
Shamim Rezaie 7fb4b0d52d MDL-63500 enrol_cohort: refactoring get_contexts_for_userid
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:40 +02:00
Shamim Rezaie 86646b27d2 MDL-63500 enrol_meta: refactoring get_contexts_for_userid
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:40 +02:00
Shamim Rezaie 1afe64dbea MDL-63500 core_group: get_contexts_for_userid should respect component
The get_contexts_for_userid method should not return contexts for all group memberships.
It should only return the contexts in where there is manual group
membership.

This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:40 +02:00
Shamim Rezaie 56c4024330 MDL-63500 enrol_cohort: Support for removal of multiple context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:39 +02:00
Shamim Rezaie 7bbf87a853 MDL-63500 enrol_meta: Support for removal of multiple context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:39 +02:00
Shamim Rezaie c55fd56b87 MDL-63500 core_group: support removal of multiple users in a context
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:38 +02:00
Mihail Geshoski 39e35674d1 MDL-63533 core_webservice: Unit tests for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:38 +02:00
Mihail Geshoski 6f3c6cf4ba MDL-63533 core_webservice: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:37 +02:00
Adrian Greeve 8159f6ae0a MDL-63513 mod_assignment: Add removal of context users.
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:37 +02:00
Michael Hawkins 6cd1ea6cf3 MDL-63498 mod_lti: Add support for removal of context users
This issue is part of the MDL-62560 Epic.
2018-10-22 12:56:36 +02:00
Michael Hawkins 4daf168de7 MDL-63495 comment: Added provider::get_users_in_context_from_sql
This issue is a part of the MDL-62560 Epic.
2018-10-22 12:56:28 +02:00
Damyon Wiese 3bea0fa387 MDL-61052 assign: Do not queue conversions
Identical submissions do not require individual conversions from the document converter. Text passing through
format_text cannot be trusted and is likely to be unique each time, even for the same text.
2018-10-22 12:01:06 +08:00
Zig Tan 6d03e5e554 MDL-61052 assign: Improve strip_images() to avoid HTML5 tags errors 2018-10-22 11:58:36 +08:00
Damyon Wiese 9d0c5cbbc4 MDL-62145 theme_boost: Custom menu fixes
Make sure the site navigation element is labelled, actionmenu items
have correct role and actionmenu trigger controls the menu.
2018-10-22 11:03:37 +08:00
Damyon Wiese 40a90154ca MDL-62144 user menu: Accessibility
Ensure user menu passes the accessibility tests.
2018-10-22 10:45:20 +08:00
Damyon Wiese e0f64e0feb MDL-62139 output: Accessible action menus
Add label on the "gear" menu and default keyboard and focus controls.
2018-10-22 10:37:25 +08:00
Eloy Lafuente (stronk7) 1a33d0869a weekly release 3.5.2+ 2018-10-22 10:37:24 +08:00
AMOS bot f2211eb823 Automatically generated installer lang files 2018-10-22 10:37:24 +08:00
AMOS bot 857cfb1429 Automatically generated installer lang files 2018-10-22 10:37:24 +08:00
AMOS bot bd6cc5c145 Automatically generated installer lang files 2018-10-22 00:07:21 +00:00
Eloy Lafuente (stronk7) 1a1d03caeb weekly release 3.5.2+ 2018-10-19 17:10:56 +02:00
Eloy Lafuente (stronk7) 7e3eaa5d6f Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-10-19 17:10:54 +02:00
AMOS bot 512091f40c Automatically generated installer lang files 2018-10-19 00:08:10 +00:00
Eloy Lafuente (stronk7) 722f0c03c0 Merge branch 'MDL-62920_35' of https://github.com/aanabit/moodle into MOODLE_35_STABLE 2018-10-18 23:51:47 +02:00
Eloy Lafuente (stronk7) 892e441634 Merge branch 'MDL-60145-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-10-18 18:57:45 +02:00
Tim Hunt e24dfc1a07 MDL-63403 filter_glossary: changes made during integration review 2018-10-18 18:46:41 +02:00
Tim Hunt 44d00da135 MDL-63403 filter_glossary: only create replacement HTML if needed 2018-10-18 18:41:42 +02:00
Tim Hunt de736d0c84 MDL-63403 filter_glossary: only prepare the replacement if used 2018-10-18 18:41:38 +02:00
Tim Hunt e78bd0cefb MDL-63403 filter_glossary: clean up filterobject class
This is another preliminary commit, rationalising the ->work... fields
and also moving the code that sets them up into a separate function.
This is also to prepare for the next commit.
2018-10-18 18:41:34 +02:00
Tim Hunt e208669c64 MDL-63403 filter_glossary: only prepare_phrases_for_filtering once 2018-10-18 18:41:30 +02:00
Tim Hunt 098d616a30 MDL-63403 filter_glossary: use preg features for fullmatch
This eliminates a lot of necessary string manipulation for something
that preg can just do with the \b assertion.

The change also extracts all the work to prepare ->work_phrase (renamed
->regexp) into a separate function. This is to pave the way for future
efficiency gains, but for now I have not done them, so it is easier to
verify by inspection that this commit does not change behaviour.

Also, some tidy-ups to the filterobject structure, to eliminate some
redundant fields.
2018-10-18 18:41:26 +02:00
Tim Hunt 995d434de1 MDL-63403 filter_glossary: cache concept list in a MUC static cache
This is a slight improvement on a suggestion by David Monllaó
2018-10-18 18:41:22 +02:00
Tim Hunt 366a85cbb4 MDL-63403 filter_glossary: Fix lang string concatenation 2018-10-18 18:41:18 +02:00
Tim Hunt 0c94037196 MDL-63403 filter_glossary: $GLOSSARY_EXCLUDEENTRY shouldn't stop caching
Also, greatly improved unit tests, to test more cases of how the filter
should work.
2018-10-18 18:41:14 +02:00
Tim Hunt fa0a861400 MDL-63403 filterlib: Fix lots of coding style 2018-10-18 18:40:50 +02:00
Jun Pataleta 068c66f242 Merge branch 'MDL-63667-35-fix2' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-18 14:38:26 +08:00
Andrew Nicols b26c30d8f9 MDL-63667 amd: Check for parent template recursion 2018-10-18 12:11:52 +08:00
Damyon Wiese ac1c36c728 MDL-63667 output: Fix for recursive templates
A template can include itself - e.g. by looping over the context children and rendering a tree.

Ensure this promise still resolves.

Example: admin/tool/lp/templates/competencies_tree.mustache.
2018-10-18 10:52:06 +08:00
Eloy Lafuente (stronk7) 069dfe5fc3 Merge branch 'MDL-63632-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-18 02:39:24 +02:00
AMOS bot b1904ba9cb Automatically generated installer lang files 2018-10-18 00:07:26 +00:00
Andrew Nicols 951ae21309 MDL-63632 forum: Delete where not discussion author 2018-10-18 07:20:29 +08:00
Eloy Lafuente (stronk7) b55b2e4f6e Merge branch 'MDL-63068_35' of https://github.com/aanabit/moodle into MOODLE_35_STABLE 2018-10-18 00:39:55 +02:00
Jun Pataleta b7d2f7e1d4 MDL-62904 tool_dataprivacy: Add data request links in profile page 2018-10-17 16:43:31 +08:00
Jun Pataleta d4a5339029 Merge branch 'MDL-63667-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-17 15:06:01 +08:00
Ryan Wyllie 6185c3455a MDL-63667 javascript: fix failed to pre-fetch the template error 2018-10-17 13:53:20 +08:00
Michael Hawkins 44b012e5fd MDL-63495 comment: Added provider::delete_comments_for_users
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Andrew Nicols b8558f33aa MDL-63495 mod_forum: Add intial support for removal of multiple context users
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Andrew Nicols 9674218469 MDL-63495 core_rating: Add helper to fetch users in context
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Andrew Nicols e3ddf1e324 MDL-63496 tool_dataprivacy: Add configuration for per-role retention
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Andrew Nicols f30b061f48 MDL-63496 tool_dataprivacy: Respect expiry with protected flag
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Andrew Nicols 7f7e78269f MDL-63496 tool_dataprivacy: Support for per-role retention
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Michael Hawkins 744ee9322c MDL-63497 tool_dataprivacy: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Andrew Nicols bdf43538fb MDL-63495 privacy: Add support for removal of multiple users in a context
This issue is a part of the MDL-62560 Epic.
2018-10-17 13:13:49 +08:00
Eloy Lafuente (stronk7) 0bf20c560e weekly release 3.5.2+ 2018-10-16 16:05:38 +02:00
Damyon Wiese 7817df3048 Merge branch 'MDL-62960-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-16 11:43:53 +08:00
Shamim Rezaie 8baf412ef7 MDL-62960 calendar: Visuall indicator for valid course event drop zones 2018-10-16 13:09:33 +11:00
Shamim Rezaie 86eff20271 MDL-62960 calendar: Rename get_module_timestamp_min/max_limit methods
The methods get_module_timestamp_min_limit() and get_module_timestamp_max_limit()
are doing generic stuff and can be used for other calendar event types as well.
I have renamed them to get_timestamp_min_limit() and get_timestamp_max_limit() respectively.
2018-10-16 13:09:26 +11:00
Shamim Rezaie 81e11e98f7 MDL-62960 calendar: Implementing course events validity check callback 2018-10-16 13:04:05 +11:00
Shamim Rezaie 4dee91aabf MDL-62960 calendar: Added range check callback for course events
Added core_calendar_get_valid_event_timestart_range callback for course events
2018-10-16 13:04:05 +11:00
Andrew Nicols 5c74c84c9d Merge branch 'MDL-63421_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-10-16 08:50:22 +08:00
Eloy Lafuente (stronk7) 8c682cd317 Merge branch 'MDL-63583-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-10-16 00:29:09 +02:00
Eloy Lafuente (stronk7) 0603eabe6e Merge branch 'MDL-63456-35' of git://github.com/merrill-oakland/moodle into MOODLE_35_STABLE 2018-10-16 00:17:13 +02:00
Eloy Lafuente (stronk7) 5ffe934241 Merge branch 'MDL-62319-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-16 00:03:04 +02:00
Andrew Nicols 2816fa5725 Merge branch 'MDL-63542-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-10-15 11:32:50 +08:00
Eloy Lafuente (stronk7) f29fda6b3e MDL-63655 core: Fix miss-placed parenthesis 2018-10-15 01:02:51 +02:00
Amaia Anabitarte de103e2329 MDL-63068 user: Allow underscore for profile custom fields shortname 2018-10-11 16:41:10 +02:00
Amaia Anabitarte 8b32d682a5 MDL-62920 user: Uploading deleted user and adding to a cohort 2018-10-11 16:28:18 +02:00
Shamim Rezaie 117006e9be MDL-63626 mod_quiz: Fixed a bug when there was no attempt on the quiz 2018-10-12 01:04:01 +11:00
Eloy Lafuente (stronk7) 18c5565a1e weekly release 3.5.2+ 2018-10-11 13:22:56 +02:00
Eloy Lafuente (stronk7) 60c2d866de Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-10-11 13:22:54 +02:00
Damyon Wiese 6324e6cbdf MDL-62319 assignfeedback_editpdf: Disable touch scrolling
Assignment editpdf canvas provides it's own scroll tool and the native browser one breaks
the rest of the tools for the canvas. Turn it off.
2018-10-11 13:31:27 +08:00
Nathan Nguyen 107a70c18c MDL-62319 Assign: Grading interface is broken when using iOS 11.3 devices 2018-10-11 13:31:23 +08:00
AMOS bot 38c7b40532 Automatically generated installer lang files 2018-10-11 00:07:18 +00:00
Eloy Lafuente (stronk7) d19ca2c152 Merge branch 'MDL-62891-35-callable_name' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-10-10 23:33:11 +02:00
Eloy Lafuente (stronk7) d61e7f1e3f Merge branch 'MDL-63225-35' of git://github.com/jleyva/moodle into MOODLE_35_STABLE 2018-10-10 23:25:52 +02:00
Peter Spicer 7331c8af56 MDL-63451 core_message: Properly escape URLs for notification popup 2018-10-10 13:04:24 +01:00
Andrew Nicols 866cabf59d MDL-63607 behat: Remove theme from config whitelist 2018-10-10 12:06:42 +08:00
Jake Dallimore 9477b1d568 MDL-60145 course: fix bug with group restictions button during mod edit
If a mod doesn't support groups, then we remove the grouping element,
and now also the 'add group/group restriction' helper button too.
2018-10-10 08:42:07 +08:00
AMOS bot 38f9254cd4 Automatically generated installer lang files 2018-10-10 00:07:15 +00:00
Eloy Lafuente (stronk7) 6e5c713b60 Merge branch 'MDL-63439-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-10 00:48:20 +02:00
Eloy Lafuente (stronk7) 9ab9aa573b Merge branch 'MDL-62395-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-10-09 23:06:36 +02:00
Eloy Lafuente (stronk7) 1ca1b28e52 Merge branch 'MDL-63401-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-09 11:36:26 +02:00
David Monllao 5f13e8876b Merge branch 'MDL-62738_35' of https://github.com/mfabriczy/moodle into MOODLE_35_STABLE 2018-10-09 09:24:17 +02:00
David Monllao a16f2c8b55 Merge branch 'MDL-51969-MOODLE_35_STABLE' of https://github.com/dmitriim/moodle into MOODLE_35_STABLE 2018-10-09 09:21:08 +02:00
Jun Pataleta 3addb66f2d Merge branch 'MDL-62491-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-10-09 14:39:41 +08:00
Jun Pataleta 505a25b403 Merge branch 'MDL-63241-35-take2' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-10-09 12:48:48 +08:00
Adrian Greeve bb76ffff21 MDL-62491 navigation: Update to tree.js to allow callbacks. 2018-10-09 09:40:06 +08:00
Adrian Greeve 375eb5e975 MDL-62491 mod_assign: Fill in the rewrite plugin urls properly. 2018-10-09 09:40:06 +08:00
Adrian Greeve 1db088f085 MDL-62491 core_privacy: Add html files to the user data export.
This adds html to the data export that allows for easier navigation
and reading of data.
2018-10-09 09:40:06 +08:00
Damyon Wiese 100e479daf MDL-63439 assign: Unicode charsets for pdf
Prefer to use freesans font for generated pdfs as it has the biggest charset support.
2018-10-09 09:30:24 +08:00
Jun Pataleta 191d470949 Merge branch 'MDL-63194_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-10-09 08:55:39 +08:00
Andrew Nicols c62c4c9c40 MDL-63401 tool_dataprivacy: Change default for require end date
We should preserve the existing behaviour.
2018-10-09 08:32:18 +08:00
Andrew Nicols ac4f0d0e51 MDL-63401 tool_dataprivacy: Simplify where processing 2018-10-09 08:22:42 +08:00
Andrew Nicols 76075bcf6b MDL-63401 tool_dataprivacy: Move final cap check to endpoint 2018-10-09 08:22:42 +08:00
Eric Merrill f55f89162d MDL-63456 qtype_multichoice: Return a default options object if missing 2018-10-08 16:31:27 -04:00
Eric Merrill 2d5d5d7902 MDL-63456 question: Improve Aiken error handling and multichoice errors 2018-10-08 16:31:27 -04:00
Tim Hunt a83a1d9ee0 MDL-63194 quiz editing: subtle drag-drop bug if moving between sections 2018-10-08 17:46:32 +01:00
Juan Leyva aba0de88be MDL-63583 course: Include course/lib.php always
core_course_get_courses_by_field WS must include always course/lib.php to not depend on functions including it.
2018-10-08 16:56:00 +02:00
Andrew Nicols a996aa4ea6 MDL-63401 tool_dataprivacy: Allow expiriration of users without end date 2018-10-08 20:51:41 +08:00
Andrew Nicols 3a6fe7db1b MDL-63401 tool_dataprivacy: Rewrite expired deletion handling
This change rewrites the way in which expiry is calculated and addresses
a number of closely related issues:

Users can customise, and add blocks with data to, their dashboard.  When
a user had done so, the user could be flagged for deletion, but the
blocks in their Dashboard were subject to the default block retention
policy. In addition there is no way to override the retention policy for
user blocks.

This change modifies the structure of the expiry mechanism:
- to consider any subcontext of the user context to be a part of the user
  context during calculation. User child contexts are not the property
  of the system, and should not be treated separately.
- the way in which the context expiry mechanism worked was to select
  use a multiple different managers based solely on the context level.
  Because of the use of user blocks, this proved to be unreliable as
  blocks has been attributed purely to courses.
  This has been changed to a single manager which is aware of hierarchy
  and deletions as a whole.
- to prepare for upcoming work relating to more detailed expiry
  mechanisms, a new expiry_info class is introduced and used to
  merge the expiry of child contexts into a working in-memory view.

This changeset includes extensive unit tests.
2018-10-08 20:51:09 +08:00
Andrew Nicols cfb272d0ae MDL-63401 core: Do not delete the user context
As long as we have a user record, we should not delete the context which
relates to it.
2018-10-08 20:51:09 +08:00
Andrew Nicols 0de0739e8e MDL-63401 tool_dataprivacy: Move cap checks to endpoints from API 2018-10-08 20:51:09 +08:00
David Monllao 593d8d250f Merge branch 'MDL-63323-35-wrong-classes-attribute-into-activity_navigation' of https://github.com/davidherney/moodle into MOODLE_35_STABLE 2018-10-08 11:30:21 +02:00
Luca Bösch b0147a4737 MDL-63241 calendar: Add missing table alias in SQL query. 2018-10-07 21:45:22 +02:00
Marcus Fabriczy 975c91dec8 MDL-62738: editor_tinymce: Fix call stack size bug on Safari
The call stack size was being exceeded via a recursive loop brought
by MDL-61189.

To fix, this item removes MDL-36803 and MDL-41328 as the iOS keyboard works
nicely now on Safari with TinyMCE.
2018-10-06 17:29:26 +09:30
Juan Leyva 5166e72190 MDL-63542 core_course: Support stealth activities in WS 2018-10-05 14:51:19 +02:00
Eloy Lafuente (stronk7) 8946ee7937 MDL-63421 env: Moodle 3.4.x and 3.5.x do not support PHP 7.3 2018-10-05 13:34:29 +02:00
David Mudrák 4edb56a2a5 MDL-62891 core: Stop using var_export() to describe callables
Make use of the newly added function get_callable_name() when reporting
that an exception happened during shutdown.
2018-10-05 08:51:56 +02:00
David Mudrák 02459b6527 MDL-62891 core: Introduce new get_callable_name() function 2018-10-05 08:51:56 +02:00
Dmitrii Metelkin f9f8a9575e MDL-51969 mod_lti: Fixed missing tool proxy GUID 2018-10-05 15:14:54 +10:00
Jun Pataleta 7daf207db7 weekly release 3.5.2+ 2018-10-05 10:29:07 +08:00
Jun Pataleta 41ae59a8de Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-10-05 10:29:06 +08:00
Jun Pataleta 20d47f1b5f MDL-62395 tool_dataprivacy: Purpose name and description in one column
* Show the purpose's name and description under one column.
2018-10-05 09:21:22 +08:00
Jun Pataleta a779b53b2f MDL-62395 bootstrapbase: Add more w-XX classes for BS4 compatibility
I added w-25, w-50 and w-75.
2018-10-05 09:21:22 +08:00
Jun Pataleta 7e0e5b02c5 MDL-62395 tool_dataprivacy: Use BS4 table classes
* Use standard Bootstrap4 table classes for the categories and purposes
  tables.
* Set w-25 for the name and description columns of the purposes table.
* Set w-50 for the description column of the categories table.
* Set a minimum width for the actions column of these tables.
2018-10-05 09:21:22 +08:00
Jun Pataleta 054937e378 Merge branch 'MDL-35788-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-04 12:45:43 +08:00
Jun Pataleta a8e4094570 MDL-63528 auth: Behat scenario for "Remember username" display 2018-10-04 12:24:39 +08:00
Jun Pataleta 78cee5d64c MDL-63528 auth: Show "Remember username" on login form only when needed 2018-10-04 11:43:22 +08:00
Andrew Nicols 4d5cb2751b MDL-35788 mod_forum: Move post creation fetch 2018-10-04 11:41:48 +08:00
AMOS bot 9890340b21 Automatically generated installer lang files 2018-10-04 00:07:22 +00:00
Eloy Lafuente (stronk7) 9cd03b8b63 Merge branch 'MDL-63141-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-04 00:24:21 +02:00
Eloy Lafuente (stronk7) 15ce896d08 Merge branch 'MDL-63142-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-04 00:18:45 +02:00
Eloy Lafuente (stronk7) 2d6d31fcb7 Merge branch 'MDL-63143-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-10-04 00:02:34 +02:00
David Monllao 44c460c6be Merge branch 'MDL-62558-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-10-03 17:16:01 +02:00
Adrian Greeve 8855e0041d MDL-62558 tool_dataprivacy: Create a summary page for users. 2018-10-03 10:38:12 +08:00
Jun Pataleta 1209d00d26 Merge branch 'MDL-35788-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-10-03 10:13:08 +08:00
Eloy Lafuente (stronk7) 084180ba7d Merge branch 'MDL-60685-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-10-03 00:24:08 +02:00
Eloy Lafuente (stronk7) 0a11a740b3 Merge branch 'MDL-63435-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-10-02 23:48:17 +02:00
Juan Leyva 86196f93fb MDL-63225 webservice: Return proper debuginfo on WS exceptions
In order to make developers easy, we should give some clues about the type of the data generating exceptions.
2018-10-02 13:15:24 +02:00
Andrew Nicols 7a2eac678c Merge branch 'MDL-63493-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-10-02 11:41:36 +08:00
Jun Pataleta 9af75abf69 MDL-63493 core_message: Fix field parameters for the index definitions
* The fields for the ID number-related indexes that were created for
  the messages and message_user_actions tables in MDL-36941 should not
  be in comma-separated strings.
2018-10-02 11:34:06 +08:00
Andrew Nicols 1c6390697e MDL-35788 forum: Show post creation time not modified 2018-10-01 08:16:56 +08:00
David Herney 9b40d154ff MDL-63323 course: Fixed wrong classes key in activity_navigation class
Replaced "classes" by "class" attribute, when the prev and next links are builded into the activity navigation.
2018-09-27 18:42:50 -05:00
Luca Bösch aae67cd6dd MDL-63435 gradebook: let activity icons re-appear. 2018-09-27 18:17:50 +02:00
Eloy Lafuente (stronk7) 5211af1658 weekly release 3.5.2+ 2018-09-27 15:18:00 +02:00
Eloy Lafuente (stronk7) 663de3c3e6 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-09-27 15:17:57 +02:00
Eloy Lafuente (stronk7) b469c777ed Merge branch 'MDL-63113-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-09-26 12:28:12 +02:00
Bas Brands e8954b775d MDL-63113 theme boost: initialsbar wrapping 2018-09-26 10:55:40 +02:00
Eloy Lafuente (stronk7) 5802130950 Merge branch 'MDL-61981-35_nestedmath' of git://github.com/Mankro/moodle into MOODLE_35_STABLE 2018-09-25 23:40:42 +02:00
Eloy Lafuente (stronk7) 140e251310 Merge branch 'MDL-62279-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-09-25 23:26:28 +02:00
Eloy Lafuente (stronk7) 359a6c32e8 Merge branch 'MDL-62714-35-boost_course_visibility_in_navbar' of https://github.com/fskandalis/moodle into MOODLE_35_STABLE 2018-09-25 23:19:34 +02:00
Eloy Lafuente (stronk7) 9cd49fbad4 Merge branch 'MDL-60028-35' of https://github.com/paulholden/moodle into MOODLE_35_STABLE 2018-09-25 16:58:36 +02:00
David Monllao 713385769d Merge branch 'MDL-63119-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-09-25 12:36:29 +02:00
David Monllao 5874ac4f4a Merge branch 'MDL-62930-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-09-25 12:28:15 +02:00
David Monllao 9708b6e9b3 Merge branch 'MDL-62717-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-09-25 12:18:54 +02:00
Andrew Nicols 16c5c24d19 Merge branch 'MDL-63346_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-09-25 08:50:30 +08:00
Eloy Lafuente (stronk7) 57b938da30 MDL-63020 tests: ensure that searching for is null values also works ok 2018-09-24 17:41:47 +02:00
Tim Hunt ce774c66a1 MDL-63020 dml: improve the unit tests 2018-09-24 17:41:47 +02:00
Eloy Lafuente (stronk7) d82567eb7f Merge branch 'MDL-63020_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-09-24 17:40:10 +02:00
AMOS bot a0f1d5f0eb Automatically generated installer lang files 2018-09-22 00:07:34 +00:00
Paul Holden e273e709bf MDL-60028 enrol: fix counting of enrolled users in a given context.
Previously users enrolled in a course via multiple enrolment methods
would be counted multiple times.
2018-09-21 10:21:42 +01:00
Tim Hunt ade905e248 MDL-63020 ddl: fix nullable unique indexes in OCI and MS SQL
This works-around the default non-standard behaviour of these DB engines.
2018-09-20 17:50:28 +01:00
Tim Hunt 8f76f17fc6 MDL-63020 xmldb: Improve PHPdoc comments for better IDE autocomplete 2018-09-20 17:50:26 +01:00
Luca Bösch a93eb1182e MDL-62717 forum: Create announcements forum with HTML format intro. 2018-09-20 17:47:20 +02:00
Markku Riekkinen e4099493ca MDL-61981 filter_mathjaxloader: add unit tests 2018-09-20 15:44:38 +03:00
Markku Riekkinen 71d3c750eb MDL-61981 filter_mathjaxloader: nested math environments
The MathJax filter used to break mathematics if inline math was
used inside display math. Nolink spans were added around
the inline math even though it was nested inside another math
environment. This fix is aware of the nesting so that the spans
may be inserted only at the outer math environment. No regular
expressions are used because they do not support detecting
arbitrary, unlimited nesting of parentheses in the text, which
is now needed.
2018-09-20 15:44:02 +03:00
Eloy Lafuente (stronk7) 02a31d5f96 weekly release 3.5.2+ 2018-09-20 12:12:10 +02:00
Eloy Lafuente (stronk7) 906525ce89 MDL-63346 nodejs: Bump to created from scratch shrinkwrap file
Steps:

- remove node_modules & npm-shrinkwrap.json
- npm cache clear --force
- npm install
- npm shrinkwrap
2018-09-20 10:52:41 +02:00
Eloy Lafuente (stronk7) 9a74362a48 MDL-63346 travis: GRUNT job immune to npm-shrinkwrap.json changes
When upgrading nodejs/npm versions, there are modifications to
different packages or to the format of the npm-shrinkwrap.json
file. Usually that leads to failed jobs untill the bundled file
is updated.

To avoid that, we just ignore the npm-shrinkwrap.json file, so
just the REAL modifications in css/js/ignore stuff are considered.
2018-09-20 10:47:50 +02:00
David Monllao 8682e82694 Merge branch 'MDL-63140-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-09-19 13:31:16 +02:00
Shamim Rezaie eeef0230ef MDL-63140 mod_glossary: Check if the module is visible to the user 2018-09-19 21:27:54 +10:00
Shamim Rezaie 71ae8603f5 MDL-63140 mod_glossary: Add userid param to glossary calendar callbacks 2018-09-19 21:27:54 +10:00
David Monllao de8c8a4f81 Merge branch 'MDL-63135-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-09-19 13:13:10 +02:00
Eloy Lafuente (stronk7) d2bceb2031 Merge branch 'MDL-63116-35-1' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-09-18 23:48:12 +02:00
Mihail Geshoski 9f1fd9955a MDL-61908 privacy: Fix heading in data privacy pages 2018-09-18 18:51:14 +02:00
Eloy Lafuente (stronk7) 9093ace988 Merge branch 'MDL-63109-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-09-18 18:32:04 +02:00
David Monllao 7c0ecc11e7 Merge branch 'MDL-63138-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-09-18 16:41:29 +02:00
David Monllao 4e6ec59f8c Merge branch 'MDL-63139-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-09-18 16:38:00 +02:00
David Monllao a266d8a24f Merge branch 'MDL-63117-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-09-18 16:34:30 +02:00
David Monllao 1d67ef4cc7 Merge branch 'MDL-63333_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-09-18 12:18:54 +02:00
Mihail Geshoski 39116eeac9 MDL-63109 privacy: Add behat tests 2018-09-18 15:07:23 +08:00
Mihail Geshoski 60e45d8e0d MDL-63109 privacy: Fix the initialisation of the policy acceptance modal 2018-09-18 15:04:46 +08:00
Jun Pataleta 3135d3f048 Merge branch 'm35_MDL-63319_MySQL_MSSQL_Rename_Field_Reserved_Word' of https://github.com/scara/moodle into MOODLE_35_STABLE 2018-09-18 14:08:53 +08:00
Tim Schroeder f7035a839d MDL-63119 calendar: now showing event end in modal
When clicking on an event in the month view, a modal opens with
    information about it. That modal did previously only show the start time
    of the event. It now also shows the end (if the event has one).
2018-09-18 13:41:43 +08:00
Damyon Wiese ffdc051c71 MDL-62930 theme_boost: Remove custom-select styles
These styles cause the custom select fields to overlap their containers. See the license field in the file picker single file info dialogue for an example.
2018-09-18 08:42:35 +08:00
Eloy Lafuente (stronk7) aa5c98350f Merge branch 'MDL-58781_35' of https://github.com/aanabit/moodle into MOODLE_35_STABLE 2018-09-17 23:43:22 +02:00
Eloy Lafuente (stronk7) 206285819c Merge branch 'MDL-63009-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-09-17 23:30:41 +02:00
Eloy Lafuente (stronk7) 31867d8880 Merge branch 'MDL-63184-35-2' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-09-17 23:11:36 +02:00
Eloy Lafuente (stronk7) d4e17846f6 Merge branch 'MDL-63371_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-09-17 23:09:28 +02:00
Eloy Lafuente (stronk7) e34e5486cf Merge branch 'MDL-63354-35' of https://github.com/HuongNV13/moodle into MOODLE_35_STABLE 2018-09-17 23:06:47 +02:00
Jun Pataleta d283cf2cee MDL-63184 tool_dataprivacy: Ensure PO roles have correct capability 2018-09-17 22:35:23 +08:00
David Monllao 3a832ad75e Merge branch 'MDL-62554-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-09-17 13:45:50 +02:00
Eloy Lafuente (stronk7) 9cab25219d Merge branch 'MDL-63215-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-09-17 10:43:07 +02:00
Mark Nelson ff5ec88a55 MDL-63333 core: removed unused setting 'messaginghidereadnotifications' 2018-09-17 10:04:55 +08:00
Mihail Geshoski 996090515e MDL-63116 privacy: Add bulk actions to the privacy request table 2018-09-17 08:19:28 +08:00
Mihail Geshoski 6d682a5e5f MDL-63116 privacy: Add behat tests 2018-09-17 08:19:28 +08:00
Mihail Geshoski b7c157aeb2 MDL-63116 privacy: Add unit tests 2018-09-17 08:19:27 +08:00
Michelle Melton 5e1b7e4d28 MDL-63215 block_rss_client: Escaping tags in RSS entries 2018-09-16 23:47:36 +02:00
Matteo Scaramuccia d408738313 MDL-63319 ddl: Added getRenameFieldSQL() coverage 2018-09-14 22:43:03 +02:00
Matteo Scaramuccia 3702ecbe48 MDL-63319 ddl: Improved rename_field() coverage
DB API should allow to rename fields, including renaming
those columns named using a reserved word.
2018-09-14 22:43:03 +02:00
Matteo Scaramuccia 6e73318877 MDL-63319 ddl: MSSQL should rename reserved words 2018-09-14 22:36:31 +02:00
Matteo Scaramuccia d3931b12d2 MDL-63319 ddl: MySQL should rename reserved words 2018-09-14 22:36:31 +02:00
Tim Hunt 8f95b79590 MDL-63371 question: USE_RAW_DATA case in check_qt_var_name_restrictions 2018-09-14 16:44:31 +01:00
Amaia Anabitarte f426155996 MDL-58781 mod_feedback: Inconsistency in analysis exported to excel 2018-09-14 12:37:17 +02:00
Shamim Rezaie a7ee1a75e5 MDL-63143 mod_lesson: Check if the module is visible to the user 2018-09-14 20:35:43 +10:00
Shamim Rezaie a756b01f52 MDL-63143 mod_lesson: Add userid param to mod_lesson calendar callbacks 2018-09-14 20:35:43 +10:00
Eloy Lafuente (stronk7) 9c1fc95578 weekly release 3.5.2+ 2018-09-14 11:06:55 +02:00
Shamim Rezaie 5e8396aa71 MDL-63142 mod_label: Check if the module is visible to the user 2018-09-14 17:55:57 +10:00
Shamim Rezaie 0d20375579 MDL-63142 mod_label: Add userid param to mod_label calendar callbacks 2018-09-14 17:55:56 +10:00
Shamim Rezaie 412697a70f MDL-63141 mod_imscp: Check if the module is visible to the user 2018-09-14 17:54:24 +10:00
Shamim Rezaie c0bb26aaf9 MDL-63141 mod_imscp: Add userid param to mod_imscp calendar callbacks 2018-09-14 17:54:24 +10:00
Huong Nguyen fee8383edc MDL-63354 Group: Rollover text on long group names is not consistent 2018-09-14 09:44:26 +07:00
Eloy Lafuente (stronk7) 29eb2d47be MDL-61169 iplookup: Change to another block still remaining to SF 2018-09-13 19:06:44 +02:00
Jun Pataleta d82e50f0a9 MDL-62554 tool_dataprivacy: Integration review fixes 2018-09-13 14:49:45 +08:00
Michael Hawkins ee1e93d511 MDL-63009 tool_dataprivacy: Added site name/link to request emails 2018-09-12 17:45:49 +08:00
Jun Pataleta aed6a3f001 MDL-62294 lib: Take note of cherry-picked upstream commit
* Make a note of the applied upstream patch in
  lib/lessphp/moodle_readme.txt which fixes the PHP 7.2 compatibility
  issue when counting ruleset rules.
2018-09-12 16:47:21 +08:00
Michaël Marinetti 3446e3a257 MDL-62294 lessphp: Fix for PHP 7.2 compatibility
From upstream commit:
https://github.com/oyejorge/less.php/commit/669acc51817a8da162b5f1b7137e79f0e4acc636
2018-09-12 16:47:21 +08:00
Jun Pataleta 385caa2e24 Merge branch 'mdl63321-moodle35' of https://github.com/tlock/moodle into MOODLE_35_STABLE 2018-09-12 15:33:48 +08:00
Jun Pataleta 7f08932a68 Merge branch 'MDL-63231-set-default-value-for-int-param-MOODLE_35' of https://github.com/guillalva06/moodle into MOODLE_35_STABLE 2018-09-12 09:59:36 +08:00
Jun Pataleta 4540e074bc Merge branch 'MDL-50314_35' of git://github.com/do-you-even-curl/moodle into MOODLE_35_STABLE 2018-09-12 09:43:35 +08:00
Eloy Lafuente (stronk7) d05c1e47db Merge branch 'MDL-63130_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-09-11 23:56:33 +02:00
Eloy Lafuente (stronk7) 442e48c4f2 Merge branch 'MDL-63136-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-09-11 23:52:11 +02:00
Eloy Lafuente (stronk7) 8235feb1ec Merge branch 'MDL-62528-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-09-11 23:05:30 +02:00
Guillermo Alvarez 5b75de57f2 MDL-63231 filepicker: Skype validation for null values
In file_get_all_files_in_draftarea function an integer could get
a null value so it is necessary to execute this function only
when is called with a valid integer value.
2018-09-11 09:04:55 -05:00
Fotis Skandalis 11334441a8 MDL-62714 theme_boost: Course visibility in navigation bar
Added check in navbar.mustache to add dimmed_text class if needed.
Added is_hidden() in navigationlib.php to return if the class needs
to be added.
2018-09-10 17:06:22 +03:00
Jun Pataleta e7a3f9b34a MDL-62554 tool_dataprivacy: Bump version for new WS functions 2018-09-10 12:23:51 +08:00
Jun Pataleta 646c0464ec MDL-62554 tool_dataprivacy: Fix display of activity options 2018-09-10 12:22:54 +08:00
Jun Pataleta 6c48400b67 MDL-62554 tool_dataprivacy: Fix template for Bootstrapbase compatibility 2018-09-10 12:22:54 +08:00
Jun Pataleta 4c6cc6c42a MDL-62554 tool_dataprivacy: Remove defaults form
With the changes in this issue, this form is no longer being used.
2018-09-10 12:22:54 +08:00
Jun Pataleta fbbfd84803 MDL-62554 tool_dataprivacy: Behat tests for managing registry defaults
* Also new step definitions and generator for:
  - Creating categories and purposes
  - Assigning category and purpose to context instances.
2018-09-10 12:22:54 +08:00
Jun Pataleta 1e9477e238 MDL-62554 tool_dataprivacy: Unit tests for new WS/API functions 2018-09-10 12:22:54 +08:00
Jun Pataleta 701f3fdb5c MDL-62554 tool_dataprivacy: Fix fetching of default contexts
* We also need to handle default contexts for activities. If defaults
  for an activity is set, fetch that. If not, fetch the defaults for
  the context level.
2018-09-10 12:22:54 +08:00
Jun Pataleta 8a45db9903 MDL-62554 tool_dataprivacy: Allow setting of activity defaults
* Allow the setting of data registry defaults for activity modules.
* Rewrite the defaults page so that it uses templates.
* Use a tabbed layout for the defaults page that shows the default
  category and purpose per context level.
* New API and web service functions that enables the setting of the
  defaults.
2018-09-10 12:22:54 +08:00
Tim Lock e0d05a355a MDL-63321 block: Fix warning in Calendar month block after MDL-60587 2018-09-10 07:44:38 +09:30
Eloy Lafuente (stronk7) bd27666c42 Moodle release 3.5.2 2018-09-08 16:49:53 +02:00
AMOS bot d1787723db Automatically generated installer lang files 2018-09-08 00:07:35 +00:00
Tim Schroeder 408b3e0952 MDL-50314 mod_quiz: removed hardcoded export columns
* The columns 'institution', 'department' and 'email' are no longer
  automatically included in all quiz result exports.
* These columns can still be used, but have to be configured under
  'showuseridentity'.
2018-09-07 14:18:06 +02:00
Shamim Rezaie 7e973b26de MDL-63139 mod_forum: Check if the module is visible to the user 2018-09-07 16:56:30 +10:00
Shamim Rezaie a82893ac5f MDL-63139 mod_forum: Add userid param to mod_forum calendar callbacks 2018-09-07 16:56:30 +10:00
Shamim Rezaie a027e6dfdc MDL-63138 mod_folder: Check if the module is visible to the user 2018-09-07 15:06:28 +10:00
Shamim Rezaie 275a590d6b MDL-63138 mod_folder: Add userid param to mod_folder calendar callback 2018-09-07 15:06:28 +10:00
Jun Pataleta 7ba9f14fe0 weekly release 3.5.1+ 2018-09-07 11:12:45 +08:00
Jun Pataleta 0d70e9b8e9 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-09-07 11:12:29 +08:00
Shamim Rezaie 168028b097 MDL-63136 mod_data: Check if the module is visible to the user 2018-09-06 20:19:58 +10:00
Shamim Rezaie 77a2e5621f MDL-63136 mod_data: Add userid param to mod_chat calendar callbacks 2018-09-06 20:19:58 +10:00
Mark Nelson af142c1c2d MDL-63130 core_message: add unit test 2018-09-06 18:17:47 +08:00
Pavel Sokolov 6e2fc5e5e1 MDL-63130 message: message_count_unread_message counts sent messages 2018-09-06 18:17:47 +08:00
Shamim Rezaie e64487ed57 MDL-63135 mod_choice: Check if the module is visible to the user 2018-09-06 20:15:03 +10:00
Shamim Rezaie a2b7e585b2 MDL-63135 mod_choice: Add userid param to mod_choice calendar callback 2018-09-06 20:15:03 +10:00
Shamim Rezaie b223dc24a6 MDL-63135 mod_choice: Added choice_get_user_response function
A new function to return choice answers records of a given user in a given choice activity.
2018-09-06 20:15:03 +10:00
Shamim Rezaie b3da43961a MDL-63117 mod_book: Check if the module is visible to the user 2018-09-06 17:46:10 +10:00
Shamim Rezaie edeaac4f7e MDL-63117 mod_book: Add userid param to mod_book calendar callbacks 2018-09-06 17:46:10 +10:00
Jake Dallimore 432d3cc846 MDL-62947 mod_feedback: fix feedback so it correctly uses forms API
Feedback code was doing the following, which is incompatible with the
sec-patched quickforms lib:
- appending '[0]' to non-group element names, meaning type checks in
getCleanType() were falling back to PARAM_RAW instead of PARAM_INT,
and meaning _findValue() was comparing elements it thought to be arrays
with scalar submit values (worked with eval() implementation as the 0th
element of a string was the character, but not working when patched).
- external unit tests incorrectly testing multichoice questions in the
process_page tests - patched lib highlighted failures.

It was also doing the following:
- actively setting null as default element values instead of 0 for
radio buttons and dropdowns (for 'not selected'). This is incompatible
with more recent quickforms lib (see MDL-63070).
- creating groups using addElement instead of addGroup - not recommended

This patch addresses the above.
2018-09-05 12:13:28 +08:00
Jake Dallimore 59de100b8b MDL-62947 core_form: fix remote code execution exploit in QuickForms
Applies the patch found upstream:
https://github.com/pear/HTML_QuickForm/commit/
d3a6d5c44dedf3c164c6c79198e4ef479bcedcd2 and make util methods static
for php7 compatibility.
2018-09-05 12:13:28 +08:00
AMOS bot f1e0f1c194 Automatically generated installer lang files 2018-09-05 00:07:29 +00:00
Damyon Wiese 444d046f9e MDL-62748 course: maxsections is a limit
For course formats shipped with core, maxsections should be a limit to the number of sections
allowed in the course.
2018-09-04 22:41:46 +02:00
Mihail Geshoski 64722afd45 MDL-62857 theme_boost: Better filtering on navbar / breadcrumbs 2018-09-04 22:41:46 +02:00
Tim Hunt be092b7309 MDL-62880 qtype_ddwtos: drop support for legacy import format
It was more than 8 years since we wrote in that format.
2018-09-04 22:41:46 +02:00
Eloy Lafuente (stronk7) 005b2bc8a0 Merge branch 'MDL-63249-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-09-04 22:35:03 +02:00
Helen Foster f4bd5f5e1a MDL-63249 lang: Merge English strings from the en_fix language pack
Significant string changes:

* completionpass_help, gradetopassnotset in mod_quiz - grade to pass
  set in quiz settings not gradebook
* namecolumnmissing,core_cohort - fixing incorrect message about adding
  users to a cohort
2018-09-04 15:12:17 +02:00
David Monllao 1a8342d9d4 Merge branch 'MDL-62342-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-09-04 14:34:07 +02:00
Neill Magill 6a87753e12 MDL-62944 calendar: Clarify the intended use of $checkcapability 2018-09-04 12:19:12 +02:00
David Monllao 1d16496ee6 Merge branch 'MDL-62944-m35' of https://github.com/NeillM/moodle into MOODLE_35_STABLE 2018-09-04 12:15:50 +02:00
David Monllao e7dc32ad80 Merge branch 'MDL-55993-35' of https://github.com/albertolarah/moodle into MOODLE_35_STABLE 2018-09-04 10:53:23 +02:00
Jun Pataleta fde541a1eb Merge branch 'MDL-60901_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-09-04 10:17:36 +08:00
Dan Poltawski 95ee02b253 MDL-48846 filter: Stop reffering to invalid moodle.org/download/mimetex 2018-09-03 23:45:05 +02:00
Eloy Lafuente (stronk7) f562290f78 Merge branch 'MDL-61325-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-09-03 23:33:52 +02:00
Eloy Lafuente (stronk7) 1273a6665b Merge branch 'MDL-63255-35' of git://github.com/vmdef/moodle into MOODLE_35_STABLE 2018-09-03 23:31:10 +02:00
Eloy Lafuente (stronk7) 74ea4a91e1 Merge branch 'MDL-62848-35-placeholderwidth' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-09-03 23:01:49 +02:00
David Monllao d035bebb1e Merge branch 'MDL-38301-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-09-03 12:44:57 +02:00
Alberto Lara Hernández 4c51211800 Merge branch 'MDL-55993-35' of https://github.com/albertolarah/moodle into MDL-55993-35 2018-09-03 12:34:14 +02:00
Alberto Lara Hernández 61edefee12 MDL-55993 mod_assign: web services don´t set a URL. 2018-09-03 12:34:09 +02:00
David Monllao 304bd3b26b Merge branch 'MDL-55744-35_atto_should_not_autosave_on_not_loggedin_users' of https://github.com/dravek/moodle into MOODLE_35_STABLE 2018-09-03 12:27:57 +02:00
Eloy Lafuente (stronk7) 57c5494741 MDL-60901 environment: 3.6 requirements
Changes include:
- MySQL 5.6 is required.
- PostgreSQL 8.4 is required.
- Oracle 11.2 is required.
- 64bits architecture is recommended.
2018-09-03 10:14:51 +02:00
Víctor Déniz Falcón f1019f4616 Merge branch 'MDL-63255-35' of git://github.com/vmdef/moodle into MDL-63255-35-test 2018-09-03 06:56:27 +01:00
Mihail Geshoski bbdb62fffe MDL-62342 privacy: Fix strings used in the consent on behalf modal 2018-09-03 13:00:04 +08:00
Mihail Geshoski cce2977770 MDL-62342 privacy: Use singular/plural form in labels 2018-09-03 13:00:04 +08:00
Mihail Geshoski 60357a5551 MDL-56998 blog: Remove associated blog posts when module is deleted 2018-09-03 08:37:19 +08:00
AMOS bot ce5ea7e187 Automatically generated installer lang files 2018-09-02 00:07:27 +00:00
AMOS bot 36b7d0471c Automatically generated installer lang files 2018-09-01 00:07:28 +00:00
David Mudrák 580a0918b4 MDL-62848 form: Fix width of the autocomplete input field
Make sure that the autcomplete input field is wide enough to display the
placeholder text.
2018-08-31 14:55:08 +02:00
David Mudrák 6aaf582982 MDL-62848 form: Fix missing support for {{#js}} helper in autocomplete
The form-autocomplete module uses three Mustache templates
core/form_autocomplete_input, core/form_autocomplete_suggestions and
core/form_autocomplete_selection. However, it did not support executing
the JS that is eventually part of those templates.
2018-08-31 14:55:08 +02:00
Simey Lameze d6cbf8b8fb MDL-62944 calendar: Fix actionevent logic on template
During the calendar work, we have added the feature of
drag and drop activity event or "action events".

The problem at that time was, action events could not be
editable through the calendar UI, but should be allowed
to drag and drop. So, we couldn't use the return of
calendar_edit_event_allowed() because it can return true
(in case of teachers, that have permission to change the
activity) and the attribute isactionevent was created to
control on the UI if the user is viewing an action event.

So what my patch does is just add the check if we are
viewing an action event, and in this case, it won't display
the cog to edit that event.
2018-08-31 10:17:53 +01:00
Neill Magill e760287046 MDL-62944 activities: Activities should not require capability
Activities should not require the user manipulating them to have
calendar capabilities for their events to be added to the Moodle
calendar
2018-08-31 10:17:53 +01:00
Neill Magill f0b924f980 MDL-62944 activities: Test adding activities with no calendar capability 2018-08-31 10:17:53 +01:00
Neill Magill 1260ed9e33 MDL-62944 completion: Calendar capabilities should not be required
The completion API should not require a user to have the capability to
add calendar events for it to function correctly.
2018-08-31 10:17:52 +01:00
Neill Magill 79df6aee8c MDL-62944 completion: Test that completion dates add events to calendar
When a user does not have calendar capabilities completion dates should
still be created correctly.
2018-08-31 10:17:52 +01:00
Neill Magill ee9c931987 MDL-62944 mod_data: Action menu missing from database pages
The action menu was missing from many of the database activity pages,
which meant that it could not be accessed until enough had been done to
the activity to make the editing tabs that used view.php accessible.
2018-08-31 10:17:52 +01:00
Eloy Lafuente (stronk7) 01389839df weekly release 3.5.1+ 2018-08-30 19:04:28 +02:00
Eloy Lafuente (stronk7) 88a78e9307 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-08-30 19:04:25 +02:00
Dan Marsden 99e51855a6 MDL-61325 use correct value when looking for string. 2018-08-30 09:11:15 +08:00
AMOS bot 5263019b3a Automatically generated installer lang files 2018-08-30 00:08:05 +00:00
Eloy Lafuente (stronk7) 442dc8270a MDL-63165 question: Bump expected size of question exports (take II) 2018-08-29 14:39:07 +02:00
Jake Dallimore dab8d7a0dc Merge branch 'MDL-63165-35-fix' of https://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-08-29 12:33:43 +08:00
Andrew Nicols 9f256a8380 MDL-63165 question: Bump expected size of question exports 2018-08-29 10:46:00 +08:00
Eloy Lafuente (stronk7) 6f0614ef19 Merge branch 'MDL-63094-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-08-29 00:20:29 +02:00
Eloy Lafuente (stronk7) 43dfc84482 Merge branch 'MDL-62914-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-08-28 23:16:31 +02:00
Victor Deniz 5a7e921f70 MDL-63255 core_user: fix hardcoded sql table aliases 2018-08-28 11:55:17 +01:00
David Monllao 0220cc4bdf Merge branch 'wip-MDL-63165-35' of https://github.com/Beedell/moodle into MOODLE_35_STABLE 2018-08-28 12:28:39 +02:00
Jake Dallimore d470ef4c27 Merge branch 'MDL-63101-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-08-28 16:55:53 +08:00
Andrew Nicols efecaa34a4 Merge branch 'MDL-62782-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-28 07:07:37 +08:00
Eloy Lafuente (stronk7) 11694360bd Merge branch 'MDL-62989-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-08-27 17:51:30 +02:00
Jun Pataleta 060e39220c MDL-63187 tool_dataprivacy: Behat fixes for confirmation lang strings 2018-08-27 22:44:35 +08:00
David Monllao e016281821 Merge branch 'MDL-63174-35-emptyusername' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-08-27 15:09:04 +02:00
David Monllao 2267c9fe7f Merge branch 'MDL-63179-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-08-27 12:22:46 +02:00
David Monllao 8bcca194ce MDL-63187 tool_dataprivacy: Update delete purpose and category lang strings 2018-08-27 12:12:04 +02:00
David Monllao 9bb1a66c3c Merge branch 'MDL-63187-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-08-27 11:58:04 +02:00
David Monllao 627b0a7a45 Merge branch 'MDL-63210_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-08-27 11:46:56 +02:00
David Monllao f873ff9ad2 Merge branch 'MDL-62867-35-missing_colon_in_query' of https://github.com/bitumin/moodle into MOODLE_35_STABLE 2018-08-27 11:22:39 +02:00
Andrew Nicols 0dfef1313f Merge branch 'MDL-53024-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-27 15:46:34 +08:00
Damyon Wiese e647f49fe4 MDL-53024 assign: Remove incorrect logic in query
We are simplifying this query so it will return grades if the attempt matches
the submission attempt, or there is no submission. The case where there is a grade
but no submission can happen only for group assignments.
2018-08-27 15:41:12 +08:00
Zig Tan 088f6b973a MDL-38301 mod_assign: Fix date validation logic & message consistency 2018-08-27 15:33:21 +08:00
Andrew Nicols 3c613eb0f9 MDL-63101 cache: Improve accuracy of cache event invalidation 2018-08-27 14:44:11 +08:00
John Beedell 05403f4989 MDL-63165 Question: xml import of question categories 2018-08-24 16:10:07 +01:00
Alberto Lara Hernández a0a10c4d4c MDL-55993 mod_assign: web services don´t set a URL. 2018-08-24 16:33:48 +02:00
Mitxel Moriana f92552d372 MDL-62867 tags: Fix missing colon in sql placeholder
Due to a missing colon in an sql query field value placeholder
the calculation of the ordering field for a newly added tag
was ignoring itemid.
2018-08-24 15:03:13 +02:00
Luca Bösch 769987cf28 MDL-63179 enrol_self: String and @return tag corrected. 2018-08-24 13:38:08 +02:00
Mihail Geshoski 3bee541afc MDL-62989 privacy: Improve data request order for users 2018-08-24 15:33:19 +08:00
Jake Dallimore 069bf5a9dd weekly release 3.5.1+ 2018-08-24 13:08:59 +08:00
Mark Nelson b5c2fef399 MDL-63210 core: convert for loop to forEach in JS 2018-08-24 11:34:17 +08:00
Jun Pataleta 6c5b701bb5 MDL-63187 tool_dataprivacy: Improve confirm message lang strings
* Updated the delete confirmation messages so that the category/purpose
names are shown in italics. This makes it easier for the privacy officer
to see the category/purpose that is being deleted.
2018-08-23 16:54:24 +08:00
Jun Pataleta 696e063e65 MDL-63187 tool_dataprivacy: Behat tests for purposes/categories CRUD 2018-08-23 16:54:24 +08:00
Jun Pataleta 0807b60603 MDL-63187 tool_dataprivacy: Fix delete button text
* No need to add the purpose/category name for the delete button itself
* Fix delete confirmation lang strings.
* Add button titles to Add purpose/category buttons so they can be
  clicked on when running Behat tests.
2018-08-23 16:54:24 +08:00
Mark Nelson 2e7dbfaabb MDL-63210 core: touch-up after review
1. Reworded the string.
2. Removed logic handling form data.
3. Do not use window.location.replace.

Backport of MDL-54551.
2018-08-23 12:38:57 +08:00
Thom Rawson d6e31537bc MDL-63210 core: AJAX call redirects to login page when session expired
Backport of MDL-54551.
2018-08-23 12:36:47 +08:00
Jake Dallimore d01d3d8eef MDL-36255 core_grade: fix to ensure correct context used for filters
Some grade object (outcomes,scales) can be created at site or course
context, so this patch just makes sure we use the respective context
when applying format_string to the name in the get_name() function.
2018-08-22 17:57:24 +08:00
Andrew Nicols 7ac4ad9a8b MDL-63094 tool_policy: Fix the cookie banner to the bottom
Floating banners cause issues with clickability in Behat as it is unable
to understand that it cannot interact with the elements underneath the
floating banner, or that it needs to scroll the page so that the
required content is no longer beneath the floating banner.

Changing the banner to be fixed to the bottom of the page during Behat
runes is a reliable fix.
2018-08-22 11:00:08 +08:00
Andrew Nicols 9d349b8170 MDL-63094 js: Do not check visibility before hiding backdrop
It's possible for the backdrop to be created during the show, before the
modal is actually fully shown.

This check is unnecessary because the getBackdrop() function always
returns a value and will always succeed.
2018-08-22 10:27:27 +08:00
Andrew Nicols bd20ed1a7c MDL-63094 tool_policy: Fix race condition in modal display
The way in which the modal was displayed meant that there were no
pending JS items, whilst the modal was rendered, causing random behat
fails.

This JS has been restructured to create the Modal and pass it a set of
Promises for both the title, and body.
2018-08-22 10:24:04 +08:00
Henning Bostelmann f5d6dcfd06 MDL-62914 Calendar: handle TZURL iCal property 2018-08-22 10:11:03 +08:00
Andrew Nicols 466ae79141 Merge branch 'MDL-62660_35' of https://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-08-22 08:03:36 +08:00
Eloy Lafuente (stronk7) 821001ce9c MDL-62660 xmldb: fix tool_dataprivacy_request_>status to int(2)
So the new defined statuses fit in the column for all databases.
2018-08-22 00:02:27 +02:00
Jake Dallimore ac7cf1cfeb Merge branch 'MDL-36255-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-08-21 16:06:31 +08:00
Jake Dallimore f2057a1115 Merge branch 'MDL-62534-35' of https://github.com/mackensen/moodle into MOODLE_35_STABLE 2018-08-21 11:44:20 +08:00
Andrew Nicols 61c36e125e Merge branch 'MDL-62660-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-08-21 11:10:45 +08:00
Jun Pataleta 629c7f75b3 MDL-62660 tool_dataprivacy: Behat fix for data deletion 2018-08-21 10:37:56 +08:00
Jun Pataleta bdefa64956 MDL-62660 tool_dataprivacy: CI fixes 2018-08-21 09:31:25 +08:00
Charles Fulton bfc047cef0 MDL-62534 course formats: do not purge empty sections on upgrade 2018-08-20 09:15:24 -04:00
Michael Hawkins 9c9227995c MDL-62660 tool_dataprivacy: Behat additions for deletion and data expiry 2018-08-20 16:28:03 +08:00
Michael Hawkins 3a69718c58 MDL-62660 tool_dataprivacy: Add and update PHPUnit tests
Updated tests with latest statuses.
Added testing for request download expiry functionality and method.
Added assign_site_dpo within a parent class for unit tests.
2018-08-20 16:28:03 +08:00
Michael Hawkins cb8a553af9 MDL-62660 tool_dataprivacy: Add scheduled task to expire data requests 2018-08-20 16:28:03 +08:00
Michael Hawkins 83dc898b00 MDL-62660 tool_dataprivacy: Add ability to expire data requests
Also replaced Completed status with situation specific statuses.
Also improved UX on request pages in line with expiries and the aadditional statuses.
2018-08-20 16:27:45 +08:00
Andrew Nicols 3e6e80f96f MDL-62660 tool_dataprivacy: Add method for unit tests to run adhoc tasks 2018-08-20 15:32:41 +08:00
Luca Bösch 1b052996ff MDL-36255 grades: allow multilang filters in grades 2018-08-20 08:33:18 +02:00
Jake Dallimore e516332576 Merge branch 'MDL-63097_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-08-20 13:52:25 +08:00
Andrew Nicols 50615d7105 Merge branch 'MDL-63176-35' of https://github.com/spvickers/moodle into MOODLE_35_STABLE 2018-08-20 11:17:08 +08:00
Jake Dallimore 867e35d77f Merge branch 'MDL-57741-35' of git://github.com/cescobedo/moodle into MOODLE_35_STABLE 2018-08-20 10:12:06 +08:00
Eloy Lafuente (stronk7) 72337efdf7 weekly release 3.5.1+ 2018-08-17 17:37:48 +02:00
Eloy Lafuente (stronk7) c0d8a1c3e1 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-08-17 17:37:46 +02:00
David Mudrák f6be98b942 MDL-63174 user: user_create_user to throw exception on empty username
The core API function user_create_user() did not check the case when the
given username was empty.

Also adding a missing string 'usernamelowercase' for the existing lower
case check and unit tests.
2018-08-17 13:06:25 +02:00
David Mudrák d694bf2435 MDL-63174 user: core_user_create_users to throw exception on empty names
To be consistent with the web administration UI, we should not allow to
create invalid user records with empty username, lastname or firstname
via the web services.
2018-08-17 13:06:25 +02:00
Jake Dallimore 2f58da96bb Merge branch 'MDL-62884-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-17 16:04:47 +08:00
Damyon Wiese 66f63a3bf6 MDL-62884 privacy: Additional fix for popper.js
For a table with action menus inside a scrollable region, we need to ensure
the table is at least big enough.
2018-08-17 15:13:55 +08:00
Stephen Vickers 349ac5cbd7 MDL-63176 enrol_lti: Add $COURSE to global
Ensure that capabilities using $COURSE can be parsed.
2018-08-16 22:44:18 +01:00
cescobedo 7985a77474 MDL-57741 enrol_lti: Add Launch URL to Published as LTI tools 2018-08-16 09:11:29 +02:00
AMOS bot 9df6a3972d Automatically generated installer lang files 2018-08-16 00:08:18 +00:00
Bas Brands c24997f074 MDL-62528 forum: Fixed vertical position when loading permalinks 2018-08-15 11:38:14 +02:00
Jake Dallimore 5e26c462d3 Merge branch 'MDL-63050-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-08-15 10:59:54 +08:00
Andrew Nicols bd547eb6dd Merge branch 'MDL-62600-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-08-15 08:55:13 +08:00
AMOS bot b4db1fd8ad Automatically generated installer lang files 2018-08-15 00:07:40 +00:00
Luke Carrier 8cdf03c5a9 MDL-61238 cohort: require_once all libraries 2018-08-15 00:13:12 +02:00
Eloy Lafuente (stronk7) 17567f33c9 Merge branch 'MDL-62341-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-08-15 00:06:06 +02:00
Eloy Lafuente (stronk7) 8509759768 Merge branch 'MDL-58409-35_needs_clean_in_autocomplete_element' of https://github.com/dravek/moodle into MOODLE_35_STABLE 2018-08-14 17:50:29 +02:00
Eloy Lafuente (stronk7) 20eb1297ef Merge branch 'MDL-61650-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-14 16:57:26 +02:00
Michael Hawkins ddf605c655 MDL-62600 tool_dataprivacy: Corrected availability of PO pages to admins 2018-08-14 11:30:09 +08:00
Andrew Nicols 6efc731aab Merge branch 'MDL-62643-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-14 09:12:04 +08:00
Andrew Nicols 6ea7ce8acb Merge branch 'MDL-62896-35' of git://github.com/k-holland/moodle into MOODLE_35_STABLE 2018-08-14 08:05:21 +08:00
David Monllao 74a30640d6 Merge branch 'MDL-62761-35' of https://github.com/jmvedrine/moodle into MOODLE_35_STABLE 2018-08-13 15:30:08 +02:00
David Monllao 105bfe1d95 Merge branch 'MDL-62886-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-08-13 14:25:39 +02:00
David Monllao e87bbfbe94 Merge branch 'MDL-59015-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-08-13 12:19:28 +02:00
Karen Holland 5450a19dec MDL-62896 Privacy: External plugin Additional label update. 2018-08-13 08:39:57 +00:00
Jake Dallimore 094730c7d2 Merge branch 'MDL-60114_35_radio-option-choose' of https://github.com/awagner/moodle into MOODLE_35_STABLE 2018-08-13 16:03:27 +08:00
Mihail Geshoski 76f2ed9c6a MDL-59015 blocks: Confusing View more button in course overview block 2018-08-13 08:54:03 +08:00
Mihail Geshoski 0af0d1d7f6 MDL-62341 privacy: Add behat test 2018-08-13 07:57:48 +08:00
Mihail Geshoski 6415201009 MDL-62341 privacy: Add link to previous page in viewall policies page 2018-08-13 07:57:48 +08:00
Jean-Michel Vedrine 99566b5a60 MDL-62761 lesson: wrong deadlines on index with overrides 2018-08-12 07:49:57 +02:00
Andreas Wagner 06a92988fa MDL-60114 mod_data: adding db activity lost radio field choose option 2018-08-11 07:43:32 +02:00
Luca Bösch 4202a6935e MDL-62886 boost: radio form element required icon 2018-08-10 17:11:17 +02:00
Eloy Lafuente (stronk7) 7c730dfe01 weekly release 3.5.1+ 2018-08-10 13:22:06 +02:00
Andrew Nicols 6e0f59fe32 Merge branch 'MDL-62619_35' of git://github.com/stronk7/moodle into MOODLE_35_STABLE 2018-08-10 08:45:06 +08:00
Eloy Lafuente (stronk7) 6ed9356daf MDL-63097 phpunit: decouple user lastping and session start in tests
Previously the test was assuming that the user last ping, when
accessing to a chat should match the first (enter) system message
sent to the chat. And that's ok 99% of times but, if seconds advance
between the creation of the chat_users record and the chat_messages
one, then they don't match.

So now, the assumption is not used anymore and the expectation
is the timestamp of that first (enter) system message, explicitly.
2018-08-10 02:31:59 +02:00
Eloy Lafuente (stronk7) 8539f6168e MDL-62619 privacy: Prevent action when boolean queries are involved
Before the patch, queries like:

SELECT 1 FROM dual UNION SELECT 2 FROM dual

were failing badly, with everything but the first numeric element
being ignored by the optimization.

So, being conservative, now we reduce the query being analysed,
ignoring any subquery, inline view (anything within parenthesis
in general) and, in the remaining query, if a boolean query (UNION,
MINUS, INTERSECT...) is found, we don't apply any optimization.
2018-08-09 16:16:12 +02:00
Eloy Lafuente (stronk7) 9e6ea43d93 Merge branch 'MDL-62581-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-09 00:09:21 +02:00
Andrew Nicols 6b65d96d70 Merge branch 'MDL-62993_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-08-08 13:10:59 +08:00
Eloy Lafuente (stronk7) 98e96df381 Merge branch 'MDL-62619-35-privacycontexts' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-08-08 01:03:12 +02:00
Eloy Lafuente (stronk7) 127b7446a0 Merge branch 'MDL-43334-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-08 00:16:30 +02:00
Eloy Lafuente (stronk7) a032e58de6 Merge branch 'MDL-61839-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-08-07 23:56:25 +02:00
Eloy Lafuente (stronk7) 4db39b4571 Merge branch 'MDL-61870-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-08-07 23:48:39 +02:00
Eloy Lafuente (stronk7) a9b13cfac3 Merge branch 'MDL-62750_35' of https://github.com/aanabit/moodle into MOODLE_35_STABLE 2018-08-07 17:23:51 +02:00
Eloy Lafuente (stronk7) c1d4386dd7 Merge branch 'MDL-63026_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2018-08-07 16:00:20 +02:00
David Matamoros b3065a69ed MDL-55744 EDITOR_ATTO: Now atto does not autosave for not loggedin user 2018-08-07 15:28:20 +02:00
David Matamoros aba27d5317 MDL-58409 core_form: needs clean in autocomplete element 2018-08-07 11:03:04 +02:00
Andrew Nicols 7391dfc208 Merge branch 'MDL-62798-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-08-07 13:08:54 +08:00
Andrew Nicols 6d2fedaa47 Merge branch 'wip-MDL-61424-35' of git://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2018-08-07 09:29:41 +08:00
Amaia Anabitarte 02f31bb65b MDL-62750 lang: Trim langlist setting values 2018-08-06 09:40:15 +01:00
Andrew Nicols 1e2f780503 MDL-61515 theme: Pre-compile boost 2018-08-06 15:21:50 +08:00
Andrew Nicols 57bebf7c4b Merge branch 'MDL-61515-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-08-06 15:06:04 +08:00
Andrew Nicols f940b5dcd9 Merge branch 'MDL-62996-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-08-06 12:28:03 +08:00
Mihail Geshoski 7cccc7e03a MDL-62798 repositories: Report sections by name in server repository 2018-08-06 09:56:30 +08:00
Mihail Geshoski 76483d4f45 MDL-61839 glossary: One letter search in glossary returns all entries 2018-08-06 09:47:10 +08:00
Andrew Nicols d3ef856e79 Merge branch 'MDL-62969_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-08-06 09:28:20 +08:00
Damyon Wiese 5c4aef2664 MDL-61650 assign: More consistent empty text
Consistently check for empty submissions with count_words(trim($text)).
2018-08-03 16:53:45 +08:00
Damyon Wiese ff7ec97918 MDL-62279 assign: Properly set the defaults
Before an assignment has been created, we need to use the site defaults,
not the per instance defaults for the settings.
2018-08-03 15:13:22 +08:00
Andrew Nicols 4bd4b46070 weekly release 3.5.1+ 2018-08-03 11:30:29 +08:00
Andrew Nicols 2392c10734 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-08-03 11:30:27 +08:00
Damyon Wiese 6b74d76fa9 MDL-60685 assign: Do not falsely use admin user
When an assign_grades record is automatically populated, do not use the admin user as the default grader.

This would generate false information on the assignment summary screen and send false notifications from
the admin user.
2018-08-02 14:19:59 +08:00
Damyon Wiese f86bd7ece0 MDL-61870 mod_assign: Conditionally backup groups
When group info is not backed up, do not backup assignment submissions or overrides that related to a specific group.
We are already correctly not restoring them, but it is more robust not to include them in the backup file at all.
2018-08-02 13:03:06 +08:00
Zig Tan 805417c33d MDL-61870 mod_assign: Fix/clean up imported group override duedates
Applying patch supplied from Damyon Wiese to address the root-cause
of this issue in the backup/restore logic.
2018-08-02 13:03:05 +08:00
Zig Tan 127b54ffbe MDL-61870 mod_assign: Fix/clean up imported group override duedates
- Prevent group override duedate events from being imported when groups are excluded
- Clean up any existing group override duedate events when editing assignment in upgradelib.php
- Updated lib.php unit tests
2018-08-02 13:03:05 +08:00
Andrew Nicols 8450d9948a Merge branch 'MDL-59847-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-08-02 11:40:08 +08:00
Andrew Nicols 3eca9bf311 Merge branch 'MDL-62983-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2018-08-02 11:22:50 +08:00
Andrew Nicols 6b3738bc20 MDL-63050 cachestore_redis: Update hExists to check empty 2018-08-02 11:00:27 +08:00
Andrew Nicols 1974156194 MDL-63050 redis: Make session check compatible with Redis 4.0 2018-08-02 11:00:27 +08:00
David Mudrák f0a4839154 MDL-59847 core: Fix display of hidden identity fields in user selectors
User selectors now respect the user's permission to view other users'
hidden profile fields.
2018-08-02 10:37:07 +08:00
Eloy Lafuente (stronk7) 3ab6d8ba2b Merge branch 'MDL-57666-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-08-02 01:27:55 +02:00
Eloy Lafuente (stronk7) 1d2b6c84a2 Merge branch 'MDL-62965-35-userprofilesignup' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-08-02 00:41:36 +02:00
Eloy Lafuente (stronk7) 266744a6f9 Merge branch 'MDL-59595-35-2' of git://github.com/snake/moodle into MOODLE_35_STABLE 2018-08-02 00:21:35 +02:00
Eloy Lafuente (stronk7) c3a1ccc244 Merge branch 'MDL-62977_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-08-01 16:42:10 +02:00
Jonathon Fowler 96df578e8e MDL-62983 core_user: Hold multiple filters when clicking any link 2018-08-01 12:11:13 +02:00
Eloy Lafuente (stronk7) 6cf6523cc7 Merge branch 'MDL-41847-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2018-07-31 23:50:52 +02:00
David Monllao 43eadce6fc Merge branch 'm35_MDL-58015' of https://github.com/danmarsden/moodle into MOODLE_35_STABLE 2018-07-31 13:37:11 +02:00
David Monllao 98fe6eee32 Merge branch 'MDL-59611-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-07-31 13:31:07 +02:00
David Monllao 671ad6b497 Merge branch 'MDL-44538-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-07-31 11:21:16 +02:00
Jun Pataleta 49bfb1e5f9 Merge branch 'MDL-58768-35-2' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-07-31 16:18:26 +08:00
David Monllao 000a5d0bec MDL-63026 course: Fix reference to unexisting capability 2018-07-31 08:32:00 +02:00
Shamim Rezaie 936ed6067f MDL-58768 mod_assign: Fixed incorrect version number in upgrade.php 2018-07-31 16:23:56 +10:00
Shamim Rezaie 238006f649 MDL-58768 mod_assign: Added userid param to calendar callbacks
The mod_assign_core_calendar_is_event_visible and mod_assign_core_calendar_provide_event_action
functions now accept a new parameter ($userid) so they are not always dependet to the logged in user.
2018-07-31 16:15:38 +10:00
Shamim Rezaie d11038dd43 MDL-58768 core: Fix a typo for callback name 2018-07-31 16:15:38 +10:00
Shamim Rezaie 6b8b06911b MDL-58768 mod_assign: Add $user param to assign::can_grade 2018-07-31 16:15:38 +10:00
Shamim Rezaie fe1ae23939 MDL-58768 calendar: Add $requestinguser to the container class
The requesting user is not always the same as the current user. The container class now allows a different user
to be set as the requesting user. All capability checks are done against the requesting user.

Also, the $requestinguser is passed to core_calendar_provide_event_action and core_calendar_is_event_visible
callback functions. These callback functions need to be updated in all activity modules to accept a $user parameter.
2018-07-31 16:15:38 +10:00
Shamim Rezaie 64b5d44abc MDL-58768 coursecat: coursecat::get to accept a $user parameter 2018-07-31 16:15:37 +10:00
Shamim Rezaie 526e3e8c97 MDL-58768 Calendar: Update get_raw_events_legacy_implementation
Update get_raw_events_legacy_implementation to work with the passed $users parameter instead of the logged in user.
Also, fixed a bug where get_raw_events_legacy_implementation was failing when $users was set to true, and a list of
$groups was given.
2018-07-31 16:15:37 +10:00
Shamim Rezaie 8668391630 MDL-58768 Calendar: Added user param to calendar_set_filters
Decoupled calendar_set_filters from $USER.
Also removed the backward compatibility bit from the function because it was a left over.
2018-07-31 16:15:06 +10:00
Shamim Rezaie f35e7a0eeb MDL-58768 Calendar: Added userid param to calendar_get_default_courses 2018-07-31 16:07:15 +10:00
Eloy Lafuente (stronk7) 949f522c13 Merge branch 'MDL-57977-35' of git://github.com/vmdef/moodle into MOODLE_35_STABLE 2018-07-30 21:10:08 +02:00
Eloy Lafuente (stronk7) ac6bef4e38 Merge branch 'MDL-63002_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-07-30 16:15:27 +02:00
Marina Glancy 72bb7ac302 MDL-61424 admin: reset registration if token is rejected 2018-07-30 16:12:39 +02:00
Mark Nelson 1b4cd6be30 MDL-63002 core: fixed incorrect calls to non-existent delete_record() 2018-07-30 21:00:25 +08:00
Adrian Perez 10dae695ec MDL-63002 core_grade: fixed deletion of overriden letters 2018-07-30 21:00:24 +08:00
Jun Pataleta fc12d8d459 Merge branch 'MDL-62931-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-07-30 16:34:36 +08:00
Claude Vervoort c46c85055b MDL-62993 ltiservice_memberships: make message an array per spec
Also added resultSourcedId to member for BC.
2018-07-30 10:07:22 +08:00
Mihail Geshoski f4411ba700 MDL-57666 repositories: Error when copying file from Dropbox repository 2018-07-30 09:29:51 +08:00
AMOS bot 37002deeda Automatically generated installer lang files 2018-07-29 00:07:19 +00:00
David Mudrák 06e4325bda MDL-62965 core_user: Fix missing user profile fields on signup page 2018-07-27 10:36:56 +02:00
Jun Pataleta 8aa12f5bff Merge branch 'MDL-62950-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-07-27 16:19:02 +08:00
David Mudrák 84bef5413c MDL-62619 privacy: Fix a missing alias in the blog provider class
The new implementation revealed another existing bug that did not expose
before due to coincidently same named table alias in the outer query.
2018-07-27 10:14:38 +02:00
David Mudrák df26945105 MDL-62619 privacy: Fix some bits of performance improvements
* We need to use is_numeric() in this case as is_int() would never
  return true.
* Extend the supported cases, add support for SQL consisting just of
  numerical value or selectinga numerical constant.
* Do not rely on any particulat letter case in provided SQL.
* Add unit tests for the new method. Even when it is a protected one, it
  is an essential unit to be tested on its own.
2018-07-27 10:14:38 +02:00
Andrew Nicols b9b8d94716 MDL-62619 privacy: Improve performance of contexts loading
When possible, we want to use JOIN over WHERE IN. It is known that the
later performs badly in MySQL.
2018-07-27 10:14:38 +02:00
David Mudrák ec92a0762d MDL-59847 core: Fix display of hidden identity fields in user lists
Places that display list of users (such as course participants page)
with additional identifier fields now respect the user's permission to
view other users' hidden profile fields.
2018-07-27 10:04:56 +02:00
Jun Pataleta 9bd851f39c MDL-62996 tool_dataprivacy: Add 3.4/3.3 upgrade steps to 3.5+
This is to ensure that sites that have the early dev version of the tool
can upgrade smoothly to 3.5 and up.
2018-07-27 15:57:01 +08:00
Sara Arjona 502b17bebd MDL-41847 core_user: Add preferred lang field to the user creation form
The preferred language has been added only to the user creation form.
For existing users, you should access to the user profile, click over
Preferences and go to the Preferred language page.
2018-07-27 09:07:22 +02:00
Sara Arjona 2857ca0c9f MDL-41847 core_user: Add lang to login URL email for new user accounts 2018-07-27 09:07:22 +02:00
Andrew Nicols 5a1aa729df MDL-62950 behat: Disable editing for boost test 2018-07-27 10:59:46 +08:00
Andrew Nicols 6020745280 MDL-62950 behat: Correct navbar references 2018-07-27 10:59:46 +08:00
Andrew Nicols 948485dbd6 MDL-62950 behat: Correct use of nav 2018-07-27 10:59:45 +08:00
Andrew Nicols 1da88f2c6a MDL-62950 behat: Correct path to P&P 2018-07-27 10:59:45 +08:00
Mark Nelson ab38db069e MDL-62977 mod_wiki: style buttons appropriately 2018-07-27 10:51:25 +08:00
Dan Marsden c1a29fc252 MDL-58015 mod_scorm: set orgidentifier correctly for popup. 2018-07-27 10:36:43 +12:00
Eloy Lafuente (stronk7) a1d8976005 weekly release 3.5.1+ 2018-07-26 19:56:50 +02:00
Vadim Tabunshchik c0171e6090 MDL-62871 quiz: incorrect foreign key declaration 2018-07-26 11:38:51 +02:00
Eloy Lafuente (stronk7) bdf7f7613e Merge branch 'MDL-62771-35_move_plag_disclosure' of https://github.com/jmcgettrick/moodle into MOODLE_35_STABLE 2018-07-26 00:39:10 +02:00
Jun Pataleta b42457028a Merge branch 'MDL-62852-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2018-07-25 16:38:11 +08:00
Sara Arjona 783f2a8b8e MDL-62852 policy: Display policy audience in the viewall.php page 2018-07-25 10:20:37 +02:00
Jun Pataleta ac496f22af Merge branch 'MDL-62807-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-07-25 13:44:36 +08:00
Andrew Nicols a1c3aedf5b Merge branch 'MDL-60826-35-fix' of https://github.com/lameze/moodle into MOODLE_35_STABLE 2018-07-25 13:42:58 +08:00
Simey Lameze a2c9e82c42 MDL-60826 calendar: fix group event type logic 2018-07-25 12:54:50 +08:00
Andrew Nicols 82d2d27cd3 Merge branch 'MDL-62897-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-07-25 12:42:58 +08:00
Tony Butler e8d8bccb25 MDL-59611 mod_assign: Move help icons for subplugin types out of labels 2018-07-25 12:22:50 +08:00
Damyon Wiese d5859dacc8 MDL-62884 privacy: Fix styles
An action menu displayed inside a table needs to be tested on every theme. It is
required to ensure that the menu displays correctly, even when it would display outside
the scrollable region for the table.
2018-07-25 12:09:31 +08:00
Cory Buecker d738ae91e7 MDL-62969 mod_lti: fix parsed value for LtiLink.memberships.url
Fixes a typo in the function that replaces the LTI placeholder variable
LtiLink.memberships.url with the actual endpoint. Without this change,
the placeholder variable, "$LtiLink.memberships.url" is not replaced in
the LTI launch parameters.
2018-07-25 12:00:10 +08:00
Shamim Rezaie daff43e9c7 MDL-62897 Questions: Find duplicate top cats per context and fix them 2018-07-25 12:29:04 +10:00
Andrew Nicols 6aedf45bee Merge branch 'MDL-60826-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-07-25 09:19:43 +08:00
Simey Lameze fa9fffdc9a MDL-60826 calendar: further performance improvements
This commit does few tweaks and other performance improvements to
calendar_get_allowed_event_types to be more efficient. Also some minor
queries optimizations on the event form to fetch the list of courses
without groups.
2018-07-25 08:59:04 +08:00
Simey Lameze 7ad1d28554 MDL-60826 calendar: restrict course fields to be retrieved 2018-07-25 08:59:04 +08:00
Simey Lameze 3f3385c46a MDL-60826 calendar: update manage subscription page to use new function 2018-07-25 08:59:04 +08:00
Simey Lameze 11ebc149ed MDL-60826 calendar: lazy load groups on event form 2018-07-25 08:59:04 +08:00
Simey Lameze c985ad6263 MDL-60826 calendar: tests for calendar_get_allowed_event_types 2018-07-25 08:59:04 +08:00
Simey Lameze 6a6d683283 MDL-60826 calendar: introduce calendar_get_allowed_event_types function 2018-07-25 08:59:04 +08:00
Andrew Nicols ab9f7ab790 Merge branch 'MDL-61652-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-07-25 08:34:39 +08:00
Eloy Lafuente (stronk7) 3248a578e9 Merge branch 'MDL-62961_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-07-25 01:24:52 +02:00
Eloy Lafuente (stronk7) 3cd9d0a689 Merge branch 'MDL-62935-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-07-25 01:17:22 +02:00
Andrew Nicols 8ee6b2a201 MDL-62653 behat: Ensure that tasks run properly from behat 2018-07-25 00:39:04 +02:00
Eloy Lafuente (stronk7) 692049a9c1 Merge branch 'MDL-60874-35-enrolautocomplete' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-07-24 19:06:07 +02:00
Eloy Lafuente (stronk7) 36895ee702 Merge branch 'MDL-62925_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-07-24 18:32:49 +02:00
Jun Pataleta 68e2d67939 Merge branch 'MDL-62919-35' of git://github.com/cescobedo/moodle into MOODLE_35_STABLE 2018-07-24 16:24:04 +08:00
Bas Brands dd6f34e334 MDL-62935 boost: slideshow view page overflow 2018-07-24 10:23:20 +02:00
Jun Pataleta 310eff99fc Merge branch 'MDL-62939-35-cleanhtmluserdesc' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-07-24 11:58:20 +08:00
sam marshall 5047c83b9c MDL-61652 tool_dataprivacy: Add capabilities to control data downloads 2018-07-24 08:47:09 +08:00
Jake Dallimore 5b531aabee MDL-59595 admin: Make sure $ADMIN is properly unset when changing users 2018-07-24 08:31:22 +08:00
Jake Dallimore 5723130d84 MDL-59595 admin: unit test covering the adminroot cache reset scenario
The adminroot cache should be reset when the current user is changed,
which can occur during cron or during unit tests.
2018-07-24 08:31:22 +08:00
Victor Deniz f490505b23 MDL-57977 search: GlobalSearch by alternate name fields
Enable support for searching all name fields in search
2018-07-23 10:11:37 +01:00
Damyon Wiese ed90c88864 MDL-62581 backup: CSS fixes
Sanitise the CSS for backup and restore. Main fixes are to sanitise the form-inline styles and set a fixed
width for the search forms within the restore form.
2018-07-23 16:20:01 +08:00
Mark Nelson faabcf6d76 MDL-62961 mod_feedback: style buttons appropriately 2018-07-23 15:49:06 +08:00
Andrew Nicols 8837262d2c Merge branch 'MDL-35977-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-07-23 15:31:17 +08:00
Jun Pataleta e30562a127 Merge branch 'MDL-62948-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-07-23 15:18:49 +08:00
Jun Pataleta b43f63c11f Merge branch 'MDL-62949-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-07-23 14:53:57 +08:00
Andrew Nicols 78ccc2c951 Merge branch 'MDL-62962-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-07-23 14:51:43 +08:00
Jun Pataleta 9835dc02dd MDL-62962 tool_dataprivacy: Move user generation within the test 2018-07-23 13:36:14 +08:00
Shamim Rezaie 5420485076 MDL-62897 Questions: Fix multi top cats in question_save_from_deletion 2018-07-23 14:37:48 +10:00
Shamim Rezaie e69a3f20ee MDL-62897 restore: Fix component name in get_string() 2018-07-23 14:37:48 +10:00
Shamim Rezaie 5e29146127 MDL-62931 Questions: Escaping lang strings properly 2018-07-23 14:26:43 +10:00
Andrew Nicols 421619e6e3 Merge branch 'MDL-61707-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-07-23 11:40:53 +08:00
Andrew Nicols 39ffa8c6e3 Merge branch 'MDL-29701-35' of https://github.com/phuchau1509/moodle into MOODLE_35_STABLE 2018-07-23 09:44:02 +08:00
Mihail Geshoski 53e622ba88 MDL-61707 authentication: Remove presignup session upon user signup 2018-07-23 09:33:21 +08:00
Mihail Geshoski 3f70323ba7 MDL-35977 comments: Missing label in blog and assignment comment area 2018-07-23 08:55:51 +08:00
Andrew Nicols 99d1a03857 weekly release 3.5.1+ 2018-07-20 15:09:13 +08:00
Andrew Nicols a2ddeab20e Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-07-20 15:09:11 +08:00
Andrew Nicols bb05597274 MDL-62949 calendar: Fix behat nav to calendar 2018-07-20 11:48:44 +08:00
Andrew Nicols cb8c503098 MDL-62948 tool_policy: Increase window size
In the default window size the floating footer detaling the privacy
policies covers the "Login as guest" button.
2018-07-20 11:12:06 +08:00
Jake Hau dfe3389cf5 MDL-29701 editor: mform disableif doesn't work on editor element 2018-07-19 11:37:36 +07:00
David Mudrák aac5333538 MDL-62939 user: Fix field type of the user profile description
As this is an editor element field, the it is supposed to be PARAM_RAW.
Otherwise it cleans-up certain non-HTML syntax such as Markdown
blockquote characters.
2018-07-18 14:29:53 +02:00
Jun Pataleta c9038ad429 Merge branch 'MDL-62811_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-07-18 16:12:07 +08:00
Jun Pataleta 6d0a80dfc1 Merge branch 'MDL-62769_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-07-18 14:54:25 +08:00
Jun Pataleta f22286dd83 Merge branch 'MDL-62781-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-07-18 10:05:29 +08:00
Jun Pataleta c4030220a4 MDL-62781 core_question: Remove unnecessary assertion 2018-07-18 09:59:37 +08:00
Tim Hunt e088a1f198 MDL-62781 question/privacy: fix tests with CodeRunner is installed
The tests were assuming that no plugin ever created questions on
install.

Also change the tests to do the counting in the DB. That is more
efficient.
2018-07-18 09:59:36 +08:00
AMOS bot b6f35bf63e Automatically generated installer lang files 2018-07-18 00:07:34 +00:00
cescobedo b5282bfb67 MDL-62919 auth_shibboleth: Use the right shibboleth_auth_instructions
Change $CFG->auth_instructions by shibboleth/auth_instructions in the index_form.html
2018-07-17 21:07:53 +02:00
Nick Phillips 5721a09e82 MDL-59447 question: GIFT import to respect multichoice defaults
Fix GIFT import to respect default answernumbering for new multichoice
questions (introduced in MDL-50011). Default for shuffleanswers is still
ignored, as this is a rather coarse-grained way to do it, and the wrong
setting for shuffleanswers would irreversibly alter the meaning of some
questions.

This is not an ideal long-term fix, but will save significant effort
for anyone who needs to be able to set answernumbering style for
questions imported in GIFT format.
2018-07-17 14:37:19 +02:00
David Monllao 21e4f90ca8 Merge branch 'MDL-54830-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-07-17 13:55:11 +02:00
David Monllao 9cb0f99c37 Merge branch 'MDL-61351_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-07-17 12:32:08 +02:00
Tim Schroeder 4c66ff31c8 MDL-61351 auth_shibboleth: removed redundant session handler class check 2018-07-17 16:46:26 +08:00
Tim Schroeder 2542cb94e4 MDL-61351 core: added \core\session\manager\get_handler_class()
* This is needed e.g. by the shibboleth logout handler to check which
type of sessions are used.
2018-07-17 16:46:26 +08:00
Mark Nelson 97be43646f MDL-61351 auth_shibboleth: move new functions to separate class
This reduces the amount of code to an already confusing logout.php
file and prevents conflicts if someone else happens to be using
the same function name in a file.
2018-07-17 16:46:26 +08:00
Tim Schroeder 4b1adeef8d MDL-61351 shibboleth: Logout: fix session handler class not being used
* use $CFG->session_handler_class to determine which type of session is
  used
* if not set, use $CFG->dbsession instead
2018-07-17 16:46:26 +08:00
David Monllao 0ef5bc0b18 Merge branch 'MDL-62868-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-07-17 10:20:23 +02:00
David Monllao 8632026272 Merge branch 'MDL-62663_35' of https://github.com/andrewhancox/moodle into MOODLE_35_STABLE 2018-07-17 09:58:41 +02:00
David Monllao 706ba3f3af Merge branch 'MDL-60924-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2018-07-17 09:39:06 +02:00
Andrew Nicols c2c97dee39 Merge branch 'MDL-62889_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-07-17 12:13:01 +08:00
Mark Nelson c74949b071 MDL-62889 message_popup: redirect using moodle_url
Without this relative URLs passed (like /message/index.php)
were being redirected to HOST/message/index.php rather than
$CFG->wwwroot/message/index.php.
2018-07-17 12:00:14 +08:00
Mark Nelson 6dc3988fa0 MDL-62889 message_popup: redirect to notification page if url is empty
If you pass a URL that is not a valid URL (for example
';') it is cleaned to an empty string which redirects to
$CFG->wwwroot/message/output/popup/ which is not a valid
page.
2018-07-17 12:00:13 +08:00
Mark Nelson 1d59ae4286 MDL-62889 message_popup: allow redirects to external URLs
Many institutions create notifications that link to an
external service. We need to allow redirects to these
systems.
2018-07-17 12:00:13 +08:00
Mark Nelson 38d309036c MDL-62889 message_popup: only add redirecturl if it exists
We allow notifications to have a null value for the 'contexturl'.
In this case we should not be appending a 'redirecturl' param to
the URL when it is going to be empty.
2018-07-17 12:00:13 +08:00
Mark Nelson 3c2fa60af3 MDL-62925 mod_wiki: style 'Search wikis' button 2018-07-17 11:31:47 +08:00
Andrew Nicols a9b2db5880 Merge branch 'MDL-62849-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-07-17 10:35:54 +08:00
Adrian Greeve 3482ea90a6 MDL-62849 files lib: Add method to return all files.
Added a function which returns all the files from all directories
in the draftarea.
2018-07-17 10:27:19 +08:00
AMOS bot c50377f55f Automatically generated installer lang files 2018-07-17 00:08:18 +00:00
David Mudrák 2a9787beee MDL-60874 enrol_manual: Improve searching of users in quick enrol UI
* The maximum of users to be displayed raised from 30 to 100. This is
  consistent with the legacy users selector available via enrolment
  methods page.
* If there are more users found matching the search criteria, notify the
  user instead of displaying them. This is to prevent false impression
  that there are only that many users.
* Added behat tests for the new behaviour.
2018-07-16 21:25:40 +02:00
David Mudrák 73df15dd67 MDL-60874 core_form: allow autocomplete AJAX handlers return a string
Custom AJAX handlers for the form autocomplete fields can now optionally
return string in their processResults() callback. If a string is
returned, it is displayed instead of the list of suggested items.

The string is displayed same way as we inform about no available
suggestions.
2018-07-16 21:25:40 +02:00
sarjona 3fe9524aaf MDL-60924 core_user: Hold participant filters when clicking some link 2018-07-16 18:06:12 +02:00
David Monllao 0ec785bfa5 Merge branch 'MDL-49025-m35' of https://github.com/NeillM/moodle into MOODLE_35_STABLE 2018-07-16 13:35:06 +02:00
David Monllao c6fa9f2ea2 Merge branch 'MDL-61019-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-07-16 13:25:13 +02:00
Damyon Wiese c485c0c443 MDL-62807 output: Support .list-unstyled class
Category management lists should not have bullets.

We support this class in "boost" theme but not in bootstrapbase and there are uses of it in core.
2018-07-16 14:04:03 +08:00
Andrew Nicols 474ec7e94b Merge branch 'MDL-45851_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-07-16 13:18:16 +08:00
Jake Dallimore d7b6ef5729 MDL-54830 core_course: fix maxbytes logic in course_update web service
The service should allow the special value of 0 (site limit) to be set.
2018-07-16 10:42:53 +08:00
Jake Dallimore fb6ae10135 MDL-62868 core_group: clear group_grouping cache when changing grouping 2018-07-16 10:36:04 +08:00
Jake Dallimore cadff587be Merge branch 'MDL-45389-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-07-16 10:11:58 +08:00
Neill Magill 74fbce7560 MDL-49025 assign: Submissions of an empty directory should not save
Before this change if only a folder was submitted the submission_is_empty
check would return true. This meant that the draft area would be saved.
The is_empty check would then be called which would return false. This
caused the submission form to indicate to the user that the submission
had failed.

Now is_empty and submission_is_empty should both return false if only
folders are submitted.
2018-07-13 14:04:53 +01:00
Neill Magill 6ede900c49 MDL-49025 assign: Test than an empty directory will not submit 2018-07-13 14:04:53 +01:00
Luca Bösch 4f7cf4088d MDL-61019 Theme boost: lesson display issues with buttons/progress bar. 2018-07-13 09:25:40 +02:00
Luca Bösch 76486ab639 MDL-45389 theme_bootstrapbase: Forum index page alignment in clean. 2018-07-13 09:25:23 +02:00
Luca Bösch a3809c4fc6 MDL-44538 action_menu: rounded corner of highlights only where needed. 2018-07-13 09:25:17 +02:00
Jake Dallimore b80a22f5ba weekly release 3.5.1+ 2018-07-13 12:26:16 +08:00
Jake Dallimore ef6bdbae8e Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-07-13 12:26:14 +08:00
Andrew Nicols 85abbf80e2 Merge branch 'MDL-62746-35-fix' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-07-12 16:19:52 +08:00
Jun Pataleta f2757d51a9 MDL-62746 tag: Behat fix for combining tags scenario 2018-07-12 16:09:10 +08:00
David Monllao 24e83b2807 MDL-59599 navigation: Respect previous activity-level navigation
The original patch was overwriting grading methods navigation.

All credit goes to Andrew Nicols.
2018-07-12 10:25:52 +08:00
AMOS bot 4e37604528 Automatically generated installer lang files 2018-07-12 00:08:29 +00:00
David Monllao 8b2ae94442 Merge branch 'MDL-62618-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-07-11 18:48:16 +02:00
Jake Dallimore 4dec82b25b Merge branch 'MDL-62712-35' of https://github.com/HuongNV13/moodle into MOODLE_35_STABLE 2018-07-11 09:02:28 +08:00
Andrew Nicols e3796a0678 Merge branch 'MDL-52318-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-07-11 08:58:37 +08:00
Andrew Nicols 104c9ffae9 Merge branch 'MDL-62026-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-07-11 08:15:57 +08:00
AMOS bot c5a4536bb8 Automatically generated installer lang files 2018-07-11 00:09:53 +00:00
Andrew Hancox 740db2e5c3 MDL-62663 core_user: Enforce viewalldetails capability when editing user 2018-07-10 13:28:18 +01:00
David Monllao 9fc60dfeb1 Merge branch 'MDL-62262-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-07-10 13:32:38 +02:00
David Monllao c270b92ddb Merge branch 'MDL-62823-m35' of https://github.com/NeillM/moodle into MOODLE_35_STABLE 2018-07-10 11:44:52 +02:00
Andrew Nicols 835d570210 Merge branch 'MDL-61578-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-07-10 16:46:26 +08:00
Huong Nguyen 7a81bcdb34 MDL-62712 Filepicker: Improve upload process
Lost the uploading file when user press Submit before upload process has done
2018-07-10 15:20:18 +07:00
David Monllao 9818499ed8 Merge branch 'MDL-62814-35' of https://github.com/HuongNV13/moodle into MOODLE_35_STABLE 2018-07-10 07:50:53 +02:00
Jun Pataleta 5e0c2c9815 MDL-62026 tool_dataprivacy: Behat tests for contacting PO 2018-07-10 12:31:26 +08:00
Jun Pataleta 50e48b78e9 MDL-62026 tool_dataprivacy: Allow manual completion of general enquiries 2018-07-10 12:31:26 +08:00
Andrew Hancox f3a11484ad MDL-61578 backup: Added unit test for is_course_modified check. 2018-07-10 11:02:23 +08:00
Michael Hawkins af9b4f1f3b MDL-61578 backup: Prevent backup logging triggering fresh backups.
Thanks to Renaat Debleu for their contribution to this solution.
2018-07-10 11:02:23 +08:00
Andrew Nicols 25c946f628 Merge branch 'MDL-62746-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-07-10 10:08:52 +08:00
Jake Dallimore 110f3a3d68 Merge branch 'MDL-62772-35_always_show_disclosure' of https://github.com/jmcgettrick/moodle into MOODLE_35_STABLE 2018-07-10 09:00:34 +08:00
David Monllao b20a4bc15c Merge branch 'mdl35_MDL-62753' of https://github.com/OdyX/moodle into MOODLE_35_STABLE 2018-07-09 15:16:00 +02:00
David Monllao d4315bf53e Merge branch 'MDL-56881-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-07-09 14:39:14 +02:00
David Monllao f31105a9f5 Merge branch 'MDL-62037-35' of https://github.com/lethevinh/moodle into MOODLE_35_STABLE 2018-07-09 13:48:53 +02:00
David Monllao 771c8455cb Merge branch 'MDL-62831-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-07-09 13:36:24 +02:00
David Monllao 8297de9fa3 MDL-59599 navigation: Strict zero-position comparision 2018-07-09 12:27:36 +02:00
David Monllao e336f07cd7 Merge branch 'MDL-59599-35' of https://github.com/Kathrin84/moodle into MOODLE_35_STABLE 2018-07-09 12:00:10 +02:00
John McGettrick 2ff2c49c85 MDL-62772 mod_assign: Show disclosure for all submitters 2018-07-09 09:15:52 +01:00
Andrew Nicols 2f7aaf1d53 Merge branch 'MDL-33509-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-07-09 14:01:55 +08:00
Andrew Nicols 551f57926a Merge branch 'MDL-62808_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-07-09 13:30:13 +08:00
Damyon Wiese b8daa178de MDL-43334 backup: Fix cancel JS
The cancel button is a form element within a div that has the confirmcancel class. When we
accept a cancel modal, we should attempt to click the most specific form element of the
div, not the entire div.
2018-07-09 12:18:43 +08:00
Damyon Wiese 8405e6f1cc MDL-43334 backup: Lanuage for cancel
Cancel backup buttons need clear lang strings.
2018-07-09 12:18:43 +08:00
Andrew Nicols 89076b49fb MDL-56093 auth_db: Remove issue no. from comment 2018-07-09 12:14:33 +08:00
Andrew Nicols 8fc16d9e6a Merge branch 'MOODLE_35_STABLE_MDL_56093' of https://github.com/eledia/moodle into MOODLE_35_STABLE 2018-07-09 12:14:29 +08:00
Jake Dallimore 5136441985 Merge branch 'MDL-61359-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-07-09 12:11:05 +08:00
Mark Nelson 1afa3903ae MDL-62808 core_message: fixed 'useridto' being incorrectly set to 0 2018-07-09 12:00:40 +08:00
Jake Dallimore 4c32762ca7 MDL-52318 core_form: allow multiple filepicker-enabled url elements
In cases when filepicker support is enabled, this patch adds a wrapper
div around the url element and includes the filepicker id in its id.
This allows the js callback code to target the specific input field
with which it is associated.
2018-07-09 11:33:09 +08:00
Jake Dallimore 313531b030 MDL-56881 mod_choice: add unit tests for choice_user_submit_response
Tests cover option limits and multiple option responses.
2018-07-09 11:06:51 +08:00
Jake Dallimore 2b37ee6049 MDL-56881 mod_choice: clarify lang string for limit-reached scenarios 2018-07-09 11:06:51 +08:00
Jake Dallimore a5f3967e57 MDL-56881 mod_choice: fix bug with limits when saving existing choice
The check determining whether a choice option's limit was exceeded was
including the user's existing answers in its checks, meaning a user
couldn't save an existing choice answer, or select further options,
if all a choice option limit was reached. This patch fixes that.
2018-07-09 11:06:51 +08:00
Eloy Lafuente (stronk7) 5b78584fdb Moodle release 3.5.1 2018-07-07 06:54:07 +02:00
AMOS bot ce390c4725 Automatically generated installer lang files 2018-07-07 00:08:27 +00:00
Luca Bösch 942d4df55b MDL-62262 quiz: quiz index page showing wrong dates. 2018-07-06 14:47:55 +02:00
vinhle 23628a98fc MDL-62037 Filepicker: Review image not change when overwrite same 2018-07-06 17:52:24 +07:00
John McGettrick 2daceaf000 MDL-62771 mod_forum: Move print_disclosure 2018-07-06 09:25:35 +01:00
Andrew Nicols 8675c2c908 weekly release 3.5+ 2018-07-06 14:05:15 +08:00
Andrew Nicols 70ffd8bb2b Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-07-06 14:05:13 +08:00
Huong Nguyen 6c1aa273f2 MDL-62814 Question: Improve column base display_header
Column base does not support custom tip if sortable is an array
2018-07-06 10:58:55 +07:00
Tim Hunt 8cc2d39207 MDL-62811 question bank: rendering shouldn't load individual questions 2018-07-05 17:01:35 +01:00
Benjamin Wolf cac9523423 MDL-56093 auth_db: Save custom profile fields in auth_db 2018-07-05 11:15:49 +02:00
Didier 'OdyX' Raboud cb4bb6efc5 MDL-62753 shibboleth: Logout: fix DB sessions kill
* Use the Moodle 2+ {sessions} table, and decode the session
  correctly using session_decode (adodb_unserialize is deprecated).
* Kill all user sessions using \core\session\manager's
  kill_user_sessions.
2018-07-05 09:06:14 +02:00
Michael Hawkins 750121698f MDL-62618 user: Display full names consistently on users page 2018-07-05 10:17:15 +08:00
Michael Hawkins a78f6cd123 MDL-62618 forum: Made full names displayed consistent 2018-07-05 10:17:15 +08:00
Jake Dallimore c2fea8ae43 Merge branch 'MDL-62670-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2018-07-05 09:26:05 +08:00
AMOS bot 0a520053cb Automatically generated installer lang files 2018-07-05 00:08:24 +00:00
Kathrin Osswald 1da4edbaf0 MDL-59599 navigation: Improve activity status for nav nodes. 2018-07-04 19:59:41 +02:00
Tim Hunt 9eff7d9535 MDL-45851 restore: random questions must always be created
They are really a pointer from a particular quiz to a question category.
They should never be shared, because if they are, unexpected things
happend when they are edited.
2018-07-04 16:34:38 +01:00
Sara Arjona e154204728 MDL-62670 policy: viewall.php must display always all active policies
The viewall.php page is called from the mobile app to display the policies
to the users before agree them. That's why it must display all the active
policies (even for guests), to guarantee the users agree all current
policies from the app.
2018-07-04 12:18:52 +02:00
Sara Arjona 2d90a7d91a MDL-62670 policy: Remove footer link when there are not active policies 2018-07-04 12:18:52 +02:00
Tim Hunt 8ac7c623d3 MDL-62820 question import: properly escape output 2018-07-04 15:40:58 +08:00
Jake Dallimore caa9881c0d Merge branch 'wip-nolink-bug-35' of https://gitlab.di.unito.it/rabellino/moodle into MOODLE_35_STABLE 2018-07-04 14:38:13 +08:00
Damyon Wiese b01258d7f0 MDL-62782 assign: viewgrades allows files
Grade viewer role should be able to see feedback files for an assignment submission.
2018-07-04 14:19:17 +08:00
Jake Dallimore f0188d7b66 Merge branch 'MDL-41463-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-07-04 12:59:21 +08:00
Damyon Wiese 4e52235a23 MDL-62831 mod_assign: Download as folders help
The help string for the download as folders setting should not mention the number of files
submitted by the student. It is not related to that, it is only dependant on the value of this setting.
2018-07-04 12:20:45 +08:00
Jake Dallimore ab94fee038 Merge branch 'MDL-44081-35' of git://github.com/zig-moodle/moodle into MOODLE_35_STABLE 2018-07-04 10:50:48 +08:00
Andrew Nicols 2d64d63373 MDL-62834 behat: Move include to function 2018-07-04 10:45:25 +08:00
Eloy Lafuente (stronk7) 6cb165d681 Merge branch 'wip-MDL-62526-35' of git://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2018-07-04 04:19:24 +02:00
Adrian Greeve 55fc303a5f MDL-62616 tool_log: Add a setting to disable exporting logs. 2018-07-04 09:59:32 +08:00
Eloy Lafuente (stronk7) c453ea21e1 Merge branch 'MDL-62288_35' of https://bitbucket.org/ujiapps/moodle-uji into MOODLE_35_STABLE 2018-07-04 01:21:19 +02:00
Eloy Lafuente (stronk7) 24e4ec9d60 Merge branch 'MDL-62792_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-07-04 00:55:22 +02:00
Eloy Lafuente (stronk7) 25e9be8ea9 Merge branch 'MDL-62838_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-07-04 00:52:14 +02:00
Eloy Lafuente (stronk7) 9ffcaa7db7 Merge branch 'MDL-62834_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-07-04 00:46:40 +02:00
Eloy Lafuente (stronk7) 936d21d2dd Merge branch 'MDL-62211-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-07-03 23:33:48 +02:00
David Monllao d20b4b2f23 Merge branch 'MDL-61296-35' of git://github.com/cescobedo/moodle into MOODLE_35_STABLE 2018-07-03 23:33:47 +02:00
David Monllao d587c4bd90 Merge branch 'MDL-62656-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-07-03 23:33:47 +02:00
David Monllao 3828033e98 Merge branch 'MDL-60014-35-catcherror-nopermission-annotatepdfcron' of https://github.com/Eva-Dv/moodle into MOODLE_35_STABLE 2018-07-03 23:33:46 +02:00
David Monllao 4892662238 Merge branch 'MDL-62691-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-07-03 23:33:46 +02:00
David Monllao ccbd142a63 Merge branch 'MDL-62813-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-07-03 23:33:45 +02:00
David Monllao 3b52f52351 Merge branch 'MDL-62654-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-07-03 15:19:34 +02:00
David Monllao 173968b25d Merge branch 'MDL-32232-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-07-03 14:00:20 +02:00
David Mudrák 4cdd9e77dc MDL-62796 tool_policy: Fix a regression in Behat test
We now correctly show the popup with links to policies that apply to
anonymous visitors of the site. So the name of the guests only policy
became visible in this popup in more cases and it caused false failures.

The point of the lines affected by this patch is to make sure that the
policy does / does not appear in the list of policies to be accepted. So
I am making it more specific of where the text is / is not supposed to
be seen.
2018-07-03 11:05:18 +02:00
Michael Hawkins 7805012e59 MDL-61359 message: Updated sender contact text to text node content 2018-07-03 14:48:57 +08:00
Jake Dallimore 483d8fefa8 Merge branch 'MDL-59261-35' of git://github.com/ryanwyllie/moodle into MOODLE_35_STABLE 2018-07-03 14:44:53 +08:00
Bas Brands 654eac4f13 MDL-59261 theme_boost: compiled css fallback 2018-07-03 14:14:05 +08:00
Michael Hawkins 86699bedb0 MDL-62767 theme: Remove old localcaches when clearing/updating theme cache 2018-07-03 14:00:40 +08:00
Michael Hawkins 914e26d916 MDL-62801 themes: Added missing filelib include 2018-07-03 13:08:33 +08:00
Marina Glancy ced6691934 MDL-62790 course: cap check in core_course_get_categories 2018-07-03 12:02:18 +08:00
Mihail Geshoski 07e1fa272f MDL-33509 forms: Change button type in url resource editing page 2018-07-03 11:59:14 +08:00
Jake Dallimore ff1fbf2992 Merge branch 'MDL-62715-35' of git://github.com/andrewnicols/moodle into MOODLE_35_STABLE 2018-07-03 08:49:52 +08:00
Eloy Lafuente (stronk7) 49e435c00a Merge branch 'MDL-62763-35-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-07-02 20:09:15 +02:00
Eloy Lafuente (stronk7) b67ae5a0ad Merge branch 'MDL-62621-35-ixcomment' of git://github.com/mudrd8mz/moodle into MOODLE_35_STABLE 2018-07-02 20:02:25 +02:00
Helen Foster b2b1bb2d29 MDL-62763 lang: Merge English strings from the en_fix language pack
Significant string changes:

* various strings in tool_dataprivacy and tool_policy - 'Data Protection
  Officer' changed to 'privacy officer'
* idnumbermod_help,core - mentioning resource and custom reporting
2018-07-02 13:36:29 +02:00
David Monllao 5a13884a0f Merge branch 'wip-MDL-62796-35' of git://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2018-07-02 12:21:52 +02:00
David Monllao d42328e223 Merge branch 'MDL-62713-m35' of https://github.com/sammarshallou/moodle into MOODLE_35_STABLE 2018-07-02 10:42:18 +02:00
Jake Dallimore 3879b520b7 Merge branch 'MDL-62801-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-07-02 16:19:10 +08:00
David Mudrák 6a3cffd3c6 MDL-62621 comments: Add missing indexes on comments table
The composite index over the fields contextid, commentarea and itemid
helps the comments API to load all comments for the given area
effectively.

The index over the userid field helps the privacy API to load all
comments by the given user.
2018-07-02 10:13:00 +02:00
Mihail Geshoski 40790755ce MDL-62656 course: Align elements in course and category management 2018-07-02 08:25:34 +08:00
AMOS bot 310a1f0895 Automatically generated installer lang files 2018-06-30 00:08:23 +00:00
Tim Hunt ed3468e40b MDL-62838 filters: dont use statics inside functions. Use MUC 2018-06-29 17:25:13 +01:00
Tim Hunt 9bedb84419 MDL-62834 behat: new step for enabling filters 2018-06-29 11:27:46 +01:00
sam marshall c843630aee MDL-62713 core_search: Cron error indexing sections in some cases 2018-06-29 10:52:53 +01:00
Neill Magill 94f5d062bd MDL-62823 filter: Save changes button should be styled 2018-06-29 08:41:06 +01:00
Michael Hawkins 233847bdb7 MDL-62801 themes: Remove old mustache caches when new one generated 2018-06-29 10:50:21 +08:00
Jun Pataleta f29d518ba8 MDL-62211 tool_dataprivacy: Request filtering and pagination
* Make data requests page use table_sql to make it sortable
* Also, add an autocomplete element that enables filtering by
  status and request type.
2018-06-29 10:32:25 +08:00
Zig Tan 749c7cc5a9 MDL-44081 assign: Fix Grader annotation button accessibility ordering 2018-06-29 09:28:45 +08:00
Luca Bösch bb3ce79c7e MDL-41463 course: Reset remove groups section advanced toggle. 2018-06-28 23:05:40 +02:00
Luca Bösch 4b52a5b2c6 MDL-32232 lesson: changing a page type chooser option for consistency 2018-06-28 23:05:29 +02:00
Sergio Rabellino af344834e1 MDL-61403 filter: Fix for the nolink tag ignored
Fix for the nolink tag ignored if there are some other attributes defined in the same span
2018-06-28 11:01:01 +02:00
Simey Lameze cdc9e56198 MDL-62813 calendar: add behat test for form validation 2018-06-28 14:12:18 +08:00
Simey Lameze 0e0fd72d98 MDL-62813 calendar: fix dmlreadexception on event form 2018-06-28 14:12:18 +08:00
Jake Dallimore 543005a342 weekly release 3.5+ 2018-06-28 14:03:04 +08:00
Marina Glancy 5c33665a74 MDL-62526 admin: ask privacy policy agreement for moodle.net 2018-06-28 11:44:38 +08:00
Eloy Lafuente (stronk7) 362518ef34 Merge branch 'MDL-62325-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-06-28 02:06:03 +02:00
Eloy Lafuente (stronk7) ff246f2260 Merge branch 'wip-MDL-62755-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-06-28 01:56:37 +02:00
Eloy Lafuente (stronk7) fc1b13ede9 Merge branch 'MDL-61889-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-06-28 01:49:31 +02:00
Eloy Lafuente (stronk7) 458b0fb900 Merge branch 'MDL-62747_35' of https://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-06-28 00:32:34 +02:00
Matteo Scaramuccia 5df53c769e MDL-51080 env: warn when running MariaDB w/ wrong dbtype 2018-06-28 00:15:28 +02:00
Jake Dallimore 380a437428 Merge branch 'MDL-61732-35' of https://github.com/Dagefoerde/moodle into MOODLE_35_STABLE 2018-06-27 12:18:13 +08:00
Eloy Lafuente (stronk7) 5f6539e379 Merge branch 'MDL-45088-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-06-27 03:23:22 +02:00
Eloy Lafuente (stronk7) b44ddd4a7f Merge branch 'MDL-62703-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-06-27 03:17:45 +02:00
Eloy Lafuente (stronk7) 833e2398ef Merge branch 'MDL-62471_35' of git://github.com/dmonllao/moodle into MOODLE_35_STABLE 2018-06-27 02:41:53 +02:00
Eloy Lafuente (stronk7) df9443db71 Merge branch 'MDL-62735-35-refactor' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-06-26 10:44:24 +02:00
Jake Dallimore 4d23edfb37 Merge branch 'MDL-62698_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-06-26 15:30:32 +08:00
Juan Segarra Montesinos 11489b20a5 MDL-62288 mod_glossary: Add links to glossary entries for all users 2018-06-26 08:41:21 +02:00
Jun Pataleta b3483e7ede MDL-61889 tool_dataprivacy: Fix CI errors 2018-06-26 13:21:51 +08:00
Marina Glancy dd05e0d29e MDL-62796 tool_policy: show popup for users who are not logged in 2018-06-26 12:33:24 +08:00
Eloy Lafuente (stronk7) 1b37fe78f9 Merge branch 'MDL-59047-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-06-26 03:05:27 +02:00
Eloy Lafuente (stronk7) 82f21031a3 Merge branch 'MDL-62730-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-06-26 02:54:41 +02:00
Eloy Lafuente (stronk7) 6545e50f62 Merge branch 'MDL-51419-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-06-26 02:41:59 +02:00
Eva Davitasvili 3d7630a158 MDL-60014 assign: Annotate PDF - catch no permission error 2018-06-25 14:10:41 -04:00
Tim Hunt 2588126d66 MDL-62792 filters: fix some bad PHPdocs 2018-06-25 15:52:33 +01:00
Tim Hunt de71bef7cb MDL-62792 filter_mathjaxloader: don't use statics for once-only items 2018-06-25 15:52:31 +01:00
Tim Hunt e310f10818 MDL-62698 quiz_overview: new index should not be unique 2018-06-25 15:51:03 +01:00
Shamim Rezaie 9b6938f99b MDL-62325 enrol_paypal: Added some keys and indexes to enrol_paypal.
- Added these keys to the enrol_paypal db: courseid, userid, instanceid
- Added these indexes to the enrol_paypal db: business, receiver_email
2018-06-25 12:34:43 +10:00
Adrian Greeve 9c42327dd1 MDL-62755 mod_assign: Update to unit tests.
Overrides are now checked to be exported properly.
2018-06-25 09:50:50 +08:00
Adrian Greeve 28631a1455 MDL-62755 mod_assign: Fix override export problem.
The cutoffdate and allowsubmissionsfromdate were not
being exported.
2018-06-25 09:50:50 +08:00
Christian Glahn aa7deee9cc MDL-61732 filters: Have emoticons respect nolink
Also extracts static emoticon cache to a field in order to increases
testability of filter_emoticon, because we are now able to reset the
static emoticon cache before tests, particularly for observing the
response to changing $CFG->emoticons.
2018-06-22 10:29:53 +02:00
Jake Dallimore 009a9ca500 MDL-51419 core_files: Support for utf8 in file names in MS Edge 2018-06-22 10:29:56 +08:00
Jake Dallimore 7de4759799 MDL-62730 themes: Fix calendar icon alignment for datetime in Boost 2018-06-22 10:17:04 +08:00
Jake Dallimore 33433bb8a1 MDL-62735 core_search: searchareas page now respects indexing support 2018-06-22 10:14:34 +08:00
Luca Bösch 9efe4b84ce MDL-45088 xmldb: Fix table alignment 2018-06-21 19:37:26 +02:00
Tim Hunt 12d4fe9ee6 MDL-62769 quiz statistics: graph should show all, not last, variant 2018-06-21 14:55:53 +01:00
Eloy Lafuente (stronk7) 8793e120b9 weekly release 3.5+ 2018-06-21 14:01:11 +02:00
Eloy Lafuente (stronk7) 43f742e1e5 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-06-21 14:01:09 +02:00
Bas Brands 3f4db3e89e MDL-61515 Theme boost: add disabled carousel transitions back in 2018-06-21 10:14:38 +02:00
Andrew Nicols bea7b33840 MDL-62715 mod_assign: Bump submissions back when grading in tests 2018-06-21 08:41:09 +08:00
Jun Pataleta 4900f375d7 Merge branch 'MDL-62017-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-06-20 19:40:22 +08:00
David Monllao a94b1fed30 Merge branch 'MDL-61482-35' of git://github.com/zig-moodle/moodle into MOODLE_35_STABLE 2018-06-20 13:29:28 +02:00
David Monllao 9337d85eb3 MDL-62471 tool_dataprivacy: Test compatible with 32 bits OS 2018-06-20 12:59:15 +02:00
cescobedo 2a8f28520d MDL-61296 auth_ldap: remove PHP notices when field does not exist. 2018-06-20 11:43:28 +02:00
Luca Bösch e972b9e909 MDL-62017 tool_customlang: format language customisation buttons. 2018-06-20 10:54:13 +02:00
Andrew Nicols 74c35a9133 Merge branch 'wip-MDL-62391-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-06-20 09:40:16 +08:00
Adrian Greeve b4b5124c73 MDL-62391 tool_dataprivacy: Added more detail about data requests.
This adds the detail about who requested the data request to the
tables and data request information page.
2018-06-20 09:01:16 +08:00
Andrew Nicols af963ad2ae Merge branch 'MOODLE_35_STABLE_MDL-62705_results_order_no_context' of https://github.com/mattporritt/moodle into MOODLE_35_STABLE 2018-06-20 08:36:51 +08:00
Eloy Lafuente (stronk7) 2341e8695e Merge branch 'MDL-62014-35' of git://github.com/nashtechdev01/moodle into MOODLE_35_STABLE 2018-06-20 00:57:28 +02:00
Eloy Lafuente (stronk7) f55516fd46 Merge branch 'MDL-36424-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-06-19 19:20:37 +02:00
Eloy Lafuente (stronk7) 36e337b176 Merge branch 'wip-MDL-61786-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-06-19 19:16:39 +02:00
Eloy Lafuente (stronk7) 23e9fea9a5 Merge branch 'MDL-62358-35' of https://github.com/HuongNV13/moodle into MOODLE_35_STABLE 2018-06-19 19:08:52 +02:00
Eloy Lafuente (stronk7) 1408aa8bc8 Merge branch 'MDL-44791-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-06-19 18:59:50 +02:00
Eloy Lafuente (stronk7) 2f86cad04e Merge branch 'MDL-62449-35' of git://github.com/sarjona/moodle into MOODLE_35_STABLE 2018-06-19 18:52:31 +02:00
Zig Tan fd77e38fc9 MDL-61482 mod_assign: Clean html in offline grading CSV 2018-06-19 23:30:11 +08:00
Tim Hunt 0191113d24 MDL-62747 accesslib: rdef caching should handle roles with no caps 2018-06-19 16:26:21 +01:00
Jun Pataleta 016e029ea6 MDL-62746 tag: Make forms in tag modals use proper BS classes 2018-06-19 23:01:25 +08:00
Bas Brands 8bc0bbf1ee MDL-62691 Theme boost: editpdf hide dropdown close btn 2018-06-19 16:57:38 +02:00
Bas Brands 1dc4c34d07 MDL-62703 Themes: remove hover styles in course listings 2018-06-19 16:32:31 +02:00
Bas Brands 5339d26259 MDL-59047 question type: short answer boost styles 2018-06-19 14:34:33 +02:00
David Monllao bc7a379947 Merge branch 'MDL-62588-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-06-19 12:53:19 +02:00
Jun Pataleta e9553d973a Merge branch 'MDL-61894-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-06-19 17:57:13 +08:00
David Monllao 4f7fa18201 Merge branch 'MDL-58702-35' of git://github.com/zig-moodle/moodle into MOODLE_35_STABLE 2018-06-19 11:54:39 +02:00
Andrew Nicols 697a28aadf Merge branch 'MDL-60950-35' of git://github.com/damyon/moodle into MOODLE_35_STABLE 2018-06-19 11:40:45 +08:00
Damyon Wiese 26f5750319 MDL-60950 assign: Update incompatible unit test
Maintain compatibility with unit test changes after MDL-55609.
2018-06-19 10:59:12 +08:00
Damyon Wiese d4fea9b20f MDL-60950 assign: Rename class
testable_assign was renamed to mod_assign_testable_assign
2018-06-19 10:59:12 +08:00
Damyon Wiese af280e5929 MDL-60950 assign: Robust filtering of grading table
For assignments with gradetype set to none, we need special handling when generating the query to filter submissions that need grading.
2018-06-19 10:59:12 +08:00
Damyon Wiese fa8d508f36 MDL-60950 assign: Test for the requires grading filter
This test covers when the requires grading filter is applied, but the
assignment has no grade and the feedbackcomments plugin is disabled.
2018-06-19 10:59:12 +08:00
Andrew Nicols e7bf43ba0d Merge branch 'MDL-62519_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-06-19 10:34:16 +08:00
Andrew Nicols 793da897d1 Merge branch 'MDL-62597-35' of https://github.com/HuongNV13/moodle into MOODLE_35_STABLE 2018-06-19 09:43:54 +08:00
Eloy Lafuente (stronk7) e1aa99e99d Merge branch 'MDL-62638-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-06-19 02:04:00 +02:00
Eloy Lafuente (stronk7) 06b8272791 Merge branch 'MDL-62571_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-06-19 01:49:52 +02:00
Sara Arjona 15703fb9f1 MDL-62449 scorm: Move related data to data in the privacy export 2018-06-18 10:43:36 +02:00
Sara Arjona 20d8c489d8 MDL-62449 scorm: Add SCORM data to privacy export (name, description) 2018-06-18 10:43:36 +02:00
Jun Pataleta 1d97a7818e Merge branch 'MDL-62614-35' of git://github.com/zig-moodle/moodle into MOODLE_35_STABLE 2018-06-18 16:12:23 +08:00
Jun Pataleta 7c64406d4d Merge branch 'MDL-62709_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-06-18 15:15:56 +08:00
Jun Pataleta f71b39b960 Merge branch 'MDL-62658_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-06-18 14:36:47 +08:00
Jun Pataleta 44dd58756b Merge branch 'wip-MDL-62474-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-06-18 14:32:20 +08:00
Mark Nelson 1dbbcaf9ba MDL-62658 message_popup: fixed issue with malformed URL being generated 2018-06-18 14:31:14 +08:00
Adrian Greeve d0e1b2921d MDL-62474 theme_boost: Update to provider and unit test.
Theme boost contains a user preference which was not reported
before. Unit tests have been added to test the update.
2018-06-18 14:06:11 +08:00
Willian Mano 72107631d7 MDL-62474 theme_boost: Fix Boost privacy provider 2018-06-18 14:06:01 +08:00
Huong Nguyen 888cfdc75f MDL-62614 Privacy: Core tag provider delete_item_tags function not work 2018-06-18 14:00:37 +08:00
Andrew Nicols 9886790075 Merge branch 'MDL-62320-35' of git://github.com/vmdef/moodle into MOODLE_35_STABLE 2018-06-18 13:58:50 +08:00
Shamim Rezaie f3323c22fe MDL-62588 enrol_paypal: Add missing instanceid field 2018-06-18 15:18:04 +10:00
Andrew Nicols d8e011f721 Merge branch 'MDL-62234-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-06-18 09:52:33 +08:00
Andrew Nicols 3b63cb559e Merge branch 'MDL-57968-35' of git://github.com/cescobedo/moodle into MOODLE_35_STABLE 2018-06-18 09:09:53 +08:00
AMOS bot f5189e3aa3 Automatically generated installer lang files 2018-06-16 00:08:05 +00:00
Victor Deniz 2c643bb988 MDL-62320 mimetypes: Add JSON to the default mime types list 2018-06-15 13:12:31 +01:00
Damyon Wiese 54e6ea018d MDL-62643 assign: Skip empty online text files
Online text assignment submissions with no text entered into the editor should not
create a blank html document for providing feedback.
2018-06-15 14:13:21 +08:00
HungTran c5fd53af5d MDL-62014 course: Add title to activity completion button 2018-06-15 10:19:59 +07:00
Zig Tan e275b0c4a6 MDL-58702 backup: Fix restoration of role mappings labels
Changes:
- Add logic to retrieve all the existing current roles.
- Apply the backup's role shortname by matching on the archetype.
- Added backup lang string 'undefinedrolemapping'.
2018-06-15 09:56:15 +08:00
Matt Porritt 9482a77a04 MDL-62705 Global Search: results order selection does not display
As of 3.5 a search plugin can define the result orders it supports.
When a search plugin defines multiple sort orders and the search is
conducted without a context (no context query param in the URL),
the code to load the available sort orders from the enabled search
backend is never called.

This patch gets the supported search orders for the enabled search
engine regardless of context being provided or not. As prior, the
search order selection will not display if the only result order
option is relevance.
2018-06-15 11:32:28 +10:00
Luca Bösch fab105578b MDL-61894 tag: Modal buttons style. 2018-06-14 17:32:40 +02:00
Luca Bösch b4dcfe9a06 MDL-44791 admin: Open server check doc links in new window. 2018-06-14 17:31:45 +02:00
Ed Basset a31a20a5c6 MDL-36424 wiki: set group so subwiki tabs/pages display correctly 2018-06-14 17:31:28 +02:00
Huong Nguyen e6e7a85087 MDL-62358 Question: Improve number function
Support all 'question numbers' that might be needed
2018-06-14 19:46:36 +07:00
Huong Nguyen 612c718696 MDL-62597 Privacy: Request date column should include time 2018-06-14 19:41:28 +07:00
Eloy Lafuente (stronk7) 180988c999 weekly release 3.5+ 2018-06-14 10:56:06 +02:00
Eloy Lafuente (stronk7) 59380a9a64 Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-06-14 10:56:04 +02:00
Mark Nelson d2593fadb6 MDL-62709 core_message: convert NULL format types in task 2018-06-14 13:19:17 +08:00
David M Penner 904aec69a0 MDL-62709 core_message: fix for silently ignored errors in task 2018-06-14 13:19:17 +08:00
Mark Nelson d851bb5c2a MDL-31443 core_backup: change review heading to 'Restore settings' 2018-06-13 18:39:00 +02:00
Luca Bösch 6fa61e69a7 MDL-31443 core_backup: revert changes to util/ui/renderer.php 2018-06-13 18:39:00 +02:00
Bas Brands c0e65fbbf8 MDL-62234 Theme boost: Improve atto dialogue styling 2018-06-13 11:37:09 +02:00
Jun Pataleta cc0b367755 Merge branch 'MDL59980_block_bug_35_STABLE' of git://github.com/kristian-94/moodle into MOODLE_35_STABLE 2018-06-13 09:59:26 +08:00
AMOS bot 1dc3e88cca Automatically generated installer lang files 2018-06-13 00:08:07 +00:00
Kristian Ringer d04e88b78f MDL-59980 core_admin: Fix bug preventing block modification in settings 2018-06-13 09:37:42 +10:00
Simey Lameze d77209e8c5 MDL-62446 mod_glossary: optimize provider code 2018-06-12 18:27:39 +02:00
Simey Lameze 3f27598353 MDL-62446 mod_glossary: improve privacy unit tests 2018-06-12 18:27:38 +02:00
David Monllao 334ced71a1 Merge branch 'MDL-58063-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-06-12 11:05:47 +02:00
Andrew Nicols f3a817e959 MDL-55609 mod_assign: Deprecate base_test 2018-06-12 10:22:18 +02:00
Andrew Nicols 9712975595 MDL-55609 assignfeedback_comments: Remove shared setUp 2018-06-12 10:22:11 +02:00
Andrew Nicols 4656db12e1 MDL-55609 mod_assign: Move fixture to folder 2018-06-12 10:22:06 +02:00
Andrew Nicols a1ec9e389e MDL-55609 mod_assign: Remove shared setUp for all tests 2018-06-12 10:22:01 +02:00
Andrew Nicols 3714b3d104 MDL-55609 testing: Add a create_and_enrol helper 2018-06-12 10:21:57 +02:00
Mark Nelson 251358b364 MDL-62519 atto_recordrtc: detach click listener when recording again 2018-06-12 14:37:40 +08:00
Jun Pataleta d2b6ce1555 Merge branch 'wip-MDL-62574-35' of git://github.com/abgreeve/moodle into MOODLE_35_STABLE 2018-06-12 11:56:53 +08:00
Adrian Greeve 3c22418e0a MDL-62574 core_privacy: Unit tests to check the context base.
This now tests the possibility of a context being deleted.
2018-06-12 11:26:23 +08:00
Adrian Greeve 94269e4505 MDL-62574 core_privacy: Check the contextlist for real contexts.
There are situations when contexts will be deleted in the provider.
The context list is not updated and so we have introduced a try
catch.
2018-06-12 11:26:11 +08:00
Andrew Nicols 0f272f06ea Merge branch 'wip_MDL-62576_M35' of git://github.com/gjb2048/moodle into MOODLE_35_STABLE 2018-06-12 10:49:14 +08:00
Andrew Nicols 08ca997c76 Merge branch 'MDL-62628-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-06-12 09:49:58 +08:00
Andrew Nicols 7d52baba45 Merge branch 'MDL-60819-35' of https://github.com/snake/moodle into MOODLE_35_STABLE 2018-06-12 09:21:04 +08:00
Eloy Lafuente (stronk7) 72f73d595d Merge branch 'MDL-62649-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-06-12 01:45:26 +02:00
Eloy Lafuente (stronk7) bf67536031 Merge branch 'MDL-62460-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-06-12 01:41:49 +02:00
Eloy Lafuente (stronk7) 7a78ae6c10 Merge branch 'MDL-31443-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-06-12 01:37:57 +02:00
Michael Aherne 2cdbfd1dca MDL-62577 unit tests: Quote class name in re-run command. 2018-06-12 00:08:37 +02:00
Mark Nelson d8924ce166 MDL-62571 mod_forum: fixed redirection URLs 2018-06-11 18:31:03 +08:00
David Monllao 9ccbf4386c Merge branch 'MDL-61484-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-06-11 10:34:30 +02:00
Jun Pataleta fe9d8a7274 MDL-61484 mod_chat: Add CHAT_SESSION_GAP constant 2018-06-11 16:01:03 +08:00
Jun Pataleta 9ec5fa2208 MDL-61484 mod_chat: Fix chat_get_sessions logic 2018-06-11 16:01:03 +08:00
Jun Pataleta bffc50ae9d MDL-61484 mod_chat: More unit tests for chat
* For chat_get_sessions()
* Fix externallib test
2018-06-11 16:01:03 +08:00
Leon Stringer a634c88ced MDL-61786 auth: Changed strings for Test Settings to lang strings
The output strings for the Test Settings function were hard-coded English
strings. They've been changed to standard language strings which can be
translated and maintained via AMOS.
2018-06-11 14:16:31 +08:00
Jun Pataleta 2eb7c6d6cb Merge branch 'MDL-62594-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-06-11 13:55:19 +08:00
Jake Dallimore 8ae9044ef4 MDL-60819 core_files: fix exception thrown from generate_image_thumbnail
This function now requires gdlib.php.
2018-06-11 10:45:27 +08:00
Andrew Nicols eef776a0b4 Merge branch 'MDL-62270-Cron-task-fails-on-data-privacy-related-task' of https://github.com/adamtppaw/moodle into MOODLE_35_STABLE 2018-06-11 09:53:06 +08:00
Luca Bösch ef57748905 MDL-31443 backup: Title and cancel messages stating import and restore 2018-06-08 11:34:06 +02:00
Bas Brands 9903e25871 MDL-62654 Theme Boost: update readme on @supports prefixer issues 2018-06-08 10:15:10 +02:00
Mihail Geshoski 557a9b5674 MDL-62628 resource: Folder name formatting issue when displayed inline 2018-06-08 08:36:04 +08:00
Mihail Geshoski 0ff993ffe3 MDL-58063 blocks: Cannot access manage files in HTML block in clean 2018-06-08 08:29:26 +08:00
Gareth J Barnard a8a9876c1d MDL-62576 theme_boost: Course jump to menu not centred 2018-06-07 20:43:42 +01:00
Eloy Lafuente (stronk7) fd308528cd weekly release 3.5+ 2018-06-07 17:00:05 +02:00
Eloy Lafuente (stronk7) b0f0c2af7e Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_35_STABLE 2018-06-07 17:00:02 +02:00
Bas Brands ba5dde0347 MDL-62638 Theme boost: remove broken css 2018-06-07 16:44:53 +02:00
Bas Brands 22cab09558 MDL-62594 question type: cloze question theme boost 2018-06-07 14:07:32 +02:00
Jun Pataleta b02f319b78 Merge branch 'MDL-61826-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-06-06 11:22:31 +02:00
Jun Pataleta e03ef397fc Merge branch 'MDL-46513_35' of git://github.com/markn86/moodle into MOODLE_35_STABLE 2018-06-06 11:22:27 +02:00
Jun Pataleta cddd2b461b Merge branch 'MDL-62586-35' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-06-06 11:22:24 +02:00
Andrew Nicols ec41f1ce1b Merge branch 'm35_MDL-61702_MariaDB_InnoDB10d3d1_Params_Removed' of https://github.com/scara/moodle into MOODLE_35_STABLE 2018-06-06 11:22:21 +02:00
Eloy Lafuente (stronk7) 7ce29a90af Merge branch 'MDL-39486-35' of git://github.com/mihailges/moodle into MOODLE_35_STABLE 2018-06-06 11:22:17 +02:00
David Monllao 4dda9579b3 Merge branch 'MDL-46344-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-06-06 11:22:14 +02:00
Mark Nelson 9b77f93fa0 MDL-62336 media_videojs: ensure videos have unique IDs 2018-06-06 11:22:11 +02:00
Jun Pataleta 4fc3adb35b Merge branch 'MDL-61778-35' of git://github.com/mickhawkins/moodle into MOODLE_35_STABLE 2018-06-06 11:22:08 +02:00
cescobedo d3e3f0f109 MDL-57968 core_message: Remove multiple unnecessary AJAX requests
Remove AJAX requests core_message_get_unread_conversations_count and
message_popup_get_unread_popup_notification_count and
render the unread messages and notifications into mustache template.
2018-06-06 11:00:54 +02:00
Mark Nelson 8bc2ee1a4a MDL-46513 mod_chat: pass has_capability result to fullname function 2018-06-06 15:34:17 +08:00
Jun Pataleta 93e51e74b4 MDL-61826 auth: Make Facebook endpoints more maintainable 2018-06-06 12:44:43 +08:00
Łukasz Szeremeta 148ef43015 MDL-61826 auth: Facebook OAuth2 - getting a better-quality profile photo
Get 200x200 px instead of 50x50 px user profile picture from Facebook OAuth2.
2018-06-06 12:44:43 +08:00
Mihail Geshoski 8b5dfd0b06 MDL-62649 course: Course and category management items displayed wrongly 2018-06-06 11:38:48 +08:00
Michael Hawkins 1ebd063f4e MDL-61778 message: Renamed online status icon and replaced Boost icon 2018-06-05 16:36:42 +08:00
Luca Bösch 40579dc143 MDL-62605 core_user: course name filter in unenrol modal. 2018-06-05 08:04:41 +02:00
AMOS bot f26629e665 Automatically generated installer lang files 2018-06-05 00:07:04 +00:00
adamtppaw ab96a452c6 MDL-62270 Privacy: Cron task fails when admin directory renamed 2018-06-03 21:59:15 +02:00
Luca Bösch 50e1bbb583 MDL-46344 outputrenderers: Localize 'This page is'. 2018-06-01 11:44:02 +02:00
Jun Pataleta 09b6fbdaca MDL-62460 tool_dataprivacy: Render selected user properly on validation 2018-06-01 16:09:17 +08:00
Matteo Scaramuccia 8f9c8a5826 MDL-61702 dml: MariaDB 10.3 supports only the Barracuda file format.
More details about this change also in https://tracker.moodle.org/browse/MDL-59099

Ref.: https://mariadb.com/kb/en/library/mariadb-1031-release-notes/#other-variables
2018-05-31 22:56:49 +02:00
David Monllao 9c607c0b8c weekly release 3.5+ 2018-05-31 08:39:38 +02:00
Bas Brands 6dc178e448 MDL-62586 Themes: use Boostrap media compontent for author display 2018-05-30 12:41:36 +02:00
David Monllao 187d2a26c0 Merge branch 'MDL-62532-35' of git://github.com/rezaies/moodle into MOODLE_35_STABLE 2018-05-30 10:20:09 +02:00
Andrew Nicols c6755d6f34 Merge branch 'MDL-57486-35-fix' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-05-30 13:21:25 +08:00
Jun Pataleta bea2c40f53 MDL-57486 tool_recyclebin: Close the files recordset properly 2018-05-30 13:16:11 +08:00
Andrew Nicols 363622d03e Merge branch 'MDL-57600-35' of git://github.com/lameze/moodle into MOODLE_35_STABLE 2018-05-30 09:17:57 +08:00
Andrew Nicols 649c96c259 MDL-57486 tool_recyclebin: Coding style fix 2018-05-30 09:02:00 +08:00
Dan Marsden ac32f752d9 MDL-57486 tool_recyclebin: Delete items when context already deleted. 2018-05-30 09:02:00 +08:00
David Monllao db79038541 MDL-62381 editor_tinymce: Rearrange style modification 2018-05-29 16:36:14 +02:00
David Monllao c390ae4f8d Merge branch 'MDL-62381_moodle35' of https://github.com/Syxton/moodle into MOODLE_35_STABLE 2018-05-29 16:34:46 +02:00
Matt Davidson e0a8cfdb6d MDL-62381 editor: Fix tinymce icons
Icon sizing is being overwritten on images.
2018-05-29 09:03:00 -04:00
Jun Pataleta 52f03c6fc6 Merge branch 'MDL-62544-35' of git://github.com/Dagefoerde/moodle into MOODLE_35_STABLE 2018-05-29 16:24:26 +08:00
Michael Hawkins 9f2c4a9277 MDL-56498 message: Ensure clicked notifications are marked read 2018-05-29 09:37:53 +08:00
David Monllao 575e209b93 Merge branch 'MDL-62316_oauth_guess_image_fix_35_STABLE' of https://github.com/leonstr/moodle into MOODLE_35_STABLE 2018-05-28 16:48:50 +02:00
David Monllao 0b363e6c4b Merge branch 'wip-MDL-62584-35' of git://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2018-05-28 16:32:17 +02:00
Eloy Lafuente (stronk7) 5d8821ae05 MDL-62478 upgrade: add 3.5.0 separation line to all upgrade scripts 2018-05-28 13:16:21 +02:00
David Monllao 512a916207 Merge branch 'MDL-42779-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-05-28 11:42:53 +02:00
Mark Nelson 86a7cf0909 MDL-57742 core_lib: Updated readme_moodle.txt 2018-05-28 09:17:18 +02:00
David Balch f93f81a9f6 MDL-57742 core_lib: Make tool_consumer_instance_guid optional
In the specification, tool_consumer_instance_guid is only listed
as recommended. However, the library was requiring it.

https://www.imsglobal.org/specs/ltiv2p0/implementation-guide#toc-42
2018-05-28 09:17:17 +02:00
Matteo Scaramuccia bf6f0f03cf MDL-59596 ddl: Support MariaDB 10.2.4+ SQL_MODE new default value. 2018-05-28 08:20:14 +02:00
Matteo Scaramuccia 903182e4a3 MDL-59596 ddl: Added has_breaking_change_sqlmode() 2018-05-28 08:20:12 +02:00
Jun Pataleta e7554e4b67 Merge branch 'wip-MDL-62493-35' of git://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2018-05-28 12:57:37 +08:00
Jun Pataleta 167420bd2e MDL-62515 templates: Remove unnecessary button role for submit button 2018-05-28 12:29:59 +08:00
Marina Glancy f479887c77 MDL-62584 xmlrpc: return correct content-length 2018-05-28 11:20:21 +08:00
Simey Lameze 5441c8fef4 MDL-57600 course: fix typo on courselib test 2018-05-28 09:41:58 +08:00
Alex b104cede75 MDL-57600 format: Fix spelling errors 2018-05-28 09:41:57 +08:00
Jun Pataleta c3c8223ca2 Merge branch 'MDL-61832-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-05-28 09:21:22 +08:00
Andrew Nicols d4773c32d6 MDL-62543 mod_forum: Add RSS Unit tests 2018-05-28 08:56:44 +08:00
Tobias Reischmann c8511e2808 MDL-62543 forum: Switched the usage of the deleted flag for rss
The deleted flag was introduced through the Privacy API and was used
for post selection for the rss feed. In there it was used in the
wrong way, which lead to the exclusion of all non deleted posts instead
of excluding all deleted ones.
This commit fixes this problem.
2018-05-28 08:56:44 +08:00
Shamim Rezaie b23e6519fe MDL-62532 core_question: Include standard tags in the tags autocomplete 2018-05-28 10:55:05 +10:00
Mark Johnson dc7c48a9d7 MDL-62408 behat: Correct PHPUNIT_TEST checks in behat_config_util 2018-05-28 02:14:08 +02:00
Marina Glancy a210233bfb MDL-62493 tool_policy: correct redirection
do not override session->wantsurl
do not redirect guests to user.php, they get an error there
2018-05-25 14:32:03 +08:00
Marina Glancy 9dcf28af7d MDL-62493 tool_policy: allow guests to sign up 2018-05-25 14:32:03 +08:00
Mihail Geshoski c030a94b68 MDL-39486 lesson: Length of label text too narrow in matching questions 2018-05-25 09:46:01 +08:00
Jan Dageförde bd8b3a91e0 MDL-62544 privacy: error notification type 2018-05-24 16:46:02 +02:00
Jan Dageförde 582eb6e6e2 MDL-62544 privacy: Allow data requests on behalf of a user by admin/DPO 2018-05-24 16:46:02 +02:00
Luca Bösch 9b127bcb70 MDL-61832 lesson: don't hide lesson page editing options 2018-05-24 15:44:00 +02:00
Luca Bösch 171a764049 MDL-42779 course: Pagination in management page preserves view action 2018-05-24 15:43:41 +02:00
David Monllao 0da8ef69a8 weekly release 3.5+ 2018-05-24 10:46:02 +02:00
David Monllao 815be4e003 NOBUG: Fixed SVG browser compatibility 2018-05-24 10:46:01 +02:00
Simey Lameze d897846115 MDL-61189 editor_tinymce: save data before submitting 2018-05-23 10:48:40 +08:00
Jake Dallimore 5427855d50 Merge branch 'MDL-61932-35' of git://github.com/junpataleta/moodle into MOODLE_35_STABLE 2018-05-23 10:01:46 +08:00
Leon Stringer 6d7093e370 MDL-62316 OAuth 2: Only guess image if base URL set.
If you added an OAuth 2 service with no base URL guess_image() would try to
parse this empty value looking for a favicon.ico.  We now check if the base
URL is empty beforehand and skip this if so.
2018-05-22 19:45:04 +01:00
Jun Pataleta d7c805a9f0 MDL-61932 mod_glossary: Fetch the correct front page section 1 ID 2018-05-22 17:16:30 +08:00
Jun Pataleta 2032603ae9 MDL-61932 mod_glossary: Display site-level glossaries on section 1
* Glossary activities created on the front page by importing
entries are being added to section 0, but the front page only shows
activities on section 1.
2018-05-22 17:16:29 +08:00
John Beedell e7e91b8bae MDL-62239 QTYPE: iOS 11.3 broke Moodle drag-drop question types 2018-05-22 10:05:51 +08:00
Andrew Nicols 30cbfbdd61 Merge branch 'MDL-62482_35' of git://github.com/timhunt/moodle into MOODLE_35_STABLE 2018-05-22 09:39:17 +08:00
Andrew Nicols ab7694d82e Merge branch 'MDL-62488_35_STABLE' of https://github.com/marxjohnson/moodle into MOODLE_35_STABLE 2018-05-22 09:31:19 +08:00
Jake Dallimore 61ee9a304e Merge branch 'MDL-61015-35' of https://github.com/lucaboesch/moodle into MOODLE_35_STABLE 2018-05-22 08:15:11 +08:00
Andrew Nicols f59bc1b152 MDL-62500 tag: Update checkbox label when updating tag 2018-05-21 13:46:49 +02:00
Matteo Scaramuccia 3aa57f20af MDL-61893 JavaScript: Bumped npm packages
Performed by removing the current 'npm-shrinkwrap.json' file:
$ rm -Rf node_modules
$ rm -f npm-shrinkwrap.json
$ npm install
$ npm shrinkwrap
2018-05-21 12:05:54 +02:00
Matteo Scaramuccia b875ad18b5 MDL-61893 JavaScript: Accept any node version but Carbon (LTS) 2018-05-21 12:05:46 +02:00
Luca Bösch 2d69b0fbe7 MDL-61015 course: consistently display hidden sections
This commit moves the availability info on top.
2018-05-21 11:34:04 +02:00
Marina Glancy c8663da1a9 MDL-61015 course: consistently display hidden sections
When section is hidden but the course setting says to show hidden sections display the hidden
sections consistently with how we display the sections with access restriction.

The only difference is that we didn't previously display the summary of the hidden section
in this case, the new logic repeats this behavior
2018-05-21 11:34:04 +02:00
Andrew Nicols 1de2735b16 MDL-62516 mod_forum: Only delete files for requested user 2018-05-21 11:17:10 +02:00
Juan Leyva 4a5adabe95 MDL-62229 tool_mobile: Add missing supported module
The Workshop module it’s been supported since Moodle 3.4 so it
should’ve been included here.
2018-05-21 17:05:07 +08:00
Andrew Nicols b566d8002a Merge branch 'wip-MDL-62481-35' of git://github.com/marinaglancy/moodle into MOODLE_35_STABLE 2018-05-21 15:55:12 +08:00
Tim Hunt 2e404995a0 MDL-62440 participants: out-of-memory is many site-wide role assigns 2018-05-21 14:55:42 +08:00
Andrew Nicols 654ad71526 Merge branch 'MDL-62386-master' of git://github.com/bmbrands/moodle into MOODLE_35_STABLE 2018-05-21 09:11:28 +08:00
Marina Glancy 2b50975563 MDL-62481 atto_recordrtc: add svg icons 2018-05-18 10:40:33 +08:00
Mark Johnson 81fb99ed66 MDL-62488 filebrowser: Stop unit tests assuming number of categories 2018-05-17 16:01:36 +01:00
Tim Hunt deb358f16c MDL-62482 file_storage: may have many files with same content hash 2018-05-17 11:25:52 +01:00
Eloy Lafuente (stronk7) 46574904af Moodle release 3.5 2018-05-16 18:44:30 +02:00
Eloy Lafuente (stronk7) 4c8005a0ff NOBUG: Change travis.yml to MOODLE_35_STABLE 2018-05-16 18:44:30 +02:00
Eloy Lafuente (stronk7) 57cc5dc750 Merge branch 'MDL-62472-master' of git://github.com/bmbrands/moodle 2018-05-16 18:29:46 +02:00
Marina Glancy 897a492729 MDL-62469 qtype_calculated: check remaining placeholders, see MDL-62275 2018-05-16 17:20:38 +02:00
Bas Brands a6c45af354 MDL-62472 Theme boost: update upgrade.txt for boost changes 2018-05-16 12:57:38 +02:00
David Monllao 36960958ad Merge branch 'MDL-62456_master' of git://github.com/markn86/moodle 2018-05-16 08:56:33 +02:00
Andrew Nicols 798f0f1da9 Merge branch 'wip-MDL-62147-master-4' of git://github.com/marinaglancy/moodle 2018-05-16 14:27:19 +08:00
Jun Pataleta 6c32ea4631 Merge branch 'MDL-62463-master' of git://github.com/andrewnicols/moodle 2018-05-16 14:22:05 +08:00
Frédéric Massart 554e6a6562 MDL-62147 core_grades: Report contexts and data related to scales 2018-05-16 13:57:26 +08:00
Marina Glancy 372ea5502c MDL-62147 core_grades: Declare metadata of scales and import tables 2018-05-16 13:57:25 +08:00
Marina Glancy 14f7296436 MDL-62147 portfolio: add missing tables to privacy provider 2018-05-16 13:57:22 +08:00
Marina Glancy 004fd4259e MDL-62147 privacy: unittest ensures that all tables covered 2018-05-16 13:57:19 +08:00
Andrew Nicols 39da8c1a35 MDL-62463 mod_glossary: Fix SQL query
The query was doing:
WHERE c.id ... AND ... OR ... OR ...

Which equates to:
WHERE (c.id ... AND ...) OR ... OR ...

Adding parens to:
WHERE (c.id ... AND (... OR ... OR ...))
2018-05-16 13:51:32 +08:00
Marina Glancy d1620c57f9 MDL-62147 privacy: corrections to tables, temporary tables 2018-05-16 12:57:19 +08:00
Jake Dallimore dc69734963 Merge branch 'MDL-62134-master' of git://github.com/andrewnicols/moodle 2018-05-16 12:39:27 +08:00
Andrew Nicols 8da25ca04c MDL-62134 tool_dataprivacy: Remove reference to old manager 2018-05-16 12:27:00 +08:00
Mark Nelson ad7f143897 MDL-62456 mod_lti: add missing add_external_location_link call 2018-05-16 12:22:34 +08:00
Jake Dallimore 0e156326cc Merge branch 'MDL-62134-master' of git://github.com/andrewnicols/moodle 2018-05-16 12:01:49 +08:00
Andrew Nicols 8760b7335b MDL-62134 tool_dataprivacy: Add a manager_observer 2018-05-16 11:52:46 +08:00
Andrew Nicols 22c0a30888 MDL-62134 core_privacy: Allow for a failure handler 2018-05-16 11:52:46 +08:00
Andrew Nicols 3e3e5cdbb4 Merge branch 'MDL-62426-master' of https://github.com/snake/moodle 2018-05-16 10:44:06 +08:00
Jake Dallimore 72580c0832 MDL-62426 core_enrol: control enrolment subcontexts at the provider
Added a function to the core_enrol provider allowing enrol plugins
to set their subcontext relative to a fixed 'enrolments' parent dir.
2018-05-16 10:22:15 +08:00
Jake Dallimore 37e1069289 MDL-62426 enrol_flatfile: make provider a plugin provider
The enrol_flatfile table can contain userdata relating to pending
enrolments, so this should be exported and deleted as necessary.
2018-05-16 09:37:33 +08:00
Marina Glancy 3f18d2af9a MDL-62134 tool_dataprivacy: privacy manager wrapper
If exception occurs in one plugin implementation do not fail the whole job but
instead send a message to DPOs with the exception details
2018-05-16 09:02:01 +08:00
Marina Glancy 65abf2a37c MDL-62134 privacy: consistantly call components methods 2018-05-16 09:02:01 +08:00
Eloy Lafuente (stronk7) 51c17c381d Merge branch 'MDL-62447_master' of git://github.com/dmonllao/moodle 2018-05-16 01:26:39 +02:00
Eloy Lafuente (stronk7) 3811659bc7 Merge branch 'MDL-62433-master' of git://github.com/sarjona/moodle 2018-05-15 23:30:46 +02:00
Eloy Lafuente (stronk7) cd0f1aa403 Merge branch 'MDL-62448-master' of git://github.com/sarjona/moodle 2018-05-15 17:29:06 +02:00
Eloy Lafuente (stronk7) 12ef4a1219 Merge branch 'MDL-62419-master' of git://github.com/bmbrands/moodle 2018-05-15 16:56:37 +02:00
Sara Arjona 9d594541b6 MDL-62448 block_rss_client: Export all feeds from Privacy API 2018-05-15 14:25:27 +02:00
Sara Arjona 68ed91b7af MDL-62433 tool_policy: Review language strings for consistency
All credit goes to Helen Foster. Thanks! :-*
2018-05-15 14:21:03 +02:00
Sara Arjona 5e84f521fa MDL-62433 tool_policy: Some minor fixes to Privacy API implementation
- Export files for agreements too.
- Add versionid to the export path to avoid collision if version revision
is not defined.
2018-05-15 14:07:31 +02:00
Andrew Nicols f63745eabd MDL-62433 tool_policy: Adjustments to the data export 2018-05-15 14:07:31 +02:00
Sara Arjona 827c8e98ac MDL-62433 tool_policy: Review privacy provider for adding versions 2018-05-15 14:07:31 +02:00
David Monllao bcd677bc6a Merge branch 'wip-MDL-62445-master' of git://github.com/marinaglancy/moodle 2018-05-15 13:33:25 +02:00
David Monllao 85218c28e9 Merge branch 'MDL-62228_master' of git://github.com/markn86/moodle 2018-05-15 13:31:07 +02:00
David Monllao 7f9b187994 MDL-62447 user: Fix component name typo 2018-05-15 10:41:57 +02:00
Bas Brands b188407bdc MDL-62419 Theme boost: use sr-only() mixin for .accesshide 2018-05-15 10:39:09 +02:00
David Monllao dc71a8b50e Moodle release 3.5rc1 2018-05-15 09:42:49 +02:00
David Monllao 096b3723bb Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-05-15 09:42:47 +02:00
Andrew Nicols 76578cf3f6 Merge branch 'MDL-62444-master' of git://github.com/zig-moodle/moodle 2018-05-15 11:38:32 +08:00
Andrew Nicols 7831f2785d Merge branch 'MDL-62428_master' of git://github.com/markn86/moodle 2018-05-15 10:58:45 +08:00
Marina Glancy 8880510d40 MDL-62445 tool_privacy: pass correct user to message_send 2018-05-15 10:27:52 +08:00
Jun Pataleta 2f48e08c46 Merge branch 'MDL-62434-master' of git://github.com/bmbrands/moodle 2018-05-15 10:06:57 +08:00
Zig Tan 0061a6ae67 MDL-62444 mod_assignment: Fix missing lang string. 2018-05-15 09:50:11 +08:00
Jun Pataleta d060e0b80f Merge branch 'MDL-62432-master' of git://github.com/andrewnicols/moodle 2018-05-15 09:34:18 +08:00
Andrew Nicols 63b0f6276c MDL-62432 quiz: Check contexts more carefully 2018-05-15 09:25:51 +08:00
Eloy Lafuente (stronk7) 05c87e7bb4 Merge branch 'MDL-62430_master' of git://github.com/dmonllao/moodle 2018-05-15 02:56:00 +02:00
AMOS bot 3a959aa800 Automatically generated installer lang files 2018-05-15 00:06:16 +00:00
David Monllao 641d878d08 MDL-62430 block_html: Check that block instances are block_html 2018-05-14 17:06:57 +02:00
David Monllao 014335fb2b Merge branch 'MDL-62370-master' of git://github.com/andrewnicols/moodle 2018-05-14 16:00:32 +02:00
Andrew Nicols 0668ba779a Merge branch 'MDL-62356-master' of git://github.com/cescobedo/moodle 2018-05-14 20:50:23 +08:00
Andrew Nicols a61cd7efef Merge branch 'MDL-62357-master' of git://github.com/cescobedo/moodle 2018-05-14 20:43:02 +08:00
Andrew Nicols 502344a904 MDL-62370 core_privacy: Directory-less subsystems are compliant 2018-05-14 19:59:43 +08:00
Mark Nelson df1714f25a MDL-62228 core: remove unnecessary context check in privacy providers 2018-05-14 18:33:29 +08:00
Marina Glancy 3960ad53a7 MDL-62430 privacy: validate context when deleting all user data 2018-05-14 18:13:27 +08:00
David Monllao 4557b4e065 Merge branch 'MDL-62414-master' of git://github.com/junpataleta/moodle 2018-05-14 11:44:13 +02:00
David Monllao 05dcf35796 Merge branch 'MDL-62425-master' of git://github.com/andrewnicols/moodle 2018-05-14 10:57:14 +02:00
cescobedo 267effaaa2 MDL-62356 enrol_meta: Add privacy implementation for enrol_meta 2018-05-14 10:55:52 +02:00
cescobedo 30f3ea7fe1 MDL-62357 enrol_cohort: Add privacy implementation for enrol_cohort 2018-05-14 10:49:16 +02:00
David Monllao 3558897fc3 Merge branch 'MDL-62365-master' of git://github.com/bmbrands/moodle 2018-05-14 10:39:41 +02:00
Bas Brands b5f402ad73 MDL-62434 Theme boost: fix popover arrows above/under popups 2018-05-14 10:36:02 +02:00
David Monllao 62b94b486e Merge branch 'MDL-62418-master' of git://github.com/mihailges/moodle 2018-05-14 10:17:58 +02:00
Andrew Nicols ef0f37ca16 MDL-62425 core: Add privacy implementation 2018-05-14 15:41:36 +08:00
Andrew Nicols b5b86c298c MDL-62425 tool_dataprivacy: Add core to the list of components 2018-05-14 15:41:30 +08:00
Andrew Nicols 66f2da2e0a MDL-62425 core_privacy: Add core to the list of components 2018-05-14 15:40:56 +08:00
Bas Brands 04b1bea112 MDL-62365 Theme Boost: default navigation item to empty
- use fa-fw as default navigation item (empty)
    - change indentation for 2nd level dropdown items
2018-05-14 09:08:42 +02:00
Mihail Geshoski 0bffcfccdd MDL-62418 tool_policy: Display blocks in user policies and agreements 2018-05-14 14:18:10 +08:00
Mark Nelson 8e24041287 MDL-62428 core: fix incorrect early return in privacy providers 2018-05-14 13:06:29 +08:00
Jake Dallimore f8630a8170 Merge branch 'MDL-62420-master' of git://github.com/andrewnicols/moodle 2018-05-14 11:57:52 +08:00
Jun Pataleta cea21312f9 Merge branch 'MDL-62153-master' of git://github.com/bmbrands/moodle 2018-05-14 11:57:01 +08:00
Jake Dallimore c7a2ed73b7 Merge branch 'MDL-62016_master' of git://github.com/dmonllao/moodle 2018-05-14 11:05:45 +08:00
Andrew Nicols 882d2787ba Merge branch 'MDL-62359-master' of git://github.com/bmbrands/moodle 2018-05-14 10:37:57 +08:00
Andrew Nicols 54ef15dac8 Merge branch 'MDL-62413-master' of git://github.com/junpataleta/moodle 2018-05-14 10:16:27 +08:00
Jake Dallimore e995166863 Merge branch 'MDL-62393-master' of git://github.com/andrewnicols/moodle 2018-05-14 09:37:34 +08:00
Eloy Lafuente (stronk7) a890f2ecfa Merge branch 'MDL-62418-master' of git://github.com/sarjona/moodle 2018-05-14 03:01:29 +02:00
Andrew Nicols af09390773 MDL-62420 enrol_lti: Fix random unit test fail in privacy 2018-05-14 08:43:15 +08:00
Eloy Lafuente (stronk7) 24bd0bc3b3 Merge branch 'MDL-62371-master' of git://github.com/andrewnicols/moodle 2018-05-14 02:37:38 +02:00
Sara Arjona 5bf7f59a19 MDL-62418 tool_policy: Redirect always to home when agreed all policies 2018-05-13 21:26:47 +02:00
Sara Arjona 15ed7d938e MDL-62418 tool_policy: Display blocks in Consent page when using clean 2018-05-13 20:42:04 +02:00
Eloy Lafuente (stronk7) 28ec28e026 Merge branch 'MDL-62251-master' of git://github.com/rezaies/moodle 2018-05-13 20:10:44 +02:00
Jun Pataleta 7bdb9d877d MDL-62409 tool_dataprivacy: Properly validate data request creation
Creating data requests
 * Add capability check when creating data requests for another user.
Ad-hoc task that processes pending data requests
 * Check if the requesting user has the capability to create the data
   request for another user. Reject otherwise.
Ad-hoc task that processes approved data requests
 * Validate that the requester can receive the notification about the
   data request processing results.
 * Do not send the confirmation link to DPOs/admins
2018-05-13 16:03:21 +02:00
David Monllao 4023f84b29 MDL-62016 tool_dataprivacy: More data registry information 2018-05-13 13:21:41 +02:00
Jun Pataleta 0f7fb98747 MDL-62299 tool_dataprivacy: Show requests correctly in mydatarequests
For DPOs viewing their personal data requests page (mydatarequests.php),
show only the requests they made for themselves and for their children.
2018-05-13 16:18:58 +08:00
Andrew Nicols 563852791d MDL-62371 core_privacy: Add support for progress trace 2018-05-13 15:45:24 +08:00
AMOS bot a2d976dd03 Automatically generated installer lang files 2018-05-13 00:06:28 +00:00
Andrew Nicols 823e08bf9d MDL-62393 message: Fix random unit test fails 2018-05-12 22:53:58 +08:00
Eloy Lafuente (stronk7) ab65b87f3d on-demand release 3.5beta+ 2018-05-12 12:57:26 +02:00
Eloy Lafuente (stronk7) 8b15175347 NOBUG: Fixed SVG browser compatibility 2018-05-12 12:57:24 +02:00
Jun Pataleta f946d87564 MDL-62414 tool_dataprivacy: Only show user's children in mydatarequests
* When coming from the DPO's "My data requests" page, don't show the
  picker for other users (unless the DPO is a parent of another user).
* When creating a data request as a DPO, show a more appropriate
  notification after redirecting back to the data requests page.
2018-05-12 10:19:47 +08:00
Jun Pataleta 2389ce39ac MDL-62413 tool_dataprivacy: Let users cancel data request made for them 2018-05-12 10:18:38 +08:00
Eloy Lafuente (stronk7) 1906a73574 MDL-61973 editor_atto: apply string changes to behat tests 2018-05-12 01:24:26 +02:00
Eloy Lafuente (stronk7) 5aa93d1b1f MDL-62275 qtype_calculatedmulti: Fix typo 2018-05-11 21:16:41 +02:00
David Monllao 9fa74e9374 MDL-62029 core_course: Site format is not a standard plugin 2018-05-11 20:15:27 +02:00
Bas Brands 526491f2f7 MDL-62153 Theme boost: lesson display issues on detailed statistics 2018-05-11 20:11:43 +02:00
Jun Pataleta 9eb19cdf94 Merge branch 'MDL-62075_master' of git://github.com/dmonllao/moodle 2018-05-12 00:29:56 +08:00
Eloy Lafuente (stronk7) 4f510bea17 Merge branch 'MDL-62384-master' of git://github.com/andrewnicols/moodle 2018-05-11 18:12:45 +02:00
Eloy Lafuente (stronk7) 614ebf05ea Merge branch 'MDL-61637_master' of git://github.com/dmonllao/moodle 2018-05-11 18:09:02 +02:00
David Monllao 28e06c2a17 Merge branch 'MDL-61858_master' of git://github.com/markn86/moodle 2018-05-11 18:06:50 +02:00
David Monllao e63a4ae540 Merge branch 'MDL-62368_master' of git://github.com/markn86/moodle 2018-05-11 17:59:20 +02:00
Bas Brands 881098f39c MDL-62386 theme: Fix audio playback display for HTML audio
Fixed for boost
Fixed for bootstrapbase
2018-05-11 14:51:04 +02:00
David Monllao 76fc9a4f5a Merge branch 'MDL-62376-master' of git://github.com/bmbrands/moodle 2018-05-11 14:47:32 +02:00
David Monllao 5da250d027 Merge branch 'MDL-58634-master' of git://github.com/bmbrands/moodle 2018-05-11 14:36:01 +02:00
Mark Nelson ffc148ae39 MDL-61858 tool_phpunit: added missing privacy null provider 2018-05-11 19:37:48 +08:00
Mark Nelson 61496b764a MDL-61858 gradingform_guide: added missing metadata implementation 2018-05-11 19:37:48 +08:00
Mark Nelson 776b4fef19 MDL-61858 core_portfolio: added missing metadata implementation 2018-05-11 19:37:48 +08:00
Andrew Nicols 7b4fa14f36 MDL-61858 core_privacy: Add test to ensure component implementations 2018-05-11 19:37:48 +08:00
Eloy Lafuente (stronk7) 3d8c0fb776 Merge branch 'MDL-61951-master' of git://github.com/sarjona/moodle 2018-05-11 13:21:58 +02:00
David Monllao aaa1140d9a Merge branch 'MDL-62397-master' of git://github.com/andrewnicols/moodle 2018-05-11 13:14:05 +02:00
Sara Arjona 5e08a28f9b MDL-61951 core_grading: Review SQL to avoid Oracle errors 2018-05-11 12:59:19 +02:00
David Monllao b96a064f14 Merge branch 'MDL-61714-master' of git://github.com/sarjona/moodle 2018-05-11 11:31:22 +02:00
Sara Arjona ee66104098 MDL-61714 admin: Removed Slovenian digital age 2018-05-11 10:12:16 +02:00
Andrew Nicols cef2c013d2 Merge branch 'MDL-62373_master' of git://github.com/dmonllao/moodle 2018-05-11 15:28:09 +08:00
David Monllao 868fc2aba1 MDL-61637 tool_dataprivacy: Point to new blocks API function 2018-05-11 09:05:43 +02:00
Jake Dallimore b513b36cfd Merge branch 'MDL-62354' of git://github.com/stronk7/moodle 2018-05-11 14:52:33 +08:00
Bas Brands 0ab6c0d546 MDL-58634 editor_atto: prevent notifications overlapping form fields 2018-05-11 08:38:21 +02:00
Jun Pataleta 0697a52218 Merge branch 'MDL-62394-master' of git://github.com/andrewnicols/moodle 2018-05-11 14:23:41 +08:00
Andrew Nicols 20f3b33b24 MDL-62394 privacy: Make JSON export pretty 2018-05-11 14:12:10 +08:00
Mark Nelson 3e642074ee MDL-62368 enrol_lti: implement privacy provider 2018-05-11 14:05:41 +08:00
Jun Pataleta 44d89dfa7a Merge branch 'MDL-62382-master' of git://github.com/ryanwyllie/moodle 2018-05-11 12:06:03 +08:00
Ryan Wyllie ebe7417f94 MDL-62382 quiz: include subcategories when previewing top categories
Include the subcategories when loading the list of questions for
a top level question in the add random question modal.
2018-05-11 11:51:50 +08:00
Andrew Nicols ddb1a13573 MDL-62397 tool_dataprivacy: Check for inactive status properly 2018-05-11 11:20:19 +08:00
Andrew Nicols 61b1cc4dd7 Merge branch 'wip-MDL-61814-master-fix' of git://github.com/abgreeve/moodle 2018-05-11 10:48:47 +08:00
Adrian Greeve 28f3776451 MDL-61814 report_stats: Update to sql to increase performance. 2018-05-11 10:44:51 +08:00
Jake Dallimore b3252ecdc1 MDL-61951 core_grading: SQL improvements for grading_instance join 2018-05-11 10:19:11 +08:00
Jake Dallimore 6f213a2fa2 Merge branch 'MDL-61951-master' of git://github.com/sarjona/moodle 2018-05-11 10:18:58 +08:00
Jun Pataleta 195f6fe37e Merge branch 'MDL-62388_master' of git://github.com/dmonllao/moodle 2018-05-11 10:03:44 +08:00
Mihail Geshoski b1add54344 MDL-62384 privacy: Modify user contexts query for auth_oauth2 2018-05-11 09:46:29 +08:00
Jun Pataleta 239c6202e2 Merge branch 'MDL-62117-master-fix' of git://github.com/andrewnicols/moodle 2018-05-11 09:34:37 +08:00
Andrew Nicols 932ee52ba7 MDL-62117 enrol_paypal: Improve SQL efficiency 2018-05-11 09:29:07 +08:00
Andrew Nicols 38e6852140 MDL-62384 core_rating: Move WHERE clauses to JOIN 2018-05-11 09:15:30 +08:00
Andrew Nicols a339908497 MDL-62384 core_grade: Move WHERE clause to JOIN 2018-05-11 09:15:30 +08:00
Andrew Nicols f6021ae0af MDL-62384 mod_lesson: Move WHERE clause to JOIN 2018-05-11 09:15:29 +08:00
Andrew Nicols 09f9af4729 MDL-62384 logstore_standard: Remove unnecessary join on context 2018-05-11 09:15:29 +08:00
Andrew Nicols 037027230a MDL-62384 mod_quiz: Improve performancy of privacy queries 2018-05-11 09:15:29 +08:00
Adrian Greeve d04b8d74a7 MDL-62384 mod_data: Update sql to improve performance. 2018-05-11 09:15:28 +08:00
Adrian Greeve 212d7fef05 MDL-62384 tool_monitor: Update to sql to fix performance. 2018-05-11 09:15:28 +08:00
Adrian Greeve 5a329d81f9 MDL-62384 core_competency: Update to sql to increase performance. 2018-05-11 09:15:27 +08:00
Adrian Greeve d8eec7ee38 MDL-62384 core_completion: Update to sql to improve performance. 2018-05-11 09:15:27 +08:00
Adrian Greeve 8a5b84cf8b MDL-62384 mod_assign: Update to sql query for performance. 2018-05-11 09:15:27 +08:00
Eloy Lafuente (stronk7) e4ad3ee714 Merge branch 'MDL-62380-master' of git://github.com/mihailges/moodle 2018-05-11 02:06:48 +02:00
Tim Hunt 75aa674b99 MDL-62275 qtype_calc*: improve validation of formulae
Many thanks to Marina Glancy for helping with this.
2018-05-11 01:21:16 +02:00
Eloy Lafuente (stronk7) 575b2eaa2d MDL-62354 notes: Reduce string to avoid js_call_amd() lenght limits
That way we are under the max 1024 allowed and also, the help string
is shown properly in the modal (previously part of it was not visible
falling off-window).
2018-05-10 23:30:22 +02:00
Eloy Lafuente (stronk7) a7a5d10319 Merge branch 'MDL-62277-master' of git://github.com/bmbrands/moodle 2018-05-10 20:50:20 +02:00
Andrew Nicols 00293f90a4 MDL-61635 tool_dataprivacy: Filter out protected contexts in delete 2018-05-10 20:36:02 +02:00
David Monllao 1f000f071e Merge branch 'MDL-62366-master' of git://github.com/zig-moodle/moodle 2018-05-10 18:13:44 +02:00
David Monllao 4033c2a11b Merge branch 'MDL-61714-master' of git://github.com/sarjona/moodle 2018-05-10 18:10:29 +02:00
David Monllao 74e82e4684 Merge branch 'MDL-62200-master' of git://github.com/bmbrands/moodle 2018-05-10 18:04:08 +02:00
David Monllao 7b6c74431b Merge branch 'MDL-61949-master-privacy-upgrade-txt' of git://github.com/mudrd8mz/moodle 2018-05-10 17:53:05 +02:00
David Monllao a319808cfb MDL-62075 tool_dataprivacy: Display correctly requests for other users 2018-05-10 17:43:59 +02:00
Bas Brands f01734122a MDL-62277 Theme boost: add badge criteria layout 2018-05-10 16:32:41 +02:00
David Monllao c459409c1b MDL-61637 tool_dataprivacy: Context-based fetching
Blocks API do not provide methods to retrieve a list of
blocks without filtering by UI-availability. We need to
get course blocks based on their course context.
2018-05-10 15:56:50 +02:00
Shamim Rezaie 8614257135 MDL-62251 Privacy: Fix dir separator in export_file() 2018-05-10 23:30:38 +10:00
Shamim Rezaie 07890336ab MDL-62251 Privacy: Url path separator should be platform independant
It should always be forward slash.
2018-05-10 23:30:38 +10:00
Shamim Rezaie 44efefcbeb MDL-62251 Privacy: Fix get_path() and get_full_path() bug in Windows 2018-05-10 23:30:23 +10:00
David Monllao c2a38d17a4 MDL-62388 tool_dataprivacy: Fixing bs4stable table layout 2018-05-10 14:58:11 +02:00
David Monllao bdc43d7729 MDL-62388 tool_dataprivacy: Default value if no sensitive data provided 2018-05-10 14:57:43 +02:00
Jake Dallimore 7feac02414 MDL-61951 core_grading: Several fixes to the privacy implementation
- Fixed legacy polyfill method definitions
- Added unit test for legacy polyfill
- Fixed delete_gradingform_for_userid in gradingform provider
2018-05-10 13:26:47 +02:00
Andrew Nicols 51e53b9f40 MDL-61905 mod_workshop: Adjust privacy SQL queries
This change moves the content of WHERE to the JOIN, thus filtering the
results before they are returned. This reduces the number of joined rows
which gives a big performance benefit.
2018-05-10 13:03:11 +02:00
Shamim Rezaie 4dfafed5d9 MDL-62251 Task: Make test_cron_delete_from_temp Unix independent 2018-05-10 20:13:09 +10:00
Eloy Lafuente (stronk7) 8e8ae80550 Merge branch 'MDL-62354-master-enfix' of git://github.com/mudrd8mz/moodle 2018-05-10 11:37:55 +02:00
David Mudrák 4f41ae2763 MDL-61949 privacy: Add mention of the new API in upgrade.txt files
The notice is explicitly repeated for activity modules because they
usually process user data heavily.
2018-05-10 11:35:12 +02:00
Bas Brands d2d150b21d MDL-62376 Theme boost: server side form validation for checkboxes 2018-05-10 11:12:31 +02:00
Shamim Rezaie da3c76158e MDL-62251 task: Fix file_temp_cleanup_task::execute() bug in Windows
$CFG->tempdir might contain both / and \ in Windows. Therefore, we need to
call realpatch() to be able to compare that with another patch.
2018-05-10 18:39:49 +10:00
Sara Arjona b1f1bd2e54 MDL-61714 admin: Update digital age consent map according legislation 2018-05-10 10:32:49 +02:00
Jake Dallimore eac66ff63c Merge branch 'MDL-61971-master' of git://github.com/mickhawkins/moodle 2018-05-10 16:23:22 +08:00
David Monllao 7258bf0bcf MDL-62373 tool_dataprivacy: Get rid of profile's contact dpo left-margin 2018-05-10 10:18:10 +02:00
Shamim Rezaie f181a24a0b MDL-62251 backup: Fix replace_tempdir() bug under Windows
rename() fails under Windows if the destination file/directory exists.
I modified the code to only call $this->get_workdir_path() once as that function
creates the directory if doesn't exist. And we don't want that considering the
behaviour of rename on Windows.
2018-05-10 18:16:09 +10:00
David Monllao 91037dfb29 MDL-62373 tool_dataprivacy: More spacing between rows 2018-05-10 09:01:23 +02:00
David Monllao 782b242ccb Merge branch 'MDL-61309-master' of git://github.com/andrewnicols/moodle 2018-05-10 08:46:32 +02:00
Andrew Nicols f662082974 MDL-61309 mod_forum: Improve privacy query performance 2018-05-10 14:05:53 +08:00
Jun Pataleta 4a70fd9973 Merge branch 'wip-MDL-62289-master' of git://github.com/abgreeve/moodle 2018-05-10 13:52:46 +08:00
Marina Glancy f5b667f1c5 MDL-62206 blocks: do not add fixed form elements as hidden 2018-05-10 12:08:41 +08:00
Adam Olley efc508c39c MDL-62210 mod_assign: limit file lookup to the target assign 2018-05-10 11:21:44 +08:00
Brendan Cox 1be5d6f4fe MDL-62210 mod_assign: improved validation in portfolio caller class 2018-05-10 11:21:44 +08:00
Jake Dallimore 84bc2245f7 Merge branch 'MDL-62383-master' of git://github.com/junpataleta/moodle 2018-05-10 10:03:32 +08:00
Jun Pataleta 6c0c9d5d08 MDL-62383 privacy: Close recordset in contextlist::add_from_sql() 2018-05-10 09:55:33 +08:00
Andrew Nicols dfa16c06a6 Merge branch 'MDL-61973-master' of git://github.com/mickhawkins/moodle 2018-05-10 09:47:10 +08:00
Jake Dallimore 34dd6c69ab MDL-62257 mnetservice_enrol: minor fixes to privacy provider 2018-05-10 09:36:40 +08:00
Jake Dallimore 24a12d96e5 Merge branch 'MDL-62257-master' of git://github.com/cescobedo/moodle 2018-05-10 09:35:02 +08:00
Mihail Geshoski 3f02b87df0 MDL-62380 themes: Minor verification pages not being displayed nicely 2018-05-10 09:35:01 +08:00
Eloy Lafuente (stronk7) c3da16f13d Merge branch 'MDL-61309-master' of git://github.com/andrewnicols/moodle 2018-05-10 09:17:31 +08:00
Eloy Lafuente (stronk7) 51b3c29b92 Merge branch 'MDL-62077-master' of git://github.com/bmbrands/moodle 2018-05-10 09:17:31 +08:00
David Monllao a83b43a118 Merge branch 'MDL-62308_master' of git://github.com/markn86/moodle 2018-05-10 09:17:30 +08:00
Eloy Lafuente (stronk7) 9d56e7925b Merge branch 'MDL-61976_master-fix' of git://github.com/dmonllao/moodle 2018-05-10 09:17:30 +08:00
David Monllao 7140f67a98 MDL-61976 mod_wiki: Trim returned value to avoid EOF-related failures 2018-05-10 09:17:29 +08:00
David Monllao 337673949b Merge branch 'MDL-62056-master' of git://github.com/sarjona/moodle 2018-05-10 09:17:28 +08:00
Andrew Nicols 06ede94f07 Merge branch 'wip-MDL-62351-master' of git://github.com/marinaglancy/moodle 2018-05-10 09:17:28 +08:00
David Monllao 1b764a2fde Merge branch 'MDL-62249-master' of git://github.com/zig-moodle/moodle 2018-05-10 09:17:27 +08:00
David Monllao 99a080f12a Merge branch 'MDL-62361' of git://github.com/stronk7/moodle 2018-05-10 09:17:25 +08:00
Zig Tan 0139b8828f MDL-62366 mod_assign: Followup fix for attemptnumber in exported JSON 2018-05-10 09:16:41 +08:00
Andrew Nicols 0f125a45f4 Merge branch 'MDL-62217_master' of git://github.com/dmonllao/moodle 2018-05-10 09:16:01 +08:00
Andrew Nicols 270cefc4b0 Merge branch 'MDL-62269-master' of git://github.com/vmdef/moodle 2018-05-10 09:16:00 +08:00
David Monllao a49a438536 Merge branch 'MDL-62364_master' of git://github.com/markn86/moodle 2018-05-10 09:15:59 +08:00
David Monllao 6fe7510ae0 Merge branch 'wip-MDL-61976-master' of git://github.com/marinaglancy/moodle 2018-05-10 09:15:59 +08:00
David Monllao 8a4b725f6d MDL-61994 mod_glossary: Fixing wrong subsystem name 2018-05-10 09:15:59 +08:00
David Monllao aea028ff29 Merge branch 'MDL-61994-master' of git://github.com/lameze/moodle 2018-05-10 09:15:58 +08:00
David Monllao f60b216de0 Merge branch 'MDL-61309-master' of git://github.com/andrewnicols/moodle 2018-05-10 09:15:57 +08:00
Brendan Cox d8609cb545 MDL-62232 mod_forum: Additional tests for portfolio file export 2018-05-10 09:15:57 +08:00
Adam Olley 5b89ff626d MDL-62232 mod_forum: Limit portfolio to files belonging to the post 2018-05-10 09:15:57 +08:00
Andrew Nicols 4191032993 Merge branch 'MDL-61905-master-privacyworkshop' of git://github.com/mudrd8mz/moodle 2018-05-10 09:15:56 +08:00
Andrew Nicols 178bb8c22e Merge branch 'MDL-62029-master-2' of git://github.com/snake/moodle 2018-05-10 09:15:55 +08:00
Jun Pataleta 9f358de241 Merge branch 'MDL-62332-master' of git://github.com/bmbrands/moodle 2018-05-10 09:15:55 +08:00
Andrew Nicols f7ca19afaa Merge branch 'MDL-62318-master' of git://github.com/rezaies/moodle 2018-05-10 09:15:54 +08:00
Andrew Nicols 820c234934 Merge branch 'MDL-62117-master' of git://github.com/rezaies/moodle 2018-05-10 09:15:54 +08:00
Andrew Nicols 5b98200ff4 Merge branch 'MDL-62051-master' of git://github.com/bmbrands/moodle 2018-05-10 09:15:46 +08:00
Marina Glancy 2d83a76ed7 MDL-62233 portfolio: check caller parent class 2018-05-10 09:13:03 +08:00
Andrew Nicols db4754e98c MDL-61309 mod_forum: Remove unnecessary deletion check 2018-05-10 07:45:27 +08:00
Sara Arjona 6416e87f26 MDL-61951 grading: Implement privacy API 2018-05-09 22:41:04 +02:00
David Mudrák 14e0ab3536 MDL-62354 tool_policy: Reflect the strings improvements in Behat tests 2018-05-09 22:39:22 +02:00
Helen Foster a5591614d5 MDL-62354 lang: Merge English strings from the en_fix language pack
Significant string changes:

* publishstate_help, core_notes - including GDPR guidance
* contactdataprotectionofficer_desc, tool_dataprivacy - removing mention
  of link on privacy policy page as it is not yet implemented
2018-05-09 22:39:21 +02:00
Bas Brands 5b399ba107 MDL-62077 Theme boost: position data registry edit button 2018-05-09 16:54:46 +02:00
Bas Brands b197ab3566 MDL-62359 Theme boost: allow breaks as separators in form groups 2018-05-09 16:50:16 +02:00
Mark Nelson 0f41e8a2a1 MDL-62308 core_backup: implement privacy provider
The provider was added to 'backup/util/ui/' due to
Moodle's implementation of autoclass loading. See
fetch_subsystems() in lib/classes/component.php.
2018-05-09 22:48:07 +08:00
Marina Glancy 468c8d39c3 MDL-62351 privacy: check that subsystem/plugintype exist 2018-05-09 17:37:31 +08:00
Mark Nelson b6b7c2636f MDL-62364 core: allow null for 'courseid' in notification_sent event
It's possible the '\core\message\message' object has a null value
for the 'courseid' which is used in \core\message\manager::send_message().
Make sure we compensate for this.
2018-05-09 17:27:00 +08:00
Marina Glancy 7cc21cb7bd MDL-61976 mod_wiki: implement privacy API 2018-05-09 17:26:52 +08:00
Victor Deniz 5d5881f0f8 MDL-62269 auth_mnet: Implement privacy API
AMOS BEGIN
 CPY [privacy:metadata:address,core_user],[privacy:metadata:mnet_external:address,auth_mnet]
 CPY [privacy:metadata:aim,core_user],[privacy:metadata:mnet_external:aim,auth_mnet]
 CPY [privacy:metadata:aim,core_user],[privacy:metadata:mnet_external:aim,auth_mnet]
 CPY [privacy:metadata:alternatename,core_user],[privacy:metadata:mnet_external:alternatename,auth_mnet]
 CPY [privacy:metadata:autosubscribe,core_user],[privacy:metadata:mnet_external:autosubscribe,auth_mnet]
 CPY [privacy:metadata:calendartype,core_user],[privacy:metadata:mnet_external:calendartype,auth_mnet]
 CPY [privacy:metadata:city,core_user],[privacy:metadata:mnet_external:city,auth_mnet]
 CPY [privacy:metadata:country,core_user],[privacy:metadata:mnet_external:country,auth_mnet]
 CPY [privacy:metadata:currentlogin,core_user],[privacy:metadata:mnet_external:currentlogin,auth_mnet]
 CPY [privacy:metadata:department,core_user],[privacy:metadata:mnet_external:department,auth_mnet]
 CPY [privacy:metadata:description,core_user],[privacy:metadata:mnet_external:description,auth_mnet]
 CPY [privacy:metadata:email,core_user],[privacy:metadata:mnet_external:email,auth_mnet]
 CPY [privacy:metadata:emailstop,core_user],[privacy:metadata:mnet_external:emailstop,auth_mnet]
 CPY [privacy:metadata:firstaccess,core_user],[privacy:metadata:mnet_external:firstaccess,auth_mnet]
 CPY [privacy:metadata:firstname,core_user],[privacy:metadata:mnet_external:firstname,auth_mnet]
 CPY [privacy:metadata:firstnamephonetic,core_user],[privacy:metadata:mnet_external:firstnamephonetic,auth_mnet]
 CPY [privacy:metadata:icq,core_user],[privacy:metadata:mnet_external:icq,auth_mnet]
 CPY [privacy:metadata:id,core_user],[privacy:metadata:mnet_external:id,auth_mnet]
 CPY [privacy:metadata:idnumber,core_user],[privacy:metadata:mnet_external:idnumber,auth_mnet]
 CPY [privacy:metadata:imagealt,core_user],[privacy:metadata:mnet_external:imagealt,auth_mnet]
 CPY [privacy:metadata:institution,core_user],[privacy:metadata:mnet_external:institution,auth_mnet]
 CPY [privacy:metadata:lang,core_user],[privacy:metadata:mnet_external:lang,auth_mnet]
 CPY [privacy:metadata:lastaccess,core_user],[privacy:metadata:mnet_external:lastaccess,auth_mnet]
 CPY [privacy:metadata:lastlogin,core_user],[privacy:metadata:mnet_external:lastlogin,auth_mnet]
 CPY [privacy:metadata:lastname,core_user],[privacy:metadata:mnet_external:lastname,auth_mnet]
 CPY [privacy:metadata:lastnamephonetic,core_user],[privacy:metadata:mnet_external:lastnamephonetic,auth_mnet]
 CPY [privacy:metadata:maildigest,core_user],[privacy:metadata:mnet_external:maildigest,auth_mnet]
 CPY [privacy:metadata:maildisplay,core_user],[privacy:metadata:mnet_external:maildisplay,auth_mnet]
 CPY [privacy:metadata:middlename,core_user],[privacy:metadata:mnet_external:middlename,auth_mnet]
 CPY [privacy:metadata:msn,core_user],[privacy:metadata:mnet_external:msn,auth_mnet]
 CPY [privacy:metadata:phone,core_user],[privacy:metadata:mnet_external:phone1,auth_mnet]
 CPY [privacy:metadata:picture,core_user],[privacy:metadata:mnet_external:picture,auth_mnet]
 CPY [privacy:metadata:policyagreed,core_user],[privacy:metadata:mnet_external:policyagreed,auth_mnet]
 CPY [privacy:metadata:skype,core_user],[privacy:metadata:mnet_external:skype,auth_mnet]
 CPY [privacy:metadata:suspended,core_user],[privacy:metadata:mnet_external:suspended,auth_mnet]
 CPY [privacy:metadata:timezone,core_user],[privacy:metadata:mnet_external:timezone,auth_mnet]
 CPY [privacy:metadata:trackforums,core_user],[privacy:metadata:mnet_external:trackforums,auth_mnet]
 CPY [privacy:metadata:trustbitmask,core_user],[privacy:metadata:mnet_external:trustbitmask,auth_mnet]
 CPY [privacy:metadata:url,core_user],[privacy:metadata:mnet_external:url,auth_mnet]
 CPY [privacy:metadata:username,core_user],[privacy:metadata:mnet_external:username,auth_mnet]
 CPY [privacy:metadata:yahoo,core_user],[privacy:metadata:mnet_external:yahoo,auth_mnet]
AMOS END
2018-05-09 10:15:20 +01:00
Barbara Ramiro 7e4bffd836 MDL-61973 editor_atto: refactoring media icons 2018-05-09 17:00:14 +08:00
David Monllao 94522f8dd0 MDL-62217 search_solr: Plugin provider fake implementation 2018-05-09 10:57:14 +02:00
David Monllao 74fc7d3120 MDL-62217 search: Privacy providers 2018-05-09 10:56:02 +02:00
David Mudrák 59a8a5c0b8 MDL-61905 workshop: Implement privacy API in grading evaluators
Standard workshop ships with only one evaluation method and that one
holds no personal data.
2018-05-09 10:01:50 +02:00
David Mudrák 4b8d462ee6 MDL-61905 workshop: Implement privacy API in assessment allocators
Assessment allocation methods normally do not store any personal data.
Their duty is to create assessment records that are then exported by the
workshop core itself.

Still, some allocators (such as the Manual allocation) can store certain
personal data such as user preferences.
2018-05-09 10:01:50 +02:00
David Mudrák fe745a0a84 MDL-61905 workshop: Implement privacy API in grading strategies
On low level, standard grading strategies subplugins do not store
personal themselves.  They make use of the grades storage provided by
the workshop itself.  What they do contain though is the information
about how the assessment forms were defined. And they are also
responsible for correctly interpreting the values in the central grades
table.

Grading strategies fulfil the contract with the parent workshop module
by implementing the workshopform_provider interface. That gives them a
chance to export data about the assessment form to each of exported
assessment.
2018-05-09 10:01:50 +02:00
David Mudrák 84a57322c2 MDL-61905 workshop: Implement the privacy API in the workshop core
Workshop module stores personal data in its tables, via user
preference and via core_files and core_plagiarism subsystems.

When exporting the data, we export not only data created by users
themselves (such as their submissions and provided peer-assessments) but
also all relevant data that can (or must) be used to interpret created
content and evaluate the user's performance and skills.

On the other hand, when deleting data at user's request, we delete only
those data that do not affect other users' performance evaluation. The
reasoning is that one's right for privacy does not overweight someone
else's right for fair assessment. For that reason, we can't fully delete
whole provided peer-assessments, for example. Because they are used in
cross-comparison and grading evaluation of all other peers who assessed
the same submission. So instead, we replace provided texts but still
keep the original record.

Workshop defines the interface for its grading strategy subplugins to
allow them attach personal data under their control to the exported
structures.
2018-05-09 10:01:50 +02:00
Jake Dallimore e4a37fbef1 MDL-62029 core_course: Fixes to context-aware provider implementation. 2018-05-09 15:34:41 +08:00
Sara Arjona fd7174d03f MDL-62056 policy: Adapt code to avoid travis errors on Github 2018-05-09 08:31:32 +02:00
Andrew Nicols 3e95e09b67 MDL-61309 mod_forum: Implement privacy deletion 2018-05-09 14:04:13 +08:00
Andrew Nicols caef6489ae MDL-61309 mod_forum: Implement the Privacy API 2018-05-09 14:04:12 +08:00
Andrew Nicols 2de389aa05 MDL-61309 core_tags: Add privacy unit test trait 2018-05-09 14:04:12 +08:00
Michael Hawkins be5cc0ba03 MDL-61971 dataprivacy: Added warning messages where data request pages are viewed on non-HTTPS sites 2018-05-09 11:59:26 +08:00
Shamim Rezaie 5c87353833 MDL-62318 core_group: Updating cache when deleting group memberships 2018-05-09 13:29:39 +10:00
Shamim Rezaie 55c1865638 MDL-62318 core_group: Add implementation of privacy API 2018-05-09 13:29:26 +10:00
Simey Lameze fe80a5ab66 MDL-61994 mod_glossary: add unit tests for provider 2018-05-09 10:57:42 +08:00
Simey Lameze a92bbd867d MDL-61994 mod_glossary: implement privacy providers 2018-05-09 10:57:13 +08:00
Adrian Greeve c8e4922194 MDL-62289 tool_dataprivacy: Ensure all user data deleted.
We now do a comprehensive check and clean of user data when
a user context expires.
2018-05-09 10:16:39 +08:00
Adrian Greeve 9faf51a7ca MDL-62029 core_privacy: context aware provider creation. 2018-05-09 10:11:47 +08:00
Adrian Greeve fd9c70c43f MDL-62029 core_course: Create privacy files for core_course. 2018-05-09 10:11:41 +08:00
Marina Glancy ce3f804683 MDL-61996 core: when loggedin always check user is complete 2018-05-09 02:55:55 +02:00
Eloy Lafuente (stronk7) 12ed3e2716 MDL-62361 versions: main version bump 2018-05-09 02:48:22 +02:00
Eloy Lafuente (stronk7) 57ea6753d3 MDL-62361 versions: bump all versions and requires near release
version = 2018051400 release version
requires= 2018050800 current beta+ (week4roll1) version
2018-05-09 02:46:30 +02:00
Andrew Nicols 4864a25baf Merge branch 'MDL-62010-master' of git://github.com/cescobedo/moodle 2018-05-09 08:12:27 +08:00
cescobedo 451f4a284c MDL-62010 core_enrol: Add privacy implementation for core_enrol 2018-05-08 18:52:25 +02:00
David Monllao 93ba31b27c MDL-61814 core_user: Remove empty line to avoid ci warning 2018-05-08 17:19:23 +02:00
David Monllao 40cd9b66a6 Merge branch 'wip-MDL-61814-master' of git://github.com/abgreeve/moodle 2018-05-08 17:17:47 +02:00
David Monllao 5d2dd881e3 Merge branch 'MDL-61943-master' of git://github.com/cescobedo/moodle 2018-05-08 16:43:50 +02:00
Bas Brands 95d7c77b28 MDL-62051 Theme boost: access restriction layout 2018-05-08 16:13:00 +02:00
David Monllao 02c7769422 on-demand release 3.5beta+ 2018-05-08 14:02:40 +02:00
David Monllao 69a0a8edef NOBUG: Fixed file access permissions 2018-05-08 14:02:40 +02:00
David Monllao 127f9c8274 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-05-08 14:02:38 +02:00
cescobedo a69de9ba05 MDL-61943 core_role: Add privacy implementation for core_role 2018-05-08 13:40:30 +02:00
cescobedo 7c7ace009a MDL-62257 mnetservice_enrol: Implement Privacy API 2018-05-08 10:09:25 +02:00
Bas Brands ea6dfd78ce MDL-62332 Theme boost: paging bar empty active link 2018-05-08 09:26:14 +02:00
Andrew Nicols 800c81dc38 MDL-61876 admin: Bump version 2018-05-08 14:47:29 +08:00
Andrew Nicols 9f7aeac5e5 Merge branch 'wip-MDL-61937-master-fix' of https://github.com/marinaglancy/moodle 2018-05-08 14:43:04 +08:00
Marina Glancy ae3b1c0048 MDL-61937 mod_data: fix commentarea name 2018-05-08 14:39:23 +08:00
Adrian Greeve b781f58e91 MDL-61814 report_stats: Update to be a full privacy provider. 2018-05-08 13:42:05 +08:00
Adrian Greeve ab78499bbd MDL-61814 core_portfolio: Update to portfolio provider. 2018-05-08 13:42:05 +08:00
Andrew Nicols 4f2bc5bc8f MDL-61876 admin: Move forceclean to experimental settings 2018-05-08 13:30:09 +08:00
Andrew Nicols 1144ae255f Revert "MDL-61876 admin: set default forceclean=1"
This reverts commit c182f060fa.
2018-05-08 13:28:12 +08:00
Andrew Nicols e3a1b34376 Revert "MDL-61876 admin: for upgraded sites keep forceclean=0"
This reverts commit 7529031368.
2018-05-08 13:28:09 +08:00
Zig Tan e151fdad92 MDL-62249 block_tag_flickr: Corrected privacy providers 2018-05-08 12:11:46 +08:00
Marina Glancy 2d9d4a1d88 MDL-61976 privacy: replace pluginfile in test writer 2018-05-08 12:03:41 +08:00
Marina Glancy 8dd8486355 MDL-61976 privacy: add subcontext argument to has_any_data 2018-05-08 12:03:41 +08:00
Adrian Greeve c49f309204 MDL-61814 core_user: Implement privacy system for user. 2018-05-08 11:44:37 +08:00
Andrew Nicols a9be2f18bd Merge branch 'wip-MDL-62068-master' of git://github.com/marinaglancy/moodle 2018-05-08 11:39:44 +08:00
Andrew Nicols 44d8324247 Merge branch 'MDL-62281-master' of git://github.com/sarjona/moodle 2018-05-08 11:34:46 +08:00
Marina Glancy 2207b0fa9f MDL-62068 core_tag: implement privacy API 2018-05-08 11:30:54 +08:00
Shamim Rezaie 31fd863bd9 MDL-62117 enrol_paypal: Add implementation of Privacy API 2018-05-08 13:30:42 +10:00
Andrew Nicols 630a72f19f Merge branch 'MDL-62285-master' of git://github.com/ryanwyllie/moodle 2018-05-08 11:08:03 +08:00
Andrew Nicols b043073143 Merge branch 'MDL-62274-master' of git://github.com/bmbrands/moodle 2018-05-08 08:38:13 +08:00
Eloy Lafuente (stronk7) fc8cc24c85 Merge branch 'MDL-61521-master' of git://github.com/jleyva/moodle 2018-05-08 01:41:32 +02:00
Eloy Lafuente (stronk7) e2ede0b5c3 Merge branch 'MDL-62295-master' of git://github.com/bmbrands/moodle 2018-05-08 01:02:35 +02:00
Eloy Lafuente (stronk7) d0ce3439fe Merge branch 'wip-MDL-61876-fix' of https://github.com/marinaglancy/moodle 2018-05-07 19:15:28 +02:00
Bas Brands 3560cf5f82 MDL-62322 Theme boost: update template display classes 2018-05-07 15:06:14 +02:00
Bas Brands 29587cc9da MDL-62274 Theme boost: bootstrap classes define roles form 2018-05-07 14:36:48 +02:00
Sara Arjona a22f7bbb3a MDL-62281 tool_policy: Remove empty row in Policies and agreements page 2018-05-07 12:53:40 +02:00
David Monllao 775db1409e Merge branch 'MDL-62326-master' of git://github.com/andrewnicols/moodle 2018-05-07 12:09:40 +02:00
Bas Brands 54cbfbca8a MDL-62295 Theme boost: duration form field alignment 2018-05-07 11:39:57 +02:00
Andrew Nicols b175d43408 Merge branch 'MDL-62169-master' of git://github.com/zig-moodle/moodle 2018-05-07 17:24:26 +08:00
Jun Pataleta ea083b0a5e Merge branch 'MDL-62062-master' of git://github.com/sarjona/moodle 2018-05-07 17:21:49 +08:00
Zig Tan 966dd82d90 MDL-62169 mod_assignment: Improved phpunit test reliability 2018-05-07 16:32:49 +08:00
Sara Arjona 461b1931c0 MDL-62062 tool_policy: Let manager/dpo withdraw consent to policies
The policies can be revoked by clicking the "Agreed [on behalf]" ticks.
A message has been added also to explain users they must contact to
the DPO if they want to withdraw their consent to policies.
2018-05-07 10:11:13 +02:00
Andrew Nicols 53a58dda1c Merge branch 'MDL-61919_master' of git://github.com/markn86/moodle 2018-05-07 15:45:43 +08:00
Andrew Nicols 9846d710fe Merge branch 'wip-MDL-62137-master' of git://github.com/abgreeve/moodle 2018-05-07 15:24:01 +08:00
Andrew Nicols aad32d11f5 MDL-62326 core_antivirus: Implement null provider 2018-05-07 14:31:14 +08:00
Adrian Greeve 6d3b250b4f MDL-62137 core_privacy: Update to helper to use core_completion 2018-05-07 14:28:17 +08:00
Adrian Greeve ebab932f71 MDL-62137 core_completion: Privacy files for core_completion. 2018-05-07 14:28:16 +08:00
Andrew Nicols e9e2ef7da7 Merge branch 'MDL-62169-master' of git://github.com/zig-moodle/moodle 2018-05-07 14:12:06 +08:00
Zig Tan 0fed66ad0f MDL-62169 mod_assignment: Implemented privacy providers 2018-05-07 13:38:56 +08:00
Andrew Nicols c9b29e6b98 Merge branch 'MDL-62171-master' of git://github.com/bmbrands/moodle 2018-05-07 13:10:34 +08:00
David Monllao 2963a540ef Merge branch 'MDL-62291-master' of git://github.com/junpataleta/moodle 2018-05-07 06:12:00 +02:00
Marina Glancy 8852faea91 MDL-61876 modules: cm_info::set_content can accept formatted text
Allow modules to apply format_text() on user input before calling cm_info::set_content(). This is useful for
modules that add interactive content (for example, JS enhanced folder tree). Otherwise all javascript would
be removed if $CFG->forceclean is enabled.
2018-05-07 11:27:56 +08:00
Michael Hawkins 910b62a3d0 MDL-61973 editor_atto: refactoring media icons 2018-05-07 11:21:40 +08:00
Marina Glancy b03c67e978 MDL-61876 mod_data: call format_text on template before replacement
Otherwise when $CFG->forceclean is enabled all search input fields are stripped out
2018-05-07 11:21:06 +08:00
Jun Pataleta 23fbd252db Merge branch 'MDL-62286-master' of git://github.com/sarjona/moodle 2018-05-07 10:05:24 +08:00
Jun Pataleta 97f1c1f424 Merge branch 'MDL-61937-master-fix' of git://github.com/andrewnicols/moodle 2018-05-07 09:38:10 +08:00
Jun Pataleta fbd7daf50e Merge branch 'MDL-61937_master-fix' of git://github.com/dmonllao/moodle 2018-05-07 09:37:55 +08:00
Andrew Nicols ea80f967b8 MDL-61937 mod_data: Correct rating export args in privacy 2018-05-07 09:28:54 +08:00
Andrew Nicols a5c2308443 MDL-61407 question: Export step files in privacy 2018-05-07 07:09:30 +08:00
Eloy Lafuente (stronk7) fc5c5306c9 MDL-61693 core_calendar: make results deterministic for better testing 2018-05-06 18:19:21 +02:00
David Monllao 70e8515ea8 MDL-62218 analytics: Add missing sample origin checking 2018-05-04 16:35:42 +02:00
Bas Brands bfe00e67a3 MDL-62200 Theme boost: popup in popup styles 2018-05-04 13:56:46 +02:00
Eloy Lafuente (stronk7) fcb7459569 Merge branch 'wip-MDL-61876-master-fix' of https://github.com/marinaglancy/moodle 2018-05-04 12:11:16 +02:00
David Monllao 62c9d0877a MDL-61937 mod_data: Target the correct area 2018-05-04 11:55:25 +02:00
Frédéric Massart 9967731256 MDL-61877 core_competency: False negative due to random ordering 2018-05-04 11:18:42 +02:00
Marina Glancy 7529031368 MDL-61876 admin: for upgraded sites keep forceclean=0 2018-05-04 15:55:45 +08:00
Zig Tan bdf271df80 MDL-61693 core_calendar: Simplified get calendar event details SQL 2018-05-04 13:01:37 +08:00
Jake Dallimore 209f6e1eda Merge branch 'MDL-61407-master' of git://github.com/andrewnicols/moodle 2018-05-04 11:50:26 +08:00
Andrew Nicols 9b3159246f Merge branch 'wip-MDL-61937-master' of git://github.com/marinaglancy/moodle 2018-05-04 11:29:24 +08:00
Jun Pataleta cb596d823f Merge branch 'MDL-61877-master' of git://github.com/FMCorz/moodle 2018-05-04 11:25:49 +08:00
Marina Glancy ab803d697c MDL-61937 mod_data: implement privacy provider 2018-05-04 11:22:15 +08:00
Marina Glancy 1c4b87cb97 MDL-61937 tag: new method in privacy api 2018-05-04 11:22:14 +08:00
Marina Glancy e5ec530a44 MDL-61937 rating: delete method in privacy provider 2018-05-04 11:22:14 +08:00
Marina Glancy 70703d4c51 MDL-61937 comment: do not use API in provider
When exporting comments we can not use comments API because:
- we don't need to call component validate, comments may be disabled right now but
  are still stored
- we don't need to call display callback
- we need to export all comments and not only first 15 of them
2018-05-04 11:22:14 +08:00
Marina Glancy a7a6be90c8 MDL-61937 mod_data: generator for all field types 2018-05-04 11:22:14 +08:00
cescobedo ed54f4e11e MDL-61937 datafield: Add privacy implementation for all datafield 2018-05-04 11:22:13 +08:00
Andrew Nicols 2cae92c6c3 Merge branch 'MDL-62218-master' of git://github.com/ryanwyllie/moodle 2018-05-04 11:11:14 +08:00
Ryan Wyllie 28b870b4de MDL-62218 analytics: make privacy test class name more unique 2018-05-04 11:04:24 +08:00
Jun Pataleta 66156ad245 Merge branch 'MDL-62151-master' of git://github.com/bmbrands/moodle 2018-05-04 10:55:50 +08:00
Jake Dallimore 1c73a11a20 Merge branch 'MDL-62046-master' of git://github.com/mihailges/moodle 2018-05-04 10:26:41 +08:00
Jake Dallimore 6ef8a82599 Merge branch 'MDL-62032-master' of git://github.com/mihailges/moodle 2018-05-04 09:56:37 +08:00
Jake Dallimore e46c60db2a Merge branch 'MDL-62030-master' of git://github.com/mihailges/moodle 2018-05-04 09:51:39 +08:00
Jake Dallimore 2566b18a31 Merge branch 'MDL-59845-master' of git://github.com/andrewnicols/moodle 2018-05-04 09:43:14 +08:00
Jake Dallimore 4fb76c0fac Merge branch 'MDL-62007-master' of git://github.com/mihailges/moodle 2018-05-04 09:19:51 +08:00
Andrew Nicols 67e2ee0b65 Merge branch 'wip-MDL-61876-master' of git://github.com/marinaglancy/moodle 2018-05-04 08:03:48 +08:00
Eloy Lafuente (stronk7) 6c0b4929c6 Merge branch 'MDL-62315-master-privacycoreform' of git://github.com/mudrd8mz/moodle 2018-05-03 23:40:37 +02:00
Eloy Lafuente (stronk7) 3149bea2c4 Merge branch 'MDL-61800-master' of git://github.com/andrewnicols/moodle 2018-05-03 23:27:51 +02:00
Eloy Lafuente (stronk7) 6a23fb2171 MDL-62202 privacy: fix behat tests to point to new location under users 2018-05-03 22:48:29 +02:00
David Mudrák fa7297aff0 MDL-62315 form: Implement the privacy API for core_form subsystem
Forms subsystem has no own database table. The only personal data is the
user preference 'filemanager_recentviewmode' that stores the view mode
of the file picker element.

It was discussed whether handling of this preference should be added
here into core_form, or rather into core_repository subsystem. The final
decision was to consider the preference as owned by the core_form
because it is affecting the display of a form element, not the
repository backend (even though the strings describing it had been put
into core_repository strings).
2018-05-03 19:05:39 +02:00
David Monllao bf694d4724 Merge branch 'MDL-62254_master' of https://github.com/nadavkav/moodle 2018-05-03 16:08:11 +02:00
David Monllao 6474044464 Merge branch 'MDL-62227-master' of git://github.com/bmbrands/moodle 2018-05-03 15:49:43 +02:00
David Monllao 97b0a6cbfc MDL-62218 analytics: Privacy API implementation 2018-05-03 15:28:22 +02:00
Mark Nelson 04cd1b3f31 MDL-61919 core_message: implement privacy provider 2018-05-03 20:44:05 +08:00
Sara Arjona 3d34aa5c29 MDL-62062 tool_policy: Avoid access to consent page after agreeding
Once the policies have been accepted, only users with permission to
revoke them will be able to access again to the user consent page.
2018-05-03 13:59:21 +02:00
Andrew Nicols 545e2b4ec7 Merge branch 'MDL-62240-master' of git://github.com/sarjona/moodle 2018-05-03 18:57:28 +08:00
Jake Dallimore 9ab7a315d1 Merge branch 'MDL-62310-master' of git://github.com/cescobedo/moodle 2018-05-03 18:00:40 +08:00
Bas Brands ae0629d284 MDL-62171 Theme boost: modal accessibility focus 2018-05-03 11:54:26 +02:00
Jun Pataleta 46cb408e30 MDL-62291 tool_dataprivacy: Change DPO mapping setting to multi-checkbox 2018-05-03 17:26:31 +08:00
Jun Pataleta c166b700d8 Merge branch 'MDL-61194-master' of git://git.cameron1729.xyz/moodle 2018-05-03 17:07:57 +08:00
Cameron Ball 23fe1e2bed MDL-61194 assignfeedback_editpdf: Check if we can convert online text
This patch adds a check to make sure there is a converter available that
will be able to handle html->pdf conversion before adding onlinetext
submissions to the list of files to combine.
2018-05-03 16:44:27 +08:00
Mihail Geshoski fd4c7d6461 MDL-62046 profilefield_textarea: Add privacy files and unit tests 2018-05-03 16:25:58 +08:00
David Monllao 3128529784 Merge branch 'MDL-61693-master' of git://github.com/zig-moodle/moodle 2018-05-03 10:24:02 +02:00
Andrew Nicols 50f5a097a2 MDL-61407 privacy: Reset the writer after writer tests
The writer was not reset after these tests which had the potential to
affect the next test after these were run.
2018-05-03 16:14:38 +08:00
Andrew Nicols 09a9b8f1ac MDL-61407 quizaccess: Add null_writer implementations 2018-05-03 16:14:38 +08:00
Andrew Nicols 2e85118fb3 MDL-61407 quiz: Add reports for quiz 2018-05-03 16:14:37 +08:00
Andrew Nicols 05014132b6 MDL-61407 qtype: Add null_writer for all qtypes 2018-05-03 16:14:37 +08:00
Andrew Nicols 80b0c733f2 MDL-61407 qformat: Add null_writer for all qformats
Questions formats do not store any personal data.
Any contrib format which does store personal data should utilise the
standard export interfaces as this subsystem will not call them directly.
2018-05-03 16:14:36 +08:00
Andrew Nicols fa9eba7d84 MDL-61407 question: Add null_writer for all behaviours
Behaviours do not store any personal data.
Any contrib behaviour which does store personal data should utilise the
standard export interfaces as this subsystem will not call them directly.
2018-05-03 16:14:36 +08:00
Andrew Nicols 4c729982c7 MDL-61407 mod_quiz: Add initial privacy implementation 2018-05-03 16:14:36 +08:00
Andrew Nicols d44064cdd6 MDL-61407 question: Add initial privacy implementation 2018-05-03 16:14:35 +08:00
David Monllao 4e7232b82e Merge branch 'MDL-62058-master' of git://github.com/bmbrands/moodle 2018-05-03 10:11:28 +02:00
David Monllao 205994bafe Merge branch 'MDL-62059-master' of git://github.com/rezaies/moodle 2018-05-03 10:08:09 +02:00
Mihail Geshoski cf6a77fbbb MDL-62032 profilefield_text: Add privacy files and unit tests 2018-05-03 16:07:55 +08:00
Mihail Geshoski a15712ef6e MDL-62030 profilefield_menu: Add privacy files and unit tests 2018-05-03 15:51:52 +08:00
Jun Pataleta f2cb3952af Merge branch 'MDL-62282-master' of git://github.com/ryanwyllie/moodle 2018-05-03 15:40:55 +08:00
Bas Brands 5e92cf33c5 MDL-62151 Theme boost: mod_chat styles 2018-05-03 09:34:40 +02:00
Mihail Geshoski 8ddb08c9d9 MDL-62007 profilefield_checkbox: Modify privacy provider 2018-05-03 15:27:50 +08:00
Sara Arjona 7a3707797d MDL-62240 privacy: Avoid error when path is higher than allowed
A new method shorten_filenames has been added to moodlelib.
2018-05-03 09:16:13 +02:00
Mihail Geshoski 76b61aa064 MDL-62007 profilefield_datetime: Add privacy files and unit tests 2018-05-03 14:57:41 +08:00
Jun Pataleta 2bb0f8923c Merge branch 'MDL-61956-master' of https://github.com/lucaboesch/moodle 2018-05-03 14:46:52 +08:00
Andrew Nicols 76cb5a56ea MDL-62240 file: Add includehash to shorten_filename + unit tests 2018-05-03 08:27:12 +02:00
Jake Dallimore 2891577f61 Merge branch 'MDL-62264-master' of git://github.com/cescobedo/moodle 2018-05-03 14:03:29 +08:00
Jun Pataleta 198c797a73 Merge branch 'MDL-62202-master' of git://github.com/sarjona/moodle 2018-05-03 13:31:53 +08:00
Andrew Nicols d28429859e Merge branch 'MDL-62009-master' of git://github.com/FMCorz/moodle 2018-05-03 12:15:54 +08:00
Andrew Nicols bacaac3a12 Merge branch 'wip-MDL-62312-master' of git://github.com/marinaglancy/moodle 2018-05-03 11:09:23 +08:00
Jake Dallimore bb35eb7da7 Merge branch 'MDL-62280-master' of git://github.com/andrewnicols/moodle 2018-05-03 10:52:48 +08:00
Marina Glancy 3127fe10b8 MDL-62312 course: Move core_publish renderer methods to course renderer 2018-05-03 10:08:37 +08:00
Jun Pataleta d16be43c05 Merge branch 'MDL-60414-master' of https://github.com/lucaboesch/moodle 2018-05-03 09:33:20 +08:00
Andrew Nicols 27013d397c Merge branch 'MDL-62163-master' of git://github.com/bmbrands/moodle 2018-05-03 09:25:55 +08:00
Andrew Nicols 159f057751 Merge branch 'wip-MDL-62276-master' of https://github.com/Beedell/moodle 2018-05-03 09:18:29 +08:00
AMOS bot 350fb7829a Automatically generated installer lang files 2018-05-03 00:06:17 +00:00
Jun Pataleta 3cfbce12a6 MDL-62312 admin: Move moodleorg_registration_message to admin renderer 2018-05-02 23:41:59 +08:00
Bas Brands ede6125a08 MDL-62163 Theme boost: add flex-grow 1 to atto felement content 2018-05-02 15:41:17 +02:00
Sara Arjona 54659fd14d MDL-62286 tool_policy: Add Policies link to the site footer 2018-05-02 14:20:49 +02:00
Andrew Nicols cc98914e85 MDL-61407 question: Allow formatters to ignore caps 2018-05-02 19:13:30 +08:00
Andrew Nicols 04507546ec MDL-61407 privacy: Track changes in any context 2018-05-02 19:13:30 +08:00
cescobedo 7ee1f3dede MDL-62310 core_admin: Implement Privacy API 2018-05-02 11:55:11 +02:00
Andrew Nicols b3359e2a3b MDL-62135 tool_log: Use plugintype_class_callback 2018-05-02 17:47:35 +08:00
Luca Bösch 000355f223 MDL-60414 theme_boost: bootstrap dropdown menu html spec char rendering 2018-05-02 11:40:51 +02:00
Andrew Nicols 028fb5c1f6 Merge branch 'MDL-62135-master' of git://github.com/FMCorz/moodle 2018-05-02 17:37:47 +08:00
cescobedo 61547a4d68 MDL-62264 core_mnet: Implement Privacy API 2018-05-02 11:17:03 +02:00
Frédéric Massart fc6cf1802e MDL-62135 logstore_legacy: Implement privacy API 2018-05-02 17:15:48 +08:00
Frédéric Massart 0f3bcbb92e MDL-62135 logstore_database: Implement privacy API 2018-05-02 17:15:48 +08:00
Frédéric Massart ab01e8a970 MDL-62135 logstore_standard: Implement privacy API 2018-05-02 17:15:48 +08:00
Frédéric Massart 2bc753db41 MDL-62135 tool_log: Implement privacy API 2018-05-02 17:15:47 +08:00
David Monllao cee06411b5 MDL-62218 mlbackend: Null privacy providers for core mlbackends 2018-05-02 11:14:33 +02:00
David Mudrák ea2ede2cf6 MDL-61905 workshop: Drop the old 1.x era tables
These tables may still contain relics of old personal data if the site
was installed before Moodle 2.0. We do not need these tables any more.
Following the "privacy by design" principles, we are dropping them now.
2018-05-02 10:35:01 +02:00
Luca Bösch 0188d5b5b4 MDL-61956 calendar: allow to see hidden course with switch role 2018-05-02 09:37:32 +02:00
Sara Arjona a97af76c0b MDL-62202 privacy: Move Privacy and policies category to Users page 2018-05-02 08:44:33 +02:00
Jun Pataleta 1b35627570 Merge branch 'MDL-62253-master' of git://github.com/FMCorz/moodle 2018-05-02 13:53:43 +08:00
Jun Pataleta c39c3edb8e Merge branch 'MDL-61898-master' of git://github.com/andrewnicols/moodle 2018-05-02 13:46:56 +08:00
Andrew Nicols fa43449aad Merge branch 'MDL-62150-master' of git://github.com/bmbrands/moodle 2018-05-02 13:38:07 +08:00
Andrew Nicols f7bac7ac8d MDL-61898 cache: Implement privacy API for all stores and locks 2018-05-02 13:36:07 +08:00
Andrew Nicols d1430a1e83 Merge branch 'MDL-62214-master-fixup' of https://github.com/FMCorz/moodle 2018-05-02 13:09:12 +08:00
Andrew Nicols 475fddc99a Merge branch 'MDL-61920_master' of git://github.com/markn86/moodle 2018-05-02 12:52:50 +08:00
Frédéric Massart f43d811e96 MDL-62214 tool_messageinbound: False negative due to time() usage
PHP Unit is so fast that my test couldn't cope with it!
2018-05-02 12:44:42 +08:00
Andrew Nicols 88ab001b25 Merge branch 'MDL-62266-master' of git://github.com/sarjona/moodle 2018-05-02 12:33:40 +08:00
Andrew Nicols db65b09188 Merge branch 'MDL-62214-master' of git://github.com/FMCorz/moodle 2018-05-02 12:28:52 +08:00
Jun Pataleta 030c58dcb9 Merge branch 'MDL-62189-master' of git://github.com/bmbrands/moodle 2018-05-02 12:24:20 +08:00
Ryan Wyllie 3041fe6faa MDL-62285 privacy: use context id when generating context path
moodle_content_writer::get_context_path() now includes the context
id in the path to ensure that it will always generate unique paths
even when the context names are not unique.
2018-05-02 12:08:58 +08:00
Andrew Nicols cd305dc26b MDL-61800 task: Reset the OUTPUT and PAGE on execution 2018-05-02 11:57:13 +08:00
Andrew Nicols 499f2ee9ce Merge branch 'MDL-62236-master' of git://github.com/FMCorz/moodle 2018-05-02 10:51:50 +08:00
Jake Dallimore e1ceb10ee8 Merge branch 'MDL-62268-master' of git://github.com/bmbrands/moodle 2018-05-02 10:12:32 +08:00
Andrew Nicols f4524f8da3 MDL-59845 tool_lp: Add js tracking around UI refresh 2018-05-02 09:15:43 +08:00
Andrew Nicols 850dfdeadb Merge branch 'MDL-62212-master' of git://github.com/bmbrands/moodle 2018-05-02 08:27:34 +08:00
Andrew Nicols 2a17a616a3 Merge branch 'MDL-62149-master' of git://github.com/ryanwyllie/moodle 2018-05-02 07:39:30 +08:00
Andrew Nicols 0fc5b4e17a Merge branch 'MDL-62186-master' of git://github.com/bmbrands/moodle 2018-05-02 07:31:27 +08:00
Eloy Lafuente (stronk7) 446d8483a3 on-demand release 3.5beta+ 2018-05-01 23:04:48 +02:00
Eloy Lafuente (stronk7) 40938ae2d8 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-05-01 23:04:45 +02:00
Frédéric Massart 048b266f14 MDL-62167 core_badges: Remove usage of a reserved keyword of Oracle 2018-05-01 15:21:46 +02:00
Frédéric Massart 91161a6325 MDL-62167 core_badges: Prevent SQL error with Oracle 2018-05-01 15:21:46 +02:00
John Beedell a3893e1b4d MDL-62276 Quiz: Review options section poor layout in boost theme 2018-05-01 11:26:22 +01:00
Andrew Nicols 16f18cb984 Merge branch 'wip-MDL-61308-master-unitfix' of git://github.com/abgreeve/moodle 2018-05-01 12:21:55 +02:00
Adrian Greeve bfb57d2c16 MDL-61308 assignsubmission_comments: Unit test ordering fix. 2018-05-01 12:21:47 +02:00
Andrew Nicols 7085e286c0 Merge branch 'MDL-62231-master' of git://github.com/rezaies/moodle 2018-05-01 12:21:36 +02:00
Bas Brands d42139ace6 MDL-62189 Theme boost: add filepicker container fix padding 2018-05-01 09:05:44 +02:00
Shamim Rezaie 1de2a1598e MDL-62231 block_recent_activity: Implement null provider for the block 2018-05-01 14:07:17 +10:00
Andrew Nicols 39b17e9933 Merge branch 'wip-MDL-62138-master' of git://github.com/marinaglancy/moodle 2018-05-01 11:46:27 +08:00
Andrew Nicols cb3cd93b39 Merge branch 'MDL-62209-master' of git://github.com/junpataleta/moodle 2018-05-01 11:42:44 +08:00
Ryan Wyllie 3dee4ca6d9 MDL-62282 boost: centre no progress icon in overview block 2018-05-01 11:41:06 +08:00
Andrew Nicols c9591cdde6 Merge branch 'MDL-61411-master' of git://github.com/Kathrin84/moodle 2018-05-01 11:21:23 +08:00
Andrew Nicols 06cab84176 Merge branch 'MDL-62167-master' of git://github.com/FMCorz/moodle 2018-05-01 11:10:31 +08:00
Andrew Nicols 3dd3ed3af2 MDL-62280 xhprof: Support tideways_xhprof 2018-05-01 11:02:27 +08:00
Frédéric Massart 3fcfc19743 MDL-62009 core_grades: Implement privacy API 2018-05-01 10:47:04 +08:00
Jun Pataleta 1891ed7bb0 Merge branch 'MDL-62060-master' of git://github.com/rezaies/moodle 2018-05-01 10:44:59 +08:00
Shamim Rezaie c5d720ab51 MDL-62060 core_privacy: Make sure the exported json is human readable 2018-05-01 12:35:00 +10:00
Frédéric Massart d35d17a14c MDL-62214 tool_messageinbound: Implement privacy API 2018-05-01 09:21:56 +08:00
Frédéric Massart 98a2f802c4 MDL-62214 tool_messageinbound: Delete old messages pending verification 2018-05-01 09:21:56 +08:00
Frédéric Massart 1582d54bb0 MDL-62253 core_auth: Implement privacy API 2018-05-01 09:14:58 +08:00
Jake Dallimore 15729d9ffa Merge branch 'MDL-62005-master' of git://github.com/rezaies/moodle 2018-05-01 09:10:18 +08:00
AMOS bot 1e096d96a2 Automatically generated installer lang files 2018-05-01 00:06:50 +00:00
Jun Pataleta 3b1d98ba73 Merge branch 'MDL-62201-master' of git://github.com/bmbrands/moodle 2018-04-30 21:54:35 +08:00
Jun Pataleta 732ebbe0fe Merge branch 'MDL-62248-master-fix' of git://github.com/andrewnicols/moodle 2018-04-30 21:23:14 +08:00
Andrew Nicols 9b7527defc MDL-62248 core_privacy: Add getter for user context prefs 2018-04-30 20:35:56 +08:00
Bas Brands 264b7dffb4 MDL-62268 Theme boost: messaging interface rows 2018-04-30 12:51:32 +02:00
Mark Nelson 3467e8ce3d MDL-61920 mod_lti: implement privacy provider 2018-04-30 18:43:19 +08:00
Jun Pataleta 7816cac9fe Merge branch 'MDL-61012_master' of https://github.com/troywilliams/moodle 2018-04-30 17:29:25 +08:00
Sara Arjona edbee4c4b6 MDL-62266 core_availability: Implement privacy API 2018-04-30 11:20:16 +02:00
Mark Nelson 13fadc8767 MDL-61920 ltiservice_toolsettings: implement privacy provider 2018-04-30 17:08:00 +08:00
Mark Nelson 897a6e824f MDL-61920 ltiservice_toolproxy: implement privacy provider 2018-04-30 17:08:00 +08:00
Mark Nelson 583f84d7cb MDL-61920 ltiservice_profile: implement privacy provider 2018-04-30 17:08:00 +08:00
Mark Nelson 03d6e06400 MDL-61920 ltiservice_memberships: implement privacy provider 2018-04-30 17:07:59 +08:00
Mark Nelson 2b3c4538f1 MDL-61920 ltiservice_gradebookservices: implement privacy provider 2018-04-30 17:07:59 +08:00
Ryan Wyllie 8f0f0a5903 MDL-62149 quiz: include tag ids in random question link 2018-04-30 17:03:03 +08:00
Shamim Rezaie 31b76f4f59 MDL-62005 block_comments: Add implementation of Privacy API 2018-04-30 18:20:04 +10:00
Andrew Nicols 81fa241788 MDL-62248 core_privacy: Unit test for get_user_preferences 2018-04-30 16:00:24 +08:00
Andrew Nicols 970be4496e Merge branch 'MDL-62248-master' of git://github.com/FMCorz/moodle 2018-04-30 15:59:39 +08:00
Bas Brands 3f86772ae2 MDL-62201 Theme boost: block myoverview course cards height
- remove css for setting a fixed height on course cards
on large devices for block overview
2018-04-30 09:54:35 +02:00
Bas Brands 6c88a36f8f MDL-62150 Theme boost: warning position "x" in atto
hardcode position of "x" because of failing calc function
2018-04-30 09:28:09 +02:00
Frédéric Massart cd7baa11c9 MDL-62248 core_block: Implement privacy API 2018-04-30 15:23:41 +08:00
Frédéric Massart 97b05c8f1e MDL-62248 core_privacy: Test writer writes user prefs in right contexts 2018-04-30 15:23:41 +08:00
Shamim Rezaie c287f0fdd9 MDL-62059 mod_book: Implement null provider for mod_book 2018-04-30 16:14:33 +10:00
Andrew Nicols 26bb44e5f4 MDL-61898 core_cache: Implement Privacy API 2018-04-30 14:07:27 +08:00
Andrew Nicols 2203ef4f74 Merge branch 'MDL-62235-master' of git://github.com/FMCorz/moodle 2018-04-30 13:57:48 +08:00
Frédéric Massart c9f95d296a MDL-62235 core_files: Implement privacy API 2018-04-30 13:41:20 +08:00
Nadav Kavalerchik 7092ba71de MDL-62254 Theme: Fix accesshide class in RTL mode 2018-04-30 08:24:59 +03:00
Andrew Nicols a88287c67b Merge branch 'MDL-62208-master' of git://github.com/FMCorz/moodle 2018-04-30 13:07:52 +08:00
Andrew Nicols e054f43f5b Merge branch 'MDL-62213-master' of git://github.com/bmbrands/moodle 2018-04-30 13:03:13 +08:00
Andrew Nicols 52f9b15d64 Merge branch 'MDL-62177-master' of git://github.com/bmbrands/moodle 2018-04-30 11:49:05 +08:00
Andrew Nicols a924b2616a Merge branch 'MDL-62241-master-typehint' of git://github.com/mudrd8mz/moodle 2018-04-30 11:43:46 +08:00
Andrew Nicols bebff35401 Merge branch 'MDL-62219-master' of git://github.com/bmbrands/moodle 2018-04-30 10:34:09 +08:00
Andrew Nicols 11dc37dacc Merge branch 'MDL-61959-master' of git://github.com/sarjona/moodle 2018-04-30 10:16:23 +08:00
Andrew Nicols 11446e8dfc Merge branch 'MDL-62155-master' of git://github.com/bmbrands/moodle 2018-04-30 09:37:14 +08:00
Andrew Nicols 915fd9e6c3 Merge branch 'MDL-62173-master' of git://github.com/bmbrands/moodle 2018-04-30 09:28:53 +08:00
Andrew Nicols 3d110a5f6f MDL-61308 mod_assign: Whitespace fix 2018-04-30 09:27:12 +08:00
Andrew Nicols 1c42b1d6ed Merge branch 'wip-MDL-61308-master' of git://github.com/abgreeve/moodle 2018-04-30 09:15:25 +08:00
AMOS bot 2750523534 Automatically generated installer lang files 2018-04-30 00:06:16 +00:00
Frédéric Massart d21c5e384d MDL-62236 core_webservice: Implement privacy API 2018-04-29 10:08:40 +08:00
Bas Brands ebdfc3c935 MDL-62058 Theme boost: restore scrolling in long navbar dropdowns 2018-04-28 13:23:55 +02:00
David Mudrák 15ce5b7e9b MDL-62241 privacy: Include the unit tests from the 3.3 branch
The tests do not actually do anything, they just make sure that the
method signature is correct on the given PHP version. They are mostly
relevant and useful on 3.3.
2018-04-27 15:25:38 +02:00
Eloy Lafuente (stronk7) af099b484c on-demand release 3.5beta+ 2018-04-27 13:16:41 +02:00
Eloy Lafuente (stronk7) c4a5c8440a MDL-61993 profilefield_checkbox: take rid of oracle reserved word 2018-04-27 10:41:46 +02:00
Frédéric Massart 739b59610a MDL-61877 core_competency: Handle comments in privacy API 2018-04-27 11:29:30 +08:00
Frédéric Massart f8a6a533c2 MDL-61877 core_competency: Implement privacy API 2018-04-27 11:29:29 +08:00
Frédéric Massart d498287fd7 MDL-62167 core_badges: Implement privacy API 2018-04-27 10:49:48 +08:00
Jun Pataleta d8844b3f8c Merge branch 'MDL-62172-master' of git://github.com/bmbrands/moodle 2018-04-27 09:55:08 +08:00
Eloy Lafuente (stronk7) 9827740b01 Merge branch 'MDL-60882-master' of git://github.com/jleyva/moodle 2018-04-27 01:36:11 +02:00
Eloy Lafuente (stronk7) 33a258b573 Merge branch 'wip_MDL-62011_master_approval_of_course_request' of https://github.com/grabs/moodle 2018-04-27 01:29:47 +02:00
Eloy Lafuente (stronk7) a52770f010 Merge branch 'MDL-61993-master' of git://github.com/mihailges/moodle 2018-04-27 00:56:42 +02:00
Eloy Lafuente (stronk7) a76032ce8d Merge branch 'MDL-62152-master' of git://github.com/bmbrands/moodle 2018-04-26 22:44:39 +02:00
Eloy Lafuente (stronk7) 06f49a5eb2 Merge branch 'MDL-61863-master' of git://github.com/zig-moodle/moodle 2018-04-26 22:31:26 +02:00
Eloy Lafuente (stronk7) e6c1e22197 Merge branch 'MDL-61715-master' of https://github.com/lethevinh/moodle 2018-04-26 22:22:43 +02:00
Eloy Lafuente (stronk7) e754bce399 Merge branch 'MDL-62070-master' of git://github.com/bmbrands/moodle 2018-04-26 22:13:47 +02:00
Sara Arjona df7cc2cc7f MDL-61959 mod_scorm: Implement privacy API 2018-04-26 19:56:33 +02:00
Sara Arjona b078358fa7 MDL-61959 scormreport_objectives: Implement privacy API 2018-04-26 19:00:18 +02:00
sarjona 3127efef0c MDL-61959 scormreport_interactions: Implement privacy API 2018-04-26 19:00:18 +02:00
Sara Arjona 353f1bfb37 MDL-61959 scormreport_graphs: Implement privacy API 2018-04-26 19:00:18 +02:00
sarjona 0b01f6f391 MDL-61959 scormreport_basic: Implement privacy API 2018-04-26 19:00:18 +02:00
Jun Pataleta bb874345cf Merge branch 'MDL-61986' of git://github.com/stronk7/moodle 2018-04-27 00:47:02 +08:00
Eloy Lafuente (stronk7) 75bf06128f MDL-61986 mod_lesson: oracle order by clob fix 2018-04-26 18:30:40 +02:00
Bas Brands 540ea1bc7f MDL-62155 Theme boost: forum post element positioning issues 2018-04-26 18:23:41 +02:00
Bas Brands c3f2290d11 MDL-62227 lib_form: add .alert-warning to unstyled alert 2018-04-26 18:06:02 +02:00
Eloy Lafuente (stronk7) e2afdc9c21 Merge branch 'MDL-62224_master' of git://github.com/markn86/moodle 2018-04-26 17:38:14 +02:00
Bas Brands 9fd2b9ac5f MDL-62219 Theme boost: add cursor not allowed for disabled input 2018-04-26 17:27:27 +02:00
Bas Brands 5726577fd4 MDL-62213 Theme boost: calendar filter icon positions 2018-04-26 16:41:07 +02:00
Bas Brands c7522f838c MDL-62212 Theme boost: Compatibility with row-fluid
- used in messaging mustache templates
2018-04-26 15:54:43 +02:00
David Monllao 7dc966479c Merge branch 'MDL-62069-master' of git://github.com/bmbrands/moodle 2018-04-26 15:49:26 +02:00
Zig Tan 49d6fb0379 MDL-61693 core_calendar: Implemented privacy providers 2018-04-26 21:10:49 +08:00
Bas Brands 78d77c4223 MDL-62173 Theme bootstrapbase: clean backup restore UI
-fix display of detail-pair. These are not rendered well
on theme clean for small devices
2018-04-26 14:55:59 +02:00
Mark Nelson 97fcf562ba MDL-62224 core_rss: implement correct provider 2018-04-26 20:16:22 +08:00
Bas Brands 716b5ffa09 MDL-62069 Theme boost: force 100% width on accepted filetypes 2018-04-26 13:17:26 +02:00
Kathrin Osswald 07b203db88 MDL-61411 theme Boost: Close navigation on all items (on small screens) 2018-04-26 13:17:12 +02:00
Bas Brands 5f29d191d9 MDL-62070 Theme boost: quiz update for BS4 stable
- update .sr-only attributes for editing drag and drop on image
    - set box-sizing for drop field
2018-04-26 13:12:05 +02:00
Juan Leyva 8c9a196409 MDL-61521 course: Add missing text formatting for category name 2018-04-26 12:21:22 +02:00
David Monllao 258bf5c4e8 Merge branch 'MDL-62024-master' of git://github.com/bmbrands/moodle 2018-04-26 11:34:00 +02:00
Juan Leyva 10b67ef9f1 MDL-60882 mod_choice: Avoid teacher delete all responses
Teachers should be able to delete all responses but when indicating the
response ids.
When the response ids are not passed, only their own responses should
be deleted (as the function documentation said).
2018-04-26 10:25:45 +02:00
Andrew Nicols 46e7b6eecf Merge branch 'MDL-61947-master' of git://github.com/zig-moodle/moodle 2018-04-26 14:51:19 +08:00
Jun Pataleta aad67f481a Merge branch 'MDL-62188-master' of git://github.com/sarjona/moodle 2018-04-26 14:50:04 +08:00
Adrian Greeve f8650bb7a3 MDL-61308 assign_feedback: Privacy code for user rights. 2018-04-26 14:17:55 +08:00
Adrian Greeve 5843543338 MDL-61308 assign_submission: Privacy code for user rights. 2018-04-26 14:17:55 +08:00
Adrian Greeve 5c41cd77f8 MDL-61308 mod_assign: Adding privacy classes. 2018-04-26 14:17:55 +08:00
Sara Arjona 697bed6bb7 MDL-62188 enrol: Avoid ignoring the Recover grades default setting 2018-04-26 08:13:13 +02:00
Frédéric Massart 790c89b34d MDL-62208 core_fileconverter: Implement privacy API 2018-04-26 12:54:01 +08:00
Zig Tan 25e213ad8f MDL-61947 core_my: Implemented privacy providers 2018-04-26 12:50:22 +08:00
Jun Pataleta 38ffa48cf5 MDL-62209 tool_dataprivacy: Sort requests by ascending status
Sort requests by ascending status and request date so that the DPO
can go through the list in a FIFO fashion
2018-04-26 12:17:24 +08:00
Jun Pataleta 6ef65b8a85 Merge branch 'MDL-61669-master' of git://github.com/jleyva/moodle 2018-04-26 11:51:22 +08:00
Jun Pataleta 8e82081176 Merge branch 'MDL-62072-master' of git://github.com/bmbrands/moodle 2018-04-26 11:17:27 +08:00
Jun Pataleta e55b7082be Merge branch 'MDL-62176-master' of git://github.com/bmbrands/moodle 2018-04-26 11:00:17 +08:00
Mihail Geshoski 079114d70b MDL-61993 profilefield_checkbox: Add privacy files and unit tests 2018-04-26 10:28:14 +08:00
Eloy Lafuente (stronk7) 1b4983fc90 Merge branch 'MDL-61979-master' of git://github.com/zig-moodle/moodle 2018-04-26 02:44:16 +02:00
Eloy Lafuente (stronk7) 7bff0ee145 Merge branch 'MDL-61998-master' of git://github.com/sarjona/moodle 2018-04-26 02:39:17 +02:00
Andrew Nicols c8fc9c61a2 Merge branch 'MDL-61944-master' of git://github.com/cescobedo/moodle 2018-04-26 08:17:24 +08:00
Eloy Lafuente (stronk7) e971596371 Merge branch 'MDL-62181-master-enfix' of git://github.com/mudrd8mz/moodle 2018-04-25 19:09:35 +02:00
David Monllao 969d649b79 Merge branch 'MDL-62160-master' of git://github.com/bmbrands/moodle 2018-04-25 18:10:13 +02:00
David Monllao e06a28b539 Merge branch 'MDL-62159-master' of git://github.com/bmbrands/moodle 2018-04-25 17:57:37 +02:00
David Monllao 6fb429dd79 Merge branch 'MDL-62175-master' of git://github.com/jleyva/moodle 2018-04-25 17:37:22 +02:00
David Monllao 0d1707f053 Merge branch 'MDL-61986-master' of git://github.com/FMCorz/moodle 2018-04-25 16:26:03 +02:00
cescobedo 30e44bfcc4 MDL-61944 tool_mobile: Implement Privacy API 2018-04-25 15:33:50 +02:00
Bas Brands ed0e21c0ef MDL-62177 Theme boost: set max height for navbar logo 2018-04-25 14:32:42 +02:00
Bas Brands a24bf64ffd MDL-62176 Theme boost: show advance form options need display: flex 2018-04-25 13:43:35 +02:00
Bas Brands d24fab1182 MDL-62172 Theme boostrapbase: align advanced checkbox in mform 2018-04-25 12:26:47 +02:00
Bas Brands e58362ed1e MDL-62160 Theme boost: center buttons on notification popup 2018-04-25 10:18:36 +02:00
Bas Brands b6ebda707f MDL-62159 Theme boost: prevent rtl flipping dropdowns 2018-04-25 09:41:22 +02:00
David Mudrák 60ecb39fb6 MDL-62181 lang: Fix changed admin node title in behat scenario 2018-04-24 22:05:30 +02:00
Helen Foster 970c1a4bf1 MDL-62181 lang: Merge English strings from the en_fix language pack
Significant string changes:

* sitepolicies, core_admin - 'Site policies' changed to 'Site security
  settings'
* processexpirationstask, enrol_paypal - more explanatory name
* sitepolicy_help and sitepolicyguest_help, core_admin - setting will
  only have an effect if the site policy handler is set to default
* sitepolicyhandler_desc,core_admin - improved wording
* pathtodot_help, core_admin - Windows and Mac paths
* debugstringids_desc, core_admin - improved explanation
2018-04-24 22:05:30 +02:00
Eloy Lafuente (stronk7) 641d113c88 Moodle release 3.5beta 2018-04-24 19:00:34 +02:00
Bas Brands 31c04fec7c MDL-62072 Theme boost: position dropdowns for autocompletion fields 2018-04-24 16:22:32 +02:00
Juan Leyva 04df75ceeb MDL-61669 tool_mobile: Return new app policy setting via WS 2018-04-24 16:10:25 +02:00
Juan Leyva acee831165 MDL-61669 tool_mobile: New app policy setting 2018-04-24 16:10:25 +02:00
Bas Brands 323ce3952b MDL-62152 Theme boost: reset link colour to WCAG 2.0 approved contrast 2018-04-24 15:57:18 +02:00
Eloy Lafuente (stronk7) 57565dc3b2 Merge branch 'MDL-62183_master' of git://github.com/dmonllao/moodle 2018-04-24 15:49:16 +02:00
David Monllao 26b86f31e5 MDL-61028 search: Clear search engine users cache after tests 2018-04-24 15:48:40 +02:00
sam marshall acaeb5ec41 MDL-61028 core_search: Fix SELECT bug affecting Oracle 2018-04-24 15:48:40 +02:00
Bas Brands 10acff4ada MDL-62186 Theme boost: change padding of quiz editing input field 2018-04-24 14:52:34 +02:00
David Monllao b137e02973 MDL-62183 search_solr: Set solr as search engine for solr unit tests 2018-04-24 13:12:48 +02:00
Juan Leyva e709853ee6 MDL-62175 auth_email: Fix site policy enabled check 2018-04-24 11:48:00 +02:00
vinhle 8e0bebd1cd MDL-61715 question: qbank_chooser is not intelligent about headings 2018-04-24 16:11:47 +07:00
Troy Williams f9a7a98a4a MDL-61012 course: Allow extending class to set 2018-04-24 16:13:29 +12:00
Zig Tan 7d5667ee57 MDL-61863 core_notes: Implemented privacy providers 2018-04-24 12:06:46 +08:00
Jun Pataleta ac8f106b4d Merge branch 'MDL-62079-master' of git://github.com/andrewnicols/moodle 2018-04-24 11:56:23 +08:00
Andrew Nicols e055b85a0f MDL-62079 core_filters: Implement null provider 2018-04-24 11:48:24 +08:00
Andrew Nicols 7d05f5813d Merge branch 'MDL-62140_master' of git://github.com/markn86/moodle 2018-04-24 11:16:07 +08:00
Andrew Nicols c970b50567 Merge branch 'MDL-61984-master-fixup' of https://github.com/FMCorz/moodle 2018-04-24 11:03:12 +08:00
Mark Nelson 6d82a42353 MDL-62140 core_privacy: only reset tests when necessary 2018-04-24 10:54:21 +08:00
Frédéric Massart 2b25b67ea1 MDL-61984 mod_chat: Do not assume context passed is one of chat 2018-04-24 10:38:27 +08:00
Jun Pataleta d11786cee3 Merge branch 'MDL-62162-master' of git://github.com/sarjona/moodle 2018-04-24 10:25:33 +08:00
Andrew Nicols 3bdcd4d8c3 MDL-62140 core_privacy: Improve unit test 2018-04-24 10:18:31 +08:00
Andrew Nicols f829edb719 Merge branch 'MDL-62140_master' of git://github.com/markn86/moodle 2018-04-24 10:04:52 +08:00
Jun Pataleta 68d7e891b9 Merge branch 'MDL-61764_master' of git://github.com/markn86/moodle 2018-04-24 09:54:16 +08:00
Jun Pataleta 74329331aa Merge branch 'MDL-61882-master' of git://github.com/cescobedo/moodle 2018-04-24 09:38:27 +08:00
Andrew Nicols ebc09da8a6 Merge branch 'MDL-61984-master' of git://github.com/FMCorz/moodle 2018-04-24 09:23:35 +08:00
Andrew Nicols 1b6e378edb MDL-61651 mod_lti: Add missing callback doc 2018-04-24 09:21:51 +08:00
Andrew Nicols c131b96000 Merge branch 'MDL-61651_master' of git://github.com/markn86/moodle 2018-04-24 08:45:30 +08:00
Andrew Nicols fdf6208546 Merge branch 'MDL-61995-master' of git://github.com/zig-moodle/moodle 2018-04-24 08:15:38 +08:00
Eloy Lafuente (stronk7) 5e488f8c22 MDL-61657 block_myoverview: whitespace and css-style fixes 2018-04-23 23:35:17 +02:00
Bas Brands c8cc25caba MDL-61657 block_myoverview: implement course images for the myoverview block 2018-04-23 23:21:06 +02:00
Bas Brands c706699a0e MDL-62024 Theme boost: fix icon alignment for actionmenu 2018-04-23 21:09:26 +02:00
Sara Arjona 077ebb2a0b MDL-62162 policy: Define context when accessing to viewall.php 2018-04-23 18:29:27 +02:00
Eloy Lafuente (stronk7) 4450d19ae1 Merge branch 'MDL-62023-master' of git://github.com/bmbrands/moodle 2018-04-23 18:15:41 +02:00
cescobedo 21ae044620 MDL-61882 auth_oauth2: Implement Privacy API 2018-04-23 17:34:30 +02:00
David Monllao 3d7b805f4e Merge branch 'MDL-61915-master' of git://github.com/cescobedo/moodle 2018-04-23 16:26:06 +02:00
David Monllao 590c774d37 Merge branch 'MDL-62042-master' of https://github.com/sammarshallou/moodle 2018-04-23 16:07:37 +02:00
cescobedo 980e85cd44 MDL-61915 enrol: Add privacy implementation for all enrol plugins
None of the Enrol plugins (except lti and paypal) have any user preference or database table.
They all implement the null provider.
2018-04-23 14:31:40 +02:00
Mark Nelson aa725516d3 MDL-62140 core_privacy: add helper functions to add system/user context 2018-04-23 20:06:02 +08:00
David Monllao c5a8065258 Merge branch 'MDL-61028-master' of https://github.com/sammarshallou/moodle 2018-04-23 13:09:53 +02:00
Andrew Nicols be056e1b28 Merge branch 'wip-MDL-61759-master' of https://github.com/marinaglancy/moodle 2018-04-23 18:31:04 +08:00
David Monllao 8fbff1d453 Merge branch 'MDL-62078-master' of git://github.com/sarjona/moodle 2018-04-23 12:05:46 +02:00
David Monllao 74d0a7f975 Merge branch 'MDL-62047-master' of git://github.com/andrewnicols/moodle 2018-04-23 11:58:28 +02:00
David Monllao a07d13dcbf Merge branch 'MDL-61891-master' of git://github.com/andrewnicols/moodle 2018-04-23 11:55:15 +02:00
Sara Arjona 5a86bf1448 MDL-61998 cohort: Implement privacy API 2018-04-23 11:41:04 +02:00
Jun Pataleta ce447198b8 Merge branch 'wip-MDL-61939-master' of git://github.com/marinaglancy/moodle 2018-04-23 17:19:49 +08:00
Bas Brands 03b06309e2 MDL-62023 theme: Add bootstrap 4 classes to performance info cards 2018-04-23 11:17:33 +02:00
Zig Tan f8555ac9aa MDL-61995 tool_assignmentupgrade: Implemented privacy providers 2018-04-23 16:49:16 +08:00
Andrew Nicols 6de5bbb8cd Merge branch 'MDL-62055-master' of git://github.com/sarjona/moodle 2018-04-23 16:03:13 +08:00
Jun Pataleta c8619b28a3 Merge branch 'MDL-62049_master' of git://github.com/markn86/moodle 2018-04-23 13:54:38 +08:00
Marina Glancy dde3d58eb1 MDL-62138 core: remove core_register and core_publish
These components have no classes and no strings and have no purspose. Component core_hub is responsible
for storing data, defining classes and strings for site registration and course publishing

This also reverts MDL-61945
2018-04-23 13:17:12 +08:00
Jun Pataleta db711f5eca Merge branch 'wip-MDL-61966-master' of git://github.com/abgreeve/moodle 2018-04-23 13:11:30 +08:00
Mark Nelson 63d170647c MDL-62049 core_privacy: use correct lang string for date 2018-04-23 13:03:23 +08:00
Marina Glancy a74c511e7f MDL-61759 admin: non-existing site policy handler means no policy 2018-04-23 10:25:00 +08:00
Andrew Nicols 0cbe51a856 MDL-61891 core_portfolio: Use manager method caller 2018-04-23 10:08:24 +08:00
Andrew Nicols ae1c7f954a MDL-61891 core_plagiarism: Use manager method caller 2018-04-23 10:07:54 +08:00
Andrew Nicols 4f9f035ae3 MDL-61891 privacy: Add helper to call methods on interfaces 2018-04-23 10:07:54 +08:00
Marina Glancy e8cf2ffd61 MDL-61939 tool_policy: usermodified should be realuser
When logged in as another user and accept the policies on somebody else's behalf make sure that
usermodified is recorded as real user
2018-04-23 09:45:26 +08:00
Andrew Nicols 0683abccfc Merge branch 'MDL-61759-master-nonexistinghandler' of git://github.com/mudrd8mz/moodle 2018-04-22 21:04:56 +08:00
Frédéric Massart 83ef2b2cf8 MDL-61986 mod_lesson: Implement privacy API 2018-04-22 17:31:00 +08:00
sarjona b720d9dae8 MDL-62078 rss: Link to core_userkey in the Privacy API implementation 2018-04-22 09:02:48 +02:00
Andreas Grabs 9f9d7bbe87 MDL-62011 course: Approval of a course request fails 2018-04-21 20:55:59 +02:00
Eloy Lafuente (stronk7) 6fa694bef0 on-demand release 3.5dev+ 2018-04-20 23:53:54 +02:00
Eloy Lafuente (stronk7) 6d647878a5 NOBUG: Fixed file access permissions 2018-04-20 23:53:53 +02:00
Eloy Lafuente (stronk7) fe0ce39b8f NOBUG: Fixed SVG browser compatibility 2018-04-20 23:53:52 +02:00
Eloy Lafuente (stronk7) 90148ed7e1 Merge branch 'MDL-61899_master-fixgetroleusers' of git://github.com/dmonllao/moodle 2018-04-20 19:13:38 +02:00
sam marshall a6cacdd266 MDL-61028 core_search: Allow filtering search by user (front-end)
Creates a new 'Users' field in the search filters form. This field
requires new JavaScript and, to implement this, a new AJAX-callable
web service to search for users by name, with detailed restrictions
based on the current user's access to view profiles.
2018-04-20 17:10:03 +01:00
sam marshall 71d985ab7d MDL-61028 core_user: Function to search visible users
Implements core_user::search function which can search through the
names (and, if allowed, other identity fields) of all users visible
to the current logged-in user, within a course context or globally.
2018-04-20 17:10:03 +01:00
David Monllao 05564a4cc6 MDL-61899 tool_dataprivacy: Add missing get_role_users fields 2018-04-20 17:46:49 +02:00
sam marshall a97c937033 MDL-61028 core_form: Autocomplete field to support HTML selection
When using the AJAX autocomplete field, it allows JavaScript to add
custom HTML to selected options. For example, the user field from
the assign roles page includes an icon and other information by the
user's name.

Once you submit the form and the page reloads, there was no way to
provide this information back to the autocomplete field. HTML
<option> tag was used for the value names but it may only contain
text, not tags, so including it in the normal value did not work.

This change adds a new option for the autocomplete field that lets
you include HTML to override the default (text-only) value of the
label used to represent each option.
2018-04-20 16:42:54 +01:00
Eloy Lafuente (stronk7) d102e6ad56 Merge branch 'MDL-56511_master-fixbehat4' of git://github.com/dmonllao/moodle 2018-04-20 17:32:08 +02:00
David Monllao 8b451d25f2 MDL-61899 tool_dataprivacy: Separate the retention period in 2 css selectors 2018-04-20 17:08:32 +02:00
David Monllao 8787ffaa40 MDL-56511 behat: Fix failing behat tests (again) 2018-04-20 15:52:58 +02:00
sam marshall 222a97ce76 MDL-61028 core_search: Allow filtering search by user (back-end, Solr)
Adds support in the Solr engine for a new 'userids' parameter to
restrict search results to those created by a specific user or users.
2018-04-20 13:36:55 +01:00
Eloy Lafuente (stronk7) 837b937511 Merge branch 'MDL-61899_master-fixsubjectscope' of git://github.com/dmonllao/moodle 2018-04-20 10:46:36 +02:00
David Monllao 5a3280a18f MDL-61899 tool_dataprivacy: Replace wrong function for subject scope 2018-04-20 10:27:05 +02:00
Sara Arjona 87bbab5118 MDL-62055 imscp: Implement privacy API 2018-04-20 08:57:04 +02:00
Adrian Greeve 5eb8ad87fc MDL-61966 block_myoverview: Update to provider for user preferences. 2018-04-20 14:45:10 +08:00
Mark Sharp c3002d2c3f MDL-61899 tool_dataprivacy: Fix undefined property error 2018-04-20 14:38:51 +08:00
David Monllao 087353f909 MDL-56511 theme_boost: Restore file perms back to 644 2018-04-20 06:18:54 +02:00
Bas Brands 1801b90535 MDL-56511 Theme: behat fixes for theme clean 2018-04-20 06:18:21 +02:00
Bas Brands 88d184b656 MDL-56511 theme: position next button. 2018-04-20 06:18:19 +02:00
Mark Nelson 10efd23b7c MDL-61764 message_popup: implement privacy provider 2018-04-20 12:05:32 +08:00
Jun Pataleta d816a900cb Merge branch 'MDL-62048_master' of git://github.com/markn86/moodle 2018-04-20 11:53:37 +08:00
Andrew Nicols 9fe8d2e335 Merge branch 'MDL-61892-master' of git://github.com/zig-moodle/moodle 2018-04-20 11:47:54 +08:00
Zig Tan de33cd0cab MDL-61892 admin/tools: Implement null privacy providers 2018-04-20 11:41:20 +08:00
Andrew Nicols b17dd2a3d6 Merge branch 'MDL-61899-master-fix' of git://github.com/junpataleta/moodle 2018-04-20 11:37:46 +08:00
Jun Pataleta 329241335f MDL-61899 tool_dataprivacy: Use default parameters for get_role_users()
* To avoid failures in Oracle.
2018-04-20 11:26:03 +08:00
Claude Vervoort da04fb70fa MDL-61651 mod_lti: cisr lineitem support 2018-04-20 11:22:11 +08:00
Andrew Nicols 9775bfcbe4 Merge branch 'wip-MDL-62035-master' of git://github.com/abgreeve/moodle 2018-04-20 11:16:46 +08:00
Adrian Greeve 8c6fae4e9c MDL-62035 core_blog: Update to blog with comments.
This makes blog use the updated delete methods in the
comments provider.
2018-04-20 10:42:43 +08:00
Adrian Greeve 1b33e410b5 MDL-62035 core_comment: Update to deletion methods.
Also clarification with the export method to clarify that it
is only for one context.
2018-04-20 10:42:24 +08:00
Andrew Nicols 37909713bb Merge branch 'MDL-62003-master-privacyfiles' of git://github.com/mudrd8mz/moodle 2018-04-20 10:26:01 +08:00
Jun Pataleta c1f7e7e90e Merge branch 'MDL-61848-master' of git://github.com/cescobedo/moodle 2018-04-20 09:20:13 +08:00
Eloy Lafuente (stronk7) 1bcbbe3582 Merge branch 'MDL-61836-master-order' of git://github.com/andrewnicols/moodle 2018-04-20 03:03:34 +02:00
Andrew Nicols 7072009431 MDL-61836 blog: Fix random order failures 2018-04-20 08:56:05 +08:00
Frédéric Massart 0288333c0b MDL-61836 core_blog: Prevent randomness in comments order 2018-04-20 08:56:05 +08:00
Eloy Lafuente (stronk7) 11f07048f4 Merge branch 'MDL-61827' of git://github.com/lszeremeta/moodle 2018-04-20 02:32:26 +02:00
Eloy Lafuente (stronk7) 774956a6ee Merge branch 'MDL-61836-master-fix' of git://github.com/andrewnicols/moodle 2018-04-20 02:27:51 +02:00
Eloy Lafuente (stronk7) 85176022e8 Merge branch 'MDL-61991-master' of https://github.com/lucaboesch/moodle 2018-04-20 02:22:20 +02:00
Andrew Nicols fa983cfcc0 MDL-61836 comment: Add missing require 2018-04-20 08:17:15 +08:00
Eloy Lafuente (stronk7) 00743c0929 Merge branch 'MDL-61975-master' of git://github.com/zig-moodle/moodle 2018-04-20 02:04:18 +02:00
Eloy Lafuente (stronk7) cd8a0226de Merge branch 'MDL-61348-take2' of git://github.com/timhunt/moodle 2018-04-20 01:59:15 +02:00
cescobedo 3029395e9d MDL-61848 auth_manual: Implement Privacy API 2018-04-20 00:08:30 +02:00
sam marshall ffa868a9e1 MDL-62042 core_search: Unicode non-characters cause indexing problems
Unicode characters such as U+FFEF can be entered into Moodle data and
cause indexing failures. This change strips them out of search fields.
2018-04-19 16:54:47 +01:00
David Monllao 8000eac408 MDL-61102 core_search: Restore search manager instance 2018-04-19 13:38:35 +02:00
Frédéric Massart bf3b4f3e86 MDL-61984 mod_chat: Implement privacy API 2018-04-19 17:32:41 +08:00
David Monllao b704717847 Merge branch 'MDL-61138-master-require-context-id' of git://github.com/ryanwyllie/moodle 2018-04-19 11:18:47 +02:00
David Monllao 0299444710 Merge branch 'MDL-61102-master' of https://github.com/sammarshallou/moodle 2018-04-19 10:37:30 +02:00
Jun Pataleta c8058231c1 Merge branch 'MDL-61772-master' of git://github.com/lameze/moodle 2018-04-19 16:13:18 +08:00
Jun Pataleta 53036a6886 Merge branch 'MDL-62025_master' of git://github.com/markn86/moodle 2018-04-19 15:50:09 +08:00
Andrew Nicols 0442789588 MDL-62047 core_userkey: Add privacy implementation 2018-04-19 15:30:10 +08:00
Mark Nelson a4f994f332 MDL-62025 mod_choice: add missing join on modules table 2018-04-19 15:17:43 +08:00
Andrew Nicols 2e2c66d84a Merge branch 'MDL-61568-master' of git://github.com/zig-moodle/moodle 2018-04-19 15:00:16 +08:00
Andrew Nicols 7f2e2bfda9 Merge branch 'MDL-61970-master' of git://github.com/FMCorz/moodle 2018-04-19 14:52:04 +08:00
Andrew Nicols 54dcd0146d Merge branch 'MDL-61969-master' of git://github.com/mihailges/moodle 2018-04-19 14:47:20 +08:00
Jun Pataleta 08a1f3b9f9 Merge branch 'MDL-61878-master' of git://github.com/mihailges/moodle 2018-04-19 14:40:12 +08:00
Zig Tan 202ec23a1f MDL-61568 repository_flickr: Fix oauth secret export 2018-04-19 14:33:26 +08:00
Ryan Wyllie 1c26b3143d MDL-61138 mod_quiz: add question preview to random question modal 2018-04-19 13:51:41 +08:00
Ryan Wyllie 6768729e08 MDL-61138 question: external function to get random question set 2018-04-19 13:51:40 +08:00
Mihail Geshoski 700029fca5 MDL-61878 fileconverter_googledrive: Add privacy files and unit tests 2018-04-19 13:16:21 +08:00
Frédéric Massart b82e600723 MDL-61970 mod_survey: Do not assume context passed is one of survey 2018-04-19 13:10:22 +08:00
Mark Nelson f611c727f3 MDL-62048 core_privacy: extend test to ensure table exists 2018-04-19 13:00:15 +08:00
Andrew Nicols 81626948c7 MDL-62047 core_userkey: Define component path 2018-04-19 12:46:52 +08:00
Andrew Nicols 13fd4703f3 Merge branch 'MDL-61945-master' of git://github.com/cescobedo/moodle 2018-04-19 11:50:31 +08:00
Andrew Nicols 25d9974ac6 Merge branch 'MDL-61948-master' of git://github.com/mihailges/moodle 2018-04-19 11:38:04 +08:00
Andrew Nicols 305f4f69eb Merge branch 'MDL-61836-master' of git://github.com/FMCorz/moodle 2018-04-19 11:19:07 +08:00
Andrew Nicols f13e5f7377 Merge branch 'MDL-61970-master' of git://github.com/FMCorz/moodle 2018-04-19 11:12:35 +08:00
Eloy Lafuente (stronk7) 3271e83c6e Merge branch 'MDL-61614-master' of git://github.com/rezaies/moodle 2018-04-18 23:13:07 +02:00
David Monllao f5779bb101 MDL-56511 theme_boost: Fixing minor behat failures
Related to MDL-56511 markup changes.
2018-04-18 18:24:20 +02:00
David Monllao baf8ff9cbf Merge branch 'MDL-61716-master' of git://github.com/mastnym/moodle 2018-04-18 18:24:10 +02:00
David Monllao 37543ce51e MDL-61958 rss: Add rss test suite 2018-04-18 18:23:59 +02:00
David Monllao 8d3238d858 Merge branch 'MDL-61958-master' of git://github.com/sarjona/moodle 2018-04-18 18:23:48 +02:00
David Monllao 99775a9f22 Merge branch 'MDL-62018-master' of git://github.com/sarjona/moodle 2018-04-18 18:23:32 +02:00
Jun Pataleta ba5b59c0af MDL-61899 tool_dataprivacy: Fixes during integration review
* Disable tool by default.
* Add format columns for 'comments' and 'dpocomment' fields in
tool_dataprivacy_request table.
* Use data request exporter when sending email notification to DPO
2018-04-18 18:23:13 +02:00
David Monllao bb4030ff27 MDL-61899 tool_dataprivacy: Fix cibot complains 2018-04-18 18:22:58 +02:00
Jun Pataleta 0d41df6b5a MDL-61899 tool_dataprivacy: Create name-description exporter
Create exporter for lawful bases that contain name and description pairs
2018-04-18 18:22:49 +02:00
Jun Pataleta 0462786a78 MDL-61899 tool_dataprivacy: Unit test fixes 2018-04-18 18:22:41 +02:00
David Monllao 042729af22 MDL-61899 tool_dataprivacy: Remove namespace alias
Includes MDL-61935
2018-04-18 18:22:15 +02:00
Jun Pataleta d21f89cb06 MDL-61899 tool_dataprivacy: Fix table column width distribution
Includes MDL-61935
2018-04-18 18:20:12 +02:00
Jun Pataleta 5750d233f9 MDL-61899 tool_dataprivacy: Add lawful bases fields
Includes MDL-61935

* New fields when defining purposes that let the Privacy Officer
set the lawful bases of personal data collection and reason(s)
for the exemption of prohibition from processing sensitive personal
data.
2018-04-18 18:19:17 +02:00
David Monllao e60058ff98 MDL-61899 tool_dataprivacy: Delete user after deletion request or expired context
Includes MDL-61955
2018-04-18 18:18:47 +02:00
Jun Pataleta 2076d34b8e MDL-61899 tool_dataprivacy: Implement data export for the tool 2018-04-18 18:18:38 +02:00
Jun Pataleta c504ba4332 MDL-61899 tool_dataprivacy: Helper class for the tool
* Create helper functions for getting the string names of data
request types and statuses.
2018-04-18 18:18:17 +02:00
David Monllao 57a59d6c5a MDL-61899 tool_dataprivacy: Remove upgrade.php and add @since 2018-04-18 18:18:09 +02:00
David Monllao aaae3c8c82 MDL-61899 tool_dataprivacy: Removing unnecessary dependencies
Includes MDL-61489
2018-04-18 18:17:42 +02:00
Adrian Greeve c2aad2188a MDL-61899 tool_dataprivacy: Addition of js file and misc. updates.
Includes MDL-61489
2018-04-18 18:17:10 +02:00
Barbara Ramiro eb6b4c2368 MDL-61899 tool_dataprivacy: Styling of the second registry.
Includes MDL-61489
2018-04-18 18:16:40 +02:00
Adrian Greeve d6ff9edd4f MDL-61899 tool_dataprivacy: Addition of plugin compliance registry.
Includes MDL-61489
2018-04-18 18:15:40 +02:00
David Monllao e95f0def95 MDL-61899 tool_dataprivacy: Fix reference to unexisting method
All credit goes to Marcel Behrmann
2018-04-18 18:15:31 +02:00
Jun Pataleta 6f094d4940 MDL-61899 tool_dataprivacy: Fetch context ids to update then update
Fetch the context ids to be updated first before performing the update
to the contextlist_context table to avoid using subquery that causes
cross DB compatibility issues.
2018-04-18 18:15:19 +02:00
Jun Pataleta cb775057fd MDL-61899 tool_dataprivacy: Additional fixes to tool
Fixes applied from the following issues:
1. MDL-61618
2. MDL-61901
2018-04-18 18:15:09 +02:00
David Monllao a8a6905039 MDL-61899 tool_dataprivacy: Refined patch fixing cibot complains 2018-04-18 18:14:59 +02:00
David Monllao c5572a933a MDL-61899 core: Add too_dataprivacy to core plugins 2018-04-18 18:14:43 +02:00
David Monllao 5efc1f9e64 MDL-61899 tool_dataprivacy: Subject access requests tool
This commit is composed of different issues, most of them under
MDL-61306:
- MDL-61888, MDL-61785, MDL-61830, MDL-61874, MDL-59720,
  MDL-61486, MDL-61697, MDL-61798, MDL-61685, MDL-61682,
  MDL-61684, MDL-61618, MDL-61681, MDL-61680, MDL-61487,
  MDL-61499, MDL-61500, MDL-61362 and MDL-59718

Contributions to this patch by:
- Jun Pataleta
- David Monllao
- Andrew Nicols
- Adrian B. Greeve
- Jake Dallimore
- Sara Arjona
2018-04-18 18:14:23 +02:00
sam marshall 73fd56663b MDL-61102 core_search: Improve performance by reducing schema checks 2018-04-18 16:24:51 +01:00
David Mudrák 7a429a160d MDL-62003 privacy: Fix reported coding style violation 2018-04-18 17:10:18 +02:00
David Mudrák 3ecbf154db MDL-62003 privacy: Consistently export files into _files folder
There were two major issues with the previous implementation:

* The exported folder name was localised so it was "Files" or "Soubory"
  etc depending on the current language. Yet URLs referring to the files
  in that folder were always rewritten with hard-coded English "files".
* Files from all fileareas and itemids were all exported to a single
  target directory. So if there were two files with the same name being
  exported from multiple areas (such as submission_content and
  submission_attachment in the workshop module), one would overwrite
  another.

The patch addresses these issues as follows:

* To unify the folder name and also to minimise the risk of conflict
  with a subcontext folder, we now always export stored files under
  "_files" folder.
* Under that folder, there is a subdirectory with the area name and then
  eventually another subdirectory with non-zero itemid. And there
  finally the stored_file is exported to under its own file path.
2018-04-18 17:10:12 +02:00
David Monllao b5cca5ae5a Merge branch 'MDL-61796-master' of https://github.com/lucaboesch/moodle 2018-04-18 15:20:19 +02:00
David Monllao b1e5899c25 Merge branch 'MDL-38099-master' of https://github.com/lucaboesch/moodle 2018-04-18 14:14:20 +02:00
Eloy Lafuente (stronk7) a53d48e0e3 Merge branch 'MDL-61621_master' of git://github.com/dmonllao/moodle 2018-04-18 12:57:38 +02:00
Jun Pataleta 76dacdb051 Merge branch 'MDL-62025_master' of git://github.com/markn86/moodle 2018-04-18 16:26:26 +08:00
Jun Pataleta 11bc4876ac Merge branch 'MDL-61928' of git://github.com/timhunt/moodle 2018-04-18 16:00:49 +08:00
Mark Nelson e95599a57b MDL-62025 mod_choice: only export in the CONTEXT_MODULE context 2018-04-18 15:10:12 +08:00
Frédéric Massart 61ae0c28db MDL-61970 mod_survey: Implement privacy API 2018-04-18 14:55:47 +08:00
Andrew Nicols 2babce1763 Merge branch 'MDL-61568-master' of git://github.com/zig-moodle/moodle 2018-04-18 14:24:28 +08:00
Mihail Geshoski 022ee47735 MDL-61969 datapreset_imagegallery: Implement null privacy provider 2018-04-18 13:50:05 +08:00
Mihail Geshoski f143179a66 MDL-61948 core_media: Implement null privacy provider 2018-04-18 13:44:13 +08:00
Zig Tan ef43b1d4d6 MDL-61568 core_repository: Implement privacy providers 2018-04-18 13:43:53 +08:00
Zig Tan d87e16435e MDL-61568 repository_onedrive: Implement privacy providers 2018-04-18 13:43:53 +08:00
Zig Tan 59f6980201 MDL-61568 repository_youtube: Implement privacy providers 2018-04-18 13:43:53 +08:00
Zig Tan a7b8587136 MDL-61568 repository_wikimedia: Implement privacy providers 2018-04-18 13:43:44 +08:00
Zig Tan b703ef4498 MDL-61568 repository_picasa: Implement privacy providers 2018-04-18 13:40:35 +08:00
Zig Tan 015b3974e7 MDL-61568 repository_merlot: Implement privacy providers 2018-04-18 13:40:34 +08:00
Zig Tan b9118a7481 MDL-61568 repository_googledocs: Implement privacy providers 2018-04-18 13:40:34 +08:00
Zig Tan 1e251bd424 MDL-61568 repository_flickr_public: Implement privacy providers 2018-04-18 13:40:34 +08:00
Zig Tan 35bf4711bb MDL-61568 repository_flickr: Implement privacy providers 2018-04-18 13:40:17 +08:00
Jun Pataleta 7c12fc2734 Merge branch 'MDL-61520-master' of git://github.com/lameze/moodle 2018-04-18 13:28:36 +08:00
Andrew Nicols ffced67c67 Merge branch 'MDL-61957-master' of git://github.com/sarjona/moodle 2018-04-18 12:39:34 +08:00
Andrew Nicols 1e351f0976 MDL-61864 lang: Fix trailing whitespace 2018-04-18 12:34:44 +08:00
Andrew Nicols 7d0fcb5c86 MDL-61864 tool_policy: Fix whitespace issues 2018-04-18 12:16:53 +08:00
Andrew Nicols a8b35f9ccd Merge branch 'wip-MDL-61864-master' of git://github.com/marinaglancy/moodle 2018-04-18 12:01:29 +08:00
Ryan Wyllie 81f43bc6d4 MDL-61138 question: add question exporters 2018-04-18 11:45:01 +08:00
Ryan Wyllie 6c057c77dc MDL-61138 mod_quiz: remove YUI random question modal 2018-04-18 11:45:01 +08:00
Ryan Wyllie 1e46fb428f MDL-61138 mod_quiz: use AMD modal for add random question 2018-04-18 11:45:00 +08:00
Ryan Wyllie f046b9a4c5 MDL-61138 mod_quiz: create random question AMD modal 2018-04-18 11:45:00 +08:00
Ryan Wyllie 4ab09853f4 MDL-61138 javascript: add paged content widget 2018-04-18 11:45:00 +08:00
Jun Pataleta 4fa9393def Merge branch 'MDL-56511-master-lint' of git://github.com/andrewnicols/moodle 2018-04-18 11:23:52 +08:00
Ryan Wyllie 2803c8683b MDL-61138 javascript: add preshow callback to modal factory 2018-04-18 11:19:37 +08:00
Ryan Wyllie 90d8c85ec3 MDL-61138 javascript: stop duplicate custom events firing 2018-04-18 11:19:37 +08:00
Shamim Rezaie 9da6f4d968 MDL-61614 Quiz: Restore tags for random questions 2018-04-18 13:07:08 +10:00
Shamim Rezaie 2a1855887d MDL-61614 Quiz: backup tags for random questions 2018-04-18 13:07:08 +10:00
Shamim Rezaie 3090719d7d MDL-61614 Quiz: Deleting a quiz slot should delete its random tags 2018-04-18 13:07:08 +10:00
Shamim Rezaie 66aa172cbb MDL-61614 Quiz: Maintain slot tags when editing random questions 2018-04-18 13:07:08 +10:00
Shamim Rezaie d62793fdee MDL-61614 Quiz: save slot's tags in a table when adding random question 2018-04-18 13:07:08 +10:00
Shamim Rezaie 28e392a8b6 MDL-61614 Quiz: DB schema changes
Created a new DB table to store tag data for qiuz slots.
2018-04-18 13:07:08 +10:00
Andrew Nicols 7b87d98d6e MDL-56511 theme_boost: Fix SCSS lint issues 2018-04-18 11:02:56 +08:00
Zig Tan bcc08d3b5e MDL-61979 tool_cohortroles: Implemented privacy providers 2018-04-18 10:50:27 +08:00
Jun Pataleta 3a37a5e934 Merge branch 'MDL-61950-master' of git://github.com/ryanwyllie/moodle 2018-04-18 09:46:57 +08:00
Andrew Nicols 6979cf56e2 Merge branch 'MDL-56511-master' of git://github.com/andrewnicols/moodle 2018-04-18 09:35:29 +08:00
Bas Brands 89f0061e23 MDL-56511 theme_boost: Work around CSS Parser restrictions
The CSS Parser used in Moodle does not handle the use of complex
calculations at this stage.
The temporary workaround here uses a fixed position to ensure that the
popover arrows affected are in the correct location.
2018-04-18 09:31:57 +08:00
Bas Brands 3ec69c2ece MDL-56511 theme_boost: Update to Bootstrap 4 stable
Behat fixes by David Monllao <davidm@moodle.com>
    - Blocks
    - Modals
    - Messaging styling
    - Breadcrumb
    - Pagination
    - Course & categories management
2018-04-18 09:31:53 +08:00
Eloy Lafuente (stronk7) 45fc6559b4 Merge branch 'master_MDL-59857' of https://github.com/danmarsden/moodle 2018-04-18 03:06:56 +02:00
Luca Bösch 1c38b99cad MDL-61796 themes: In Clean, normalize filter labels font size.
Actually, in every theme not overriding the template.
2018-04-17 22:43:57 +02:00
Luca Bösch f0aef7abfe MDL-61991 theme_boost: Question correctness displayed as label. 2018-04-17 22:41:28 +02:00
Luca Bösch a07249826a MDL-38099 comments: year in comments date 2018-04-17 22:40:36 +02:00
Eloy Lafuente (stronk7) 6d4bc5bd34 weekly release 3.5dev 2018-04-17 19:54:27 +02:00
Eloy Lafuente (stronk7) 857617e9db NOBUG: Fixed file access permissions 2018-04-17 19:54:27 +02:00
Eloy Lafuente (stronk7) cc41793c50 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-04-17 19:54:24 +02:00
Sara Arjona c01040214a MDL-61957 gradereport_user: Implement privacy API 2018-04-17 14:31:54 +02:00
Sara Arjona e8d0133ed5 MDL-61957 gradereport_singleview: Implement privacy API 2018-04-17 14:02:34 +02:00
Sara Arjona 36b88f19ae MDL-61957 gradereport_overview: Implement privacy API 2018-04-17 14:02:34 +02:00
Sara Arjona 2d84d30d17 MDL-61957 gradereport_outcomes: Implement privacy API 2018-04-17 14:02:33 +02:00
Sara Arjona 7509d232bc MDL-61957 gradereport_history: Implement privacy API 2018-04-17 14:02:33 +02:00
Sara Arjona 8a43e40247 MDL-61957 gradereport_grader: Implement privacy API 2018-04-17 14:02:20 +02:00
David Monllao b71ce36030 MDL-60953 search: Set solr as search engine for testing
Also replacing field label references for "All groups" references as
there is a mforms bug related to hideIf.
2018-04-17 13:26:21 +02:00
Jun Pataleta 659bdbd22a Merge branch 'MDL-61663-master-phpunit' of git://github.com/andrewnicols/moodle 2018-04-17 14:44:12 +08:00
Andrew Nicols ceb2167df1 MDL-61663 phpunit: Add portfolio to the testsuite list 2018-04-17 14:39:56 +08:00
cescobedo 857e34877f MDL-61945 core_register: Implement Privacy API 2018-04-17 08:23:28 +02:00
Marina Glancy d5cfbc918f MDL-61864 tool_policy: cancel button when agreeing to policies
Show cancel button during signup only and do not show when user is logged
in and has to accept changed policies

When cancel button is clicked redirect to the site homepage
2018-04-17 14:19:19 +08:00
Marina Glancy 432a90f1ed MDL-61868 tool_policy: export agreements in privacy api
Part of MDL-61864
2018-04-17 14:19:16 +08:00
Jun Pataleta c3fd1e97ba Merge branch 'MDL-61862-master' of git://github.com/FMCorz/moodle 2018-04-17 12:07:49 +08:00
Andrew Nicols 5cddf50e69 Merge branch 'wip-MDL-61663-master' of git://github.com/abgreeve/moodle 2018-04-17 11:45:50 +08:00
Andrew Nicols ae9167bb3b Merge branch 'MDL-61977-master' of git://github.com/zig-moodle/moodle 2018-04-17 11:42:39 +08:00
Adrian Greeve 0f198a4f8e MDL-61663 portfolio: Update to the external system link names.
Changed the name of the link to something less like an English
string for each of the portfolios.
2018-04-17 11:39:11 +08:00
Frédéric Massart 29b44cedfc MDL-61862 mod_feedback: Tweak query to support UNION on TEXT fields
Thanks Oracle.
2018-04-17 11:35:55 +08:00
Andrew Nicols 18e58659bb Merge branch 'MDL-61980-master' of git://github.com/mihailges/moodle 2018-04-17 11:34:25 +08:00
Andrew Nicols cabbda70b1 Merge branch 'MDL-61916-master' of git://github.com/cescobedo/moodle 2018-04-17 11:17:08 +08:00
Andrew Nicols 9dabc4b966 Merge branch 'MDL-61918-master' of git://github.com/mihailges/moodle 2018-04-17 11:12:24 +08:00
Andrew Nicols f9f74f7a11 Merge branch 'MDL-61903-master' of git://github.com/mihailges/moodle 2018-04-17 11:09:01 +08:00
Zig Tan 8faeb25214 MDL-61568 repository_dropbox: Implement privacy providers 2018-04-17 10:26:50 +08:00
Zig Tan 435e4e2a30 MDL-61568 repository_boxnet: Implement privacy providers 2018-04-17 10:26:50 +08:00
Zig Tan cbee83840f MDL-61568 repository_webdav: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan e196d31789 MDL-61568 repository_user: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan 05c15ed931 MDL-61568 repository_url: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan ec2ccabf56 MDL-61568 repository_upload: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan 63cc353a06 MDL-61568 repository_skydrive: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan 013149f1a2 MDL-61568 repository_s3: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan 204baa0ef6 MDL-61568 repository_recent: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan 9dbd8702c6 MDL-61568 repository_local: Implement null privacy provider 2018-04-17 10:26:49 +08:00
Zig Tan d712722bd5 MDL-61568 repository_filesystem: Implement null privacy provider 2018-04-17 10:26:48 +08:00
Zig Tan e9ff078d75 MDL-61568 repository_equella: Implement null privacy provider 2018-04-17 10:26:33 +08:00
Andrew Nicols f8ad868fad Merge branch 'm35_MDL-60923_New_BackupDir_Setting-v2' of https://github.com/scara/moodle 2018-04-17 09:44:44 +08:00
Marina Glancy c182f060fa MDL-61876 admin: set default forceclean=1 2018-04-17 09:39:22 +08:00
Marina Glancy b197da8770 MDL-61876 question: apply format_text to input only 2018-04-17 09:39:22 +08:00
Mihail Geshoski 885378ca4e MDL-61903 webservice: Implement null privacy provider
Implement null privacy provider to rest, soap and xmlrpc webservice plugins.
2018-04-17 09:19:59 +08:00
Andrew Nicols d282ecf683 Merge branch 'MDL-61435-master' of git://github.com/lameze/moodle 2018-04-17 08:37:58 +08:00
Matteo Scaramuccia 40d90f438a MDL-60923 scheduled tasks: stale temp files in $CFG->backuptempdir too 2018-04-16 23:50:28 +02:00
Matteo Scaramuccia ef844148a9 MDL-60923 backup: Added $CFG->backuptempdir
The new setting will allow to host the temporary backup files
into a specific target directory. Defaults to '$CFG->tempdir/backup'.

Calling make_backup_temp_directory() checks that the required sub-directory
will be properly created under the new target directory.
2018-04-16 23:50:28 +02:00
Jun Pataleta d51c946700 Merge branch 'MDL-61862-master' of git://github.com/FMCorz/moodle 2018-04-16 23:30:42 +08:00
Eloy Lafuente (stronk7) 06dbe955d0 MDL-61819 editor: add testsuite to phpunit.xml 2018-04-16 16:36:42 +02:00
David Monllao 77d9eca5f2 Merge branch 'MDL-61819-master' of git://github.com/andrewnicols/moodle 2018-04-16 16:12:59 +02:00
Andrew Nicols 5377f8a263 MDL-61819 core_editor: Implement core provider 2018-04-16 21:54:51 +08:00
Andrew Nicols 0d619f41c2 MDL-61819 editor_atto: Implement null provider 2018-04-16 21:54:50 +08:00
Andrew Nicols 8c815348eb MDL-61819 editor: Implement editor null providers 2018-04-16 21:54:49 +08:00
David Monllao 99719b6e89 Merge branch 'MDL-39035-master' of https://github.com/lucaboesch/moodle 2018-04-16 12:57:34 +02:00
Frédéric Massart 9f6296e5de MDL-61862 mod_feedback: Implement core_privacy API 2018-04-16 18:45:27 +08:00
David Monllao 82f0ddc7c7 MDL-60953 search: Update groups support method name 2018-04-16 11:45:18 +02:00
David Monllao 9dbb24fa7a Merge branch 'MDL-60953-master' of https://github.com/timhunt/moodle 2018-04-16 11:43:53 +02:00
David Monllao d2c80085fd Merge branch 'MDL-61741-master-paypal' of git://github.com/mudrd8mz/moodle 2018-04-16 10:57:19 +02:00
David Monllao 2ffb0309dd Merge branch 'wip-MDL-61808-master' of git://github.com/abgreeve/moodle 2018-04-16 09:59:43 +02:00
Jun Pataleta 1e09c9ac8f Merge branch 'MDL-61708-lti-fullnamedisplay' of https://github.com/wjroes/moodle 2018-04-16 15:29:08 +08:00
Zig Tan e6df7dfedd MDL-61568 repository_coursefiles: Implement null privacy provider 2018-04-16 15:23:23 +08:00
Zig Tan cfca487f1f MDL-61568 repository_areafiles: Implement null privacy provider 2018-04-16 15:22:44 +08:00
Jun Pataleta cdd11481b4 Merge branch 'MDL-61974-master' of git://github.com/andrewnicols/moodle 2018-04-16 13:17:21 +08:00
Sara Arjona 24966a26c7 MDL-61868 tool_policy: Implement privacy API
Part of MDL-61864
2018-04-16 11:30:14 +08:00
Sara Arjona 4e9e2b0a0a MDL-61844 policy: Avoid to accept new policies during current session
Avoid redirection for accepting new policies during the manager user session
when $user->policyagreed=0 and he/she activates the first policy for logged in users.

Part of MDL-61864
2018-04-16 11:30:14 +08:00
Sara Arjona 3f9b276b97 MDL-61866 tool_policy: Add readme_moodle.txt file and reorganise styles.css
- Review changes made in jquery-eu-cookie-law-popup.js, for minimising them
(add eslint-disable to disable checking)
- Reorganise styles.css to separate CSS code from jquery-eu-cookie-law-popup
to policy one.
- Create readme_moodle.txt file, with instructions for updating the
jquery-eu-cookie-law-popup lib.

Part of MDL-61864
2018-04-16 11:30:14 +08:00
Marina Glancy cc3790d0ea MDL-61864 tool_policy: function can_delete_version
review TODOs in code, make sure they are either removed or tracker issues are created
2018-04-16 11:30:13 +08:00
Marina Glancy 673b598109 MDL-61864 tool_policy: coding style fixes 2018-04-16 11:30:13 +08:00
Mihail Geshoski 92a03f69d2 MDL-61864 tool_policy: accept policies on signup 2018-04-16 11:30:13 +08:00
Sara Arjona 6109f2348b MDL-61864 tool_policy: display policies to guests and users 2018-04-16 11:30:13 +08:00
Marina Glancy cf398020d5 MDL-61864 tool_policy: user agreement reports 2018-04-16 11:30:13 +08:00
David Mudrák 3d9571d5f0 MDL-61864 tool_policy: management of the site policies 2018-04-16 11:30:10 +08:00
Simey Lameze c91da28071 MDL-61772 question: refresh page after tag question 2018-04-16 11:14:46 +08:00
Andrew Nicols ae6072b892 MDL-61974 privacy: Rewrite the content writer storage 2018-04-16 11:12:07 +08:00
Andrew Nicols 3224e06de4 Merge branch 'MDL-61952-master' of git://github.com/sarjona/moodle 2018-04-16 10:50:50 +08:00
Andrew Nicols 77fc10710f Merge branch 'MDL-61954-master' of git://github.com/sarjona/moodle 2018-04-16 10:39:24 +08:00
Andrew Nicols 34e98391e6 Merge branch 'MDL-61902-master' of git://github.com/mihailges/moodle 2018-04-16 10:19:59 +08:00
Mihail Geshoski c8cc46f851 MDL-61918 assignment: Implement null privacy provider
Implement null privacy provider to offline, online, upload and uploadsingle assignment plugins.
2018-04-16 09:59:46 +08:00
Mihail Geshoski d00fbde6d9 MDL-61902 media: Implement null privacy provider 2018-04-16 09:46:56 +08:00
AMOS bot d4fa19a11e Automatically generated installer lang files 2018-04-16 00:07:05 +00:00
Andrew Nicols 53ea0e2ccf Merge branch 'patch-2' of https://github.com/do-you-even-curl/moodle 2018-04-16 08:04:32 +08:00
Adrian Greeve 25c8fd74ac MDL-61808 tool_monitor: Implemented privacy classes.
This plugin is now compatible with the new privacy system.
2018-04-14 10:42:23 +08:00
Łukasz Szeremeta 65bcb7da0e MDL-61827 auth: Change Facebook Graph API v2.8 to v.2.12 in OAuth2
Use v2.12 Facebook Graph API instead of v2.8
2018-04-13 21:40:42 +02:00
Tim Schroeder 1480277cfa MDL-60681 lib/tablelib.php: Make flexible_table class better extendable
Previously the member functions get_initial_first and get_initial_last of flexible_table were public but deprecated due to being no
longer used. Now they are used by print_initials_bar and made protected. That allows classes deriving from flexible_table to access
the first and last name initials without having to use deprecated methods.
2018-04-13 16:52:52 +02:00
Mihail Geshoski 23a52d1a40 MDL-61980 booktool: Implement null privacy provider
Implement null privacy provider into booktool_exportimscp, booktool_importhtml, booktool_print plugin.
2018-04-13 16:15:30 +08:00
David Mudrák 22e94d69f7 MDL-61759 admin: Fix notice if attempting use nonexisting policy handler
The list of all known handlers may not contain the configured value,
raising the PHP undefined index notice.
2018-04-13 09:42:47 +02:00
Jake Dallimore 644bffca5b MDL-61663 portfolio_picasa: add privacy provider implementation 2018-04-13 14:47:43 +08:00
Jake Dallimore 3d4a56b4c3 MDL-61663 portfolio_googledocs: add privacy provider implementation 2018-04-13 14:47:42 +08:00
Jake Dallimore 961eb3d1aa MDL-61663 portfolio_flickr: add privacy provider implementation 2018-04-13 14:47:42 +08:00
Jake Dallimore 90190a6b66 MDL-61663 portfolio_download: add privacy provider implementation 2018-04-13 14:47:42 +08:00
Jake Dallimore 5cbb36cbd8 MDL-61663 portfolio_boxnet: add privacy provider implementation 2018-04-13 14:47:42 +08:00
Jake Dallimore dfb64c5d5b MDL-61663 portfolio_mahara: add privacy provider implementation 2018-04-13 14:47:42 +08:00
Jake Dallimore e6f06ce994 MDL-61663 core_portfolio: add subsystem privacy provider
Added provider for portfolio plugins, and legacy polyfill for plugins.
2018-04-13 14:47:40 +08:00
Zig Tan 2245197519 MDL-61977 tool_profiling: Implemented null privacy provider 2018-04-13 14:29:58 +08:00
Zig Tan 825c2fdf8c MDL-61975 tool_recyclebin: Implemented null privacy provider 2018-04-13 14:00:38 +08:00
Andrew Nicols 1c406559b8 Merge branch 'MDL-60848_master' of https://github.com/markn86/moodle 2018-04-13 13:54:24 +08:00
Mark Nelson e41a56192a MDL-60848 atto_recordrtc: removed never shown HTML and string 2018-04-13 13:46:53 +08:00
Frédéric Massart ce1ec9b4d9 MDL-61836 core_blog: Implement privacy API 2018-04-13 13:22:03 +08:00
Mark Nelson 44946baf04 MDL-60848 core: added instructions on how to update adapter.js 2018-04-13 12:59:24 +08:00
Mark Nelson 77e4535fd9 MDL-60848 atto_recordrtc: implemented privacy provider 2018-04-13 12:59:24 +08:00
Mark Nelson c8520ca45f MDL-60848 atto_recordrtc: changed HTML of attached recordings
This was done so the user can then click on the recording and
add subtitles etc - the same behaviour as 'atto_media'.
2018-04-13 12:59:24 +08:00
Mark Nelson b5a3388bb1 MDL-60848 atto_recordrtc: language string changes
1. Ordered alphabetically by index.
2. Uncapitalised words after the first per Moodle standards.
3. Added string used by getUserMedia() on Chrome (possibly others).
2018-04-13 12:59:24 +08:00
Mark Nelson 1ecf5c15ca MDL-60848 atto_recordrtc: set valid default for 'allowedtypes' 2018-04-13 11:46:51 +08:00
Mark Nelson 6b21108b44 MDL-60848 editor_atto: upgrade to add recordrtc 2018-04-13 11:46:51 +08:00
Mark Nelson dde2a79a70 MDL-60848 atto_recordrtc: bumped version 2018-04-13 11:46:51 +08:00
Mark Nelson 2ce4291183 MDL-60848 core: added recordrtc to core plugin list 2018-04-13 11:46:51 +08:00
Mark Nelson 8be5742cb1 MDL-60848 core: updated adapter.js and moved to core 2018-04-13 11:46:51 +08:00
Dan Marsden 679eab046f MDL-59857 mod_scorm: use valid length for grade type field. 2018-04-13 11:10:00 +12:00
Luca Bösch c3c8cc40be MDL-39035 admin: show old and new version after upgrade in CLI 2018-04-12 18:02:12 +02:00
David Monllao 20bf0c45ff weekly release 3.5dev 2018-04-12 14:38:12 +02:00
David Monllao 7cdeb8be2e NOBUG: Fixed SVG browser compatibility 2018-04-12 14:38:11 +02:00
David Monllao 6bef258db3 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-04-12 14:38:11 +02:00
David Monllao 547357df4b MDL-61298 pix: Removing ^M dos line ending characters 2018-04-12 13:34:33 +02:00
Kathrin Osswald 45ae297f7a MDL-61298 theme Boost: Nav drawer icon improvements - fixes. 2018-04-12 13:28:37 +02:00
Sara Arjona 3d702cc227 MDL-61954 gradeimport_xml: Implement privacy API 2018-04-12 09:49:09 +02:00
Sara Arjona ce0eb44398 MDL-61954 gradeimport_direct: Implement privacy API 2018-04-12 09:48:52 +02:00
Sara Arjona aa784c4eb4 MDL-61954 gradeimport_csv: Implement privacy API 2018-04-12 09:42:36 +02:00
Sara Arjona 8517245516 MDL-61952 gradeexport_xml: Implement privacy API 2018-04-12 08:39:48 +02:00
Sara Arjona ed71c8b1df MDL-61952 gradeexport_xls: Implement privacy API 2018-04-12 08:39:20 +02:00
Sara Arjona d44efece94 MDL-61952 gradeexport_txt: Implement privacy API 2018-04-12 08:38:50 +02:00
Sara Arjona e1b9cb14e4 MDL-61952 gradeexport_ods: Implement privacy API 2018-04-12 08:38:09 +02:00
Ryan Wyllie 40633c6310 MDL-61950 question: include random questions in statistics calculator 2018-04-12 13:36:41 +08:00
Andrew Nicols 05dfaab2b4 Merge branch 'MDL-61852-master' of git://github.com/bmbrands/moodle 2018-04-12 13:14:03 +08:00
Bas Brands fd70f25519 MDL-61852 core: downgrade popper to version 1.12.6 fixing usertours positioning issues 2018-04-12 07:02:14 +02:00
Andrew Nicols 934b1e9832 MDL-50907 antivirus: Switch to correct string 2018-04-12 10:30:25 +08:00
Ruslan Kabalin 30e1797f29 MDL-50907 antivirus_clamav: Add test coverage for scan_data. 2018-04-12 10:30:25 +08:00
Ruslan Kabalin 694cb8eb21 MDL-50907 antivirus: Add test coverage for scan_data. 2018-04-12 10:30:25 +08:00
Ruslan Kabalin f6c5cfef77 MDL-50907 tool_messageinbound: Use antiviruses_scan_data for attachments scanning. 2018-04-12 10:30:25 +08:00
Ruslan Kabalin ddf14b32fe MDL-50907 antivirus_clamav: Implement data scanning using unix sockets.
We use clamav data stream scanning functionality.
2018-04-12 10:30:25 +08:00
Ruslan Kabalin bd74bda383 MDL-50907 antivirus: Implement data stream scanning default process. 2018-04-12 10:30:25 +08:00
Ruslan Kabalin 8504673116 MDL-50907 antivirus: Make antivirus_exception message more general.
Since the scan can be run not only as a result of file uploading, the
language string should be more general.
2018-04-12 10:30:25 +08:00
Eloy Lafuente (stronk7) 3451a05292 Merge branch 'MDL-61668-master' of git://github.com/jleyva/moodle 2018-04-12 00:31:18 +02:00
Eloy Lafuente (stronk7) c9271388c9 Merge branch 'MDL-61802-master' of https://github.com/AlexWhitlatch/moodle 2018-04-12 00:22:40 +02:00
Eloy Lafuente (stronk7) fc9f324fe2 Merge branch 'MDL-61828-master' of git://github.com/andrewnicols/moodle 2018-04-12 00:14:32 +02:00
Eloy Lafuente (stronk7) a845d7d387 Merge branch 'MDL-61895-master' of git://github.com/andrewnicols/moodle 2018-04-11 23:57:46 +02:00
Eloy Lafuente (stronk7) 3b8c9ab2b8 Merge branch 'MDL-61896-master' of git://github.com/andrewnicols/moodle 2018-04-11 23:41:21 +02:00
Eloy Lafuente (stronk7) 74e48d168f Merge branch 'MDL-61859-master' of https://github.com/snake/moodle 2018-04-11 22:27:25 +02:00
Eloy Lafuente (stronk7) 0f0d0004bd Merge branch 'MDL-61208-master-fix' of git://github.com/farhan6318/moodle 2018-04-11 20:13:56 +02:00
Eloy Lafuente (stronk7) d2706c5e58 Merge branch 'MDL-60940-master-forceclean' of git://github.com/mudrd8mz/moodle 2018-04-11 19:39:01 +02:00
Eloy Lafuente (stronk7) 2d42e6e12c Merge branch 'MDL-61743_master' of git://github.com/dmonllao/moodle 2018-04-11 19:23:01 +02:00
David Monllao e171dc6dbe Merge branch 'MDL-61873-master' of git://github.com/cescobedo/moodle 2018-04-11 18:41:43 +02:00
David Monllao a5db58f4f2 Merge branch 'MDL-61198-master' of git://github.com/jleyva/moodle 2018-04-11 18:23:59 +02:00
David Monllao 0ca25fe2a9 Merge branch 'MDL-61581-master' of https://github.com/lucaboesch/moodle 2018-04-11 18:07:09 +02:00
David Monllao 27fef51d48 MDL-55491 badges: Add missing format_string call
Extra version bump + trailing whitespace removal.
2018-04-11 17:55:45 +02:00
David Monllao 728b851eb5 Merge branch 'MDL-55491-master' of git://github.com/sarjona/moodle 2018-04-11 17:53:37 +02:00
Eloy Lafuente (stronk7) 8c46d204a1 MDL-60548 tests: Get tests passing
This includes:

- changing all usernames in feature to lowercase, for cross-db passing. Fixes:
  - user/tests/behat/set_email_display.feature
- ensure that course_enrolment_manager::get_potential_users() and
  external always returns user->maildisplay attribute, so email
  visibility can be calculated by user_get_user_details(). Fixes:
  - enrol/tests/behat/enrol_user.feature
  - blocks/news_items/tests/behat/display_news.feature
  - course/tests/behat/course_creation.feature
2018-04-11 17:15:38 +02:00
Farhan Karmali 351cff7928 MDL-61208 enrol: Fix for issue found while testing 2018-04-11 18:24:14 +05:30
David Mudrák 4b82c15cdb MDL-60940 weblib: Introduce an ability to force cleaning of all content
The new configuration flag $CFG->forceclean overrides the noclean
option when calling format_text() so that the text is always
and unconditionally cleaned.
2018-04-11 10:23:45 +02:00
Jake Dallimore 4af7042e6e Merge branch 'MDL-59691-master' of https://github.com/lucisgit/moodle 2018-04-11 16:01:03 +08:00
Andrew Nicols 2b118a941a Merge branch 'MDL-61208-master' of git://github.com/farhan6318/moodle 2018-04-11 10:52:29 +08:00
Simey Lameze de81dc8763 MDL-61520 quiz: fix references for xhtml on stats report 2018-04-11 10:46:13 +08:00
Andrew Nicols 8badf71325 Merge branch 'MDL-61881-master' of git://github.com/zig-moodle/moodle 2018-04-11 10:14:03 +08:00
Zig Tan 6f77c09777 MDL-61881 report: fix privacy lang strings 2018-04-11 10:06:51 +08:00
Jake Dallimore da16e3e3dc Merge branch 'MDL-61255_master' of git://github.com/markn86/moodle 2018-04-11 09:53:14 +08:00
Andrew Nicols 46a13e37a8 Merge branch 'MDL-61731-master' of git://github.com/mihailges/moodle 2018-04-11 09:11:36 +08:00
Mihail Geshoski 2f9bd2bf90 MDL-61731 message_email: Add privacy files and unit tests 2018-04-11 09:03:58 +08:00
Andrew Nicols 4ea006e4da Merge branch 'MDL-61867-master' of git://github.com/mihailges/moodle 2018-04-11 08:51:29 +08:00
AMOS bot 49e54ae981 Automatically generated installer lang files 2018-04-11 00:07:09 +00:00
Eloy Lafuente (stronk7) bbe8bb0d02 Merge branch 'MDL-61709-scorm-student-fullnamedisplay' of https://github.com/wjroes/moodle 2018-04-11 01:49:54 +02:00
Eloy Lafuente (stronk7) a2ac42d40c Merge branch 'MDL-61824-master' of https://github.com/sammarshallou/moodle 2018-04-11 01:02:45 +02:00
Eric Merrill 815c44ce07 MDL-61913 restore: Protect against blocks that aren't being created 2018-04-11 00:50:27 +02:00
Eloy Lafuente (stronk7) 66434106ed MDL-60548 test: Change modified lang string to get tests back to pass
Also modified a template example use, so there aren't courrencies
of the old string in codebase.
2018-04-10 23:24:17 +02:00
Tim Hunt 1872cfcd2f MDL-61928 formslib: shortforms should work with non-editable forms 2018-04-10 17:39:49 +01:00
Tim Hunt e37c1fe23d MDL-61348 quiz reports: fix incorrect groups averages
the averages were wrong if a user had mulitple enrolments in a course,
which can happen with some enrolment plugins.
2018-04-10 17:10:28 +01:00
Eloy Lafuente (stronk7) 2f27dca60d Merge branch 'MDL-60548-master-v4' of https://github.com/Dave-B/moodle 2018-04-10 17:14:46 +02:00
Eloy Lafuente (stronk7) bd0391d284 Merge branch 'wip-MDL-58697-master-assigngrading' of git://github.com/adamann2/moodle 2018-04-10 15:53:37 +02:00
Kathrin Osswald 64448e1ea9 MDL-61298 theme Boost: Nav drawer icon improvements. 2018-04-10 15:31:12 +02:00
David Monllao 5ba5a5e31d Merge branch 'MDL-61838-master' of git://github.com/mihailges/moodle 2018-04-10 13:44:05 +02:00
David Monllao 8373df9687 Merge branch 'MDL-61843-master' of git://github.com/mihailges/moodle 2018-04-10 13:42:43 +02:00
Dan Marsden fbfd69a865 MDL-32585 mod_scorm: Improve force new attempts setting.
AMOS BEGIN
 MOV [forcenewattempt,mod_scorm],[forcenewattempts,mod_scorm]
AMOS END
2018-04-10 13:38:51 +02:00
Eloy Lafuente (stronk7) a706fd79a5 MDL-61875 tests: Use existing component & support $CFG->admin 2018-04-10 13:14:34 +02:00
Eloy Lafuente (stronk7) 7aeb85770f Merge branch 'MDL-61875-master' of https://github.com/snake/moodle 2018-04-10 13:03:27 +02:00
Mark Nelson 23de6f3a2d MDL-61255 core_message: add warning when notifications not migrated 2018-04-10 17:28:52 +08:00
Mark Nelson 78348dfc4e MDL-61255 core_message: added helper function to detect legacy messages 2018-04-10 17:28:52 +08:00
Mark Nelson 84f6a716b2 MDL-61255 core_message: migrate data from the 'message_popup' table 2018-04-10 17:26:43 +08:00
Mark Nelson 6f0731adc5 MDL-61255 core_message: adjusted upgrade.txt 2018-04-10 15:17:01 +08:00
Mark Nelson e78523bff8 MDL-61255 message_popup: change API so it uses new table 2018-04-10 15:17:01 +08:00
Mark Nelson 1f64f17429 MDL-61255 message_popup: add table to store notifications 2018-04-10 15:17:01 +08:00
Mark Nelson 7022b8d9e4 MDL-61255 core_message: add notification when data not migrated 2018-04-10 15:17:01 +08:00
Mark Nelson 5cc6b3eeb5 MDL-61255 core_message: added unit test for task 2018-04-10 15:17:01 +08:00
Mark Nelson 41bc5aa587 MDL-61255 core_message: created task to handle migration of data 2018-04-10 15:17:01 +08:00
David Monllao d25a8e3c69 Merge branch 'MDL-61846-master' of git://github.com/mihailges/moodle 2018-04-10 08:59:25 +02:00
David Monllao e7d10540d9 Merge branch 'MDL-61343-master' of git://github.com/Kathrin84/moodle 2018-04-10 08:29:39 +02:00
David Monllao fd91aab1e7 Merge branch 'MDL-61129-fix-accessibility-on-tables-mod_survey_MASTER' of https://github.com/guillalva06/moodle 2018-04-10 07:57:47 +02:00
Farhan Karmali fe5b5be1dd MDL-61208 enrol: Standard enrol plugins should use tasks instead of cron 2018-04-10 09:16:17 +05:30
Andrew Nicols 0d900be445 Merge branch 'MDL-61837-master' of git://github.com/lameze/moodle 2018-04-10 11:16:12 +08:00
Andrew Nicols 091a2630a7 Merge branch 'MDL-61795-master' of git://github.com/mihailges/moodle 2018-04-10 10:40:01 +08:00
Mihail Geshoski 9b8822d2a6 MDL-61795 block_rss_client: Add privacy files and unit tests 2018-04-10 09:34:38 +08:00
Andrew Nicols f31450578a MDL-58065 media_videojs: Clarify langstring 2018-04-10 08:54:16 +08:00
Andrew Nicols b4deb66146 Merge branch 'MDL-58065-master' of https://github.com/lucisgit/moodle 2018-04-10 08:54:12 +08:00
Jake Dallimore 6e6ba82305 MDL-61875 core_privacy: update the core_component_list in the manager 2018-04-10 08:44:42 +08:00
Jake Dallimore 5749f8a4f7 MDL-61875 core_component: new method to get full components list 2018-04-10 08:44:40 +08:00
Eloy Lafuente (stronk7) 6502ba9a26 Merge branch 'MDL-61869_master' of https://github.com/marxjohnson/moodle 2018-04-10 02:26:24 +02:00
Eloy Lafuente (stronk7) 1f4670653d Merge branch 'MDL-61860-master' of https://github.com/mackensen/moodle 2018-04-10 01:00:31 +02:00
Eloy Lafuente (stronk7) 805a3a4ed7 Merge branch 'MDL-60196_master' of https://github.com/mfabriczy/moodle 2018-04-10 00:55:54 +02:00
Eloy Lafuente (stronk7) 445f3e3f4f Merge branch 'MDL-61449-master' of git://github.com/jleyva/moodle 2018-04-10 00:43:31 +02:00
cescobedo bc346cc34d MDL-61916 format: Add privacy implementation for all format plugins
None of the Course format plugins have any user preference or database table.
They all implement the null provider.
2018-04-10 00:17:42 +02:00
Eloy Lafuente (stronk7) 90ce448189 Merge branch 'MDL-60774-master' of git://github.com/jleyva/moodle 2018-04-10 00:02:49 +02:00
Daniel Thies e909bfc70f MDL-61476 mod_glossary: Check XML arrays exist 2018-04-09 23:27:27 +02:00
Daniel Thies 26c9798596 MDL-61476 mod_glossary: Support tags in entries export 2018-04-09 23:26:34 +02:00
Eloy Lafuente (stronk7) cb03034466 Merge branch 'MDL-61861-master' of git://github.com/andrewnicols/moodle 2018-04-09 20:23:49 +02:00
Tony Butler 60e9f9083e MDL-59691 assignfeedback_editpdf: Allow comment placement to all edges
Plus a couple of extra usability improvements:
- Collapse comment during move to allow precise placement
- Change cursor style to indicate that dragging is possible
2018-04-09 16:55:36 +01:00
Tony Butler ad7c719de4 MDL-59691 assignfeedback_editpdf: Allow comments to collapse to top-left
Forcing them to collapse to the bottom-left corner seems less natural
and effectively changes the location of existing comments from pre-3.3
2018-04-09 16:55:36 +01:00
sam marshall a539e5605c MDL-61824 core_search: Deleting restored context caused error
When restoring content, this adds it to a queue for indexing. If the
restored content was then deleted before the indexing takes place,
this caused an exception in the scheduled task.

This change makes it continue safely past missing contexts.
2018-04-09 16:36:30 +01:00
Guillermo Alvarez f1dd1cb5e0 MDL-61129 survey: Add colgroup attribute at survey question tables 2018-04-09 10:33:43 -05:00
Stephen Bourget 75653a3068 MDL-55491 badges: Add cohort as badge criteria 2018-04-09 11:03:30 +02:00
Eugene Venter abc07b53a7 MDL-55491 badges: Add cohort as badge criteria
commissioned by NZ Customs Service
2018-04-09 10:23:50 +02:00
Jake Dallimore 417ef862e4 Merge branch 'MDL-61711' of git://github.com/stronk7/moodle 2018-04-09 16:19:44 +08:00
Mark Nelson 0174e72ba8 MDL-60848 atto_recordrtc: removed 'oldermoodle' variable 2018-04-09 16:15:24 +08:00
Andrew Nicols adf4ae83fc Merge branch 'MDL-61829-master' of git://github.com/zig-moodle/moodle 2018-04-09 15:28:18 +08:00
Andrew Nicols 43c5278ad3 Merge branch 'MDL-61736-master' of git://github.com/sarjona/moodle 2018-04-09 15:25:02 +08:00
Sara Arjona 3449816e7f MDL-61736 user: Show correct status when enrol method is disabled
When disabling an enrolment method, the user status will be displayed
as "Not current" instead of "Active".
2018-04-09 08:45:57 +02:00
Zig Tan f5edb0c638 MDL-61829 block_community: Implement privacy provider 2018-04-09 14:09:14 +08:00
Andrew Nicols 98645b5be4 Merge branch 'MDL-60416_master' of git://github.com/markn86/moodle 2018-04-09 13:38:56 +08:00
Marina Glancy 5714c88b5f MDL-61852 core: 3rd party lib include cleanup 2018-04-09 12:27:45 +08:00
Bas Brands ea33609e4b MDL-61852 lib: move popper.js to core
Popper is used in tool_usertours. Bootstrap 4 stable depends on popper too. Moving to /lib so both can use a single popper.js lib
2018-04-09 12:08:48 +08:00
Mark Nelson 9e0501a611 MDL-60416 ltiservice_gradebookservices: supply error code reason 2018-04-09 12:08:35 +08:00
Mark Nelson ede461a9a4 MDL-60416 ltiservice_gradebookservices: use moodle_url for links 2018-04-09 12:08:35 +08:00
Mark Nelson 43a60f7fd8 MDL-60416 ltiservice_memberships: construct JSON as PHP array 2018-04-09 12:08:35 +08:00
Mark Nelson 2e352cd1fa MDL-60416 core: added 'gradebookservices' to plugin list 2018-04-09 12:08:35 +08:00
Mark Nelson 7a08156eef MDL-60416 mod_lti: add unit test for gradebook cleanup task 2018-04-09 12:08:35 +08:00
Claude Vervoort c02324d96a MDL-60416 mod_lti: Introduced LTI Advantage
A huge thanks goes to 'Diego del Blanco' and
'Chris Lawson' for contributing much of their
code and time to this project, and to Cengage
for sponsoring it.

Much appreciated!
2018-04-09 12:08:35 +08:00
nlnrose 18e27e7bdb MDL-61802 Admin: Corrected typo in test file.
The file privcacy_provider_test.php was supposed to be
privacy_provider_test.php.
2018-04-08 21:58:55 -06:00
Simey Lameze b71f21bda9 MDL-61837 core_question: replace tag fields on edit page 2018-04-09 11:46:53 +08:00
Simey Lameze a9b3410632 MDL-61837 core_question: replace tag fields on tag modal 2018-04-09 11:46:46 +08:00
Mihail Geshoski 10268ec52e MDL-61867 fileconverter_unoconv: Add privacy files 2018-04-09 11:41:21 +08:00
Helen Foster efefa2d905 MDL-61033 mod_quiz: Update lang string 2018-04-09 10:39:19 +08:00
Andrew Nicols c36eea3d28 Merge branch 'MDL-61033-master' of https://github.com/nashtechdev01/moodle 2018-04-09 10:37:23 +08:00
Andrew Nicols 853508eed3 MDL-61601 cohort: Move theme test to moodle_page 2018-04-09 10:16:54 +08:00
Zig Tan 71098b9524 MDL-61881 report_usersessions: Implement null privacy provider 2018-04-09 09:57:15 +08:00
Zig Tan b398f0702a MDL-61881 report_stats: Implement null privacy provider 2018-04-09 09:56:53 +08:00
Zig Tan d8e07b9f75 MDL-61881 report_security: Implement null privacy provider 2018-04-09 09:56:31 +08:00
Zig Tan 2b0b91d7ee MDL-61881 report_questioninstances: Implement null privacy provider 2018-04-09 09:56:07 +08:00
Zig Tan 024d11a8ab MDL-61881 report_performance: Implement null privacy provider 2018-04-09 09:55:47 +08:00
Zig Tan 70b123700a MDL-61881 report_participation: Implement null privacy provider 2018-04-09 09:55:26 +08:00
Zig Tan c1a8f55b86 MDL-61881 report_outline: Implement null privacy provider 2018-04-09 09:55:07 +08:00
Zig Tan c4c5061d1c MDL-61881 report_loglive: Implement null privacy provider 2018-04-09 09:54:38 +08:00
Zig Tan 219c136003 MDL-61881 report_log: Implement null privacy provider 2018-04-09 09:54:09 +08:00
Zig Tan 747ac8e9c4 MDL-61881 report_insights: Implement null privacy provider 2018-04-09 09:53:45 +08:00
Zig Tan 7b78c329c5 MDL-61881 report_eventlist: Implement null privacy provider 2018-04-09 09:53:19 +08:00
Zig Tan 16044f5140 MDL-61881 report_courseoverview: Implement null privacy provider 2018-04-09 09:49:50 +08:00
Zig Tan c68b4a9d04 MDL-61881 report_configlog: Implement null privacy provider 2018-04-09 09:49:18 +08:00
Zig Tan e9251c0fe5 MDL-61881 report_competency: Implement null privacy provider 2018-04-09 09:48:55 +08:00
Zig Tan 554b8789d6 MDL-61881 report_backup: Implement null privacy provider 2018-04-09 09:48:21 +08:00
Andrew Nicols d607cdd782 Merge branch 'MDL-61601-master' of git://github.com/sarjona/moodle 2018-04-09 09:38:21 +08:00
Andrew Nicols 9ec2b3e639 Merge branch 'MDL-59581' of https://github.com/stronk7/moodle 2018-04-09 09:26:23 +08:00
Eloy Lafuente (stronk7) 970df71df3 MDL-61711 install: update the list of stale files for 3.5 2018-04-09 02:21:55 +02:00
Jake Dallimore 2f5fa7109e MDL-59581 database: remove mssql references from lib/ files 2018-04-09 02:00:09 +02:00
Jake Dallimore d67991f15a MDL-59581 database: remove mssql strings from install.php 2018-04-09 01:59:57 +02:00
Jake Dallimore 9c533e01dd MDL-59581 database: remove mssql_native_moodle_database test from enrol 2018-04-09 01:59:37 +02:00
Jake Dallimore 2610190674 MDL-59581 database: remove mssql reference from top level files 2018-04-09 01:59:28 +02:00
Jake Dallimore 4c00922f2e MDL-59581 database: remove mssql_native_moodle_database test from auth 2018-04-09 01:59:16 +02:00
Jake Dallimore 811808b3d2 MDL-59581 database: removal of mssql bits from admin/ 2018-04-09 01:59:06 +02:00
Jake Dallimore 48c3e99599 MDL-59581 database: remove mssql specific code from lib/dml 2018-04-09 01:58:26 +02:00
Andrew Nicols e484db7c94 MDL-61896 filter: Implement privacy API for all filters 2018-04-08 15:55:37 +08:00
Andrew Nicols 240524049e MDL-61895 availability: Implement null provider for plugins 2018-04-08 14:21:31 +08:00
Andrew Nicols d043aa071b MDL-61861 privacy: Add unit tests to check all providers. 2018-04-08 14:12:42 +08:00
Andrew Nicols 5b18ae4a8a MDL-61828 core_privacy: Support proper nesting in test trees 2018-04-08 13:35:09 +08:00
cescobedo 6291e67b11 MDL-61873 auth: Add privacy implementation for all auth plugins
None of the Auth plugins (except manual and oauth2) have any user preference or database table.
They all implement the null provider.
2018-04-07 11:24:17 +02:00
willem 9376f7d68e MDL-61709 mod_scorm: use student fullname when not in standards mode
Changed the scorm12standard setting for SCORM 1.2 in a more generic
'use SCORM Standards' setting. New setting is off by default.

The student name passed into the module is formatted as
$USER->lastname .', '. $USER->firstname and thus ignores the
fullnamedisplay. This is per SCORM1.2 standards. If setting
'use SCORM Standards' is disabled fullname will be used instead.
2018-04-07 09:14:22 +02:00
Luca Bösch 3d7f501293 MDL-61581 lesson: style continue to last buttons 2018-04-06 16:44:12 +02:00
David Monllao 297509d70c MDL-61621 blocks: New API function 2018-04-06 13:12:30 +02:00
Jake Dallimore fdae6f77d6 MDL-61859 core_completion: fix unit tests expecting exceptions twice
We can't expectException twice in the same test, so split this out into
another test.
2018-04-06 17:30:31 +08:00
Mark Nelson a8d022d814 MDL-60848 atto_recordrtc: removed use of bowser.js 2018-04-06 17:24:59 +08:00
Mark Nelson 492a795d67 MDL-60848 atto_recordrtc: removed unnecessary files 2018-04-06 17:24:47 +08:00
jfederico b4bbf31bf1 MDL-60848 atto_recordrtc: Add recordrtc to core
Thanks also goes to Jacob Prud'homme from Blindside
Networks who contributed a vast portion of this code.
2018-04-06 17:14:36 +08:00
David Monllao 45ade52173 MDL-61743 message: Add context level checking 2018-04-06 09:09:15 +02:00
David Monllao 3650af761a MDL-61743 core_privacy: Add context level checks for all users deletion 2018-04-06 08:57:24 +02:00
Andrew Nicols fa9243cd85 MDL-61743 core_privacy: Reduce context specificty
Deletion is called for a context against all components, not just
modules.
2018-04-06 08:57:24 +02:00
Sara Arjona 88cb8b781d MDL-61601 cohort: Add theme support for cohorts
If enabled $CFG->allowcohortthemes, then themes can be set at the cohort level.
This will affect all users with only one cohort or more than one but with the same theme.
The default theme order will be: course, category, session, user, cohort, site.
2018-04-06 08:28:01 +02:00
Andrew Nicols cba5d8f1de MDL-61861 core_tag: Correct langstring identifier 2018-04-06 09:25:54 +08:00
Mihail Geshoski ee0d7009e4 MDL-61846 dataformat: Add privacy implementation for all plugins 2018-04-06 09:25:44 +08:00
Mihail Geshoski 13840b978d MDL-61843 report_completion: Add privacy files 2018-04-06 09:13:45 +08:00
Mihail Geshoski c2384dde13 MDL-61838 report_progress: Add privacy files 2018-04-06 09:00:02 +08:00
Charles Fulton baab37149d MDL-61860 auth: standardise config inclusion 2018-04-05 14:37:02 -04:00
Eloy Lafuente (stronk7) 2bd2660751 weekly release 3.5dev 2018-04-05 15:38:01 +02:00
Eloy Lafuente (stronk7) 39071b0707 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-04-05 15:37:59 +02:00
Ruslan Kabalin 7d241879bf MDL-58065 media_videojs: Add tests for RTMP and flash. 2018-04-05 12:19:16 +01:00
sam marshall 3c49b0e6b6 MDL-60953 core_search: UI to search by group 2018-04-05 11:42:09 +01:00
Ruslan Kabalin 2e59aee791 MDL-58065 media_videojs: Add RTMP support. 2018-04-05 11:15:03 +01:00
Juan Leyva cf58a2d528 MDL-61198 course: Return course format options in WS 2018-04-05 11:05:47 +01:00
Juan Leyva ef184ad6e0 MDL-61198 course: New function for format to support external config
New function to return the course format settings for external clients
via Web Services.
Some settings (like private keys/tokens) should be not returned if the
user hasn’t appropriate permissions.
2018-04-05 11:05:47 +01:00
Mark Johnson e65560e3eb MDL-61869 output: Infer rendering of templatables 2018-04-05 09:45:15 +01:00
Juan Leyva 3c8de97d00 MDL-61668 tool_mobile: New options for disabled features
We are allowing admins to disable course or courses download.
2018-04-05 08:53:38 +01:00
Jake Dallimore 1c217fa9ee Merge branch 'MDL-61761-master' of git://github.com/mihailges/moodle 2018-04-05 13:17:53 +08:00
Mihail Geshoski 0edc94e316 MDL-61761 message_jabber: Add privacy files and unit tests 2018-04-05 12:00:47 +08:00
Jake Dallimore 90cdf50dd9 Merge branch 'wip-MDL-61163-master' of git://github.com/marinaglancy/moodle 2018-04-05 10:36:57 +08:00
Andrew Nicols 682282de55 Merge branch 'MDL-61464-master' of git://github.com/rezaies/moodle 2018-04-05 09:44:05 +08:00
Andrew Nicols 8f205734fb Merge branch 'MDL-60726-master' of git://github.com/zig-moodle/moodle 2018-04-05 08:32:21 +08:00
Eloy Lafuente (stronk7) 2b9e3510f8 Merge branch 'MDL-61076-master' of https://github.com/sammarshallou/moodle 2018-04-05 02:09:31 +02:00
Eloy Lafuente (stronk7) f21b5591c6 Merge branch 'MDL-61818-master' of git://github.com/andrewnicols/moodle 2018-04-05 00:49:23 +02:00
Eloy Lafuente (stronk7) 9c93f67328 Merge branch 'wip-MDL-61746-master' of https://github.com/RohithSrk/moodle 2018-04-05 00:42:11 +02:00
Eloy Lafuente (stronk7) 716e9deab7 Merge branch 'MDL-61673-fix-wrong-string-on-calendar-mustache_MASTER' of https://github.com/guillalva06/moodle 2018-04-05 00:35:49 +02:00
Jun Pataleta b07f2c4691 MDL-61781 admin_settings: Fix default settings value for docroot 2018-04-04 16:45:35 +08:00
Zig Tan 5687cd044d MDL-60726 assign: Fix assign submission confirmation alignment 2018-04-04 16:35:15 +08:00
Juan Leyva b9e6db9ddc MDL-61449 tool_mobile: New Web Service tool_mobile_get_content 2018-04-04 08:28:00 +01:00
Andrew Nicols f9d8a27f2c Merge branch 'MDL-61692-master-2' of https://github.com/snake/moodle 2018-04-04 11:37:09 +08:00
Andrew Nicols 6ab10c3d77 Merge branch 'wip-MDL-56635-master' of git://github.com/marinaglancy/moodle 2018-04-04 11:27:11 +08:00
Andrew Nicols 0e25774762 Merge branch 'MDL-61183-master' of git://github.com/farhan6318/moodle 2018-04-04 11:00:07 +08:00
Farhan Karmali 6afa07edd1 MDL-61183 user: Added total participants count on paricipants page 2018-04-04 07:56:38 +05:30
Jake Dallimore 19ca0aaa6b MDL-61692 core_privacy: add privacyfields to link_ methods
Some subsystems are like conduits, passing data along to plugins which,
in turn, send the data externally. Only the component linking to (using)
the subsystem will know what data it is sending along to the eventual
external system, so should be able to specify this at the time of
linking. The same goes for plugintypes.
2018-04-04 10:00:39 +08:00
Andrew Nicols b9201e1b2b Merge branch 'MDL-61751-master-fix' of https://github.com/snake/moodle 2018-04-04 09:10:32 +08:00
Jake Dallimore 0fe269291e MDL-61751 core_plagiarism: fix fatal error with privacy legacy polyfill 2018-04-04 08:58:18 +08:00
Andrew Nicols 711c4775c5 MDL-60811 enrol_self: Remove unused globals 2018-04-04 08:55:54 +08:00
Andrew Nicols 36052f7185 Merge branch 'MDL-60811-master' of git://github.com/farhan6318/moodle 2018-04-04 08:48:21 +08:00
Eloy Lafuente (stronk7) 92221e9d44 Merge branch 'MDL-61451-master' of git://github.com/cescobedo/moodle 2018-04-04 01:39:36 +02:00
Eloy Lafuente (stronk7) c8cbdfce24 Merge branch 'MDL-61817-master' of git://github.com/andrewnicols/moodle 2018-04-04 01:22:36 +02:00
Eloy Lafuente (stronk7) 1c2d8c7fb3 MDL-61751 core_plagiarism: add testsuite to phpunit.xml 2018-04-04 01:04:54 +02:00
Eloy Lafuente (stronk7) cb92d20996 Merge branch 'MDL-61502-master' of https://github.com/lucaboesch/moodle 2018-04-04 00:49:59 +02:00
Eloy Lafuente (stronk7) 5deadc8229 Merge branch 'wip-MDL-61522-master' of git://github.com/marinaglancy/moodle 2018-04-04 00:45:37 +02:00
Eloy Lafuente (stronk7) 3f278e7803 Merge branch 'MDL-61525-master' of https://github.com/HuongNV13/moodle 2018-04-04 00:41:49 +02:00
Eloy Lafuente (stronk7) f287b7efbb Merge branch 'MDL-61665-master' of https://github.com/iamandrew/moodle 2018-04-04 00:39:10 +02:00
Eloy Lafuente (stronk7) f9ee170a9b Merge branch 'MDL-61703-master' of git://github.com/andrewnicols/moodle 2018-04-04 00:31:11 +02:00
Eloy Lafuente (stronk7) dfbcdb3ec2 Merge branch 'MDL-61751-master' of git://github.com/andrewnicols/moodle 2018-04-04 00:23:44 +02:00
Eloy Lafuente (stronk7) eed3d30194 Merge branch 'MDL-61781-master' of https://github.com/lucaboesch/moodle 2018-04-03 23:46:08 +02:00
Eloy Lafuente (stronk7) 5b123ab8d3 Merge branch 'MDL-61724-master' of git://github.com/mihailges/moodle 2018-04-03 23:38:59 +02:00
Eloy Lafuente (stronk7) 1619d36e99 Merge branch 'MDL-60115-Book-cancel-button-redirect-bug-master' of https://github.com/Moodlers/moodle-1 2018-04-03 21:45:49 +02:00
Farhan Karmali ebaf979c94 MDL-60811 enrol_self: Add bulk action for self enrollment on users page 2018-04-03 19:29:44 +05:30
Marcus Fabriczy e86cbd49bb MDL-60196 core_course: Fix the display of custom LTI icons
Custom LTI icons attached to LTI tools did not display - a regression
caused by MDL-55796.

Change-Id: I02c5d9ff4738657100d020e406d391a449f7588b
2018-04-03 20:36:44 +09:30
Jake Dallimore 73582bd26e Merge branch 'eugene-auth-email-wantsurl' of https://github.com/bynare/moodle-fixes 2018-04-03 18:40:52 +08:00
Jake Dallimore f16b871fe2 Merge branch 'wip-MDL-61815-master' of git://github.com/abgreeve/moodle 2018-04-03 17:53:13 +08:00
Jake Dallimore 166a9cec54 Merge branch 'wip-MDL-61127-master' of git://github.com/abgreeve/moodle 2018-04-03 17:34:03 +08:00
Juan Leyva 73d85fee4f MDL-60774 tool_mobile: Support for new site add-ons properties 2018-04-03 09:58:01 +01:00
Jun Pataleta 5a0dd0e50d Merge branch 'MDL-58411-master' of https://github.com/lucaboesch/moodle 2018-04-03 16:44:43 +08:00
Adrian Greeve dcf4254179 MDL-61127 filepicker: Selected repository now highlighted. 2018-04-03 16:25:41 +08:00
Adrian Greeve 5aeadf0b7b MDL-61127 filepicker: Added aria-selected attribute to repos.
The repository list in the file picker now as aria-selected
added to denote which repository is selected.
2018-04-03 16:25:40 +08:00
Andrew Nicols e9b779f143 Merge branch 'wip-MDL-61629-master' of git://github.com/abgreeve/moodle 2018-04-03 15:58:26 +08:00
Adrian Greeve 7820177f20 MDL-61629 message_airnotifier: Add privacy files and unit tests. 2018-04-03 15:33:31 +08:00
Andrew Nicols c464c08a52 MDL-61256 core_search: Coding style fixes 2018-04-03 14:36:15 +08:00
Andrew Nicols a9710e9d94 Merge branch 'MDL-61256-master' of https://github.com/sammarshallou/moodle 2018-04-03 14:23:54 +08:00
Andrew Nicols c835d2c8a8 Merge branch 'MDL-61020-master' of git://github.com/rezaies/moodle 2018-04-03 13:58:03 +08:00
Luca Bösch 94cb5a662a MDL-58411 qtype_essay: Add file type validation in essay question type 2018-04-03 07:27:56 +02:00
Simey Lameze 1399c7e350 MDL-61435 core_tag: improve get_tags_by_area_in_contexts performance 2018-04-03 12:55:40 +08:00
Adrian Greeve 0f6fb93653 MDL-61815 core_privacy: Fix for metadata types and new method.
Minor fix for subsystem_link and plugintype_link.
Addition of get_null_provider_reason in the manager class.
2018-04-03 12:05:18 +08:00
Eloy Lafuente (stronk7) f6873c2e31 Merge branch 'MDL-61766-master' of git://github.com/junpataleta/moodle 2018-04-03 01:18:20 +02:00
Eloy Lafuente (stronk7) 5db00dc3c9 Merge branch 'MDL-61689-master' of git://github.com/andrewnicols/moodle 2018-04-03 01:16:27 +02:00
Eloy Lafuente (stronk7) 0f25080367 MDL-61223 course: keep some tests using old values (January 1st 1970) 2018-04-02 21:55:08 +02:00
Guillermo Alvarez 8669d43a96 MDL-61673 calendar: Replace wrong string on mustache template 2018-04-02 10:32:07 -05:00
Eloy Lafuente (stronk7) 2c28cadac1 MDL-61223 course: amend test setup to keep passing and covering case 2018-04-02 12:00:54 +02:00
Eloy Lafuente (stronk7) 7d4c1953d9 Merge branch 'MDL-61223-master' of git://github.com/andrewnicols/moodle 2018-04-02 11:53:10 +02:00
Eloy Lafuente (stronk7) 64a14f15bc Merge branch 'MDL-61801-master' of git://github.com/andrewnicols/moodle 2018-04-02 11:04:49 +02:00
Andrew Nicols 1d055d806b MDL-61817 tinymce: Add privacy implementation for all plugins
None of the TinyMCE plugins have any user preference or database table.
They all implement the null provider.
2018-04-02 13:50:48 +08:00
Andrew Nicols 658f84ab0c MDL-61818 antivirus: Implement core_privacy API 2018-04-02 13:47:17 +08:00
Michael Brown 37fdff573b MDL-60115 mod_book: Book Resource Cancel Button Redirect Bug
When the user creates a book but adds no chapters, hitting cancel on
 the chapter creation page would redirect you right back to the same
 page with no explanation. This solution redirects to the course page
 when canceling chapter creation when no chapters are present.
2018-04-02 04:01:34 +00:00
Huong Nguyen c9e3070465 MDL-61525 Groups: Index page error on first time visit 2018-04-01 23:02:56 +07:00
Andrew Nicols 6fb1fd3183 MDL-61751 core_privacy: Correct test return 2018-04-01 13:34:44 +08:00
Jake Dallimore 605528e979 MDL-61751 core_plagiarism: add polyfill for plagiarism provider 2018-04-01 13:34:44 +08:00
Andrew Nicols 1690a76e62 Merge branch 'MDL-61574-master' of git://github.com/tallthom/moodle 2018-04-01 11:49:17 +08:00
Thom Rawson 6fb64a4ec0 MDL-61574 mod_lti: removed usage of PHP7 reserved word in namespace 2018-04-01 12:39:54 +09:00
AMOS bot c9fc116b1d Automatically generated installer lang files 2018-03-31 00:07:01 +00:00
sam marshall 9a53cdb0fc MDL-61076 core_search: Require confirmation for search areas actions
The search areas screen contains several options which are potentially
risky for a live site but can be triggered by accidentally clicking a
single button or link.

This change adds a confirmation prompt for all these options.

The enable/disable search area icon does not have a confirmation
prompt because this is nondestructive (you can just click the icon
again to change it back).
2018-03-29 17:41:01 +01:00
sam marshall 40aa5fe9ab MDL-61256 core_search: Support search of section titles, summaries 2018-03-29 17:38:36 +01:00
Andrew Nicols 214b9e89d6 MDL-61801 core_privacy: Correct bug in unit test provider 2018-03-29 22:36:06 +08:00
Jun Pataleta a2e7a47a6e MDL-61766 xmldb: Handle custom admin path 2018-03-29 18:29:32 +08:00
Luca Bösch adb21080a3 MDL-61502 questions: add filter tests to gapselect question type. 2018-03-29 12:13:27 +02:00
Luca Bösch 8274c72ca1 MDL-61781 installation: docs link should have https. 2018-03-29 12:12:50 +02:00
Andrew Nicols 3fb9ad0ea7 MDL-61703 privacy: Allow writing of user preferences at any context 2018-03-29 15:28:13 +08:00
Jun Pataleta 39fab18e27 weekly release 3.5dev 2018-03-29 12:55:38 +08:00
Jun Pataleta 358ac4d476 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-03-29 12:55:37 +08:00
Andrew Nicols 9cd8f95a74 Merge branch 'MDL-53226-master-fix' of git://github.com/junpataleta/moodle 2018-03-29 12:40:39 +08:00
Jun Pataleta bc178fa038 MDL-53226 search_simpledb: Fix table name in query 2018-03-29 12:38:06 +08:00
Marina Glancy c8d5e54cd1 MDL-61163 mod_wiki: guests should be able to view frontpage modules
When wiki is added to the frontpage and the guest role has capability to view
wiki, users should not be required to log in.
2018-03-29 11:11:48 +08:00
Marina Glancy c6956595f7 MDL-61163 mod_wiki: add default view capability to frontpage
It is inconsistent that guests are allowed to view frontpage wiki but once user is logged in they
loose this capability
2018-03-29 11:11:48 +08:00
Marina Glancy 3a93df8b9a MDL-61163 mod_wiki: correct capability check in modinfo
Wiki defines capability mod/wiki:viewpage instead of standard mod/wiki:view . This means that people
who do not have capability to view wiki still see it in the modules list.

Also corrected unittest that was testing situation when student has capability to create pages
but does not have capability to view pages. Such student should not see wiki module at all.
2018-03-29 11:11:45 +08:00
Eloy Lafuente (stronk7) 83c64f78c0 Merge branch 'MDL-36941_master-fix' of git://github.com/markn86/moodle 2018-03-28 18:42:18 +02:00
Mark Nelson 7489e4d5b9 MDL-36941 message_popup: do not remove message_popup table
This is a partial revert of commit 123631ad47.

Most of the logic was NOT reverted, just the part deleting the table was.

Note - this fix was done on integration.git and as a result no
upgrade step was added to re-introduce the table, sorry! This
means for those on integration.git you will have to re-install
your Moodle site so the 'message_popup' table is present.

Please see tracker for comments as to why we need to keep it! :)
2018-03-28 18:16:46 +02:00
Jake Dallimore 78c03392d4 Merge branch 'MDL-61770-master' of git://github.com/andrewnicols/moodle 2018-03-28 18:16:43 +02:00
Andrew Nicols e8b3c3e178 Merge branch 'MDL-61364-master' of git://github.com/lameze/moodle 2018-03-28 18:16:40 +02:00
Andrew Nicols bddf012b7c Merge branch 'MDL-61364-master' of git://github.com/lameze/moodle 2018-03-28 18:16:37 +02:00
Ngo Nghia 5a8d683fb2 MDL-25617 backup: backup/restore using extra_question_fields 2018-03-28 18:16:34 +02:00
Eloy Lafuente (stronk7) 54b5941501 Merge branch 'MDL-39060-master' of git://github.com/zig-moodle/moodle 2018-03-28 18:16:31 +02:00
Eloy Lafuente (stronk7) 55bfb8ab5f Merge branch 'wip-MDL-51362-master' of git://github.com/marinaglancy/moodle 2018-03-28 18:16:28 +02:00
Eloy Lafuente (stronk7) c7189fb2bb MDL-60736 tool_mobile: Add missing VALUE_OPTIONAL to new returned info 2018-03-28 18:16:25 +02:00
Eloy Lafuente (stronk7) 6aaf27af91 Merge branch 'MDL-60736-master' of git://github.com/jleyva/moodle 2018-03-28 18:16:22 +02:00
Eloy Lafuente (stronk7) 67eb557286 Merge branch 'MDL-61321-master' of git://github.com/jleyva/moodle 2018-03-28 18:16:19 +02:00
Eloy Lafuente (stronk7) 4b96d7ce05 Merge branch 'MDL-61718-master' of git://github.com/junpataleta/moodle 2018-03-28 18:16:15 +02:00
Jun Pataleta 51c6cfb69a Merge branch 'MDL-60762-master' of git://github.com/junpataleta/moodle 2018-03-28 18:16:12 +02:00
Jun Pataleta 99feb82ab5 Merge branch 'wip-MDL-61328-master' of git://github.com/marinaglancy/moodle 2018-03-28 18:16:09 +02:00
Jun Pataleta 4683e5ff11 Merge branch 'MDL-61257-master' of git://github.com/mihailges/moodle 2018-03-28 18:16:06 +02:00
Jun Pataleta d6ccd91832 Merge branch 'MDL-61656' of git://github.com/stronk7/moodle 2018-03-28 18:16:03 +02:00
Eloy Lafuente (stronk7) bdb22af959 Merge branch 'MDL-53226-master' of git://github.com/andrewnicols/moodle 2018-03-28 18:15:52 +02:00
Eloy Lafuente (stronk7) c3f771aeba Merge branch 'MDL-61248' of https://github.com/ak4t0sh/moodle 2018-03-28 18:12:52 +02:00
Eloy Lafuente (stronk7) a8336b03a0 Merge branch 'MDL-61576-master' of git://github.com/cescobedo/moodle 2018-03-28 18:12:48 +02:00
Eloy Lafuente (stronk7) 0b9162bd05 Merge branch 'MDL-61691-master' of https://github.com/snake/moodle 2018-03-28 18:12:45 +02:00
Andrew Nicols 306a0bafed Merge branch 'MDL-55532-master' of git://github.com/lameze/moodle 2018-03-28 18:12:42 +02:00
Andrew Nicols 56f5e21f6e Merge branch 'MDL-61733-master' of https://github.com/MartinGauk/moodle 2018-03-28 18:12:39 +02:00
Andrew Nicols 0b4e4ca48f Merge branch 'MDL-60119-master' of https://github.com/lucaboesch/moodle 2018-03-28 18:12:36 +02:00
Andrew Nicols 215cd2d854 MDL-61770 iplookup: Check types rather than values 2018-03-28 10:54:10 +08:00
Shamim Rezaie 348db7048e MDL-61020 media_videojs: Fix RTL display issues 2018-03-28 13:37:26 +11:00
Simey Lameze 02b1868c32 MDL-61364 core: fix cibot coding issues 2018-03-28 10:18:33 +08:00
Simey Lameze 15cd009097 MDL-61364 core_question: tests for question_has_capability_on exception 2018-03-28 08:54:11 +08:00
Andrew Nicols ca18d567d7 MDL-61364 question: Add unit tests for question_has_capability_on 2018-03-28 08:54:11 +08:00
Simey Lameze 13e2b19838 MDL-61364 core: remove param from question_has_capability_on calls 2018-03-28 08:53:41 +08:00
Rohith 0ef25faa73 MDL-61746 PARAM_CLEANHTML: Fix documentation typos 2018-03-27 23:40:11 +05:30
Simey Lameze 2cf7bde8e9 MDL-61364 question: adjust code and fix phpunit errors 2018-03-27 16:14:46 +08:00
Simey Lameze e7329cd026 MDL-61364 question: refactor question_has_capability_on 2018-03-27 16:14:44 +08:00
Adam Pawełczak 7ccb6bb3cc MDL-60762 tool_usertours: Respect $CFG->admin in manager.php 2018-03-27 15:18:03 +08:00
dinhloc f4695ec722 MDL-61033 quiz: Editing a quiz while a preview is open
Editing a quiz while a preview is open in another browser tab can leads to a cryptic error that is hard to recover from
2018-03-27 10:47:32 +07:00
David Monllao add8d846d9 MDL-53226 search_simpledb: Remove unnecessary object clone 2018-03-27 09:37:20 +08:00
Kathrin Osswald ea91e4f97d MDL-61343 theme Boost: Harmonise the structure of flat navigation. 2018-03-26 09:46:56 +02:00
Jake Dallimore e315e84cf2 MDL-61691 core_plagiarism: fix namespace in privacy provider interface 2018-03-26 12:28:58 +08:00
Mihail Geshoski e91bc73f87 MDL-61257 reports: Report logs link to unavailable completion report 2018-03-26 12:22:00 +08:00
Nick Phillips 7d4f34cb0d MDL-55532 gradebook: fix grade export to include category names 2018-03-26 11:47:44 +08:00
Ryan Wyllie c53beb73e5 MDL-61364 question: unit tests for submit_tags_form 2018-03-26 11:27:47 +08:00
Simey Lameze e6890b1164 MDL-61364 question: add support for course tags on modal 2018-03-26 11:24:50 +08:00
Mihail Geshoski d609207c3e MDL-61724 resource: Unable to view or download file resource 2018-03-26 11:14:46 +08:00
Marina Glancy 1f0157e137 MDL-61328 tool_usertours: do not fix tour sortorder after step editing
otherwise it breaks when we try to modify the step sortorder
2018-03-26 09:52:14 +08:00
Shamim Rezaie 7c33ba471f MDL-61464 Questions: Add unit test for question tags backup and restore 2018-03-26 12:28:08 +11:00
Zig Tan ff70e84941 MDL-39060 backup: fix typo backup destroy() function 2018-03-26 09:25:55 +08:00
AMOS bot 9ef1dce6b9 Automatically generated installer lang files 2018-03-25 00:06:10 +00:00
David Mudrák 47ea60fd3e MDL-61741 enrol_paypal: Prevent some edge-case false errors
While testing the plugin in various scenarios, I've noticed that there
are two situations which the current code does not handle quite well:

* Detecting for existing txn_id record was likely to throw "found more
  than one record" debugging message. Fixed by explicitly ignoring
  multiple records.
* The incoming IPN verification message does not always contain the
  recipient's email in the "business" field. When a payment has to be
  claimed manually at PayPal (e.g. as a result of currencies mismatch
  and other settings), the email is coming only in the "receiver_email"
  field. This led to PHP notice and caused the script to fail falsely.
2018-03-23 19:50:26 +01:00
David Mudrák a38da470af MDL-61741 enrol_paypal: Fix the IPN verification endpoint URL
IPN protocol spec has different URL for sending the verification
request. Better to have it fixed even if the existing value still
seems to work - to avoid unexpected surprise in the future.

Source: https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNImplementation/#specs
2018-03-23 19:16:30 +01:00
Arnaud Trouvé a15e507366 MDL-61248 admin: fix incorrectly initialized property 2018-03-23 16:25:36 +01:00
willem fa979cd4e1 MDL-61708 mod_lti: use fullnamedisplay to pass lis_person_name_full
Students 'firstname lastname' was passed to LTI Provider as 
lis_person_name_full. Now changed to use fullnamedisplay.
2018-03-23 13:07:36 +01:00
Martin Gauk db3da830c1 MDL-61733 atto_table: fix creating new table
If Atto is embedded in an HTML table (e.g. in the database activity
on the template pages), you could not create a new table.
2018-03-23 09:08:39 +00:00
Jun Pataleta d5458014b3 MDL-36941 core: Remove default for convhash field in upgrade.php 2018-03-23 14:14:49 +08:00
Jun Pataleta ba926805e2 Merge branch 'MDL-36941_master' of git://github.com/markn86/moodle 2018-03-23 12:55:49 +08:00
Mark Nelson 5aac33c785 MDL-36941 core_message: dont query DB unnecessarily checking read status 2018-03-23 12:30:31 +08:00
Mark Nelson 99248f6177 MDL-36941 core_message: fixed minor CiBoT complaints 2018-03-23 12:30:31 +08:00
Mark Nelson e159b53b5b MDL-36941 core_message: improved performance of helper::get_messages()
Improved the query to use the 'convhash' field as well as adding an index.

Also fixed issue where 'timeread' was hardcoded as 0.
2018-03-23 12:30:30 +08:00
Mark Nelson d0d1e97ab6 MDL-36941 core_message: added details to upgrade.txt 2018-03-23 12:30:30 +08:00
Mark Nelson 2ccbb8ed62 MDL-36941 core: added index to 'message_user_actions' table 2018-03-23 12:30:30 +08:00
Mark Nelson 74ad60bfbe MDL-36941 core_message: deprecated 'api::mark_all_read_for_user' 2018-03-23 12:30:30 +08:00
Mark Nelson 0d657cc9b7 MDL-36941 core: removed 'message_working' table 2018-03-23 12:30:29 +08:00
Mark Nelson 123631ad47 MDL-36941 message_popup: removed 'message_popup' table 2018-03-23 12:30:29 +08:00
Mark Nelson b2cd17e6a9 MDL-36941 core: added 'convhash' field to quickly get conversations 2018-03-23 12:30:28 +08:00
Mark Nelson 0d51ae7ef3 MDL-36941 core: final deprecation of functions
This was done earlier than the usual deprecation
process since we have changed the table structure.
It would take time to change the logic in these
functions, but as they have been deprecated for
some time it was decided to forego this effort.
2018-03-23 12:30:28 +08:00
Mark Nelson 3f3e453632 MDL-36941 message_popup: use new WS for marking notifications as read
Also changed the observer to listen for the notification_viewed event,
rather than the message_viewed event.
2018-03-23 12:30:28 +08:00
Mark Nelson 2b595d96f4 MDL-36941 core: added new mark notification as read webservice 2018-03-23 12:30:28 +08:00
Mark Nelson 376a79c242 MDL-36941 core: added events for notifications 2018-03-23 12:30:27 +08:00
Mark Nelson 548936a6c9 MDL-36941 core_message: mark notification/messages takes stdClass
This avoid unnecessary DB calls.
2018-03-23 12:30:27 +08:00
Mark Nelson 883ce42127 MDL-36941 core: convert existing api to use new table structure
Also deprecated the following functions -

1. message_move_userfrom_unread2read - It is not necessary
   for us to mark a message as read on user deletion.
2. message_get_blocked_users - Horrible logic used to
   determine if a user is blocked via reference on some
   randomly chosen 'isblocked' variable.
3. message_get_contacts - The same as above. This can be
   done in a much nicer way.
4. message_mark_message_read - We want two functions to do
   this to avoid confusing messages and notifications.
5. message_can_delete_message - This assumed the variable
   $message contained the 'useridto' property, which
   was present in the old table structure. We do not want
   future usages where a query is done on the new table
   and is simply passed as this won't contain this property.
6. message_delete_message - Same as above.
2018-03-23 12:30:27 +08:00
Shamim Rezaie 70ec79f1ba MDL-61464 Backup: Restore question tags into the correct context 2018-03-23 14:19:19 +11:00
Shamim Rezaie 06d7352a0a MDL-61464 Backup: Include contextid for questuin tags 2018-03-23 14:19:19 +11:00
Shamim Rezaie 6bbb7ed570 MDL-61464 Questions: Improved top level category handling in restore
Use question_get_top_category() instead of directly inserting into DB when
parent category is 0. This is to make sure we are not ending up with having
multiple top level question categories for a single context.
2018-03-23 14:19:19 +11:00
Mark Nelson 4cd439887a MDL-36941 core: alter events to use new table structure 2018-03-23 09:27:57 +08:00
Mark Nelson ee14412e21 MDL-36941 core_message: removed unit test that will always fail
We are changing how the API behaves so the old tables will never
be populated. This unit test is testing a deprecated function
which we will not be refactoring to use the new table structure.
2018-03-23 09:27:57 +08:00
Mark Nelson a63f98245c MDL-36941 core: added new messaging and notification tables 2018-03-23 09:27:56 +08:00
Luca Bösch efdf25636a MDL-60119 mod_feedback: Suppress choice weight in parentheses. 2018-03-22 23:52:36 +01:00
Eloy Lafuente (stronk7) a15c745936 weekly release 3.5dev 2018-03-22 16:57:05 +01:00
Eloy Lafuente (stronk7) eae3d88bc9 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-03-22 16:57:02 +01:00
cescobedo adbf7c5a43 MDL-61576 mod_lti: remove allowinstructorcustom in lib/locallib.php 2018-03-22 09:59:30 +01:00
Ankit Agarwal 222595b1f0 MDL-51362 libraries: Remove deprecated admin tool unittest 2018-03-22 15:47:35 +08:00
Jun Pataleta a20a2ac704 MDL-61718 admin: Make sure city and country columns are not duplicated
* Since City/town and Country have been added in $CFG->showuseridentity
since 3.4, we need to exclude the required city and country columns
when fetching the extra columns using get_extra_user_fields().
2018-03-22 13:52:39 +08:00
Jun Pataleta fa54a1a7e2 Merge branch 'MDL-61678' of git://github.com/stronk7/moodle 2018-03-22 12:33:24 +08:00
Jake Dallimore a44987a081 Merge branch 'MDL-58179-master-fix' of https://github.com/andrewnicols/moodle 2018-03-22 12:05:29 +08:00
Andrew Nicols 195480e9d7 MDL-58179 mod_lesson: Add missing : in labels 2018-03-22 11:59:52 +08:00
Andrew Nicols 532ecef010 Merge branch 'MDL-61530-master' of git://github.com/andrewnicols/moodle 2018-03-22 11:49:09 +08:00
Renaat Debleu e44e67d725 MDL-61530 mod_glossary: import_entries.feature needs @_file_upload tag 2018-03-22 11:44:36 +08:00
Jun Pataleta a9d98d5029 Merge branch 'MDL-52989-master' of git://github.com/junpataleta/moodle 2018-03-22 11:29:56 +08:00
Jun Pataleta 9ce10f2f2f MDL-52989 mod_lesson: Fix typo in feature description 2018-03-22 11:27:24 +08:00
Jun Pataleta edf88a3bb3 Merge branch 'MDL-61514-master' of git://github.com/rezaies/moodle 2018-03-22 10:52:53 +08:00
Shamim Rezaie 3b5ae9777d MDL-61514 Quiz: Fix restore error
Include mod/quiz/locallib.php to fix the restore error.
2018-03-22 09:57:35 +11:00
Eloy Lafuente (stronk7) 820a91def3 Merge branch 'MDL-61658-master-allcountrycodes' of git://github.com/mudrd8mz/moodle 2018-03-21 19:36:36 +01:00
David Mudrák 0c98acefc1 MDL-61658 user: Fix displaying of user's country name
In these cases we want to use the method get_list_of_countries() to
obtain translated names of all potential country codes. The country code
is already there in the database. So it does not matter if the country
is among those whitelisted in $CFG->allcountrycodes - we want to see its
name anyway.
2018-03-21 18:17:47 +01:00
David Mudrák 60e213470d MDL-61658 user: Fix parsing of the agedigitalconsentmap setting
When parsing and validating the value of the Digital age of consent
(agedigitalconsentmap) field, we want to load all country codes. Not
just the ones whitelisted for drop down menus that users can choose
from.
2018-03-21 18:17:47 +01:00
Juan Leyva bb14a48851 MDL-60736 tool_mobile: Support session lang in WS 2018-03-21 17:27:33 +01:00
Juan Leyva e236259d97 MDL-60736 tool_mobile: Return language settings in get_public_config WS 2018-03-21 17:27:29 +01:00
Eloy Lafuente (stronk7) f6bafa922c MDL-61410 question: Check we have tags to set to avoid notices 2018-03-21 14:55:39 +01:00
Jake Dallimore 9a2bf09d19 Merge branch 'MDL-59434-master' of https://github.com/sammarshallou/moodle 2018-03-21 10:00:47 +08:00
Andrew Nicols 618b223302 Merge branch 'MDL-61519-master' of https://github.com/andrewnicols/moodle 2018-03-21 09:09:03 +08:00
Andrew Nicols b30b66c57e MDL-61519 coursecat: Reset the coursecat cache on enrolment 2018-03-21 09:06:51 +08:00
Andrew Nicols c06c1a4428 Merge branch 'MDL-61519-master' of https://github.com/MartinGauk/moodle 2018-03-21 08:14:41 +08:00
AMOS bot fd6078b7eb Automatically generated installer lang files 2018-03-21 00:05:59 +00:00
Eloy Lafuente (stronk7) bb0ca2c4a3 Merge branch 'MDL-61605' of https://github.com/timhunt/moodle 2018-03-21 00:24:46 +01:00
Eloy Lafuente (stronk7) 4dca6ab54d Merge branch 'MDL-61589-master' of git://github.com/rezaies/moodle 2018-03-21 00:21:24 +01:00
Eloy Lafuente (stronk7) 9a79102a4c Merge branch 'MDL-61410-master' of git://github.com/lameze/moodle 2018-03-20 23:53:28 +01:00
David Monllao c2e970779d MDL-53226 search_simpledb: Refine the patch
- Clumsy fallback only when there is no full-text search support
- Mimic solr tests
- pgsql tokenization using simple configuration
- workaround for mysql '*' search issue
- total results proper calculation
- SQL server FTS support
- Standarize dml full-text search checkings
- Upgrade note about the new dml method
- Set search_simpledb as default engine if no solr config
2018-03-20 18:49:38 +01:00
Dan Poltawski b602463f07 MDL-53226 search_simpledb: Use databases full-text search capabilities 2018-03-20 18:33:03 +01:00
David Monllao 2ee2f53021 MDL-53226 search_simpledb: Adding clumsy search 2018-03-20 18:33:03 +01:00
Martin Gauk ef780a0051 MDL-61519 coursecat: do not cache get_all_children_ids 2018-03-20 13:20:04 +00:00
sam marshall fc440796e9 MDL-59434 core_search: Alternate result orders including by context
Implements a mechanism by which search engines can provide different
result orderings, and implements a 'by location' ordering within the
Solr search engine (available whenever the user starts their search
from within a course or activity).
2018-03-20 12:15:25 +00:00
Juan Leyva bc694b4761 MDL-61321 mod_feedback: Return all the items responses
The WS should receive all the item responses for all the attempts.
2018-03-20 10:36:11 +01:00
Andrew Davidson e503ec17c0 MDL-61665 calendar: Added missing complete layout call for calendar page 2018-03-20 09:29:11 +00:00
Eloy Lafuente (stronk7) f61c5f8a95 Merge branch 'MDL-61615-master' of git://github.com/rezaies/moodle 2018-03-20 10:20:11 +01:00
Shamim Rezaie ae9f5a04b1 MDL-61615 Questions: Only move question categories if there is any 2018-03-20 17:30:21 +11:00
Andrew Nicols 2624bb10e2 Merge branch 'master_MDL-58080' of https://github.com/danmarsden/moodle 2018-03-20 14:08:16 +08:00
Andrew Nicols 3f6ede91aa Merge branch 'MDL-61519-master' of https://github.com/MartinGauk/moodle 2018-03-20 13:53:36 +08:00
Andrew Nicols f78a8a52a5 Merge branch 'MDL-58179-master' of https://github.com/lucaboesch/moodle 2018-03-20 13:38:59 +08:00
Eloy Lafuente (stronk7) b7614ab114 Merge branch 'MDL-61597-master' of git://github.com/andrewnicols/moodle 2018-03-20 02:25:11 +01:00
Andrew Nicols 33dca94573 MDL-61689 phpunit: Be stricter about output during unit tests
This change also add fail-on-risky to travis to help pick these up, and
verbosity too.

We only fail on risky during Travis and not during normal output because
developers may want to debug tests.
2018-03-20 08:30:42 +08:00
AMOS bot 4f7bacba82 Automatically generated installer lang files 2018-03-20 00:05:59 +00:00
AMOS bot bef37b42dc Automatically generated installer lang files 2018-03-20 00:05:58 +00:00
Eloy Lafuente (stronk7) b2d941c16f Merge branch 'MDL-61529-master' of https://github.com/bmbrands/moodle 2018-03-20 00:27:48 +01:00
Luca Bösch d6076942e3 MDL-58179 lesson: Avoid using span with class "label" 2018-03-19 21:13:11 +01:00
Eloy Lafuente (stronk7) 0fe1ed29d9 Merge branch 'MDL-61615-master' of git://github.com/rezaies/moodle 2018-03-19 11:21:48 +01:00
Simey Lameze bbd655b4a8 MDL-61410 question: merge course and question tags 2018-03-19 11:45:55 +08:00
Simey Lameze 1796eb181b MDL-61410 question: fix unit tests failures 2018-03-19 11:45:55 +08:00
Simey Lameze 13596866e7 MDL-61410 question: support course tags on import 2018-03-19 11:45:55 +08:00
Simey Lameze 2ee6e02e21 MDL-61410 question: unit tests for question_sort_tags 2018-03-19 11:45:55 +08:00
Simey Lameze 3bf5fcf277 MDL-61410 question: change logic on xml format 2018-03-19 11:45:55 +08:00
Simey Lameze 6307622b28 MDL-61410 question: move tag sorting logic to a new function 2018-03-19 11:45:55 +08:00
Simey Lameze 3a7005c964 MDL-61410 question: support course tags on export 2018-03-19 11:45:55 +08:00
Andrew Nicols 24f5828309 Merge branch 'MDL-61265-master' of git://github.com/sarjona/moodle 2018-03-19 10:51:27 +08:00
Andrew Nicols 89b8efb09b Merge branch 'MDL-58179-master' of https://github.com/lucaboesch/moodle 2018-03-19 10:22:14 +08:00
Andrew Nicols db98868d22 Merge branch 'MDL-61154_master' of git://github.com/dmonllao/moodle 2018-03-19 10:09:29 +08:00
Andrew Nicols d7a6e531ee Merge branch 'MDL-61514-master' of git://github.com/rezaies/moodle 2018-03-19 09:01:19 +08:00
Eloy Lafuente (stronk7) 20f808165b MDL-61678 phpunit: Bump to current / latest 6.5.x before major release 2018-03-18 23:40:02 +01:00
Tim Hunt d9b80a5e69 MDL-61605 quiz report: add missing index/key
Thanks to Patryk Szuta for the suggestion
2018-03-18 20:40:43 +00:00
Martin Gauk c4172077df MDL-61519 calendar: do not iterate through all categories
Replace calls to \coursecat::get_all() or cache the results.
2018-03-16 14:30:55 +00:00
Luca Bösch 2ffd2afdba MDL-52989 mod_lesson: Fix cluster_jump returning a cluster page id. 2018-03-16 13:44:44 +01:00
cescobedo 00a7511580 MDL-61451 message_area: core/auto_rows remove set height to 1px 2018-03-16 13:06:02 +01:00
Sara Arjona 9390fc5829 MDL-61265 enrol: Add default numsections for external db 2018-03-16 11:32:09 +01:00
Bas Brands c8842113a7 MDL-61529 core: update lib scssphp to version 0.7.5 2018-03-16 10:36:40 +01:00
David Monllao 63f2c0c664 MDL-61154 analytics: No escaping for text format url 2018-03-16 09:27:07 +01:00
Luca Bösch ef2b45a977 MDL-58179 lesson: Avoid using span with class "label" 2018-03-16 08:52:21 +01:00
Jake Dallimore b63a3b04b1 weekly release 3.5dev 2018-03-16 10:08:46 +08:00
Eloy Lafuente (stronk7) ed0b6f0da4 MDL-61656 report_security: fix role name 2018-03-16 02:24:59 +01:00
Eloy Lafuente (stronk7) a717d5dc33 Merge branch 'MDL-61570-master' of git://github.com/andrewnicols/moodle 2018-03-16 01:15:16 +01:00
Eloy Lafuente (stronk7) 2b28ed2371 Merge branch 'MDL-61566-master' of git://github.com/andrewnicols/moodle 2018-03-16 00:29:34 +01:00
Eloy Lafuente (stronk7) 7394da46e2 Merge branch 'MDL-61571-master' of git://github.com/andrewnicols/moodle 2018-03-15 23:48:24 +01:00
Jake Dallimore e1a527c0d4 Merge branch 'wip-MDL-61477-master-behat' of https://github.com/marinaglancy/moodle 2018-03-15 16:44:02 +08:00
Marina Glancy c3b548479b MDL-61477 auth_email: behat tests for sign up 2018-03-15 16:23:06 +08:00
Shamim Rezaie c185e4fe21 MDL-61589 Questions: Top question category naming improvement
Display the context name next to the top question category name.
2018-03-15 18:47:25 +11:00
Jake Dallimore 17b284b937 Merge branch 'wip-MDL-61477-master-manager' of git://github.com/marinaglancy/moodle 2018-03-15 11:38:14 +08:00
Marina Glancy acb3b78804 MDL-61477 auth_email: add sitepolicyhandler to the config WS 2018-03-15 11:32:59 +08:00
Marina Glancy 1727c939ba MDL-61477 admin: sitepolicy handler API
- Define sitepolicy handler manager class, base class and the core handler
- Allow to set a plugin as sitepolicyhandler that implements the sitepolicy API
- Modify web services to return information from the 3rd party handler instead of core if needed
2018-03-15 11:32:55 +08:00
David Mudrák 0bdc578567 MDL-61477 admin: Allow plugins to act as alternate policy handlers
The patch introduces a new site setting 'sitepolicyhandler' that can be
either empty or contain a plugin component name. If it is empty, the
site policy feature keeps working as before and the core keeps the
control over it.

If a plugin is specified, it is expected to implement the callback
'site_policy_handler' in its lib.php file. The callback should return a
URL to a script where the user can accept the site policies. The plugin
itself is responsible for setting the 'policyagreed' flag in the users
table. The callback may return an empty value, in which case the user
can continue using the site without being redirected.

The patch adds support for a new pre-config flag NO_SITEPOLICY_CHECK.
This constant should be defined and set to true if we should not check
the user's policyagreed status during the require_login().

This is for pages where the user actually accepts the site policies and
helps to avoid the redirect loop.
2018-03-15 09:31:41 +08:00
Dan Marsden 37ddc231f8 MDL-58080 mod_scorm: add immutable header for scorm content files. 2018-03-15 12:50:38 +13:00
Eloy Lafuente (stronk7) a2fc9a4772 Merge branch 'MDL-61600-master' of git://github.com/dpalou/moodle 2018-03-14 14:43:25 +01:00
Eloy Lafuente (stronk7) 30d1b7d1a7 Merge branch 'MDL-61620_master' of git://github.com/dmonllao/moodle 2018-03-14 13:39:17 +01:00
David Monllao 6dca3ddc71 MDL-61620 output: New action_menu options 2018-03-14 11:38:08 +01:00
Eloy Lafuente (stronk7) 37c9154c25 Merge branch 'MDL-61398-master' of git://github.com/andrewnicols/moodle 2018-03-14 11:22:17 +01:00
Eloy Lafuente (stronk7) 4b183d2258 Merge branch 'MDL-61475-master-v3' of git://github.com/snake/moodle 2018-03-14 11:00:57 +01:00
Dani Palou f72ca3ce29 MDL-61600 recaptcha: Create a script to display recaptcha 2018-03-14 10:31:09 +01:00
Eloy Lafuente (stronk7) b244de5612 Merge branch 'MDL-61526-master' of git://github.com/rezaies/moodle 2018-03-14 10:30:51 +01:00
Andrew Nicols aeb144359d Merge branch 'MDL-61465-master-2' of git://github.com/ryanwyllie/moodle 2018-03-14 14:55:34 +08:00
Andrew Nicols 04d6ba8638 Merge branch 'MDL-43362-master' of git://github.com/Kathrin84/moodle 2018-03-14 13:18:14 +08:00
Andrew Nicols d7ff2fc28b Merge branch 'MDL-60398-master' of git://github.com/mihailges/moodle 2018-03-14 10:33:03 +08:00
Jake Dallimore 4ba1a7a1e6 Merge branch 'MDL-61307-master' of git://github.com/andrewnicols/moodle 2018-03-14 09:41:00 +08:00
Jake Dallimore a57960ee11 MDL-61475 mod_choice: perf improvement when exporting personal data
Instead of creating an array containing all record information and then
writing, we know write periodically during the recordset iteration, thus
alleviating any memory concerns associated with the array approach.
2018-03-14 09:36:03 +08:00
Jake Dallimore f1c1db434a MDL-61475 mod_choice: Update core_privacy implementation 2018-03-14 09:36:03 +08:00
Jun Pataleta 138816b1b1 MDL-61475 mod_choice: Add implementation of Privacy API 2018-03-14 09:36:03 +08:00
Andrew Nicols 5731a92aa7 MDL-61398 block_html: Implement privacy API 2018-03-14 09:33:16 +08:00
Andrew Nicols 90cac7c049 MDL-61307 core_privacy: Add unit test to check installed providers 2018-03-14 09:31:30 +08:00
David Mudrák d12cdcbd7d MDL-61392 enrol_paypal: Improve IPN input parameters checking 2018-03-14 08:53:44 +08:00
David Mudrák 39a5fbeb01 MDL-61392 enrol_paypal: Improve the IPN notifications handling
* Notify administrators once incoming IPN request is verified by PayPal.
* Fix the HTTP status as expected by the IPN protocol.
2018-03-14 08:53:44 +08:00
Eloy Lafuente (stronk7) dd9f60ee49 Merge branch 'MDL-61625_master' of git://github.com/dmonllao/moodle 2018-03-14 01:00:13 +01:00
Eloy Lafuente (stronk7) 0f5e1baf4c Merge branch 'MDL-61584' of git://github.com/jrchamp/moodle 2018-03-14 00:46:09 +01:00
David Mudrák 6cc9dce202 MDL-60101 auth_oauth2: Don't allow suspended users to SSO in via OAuth2
Without this patch, users could still log in as a suspended account via
OAuth2 SSO feature.
2018-03-13 10:14:00 +01:00
Jake Dallimore dfeeed062a Merge branch 'm35_MDL-61626_PgSQL_Table_Name_Could_Be_Schema_Qualified' of https://github.com/scara/moodle 2018-03-13 15:37:19 +08:00
Shamim Rezaie bd94e16e95 MDL-61615 Questions: Fix multiple top cats when deleting a course cat
Prevent having multiple top question categories when deleting a course category.
This commit also fix the problem of question files' contexts not being updated when moving them.
2018-03-13 18:31:01 +11:00
Shamim Rezaie 15f80bf579 MDL-61615 Questions: unit test for question_delete_course_category 2018-03-13 18:30:51 +11:00
Andrew Nicols 3452ea4265 Merge branch 'MDL-60828-master' of git://github.com/sarjona/moodle 2018-03-13 14:18:59 +08:00
Ryan Wyllie ad54e6353a MDL-61465 question: add editing context to tag condition 2018-03-13 14:04:58 +08:00
Andrew Nicols fe294b00ac Merge branch 'MDL-59070-master' of https://github.com/lucaboesch/moodle 2018-03-13 13:21:09 +08:00
Andrew Nicols 0d944ce5b0 Merge branch 'MDL-61397-master' of git://github.com/zig-moodle/moodle 2018-03-13 12:23:57 +08:00
Andrew Nicols 1290576dab Merge branch 'MDL-61567-master' of git://github.com/zig-moodle/moodle 2018-03-13 12:15:21 +08:00
Zig Tan e3644cd5c6 MDL-61567 mod_url: Implement null provider mod_url 2018-03-13 11:02:00 +08:00
Zig Tan f318b80a0f MDL-61567 mod_resource: Implement null provider mod_resource 2018-03-13 11:02:00 +08:00
Zig Tan 121638b23f MDL-61567 mod_page: Implement null provider mod_page 2018-03-13 11:02:00 +08:00
Zig Tan 9da92dc1a9 MDL-61567 mod_label: Implement null provider mod_label 2018-03-13 11:02:00 +08:00
Zig Tan c383366601 MDL-61567 mod_folder: Implement null provider mod_folder 2018-03-13 11:01:59 +08:00
Eloy Lafuente (stronk7) e43977e2d9 Merge branch 'MDL-61307-master' of git://github.com/andrewnicols/moodle 2018-03-13 03:18:09 +01:00
Zig Tan 38a0477575 MDL-61397 blocks: Fix null_provider namespace for blocks 2018-03-13 09:50:58 +08:00
Andrew Nicols 801116a502 MDL-61307 core: Language changes 2018-03-13 09:42:11 +08:00
Eloy Lafuente (stronk7) c3cb1ea063 Merge branch 'MDL-48501-master' of git://github.com/jswebster/moodle 2018-03-13 01:55:41 +01:00
Andrew Nicols e98f0cf7ff MDL-61307 privacy: Rename deletion functions 2018-03-13 08:48:13 +08:00
Andrew Nicols 70f0923499 MDL-61307 core: Remove deletion_criteria 2018-03-13 08:48:12 +08:00
Eloy Lafuente (stronk7) 48a0419a72 Merge branch 'master_MDL-49417' of https://github.com/danmarsden/moodle 2018-03-13 00:55:22 +01:00
Dan Marsden 6b7d74040a MDL-49417 enrol_cohort: fix behat test to use new autocomplete. 2018-03-13 12:37:43 +13:00
Eloy Lafuente (stronk7) dd32aa7876 Merge branch 'wip-MDL-60241-master' of git://github.com/marinaglancy/moodle 2018-03-12 18:28:40 +01:00
Eloy Lafuente (stronk7) 8b4bbe4b49 Merge branch 'MDL-61397-master' of git://github.com/andrewnicols/moodle 2018-03-12 17:31:04 +01:00
Eloy Lafuente (stronk7) bad062a992 Merge branch 'MDL-61619-master' of https://github.com/snake/moodle 2018-03-12 16:46:29 +01:00
Eloy Lafuente (stronk7) 417ec51bb6 Merge branch 'MDL-61622-master' of git://github.com/jleyva/moodle 2018-03-12 10:56:23 +01:00
Andrew Nicols d300abab0e Merge branch 'MDL-61365-master' of git://github.com/sarjona/moodle 2018-03-12 13:44:17 +08:00
Andrew Nicols 0984abda60 MDL-61566 theme: Add Privacy providers for all core themes 2018-03-12 13:24:46 +08:00
Andrew Nicols 11838c6562 Merge branch 'MDL-61513-master' of git://github.com/junpataleta/moodle 2018-03-12 12:25:59 +08:00
Andrew Nicols aab270d579 Merge branch 'MDL-61498-master' of https://github.com/lucaboesch/moodle 2018-03-12 12:07:33 +08:00
Andrew Nicols b4c23fcb17 Merge branch 'MDL-61261-master' of git://github.com/sarjona/moodle 2018-03-12 11:51:36 +08:00
Jake Dallimore 20e6024581 Merge branch 'master_MDL-49417' of https://github.com/danmarsden/moodle 2018-03-12 11:34:13 +08:00
Shamim Rezaie ae88770b33 MDL-61514 Quiz: unit testing restore 2018-03-12 14:12:54 +11:00
Jake Dallimore 786f1270a5 MDL-61619 core: use empty string instead of null in xmlize 2018-03-12 11:12:00 +08:00
Jake Dallimore 0c23f4e6b6 MDL-61619 phpunit: phpunit test confirming bug in new xmlize code 2018-03-12 11:11:58 +08:00
Shamim Rezaie 33b7941d94 MDL-61514 Quiz: Backward compatibility for backups from 3.4 and earlier 2018-03-12 13:40:21 +11:00
Shamim Rezaie 9859359fbc MDL-61514 Quiz: Include random question's new data in backup and restore 2018-03-12 13:40:20 +11:00
Shamim Rezaie c907987844 MDL-61514 Quiz: Display unavailable tags when editing random questions
When editing a random question, the form will display the tags that the random question
is configured to get questions from even if those tags do not exist anymore.
2018-03-12 13:40:20 +11:00
Shamim Rezaie fb5343a00c MDL-61514 Quiz: unit tests for new functions in mod/quiz/locallib.php
unit testing
 - quiz_build_random_question_tag_json
 - quiz_extract_random_question_tags
 - quiz_extract_random_question_tag_ids
2018-03-12 13:38:12 +11:00
Zig Tan bcc3f1e810 MDL-61397 blocks: Add null_providers for blocks with no user data 2018-03-12 08:42:01 +08:00
Matteo Scaramuccia bccbd3b4eb MDL-61626 core_dml: pgsql and schema qualification. 2018-03-11 22:56:36 +01:00
David Monllao f5bc604de0 MDL-61625 persistent form: Add missing param to the constructor 2018-03-11 22:23:15 +01:00
Shamim Rezaie 76d1f12d15 MDL-61514 Quiz: Add matchbyid arg to quiz_extract_random_question_tags
Let the quiz_extract_random_question_tags and quiz_extract_random_question_tag_ids functions
to decide whether they should use tag id to find tags or not.
2018-03-12 03:05:33 +11:00
Shamim Rezaie 2481a022d0 MDL-61514 Quiz: Make sure tag id is int when being saved as json 2018-03-11 19:07:04 +11:00
Juan Leyva 8d9dc60b43 MDL-61622 auth: Return age verification settings in get_public_config 2018-03-09 17:55:31 +01:00
Juan Leyva 1f7565c121 MDL-61622 auth: New WS is_age_digital_consent_verification_enabled 2018-03-09 17:54:58 +01:00
Kathrin Osswald 9d492637ec MDL-43362 outputrenderers: Add bootstrap classes to errorbox. 2018-03-09 11:29:44 +01:00
Sara Arjona bb4a79234b MDL-60828 user: Reset current page when filtering/searching users
Added baseurl parameter to core_user\output\unified_filter to let specify
different URL, instead of using always $PAGE->url.
2018-03-09 08:30:24 +01:00
Jake Dallimore 703fca7540 Merge branch 'MDL-61307-master' of git://github.com/andrewnicols/moodle 2018-03-09 13:36:01 +08:00
Andrew Nicols 48c091e510 MDL-61597 calendartype: Implement the privacy API 2018-03-09 13:27:34 +08:00
Andrew Nicols 0d7ab3f692 MDL-61571 atto: Implement null provider for atto plugins 2018-03-09 13:03:32 +08:00
Andrew Nicols d3c607178b MDL-61570 tool_usertours: Implement Privacy API 2018-03-09 12:55:44 +08:00
Andrew Nicols a235a6e02d MDL-61307 core_plagiarism: Add implementation of Privacy API 2018-03-09 12:24:38 +08:00
Adrian Greeve 5be028ab82 MDL-61307 core_comment: Add implementation of privacy API 2018-03-09 12:24:38 +08:00
Andrew Nicols cbc6325253 MDL-61307 core_rating: Add implementation of Privacy API 2018-03-09 12:24:38 +08:00
Zig Tan e4f6c0c29a MDL-61307 core_tag: Unit tests for privacy implementation 2018-03-09 12:24:38 +08:00
Andrew Nicols bd9139463d MDL-61307 core_tag: Add implementation of privacy API 2018-03-09 12:24:37 +08:00
Andrew Nicols d49f9f280d MDL-61307 core_privacy: Implementation of itself 2018-03-09 12:24:37 +08:00
Andrew Nicols 65774d72b1 MDL-61307 core_privacy: Add legacy polyfill for contrib plugins
This legacy polyfill allows plugin developers who release a single
branch to work with multiple versions of Moodle to support the API in
both Moodle 3.3 with PHP 5.6, and later versions.
2018-03-09 12:24:37 +08:00
Jake Dallimore 0f59848d29 MDL-61307 core_privacy: Add the privacy manager 2018-03-09 12:24:37 +08:00
Marina Glancy 51bc030d19 MDL-60241 course: General section always visible (topics, weeks) 2018-03-09 12:06:47 +08:00
Andrew Nicols 81f1e31a51 MDL-61307 core_privacy: Define and test providers 2018-03-09 10:01:18 +08:00
Andrew Nicols 431a3bb674 MDL-61307 core: Add component_class_callback functionality 2018-03-09 10:01:18 +08:00
Andrew Nicols dcc16e155d MDL-61307 core: Define a new privacy component 2018-03-09 09:59:36 +08:00
Jeff Webster 346657acef MDL-48501 auth/email: update external class to use reCAPTCHA v2 2018-03-08 14:48:35 -05:00
Jeff Webster f567f34b92 MDL-48501 mod_feedback: update feedback to use reCAPTCHA v2 2018-03-08 14:48:35 -05:00
Jeff Webster 83fa59a38c MDL-48501 login: update signup_form to use reCAPTCHA v2 2018-03-08 14:48:35 -05:00
Jeff Webster be41e4e518 MDL-48501 form/recaptcha: update to use reCAPTCHA v2 2018-03-08 14:48:35 -05:00
Jeff Webster caae082025 MDL-48501 recaptchalib_v2: add new lib to support reCAPTCHA v2 2018-03-08 14:48:35 -05:00
Jeff Webster 85ef1adbd0 MDL-48501 lang: update reCAPTCHA language strings 2018-03-08 14:48:35 -05:00
Luca Bösch c936af395e MDL-59070 enrol_database: Take enablecompletion from template 2018-03-08 17:24:39 +01:00
Luca Bösch 457b3ed139 MDL-61498 lesson: link to next activity in boost 2018-03-08 17:24:12 +01:00
Eloy Lafuente (stronk7) 1287039e62 weekly release 3.5dev 2018-03-08 13:29:02 +01:00
Eloy Lafuente (stronk7) 03141d1ae2 NOBUG: Fixed file access permissions 2018-03-08 13:29:02 +01:00
Eloy Lafuente (stronk7) 053186ba0e NOBUG: Fixed SVG browser compatibility 2018-03-08 13:29:01 +01:00
Eloy Lafuente (stronk7) 08f5fc107a Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-03-08 13:29:00 +01:00
Andrew Nicols 1e9016d8d8 Merge branch 'MDL-61423-master' of git://github.com/mihailges/moodle 2018-03-08 15:26:30 +08:00
Mihail Geshoski 25dbbdf90b MDL-61423 authentication: Add digital minor verification upon signup 2018-03-08 15:01:25 +08:00
Jake Dallimore 438a62f28b Merge branch 'MDL-38829-master-whitespacefix' of https://github.com/snake/moodle 2018-03-08 11:41:55 +08:00
Jake Dallimore 8525d8466a MDL-38829 core: fix whitespace in xmlize test 2018-03-08 11:39:42 +08:00
Jake Dallimore f9628f871a Merge branch 'MDL-38829-master' of git://github.com/andrewnicols/moodle 2018-03-08 11:17:05 +08:00
Eloy Lafuente (stronk7) 3e5d0447fd Merge branch 'MDL-60445-master' of https://github.com/lucaboesch/moodle 2018-03-07 19:19:21 +01:00
Shamim Rezaie abe7ceabfa MDL-61557 Questions: Fixed behat failure with clean 2018-03-07 17:08:41 +01:00
Shamim Rezaie 451df14218 MDL-61556 Questions: Fixed behat failure with clean 2018-03-07 17:08:33 +01:00
Jesse Ritchey c91a59ac42 MDL-60445 theme_boost: remove fieldset tag 2018-03-07 11:08:42 +01:00
Andrew Nicols e6b354d99b Merge branch 'master' of https://github.com/chkhanu/moodle 2018-03-07 11:34:16 +08:00
Andrew Nicols b8979ffe69 Merge branch 'wip-MDL-61322-master' of git://github.com/abgreeve/moodle 2018-03-07 10:57:36 +08:00
Jake Dallimore 2215d5744a Merge branch 'MDL-61363-int-master' of git://github.com/ryanwyllie/moodle 2018-03-07 10:55:01 +08:00
Ryan Wyllie 79c9ad6277 MDL-61363 question: unit tests for question tags context change 2018-03-07 10:31:47 +08:00
Ryan Wyllie dd69ecb630 MDL-61363 question: unit tests for course context tagging 2018-03-07 10:31:47 +08:00
Ryan Wyllie 68beb75851 MDL-61363 question: update tags on question context change 2018-03-07 10:31:47 +08:00
Ryan Wyllie 081eb156c5 MDL-61363 question: add course context tagging 2018-03-07 10:31:47 +08:00
Ryan Wyllie 49374833fc MDL-61363 tag: unit tests for change_instances_context 2018-03-07 10:31:47 +08:00
Ryan Wyllie f7c1c97cac MDL-61363 tag: unit tests for delete functions 2018-03-07 10:31:47 +08:00
Ryan Wyllie 4823de0269 MDL-61363 tag: unit tests for tagging in different context 2018-03-07 10:31:47 +08:00
Ryan Wyllie 4c3f4d2c2a MDL-61363 tag: unit tests for get_items_tags function 2018-03-07 10:31:47 +08:00
Ryan Wyllie 5436b0ed02 MDL-61363 tag: allow tagging in different context to item 2018-03-07 10:31:46 +08:00
Andrew Nicols 988fb76589 Merge branch 'MDL-61404-master' of git://github.com/Kathrin84/moodle 2018-03-07 10:31:23 +08:00
Ryan Wyllie 8376557c4c MDL-61363 tag: add change_instances_context function 2018-03-07 10:27:42 +08:00
Ryan Wyllie 694710d0f2 MDL-61363 tag: add get_items_tags function 2018-03-07 10:27:42 +08:00
Ryan Wyllie 064f6b5a81 MDL-61363 tag: add additional tag instance delete functions 2018-03-07 10:27:42 +08:00
Andrew Nicols 976ba87888 Merge branch 'MDL-61497-master' of https://github.com/lucaboesch/moodle 2018-03-07 09:58:29 +08:00
Andrew Nicols 79e4395888 MDL-38829 core: Rewrite xmlize unit tests
These changes adjust the unit tests to compare known values rather than
calculating them on the fly.

The unit test against a 'bad' source has been modified to simply check
for the relevant exception as PHP prevents any output on exceptions
anyway.
2018-03-07 09:40:11 +08:00
Jake Dallimore 98aaa343f1 Merge branch 'MDL-60991' of https://github.com/mkassaei/moodle 2018-03-07 09:29:54 +08:00
Andrew Nicols 475d4345f9 Merge branch 'MDL-61380-master' of git://github.com/rezaies/moodle 2018-03-07 09:00:15 +08:00
AMOS bot 7e9468ed20 Automatically generated installer lang files 2018-03-07 00:06:13 +00:00
Eloy Lafuente (stronk7) 647db53d14 Merge branch 'MDL-61503-master' of git://github.com/rezaies/moodle 2018-03-07 00:55:29 +01:00
Eloy Lafuente (stronk7) e975671ca3 Merge branch 'MDL-61312-master' of git://github.com/jleyva/moodle 2018-03-07 00:47:44 +01:00
Eloy Lafuente (stronk7) e28b586b9c Merge branch 'MDL-61557-master' of git://github.com/rezaies/moodle 2018-03-07 00:19:50 +01:00
Eloy Lafuente (stronk7) e35205bfec Merge branch 'MDL-61556-master' of git://github.com/rezaies/moodle 2018-03-07 00:13:01 +01:00
Shamim Rezaie 81053f8cbe MDL-61380 Quiz: Behat test for tag filter in the random question form 2018-03-07 07:34:11 +11:00
Shamim Rezaie 1b63ff10f9 MDL-61380 behat: Added autocomplete_suggestions name selector 2018-03-07 06:52:01 +11:00
Shamim Rezaie f3f21c995c MDL-61380 Quiz: Re-attempting the same "random" question by tag
Some question behaviours allow the same question to be re-attempted several times during a quiz attempt.
This commit takes care of the case where a "random" question is re-attempted during a quiz attempt.
2018-03-07 05:43:44 +11:00
Shamim Rezaie 2a1c9daccd MDL-61380 Quiz: build attempt from "random" questions by tag 2018-03-07 05:43:38 +11:00
Shamim Rezaie 2adefc21ac MDL-61380 Questions: Support selecting "random" by tag in question bank 2018-03-07 05:33:11 +11:00
Shamim Rezaie 82c67ac7f0 MDL-61380 Quiz: Fix url generation in notenoughrandomquestions exception 2018-03-07 05:33:11 +11:00
Shamim Rezaie 6650c66b59 MDL-61380 Questions: Editing configuration of existing random questions
Editing "random" questions follows a different procedure than adding them.
This commit takes care of editing a "random" question's configuration.
This commit also introduces mod_quiz\form\randomquestion_form, so mod_quiz
can edit random questions without having to use the form that is inside qtype_random.
2018-03-07 05:32:40 +11:00
Shamim Rezaie 4f964a1ca0 MDL-61380 Quiz,Questions: Adding "random" question by tag 2018-03-07 00:30:32 +11:00
Kilian 533a7edeae MDL-38829 core: Unit test for xmlize using two sample xml files.
The file sample_questions.xml from moodle-stack is properly formed.
The file sample_questions_wrong.xml has mismatching tags.
Comparison is performed with recursive array comparison.
Error messages and returned data structures are compared.
Call with: phpunit lib/tests/xmlize_test.php
2018-03-06 15:36:14 +08:00
Kilian 7825ffb1d5 MDL-38829 core: fix for xmlize is unable to import xml files>10MB
Since version 2.7.3 the libxml library (https://bugs.php.net/bug.php?id=49660)
limits parsing in memory files to 10MB. Unfortunately the libxml option
LIBXML_PARSEHUGE to release the 10MB limit is not exposed to php. Through
using the sax parser which is typically used to parse directly from files but
instead chunking the string in memory xml files larger than 10MB can again
be parsed. I copied the exact behaviour of the previous routine
by Hans Anderson (http://www.hansanderson.com/contact/) so compatibility
should be maintained.
2018-03-06 15:36:08 +08:00
Kilian e4d61d8321 MDL-38829 core: Remove xmlize from thirdpartylibs 2018-03-06 15:35:46 +08:00
Eloy Lafuente (stronk7) 6a5d9ce4b9 Merge branch 'MDL-36157-master' of https://github.com/lucaboesch/moodle 2018-03-06 02:47:33 +01:00
Luca Bösch 345a010ea4 MDL-36157 block_rss_client: Don't double escape titles. 2018-03-06 00:15:38 +01:00
Eloy Lafuente (stronk7) 9655ef534d Merge branch 'MDL-61211-master' of git://github.com/mihailges/moodle 2018-03-05 23:30:19 +01:00
Eloy Lafuente (stronk7) 6d3f2f9036 Merge branch 'MDL-55153-master' of git://github.com/sarjona/moodle 2018-03-05 23:25:23 +01:00
Eloy Lafuente (stronk7) 56a7177741 Merge branch 'MDL-61549-master' of git://github.com/Dagefoerde/moodle 2018-03-05 23:22:47 +01:00
Shamim Rezaie c1d31e42ba MDL-61526 Questions: phpunit test to test restore from 3.4 and 3.5 2018-03-06 01:43:32 +11:00
Shamim Rezaie e9897ee6ef MDL-61526 Questions: Add 2 backup fixtures from 3.4 and 3.5 2018-03-06 01:41:45 +11:00
Shamim Rezaie 0f80f793df MDL-61526 Questions: Fix creation of multiple TOP question categories
Backup files that are made from Moodle 3.5 already contain TOP categories.
There is no need to create an additional TOP category for them.
2018-03-05 15:44:29 +11:00
Shamim Rezaie 8ece85602a MDL-61556 Questions: Add behat test 2018-03-05 14:17:52 +11:00
Shamim Rezaie c618e93e66 MDL-61557 Questions: Add behat test 2018-03-05 14:16:13 +11:00
Shamim Rezaie 18d6ff7880 MDL-61557 Questions: Fixed moving question categories to top 2018-03-05 13:40:02 +11:00
Shamim Rezaie 536d4d5729 MDL-61557 Lib: Add get_top_level_parent_id function 2018-03-05 13:34:08 +11:00
Jonathan Champ 9651175f70 MDL-61584 auth_ldap: use get_cache_flag()
get_cache_flags() is only useful when you want multiple responses or
you don't know the name/key for the value pair. We know the name/key
here is the session ID, so use get_cache_flag() instead and gain the
performance benefit.
2018-03-03 15:50:58 -05:00
Shamim Rezaie ee1052bd18 MDL-61556 Questions: Fixed moving question categories between contexts 2018-03-03 16:31:59 +11:00
Andrew Nicols 03d174d733 MDL-61268 core: Fix empty string DB cehck
(amended by stronk7 to use the helper better)
2018-03-02 16:31:11 +01:00
Kathrin Osswald 65992c2d25 MDL-61404 blocks: Removed unused strings. 2018-03-02 07:48:49 +01:00
Shamim Rezaie 2d7b0534d3 MDL-61503 Questions: Fix sql query to get questions by tags 2018-03-02 15:40:44 +11:00
Andrew Nicols 8b4510c4cc Merge branch 'wip-MDL-61268-master' of git://github.com/abgreeve/moodle 2018-03-02 09:57:30 +08:00
Andrew Nicols 3406bdd6fa Merge branch 'MDL-61196_master' of git://github.com/markn86/moodle 2018-03-02 09:34:24 +08:00
Adrian Greeve 8a844437bf MDL-61268 blocks: Unit tests for deprecated object update.
Unit tests for testing that the upgrade functions to change
the now deprecated object to stdClass works.
2018-03-02 09:22:05 +08:00
Adrian Greeve e78849e837 MDL-61268 blocks: Fix corrupt configdata in block instances.
Old configuration data in the block instances is base64 encoded with
the deprecated object class instead of stdClass.
2018-03-02 09:22:05 +08:00
Eloy Lafuente (stronk7) 20089fb594 Merge branch 'MDL-61533-master-enfix' of git://github.com/mudrd8mz/moodle 2018-03-02 01:42:45 +01:00
Helen Foster ad5b7d26e7 MDL-61533 lang: Merge English strings from the en_fix language pack
Significant string change:

* typeoflogin_desc,tool_mobile - removing sentence about autologinguests
* gradepublishing_help, core_grades - updated explanation mentioning the
  manager role and grade export publishing settings
2018-03-01 17:17:16 +01:00
M Kassaei 235b6e4f06 MDL-60991 Workshop: Display late submission text after deadline 2018-03-01 13:51:46 +00:00
Luca Bösch 9d10d64e14 MDL-36157 block_rss_client: Don't double escape titles. 2018-03-01 09:52:32 +01:00
Luca Bösch 49ccb165cc MDL-61497 repository_onedrive: Use post 2015 icon 2018-03-01 08:59:15 +01:00
Chernyavskiy Leonid 0e9cda01f1 MDL-60658 course, gradebook: fix missing unformat_float for gradepass
Fix incorrect comparison of gradepass variable (with comma as decimal separator)
with grade variable when trying to save assignment settings.
Adds missing unformat_float($data['gradepass']).
2018-03-01 09:26:51 +07:00
Mihail Geshoski 0e613a1f5b MDL-61211 lesson: Error when answer or response contains break tag 2018-03-01 09:50:51 +08:00
Shamim Rezaie 4fa49cc647 MDL-61380 Quiz: Adding a random question 2018-03-01 11:50:52 +11:00
Andrew Nicols 9f4e81a81b Merge branch 'MDL-61453-master-userpicturefiletype' of git://github.com/mudrd8mz/moodle 2018-03-01 08:45:47 +08:00
Shamim Rezaie 78b3870c50 MDL-61380 Quiz: Initial implementation of slot_random class 2018-03-01 11:41:15 +11:00
Shamim Rezaie 6fc5a830d4 MDL-61380 Quiz: Migrate "random" questions data into quiz_slots
Search for all "random" questions in the qbank and move the configuration data of each one to the quiz slots table.
2018-03-01 11:41:15 +11:00
Shamim Rezaie b6c38f71e2 MDL-61380 Quiz: quiz_slots schema change
Adding questioncategoryid and includingsubcategories to the quiz_slots table
2018-03-01 11:41:14 +11:00
Dan Marsden 1a11bf375c MDL-49417 enrol_cohort: use ajax searchable selector for cohorts. 2018-03-01 13:39:56 +13:00
Eloy Lafuente (stronk7) 856e07e4e7 weekly release 3.5dev 2018-02-28 12:58:13 +01:00
Eloy Lafuente (stronk7) 4881c193b7 NOBUG: Fixed SVG browser compatibility 2018-02-28 12:58:11 +01:00
Jan Dageförde aa949cb2f9 MDL-61549 user: Remove $already columns because none were loaded yet 2018-02-27 14:47:44 +01:00
Jake Dallimore 54a86d8f15 Merge branch 'wip-MDL-61485-master' of git://github.com/marinaglancy/moodle 2018-02-27 09:37:45 +08:00
Jake Dallimore c99a5e18eb Merge branch 'MDL-61480-master' of git://github.com/andrewnicols/moodle 2018-02-27 09:04:45 +08:00
Eloy Lafuente (stronk7) e7d8d22dca Merge branch 'MDL-61249-master' of git://github.com/sarjona/moodle 2018-02-26 23:10:14 +01:00
Eloy Lafuente (stronk7) b62139ab27 Merge branch 'MDL-61393-master' of git://github.com/lameze/moodle 2018-02-26 23:06:36 +01:00
Mihail Geshoski 757a889b24 MDL-60398 resource: Unable to download folder resource 2018-02-26 16:49:21 +08:00
Andrew Nicols 26d26413a0 MDL-61480 core: Check plugin installed before returning 2018-02-26 12:11:25 +08:00
Andrew Nicols de18c36f9f Merge branch 'MDL-60547-master' of git://github.com/cescobedo/moodle 2018-02-26 10:20:54 +08:00
Andrew Nicols 8fe48ac366 Merge branch 'MDL-61462-master' of git://github.com/junpataleta/moodle 2018-02-26 10:10:27 +08:00
Sara Arjona e2cd8d3c6d MDL-61249 enrol_manual: Fix end date calculation
This patch has been given by Bruno Malaval.
2018-02-23 08:19:49 +01:00
Jake Dallimore 296a3aa707 weekly release 3.5dev 2018-02-23 11:51:28 +08:00
Jake Dallimore fbf290d3b2 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-02-23 11:51:27 +08:00
Marina Glancy ca6f717578 MDL-61522 mod_glossary: use full url in links 2018-02-23 10:55:59 +08:00
Andrew Nicols 563ac282fc Merge branch 'MDL-61444-master-fix' of https://github.com/lameze/moodle 2018-02-23 07:57:07 +08:00
Simey Lameze 1657d0b6a9 MDL-61444 question: hardFreeze tags element if no caps 2018-02-23 07:44:57 +08:00
Barbara Ramiro 1421bf5492 MDL-61393 pix: add tag icons 2018-02-22 12:11:23 +08:00
Jun Pataleta e5818c7d09 MDL-61513 admin: Fix undefined $buttons variable 2018-02-22 10:22:06 +08:00
Andrew Nicols d40b84e253 Merge branch 'MDL-61444-master' of git://github.com/lameze/moodle 2018-02-22 09:59:15 +08:00
Simey Lameze 4509be2296 MDL-61444 question: freeze element for users without caps 2018-02-22 09:44:15 +08:00
Eloy Lafuente (stronk7) 0f8c06e0f5 Merge branch 'MDL-61437-master' of git://github.com/lameze/moodle 2018-02-22 08:30:57 +08:00
Eloy Lafuente (stronk7) 59462743e6 Merge branch 'MDL-58885-master' of https://github.com/sammarshallou/moodle 2018-02-22 08:30:57 +08:00
Jake Dallimore f52c05d66d Merge branch 'MDL-61394-master-fix2' of git://github.com/andrewnicols/moodle 2018-02-22 08:30:56 +08:00
Andrew Nicols e63da7ba58 Merge branch 'MDL-61394-master-fix' of git://git.cameron1729.xyz/moodle 2018-02-22 08:30:55 +08:00
Andrew Nicols 54fd1bb3fa MDL-61394 admin: Set valid default for pathtosassc 2018-02-22 08:30:55 +08:00
Cameron Ball 40e53599b3 MDL-61394 core_scss: Null coalesce path to sassc setting 2018-02-22 08:30:54 +08:00
Jake Dallimore 3a7ae79555 Merge branch 'MDL-61402' of https://github.com/mkassaei/moodle 2018-02-22 08:30:53 +08:00
Andrew Nicols 2b32b1fea8 Merge branch 'MDL-61394-master' of git://git.cameron1729.xyz/moodle 2018-02-22 08:30:53 +08:00
Eloy Lafuente (stronk7) fcafde7e48 Merge branch 'MDL-61324_lti_sync' of git://github.com/davosmith/moodle 2018-02-22 08:30:52 +08:00
Eloy Lafuente (stronk7) fb9d5e7a17 Merge branch 'MDL-61005-master' of git://github.com/sarjona/moodle 2018-02-22 08:30:52 +08:00
Luca Bösch 91e2e5e7a2 MDL-58845 mod_choice: Fix behat related tests 2018-02-22 08:30:51 +08:00
Andrew Nicols 85973908a5 Merge branch 'MDL-61444-master' of git://github.com/lameze/moodle 2018-02-22 08:30:50 +08:00
Andrew Nicols c482497d52 Merge branch 'MDL-61421-master' of git://github.com/sarjona/moodle 2018-02-22 08:30:50 +08:00
Andrew Nicols 6478b4e463 Merge branch 'MDL-61408-master' of https://github.com/lucaboesch/moodle 2018-02-22 08:30:49 +08:00
Carlos b999cee9a5 MDL-60547 message_popup: adding preventDefault at notification popover 2018-02-21 22:51:02 +01:00
Sara Arjona efa66e0597 MDL-55153 customlang: Remove local DB entries when deleting local file 2018-02-21 22:00:15 +01:00
Simey Lameze 728e195c5e MDL-61437 mod_quiz: rename question_build_display_preference function 2018-02-21 09:13:50 +08:00
Mihail Geshoski 4961e964d2 MDL-61485 authentication: Add callback 'pre_signup_requests' 2018-02-20 10:02:31 +08:00
Cameron Ball eadebb2445 MDL-61394 core_scss: Add unit tests for SassC compilation
This patch also adds a test in theme_boost to verify that boost
can be succesfully compiled without errors by SassC.
2018-02-19 14:46:00 +08:00
Cameron Ball 8a5613f643 MDL-61394 theme_boost: Misc scss fixes 2018-02-19 14:39:19 +08:00
Cameron Ball 4658220b2d MDL-61394 Administration: Add experimental feature to use SassC 2018-02-19 14:39:11 +08:00
Simey Lameze e2795e8632 MDL-61444 question: replace all question tag capability checks 2018-02-19 14:21:59 +08:00
Simey Lameze 1451c07e05 MDL-61444 question: make question_has_capability_on support new caps 2018-02-19 14:21:49 +08:00
Simey Lameze 34cd75240e MDL-61444 question: add question tagmine and tagall capabilities 2018-02-19 14:21:45 +08:00
Eloy Lafuente (stronk7) 25e0557484 Merge branch 'MDL-58845-master' of https://github.com/lucaboesch/moodle 2018-02-19 02:12:30 +01:00
Andrew Nicols 98ee3df14e Merge branch 'MDL-61289-master' of git://github.com/junpataleta/moodle 2018-02-19 09:07:24 +08:00
Jun Pataleta 0e8d6595f4 MDL-61289 mod_choice: Add extra user fields to response data 2018-02-19 08:53:44 +08:00
AMOS bot 8a81290525 Automatically generated installer lang files 2018-02-19 00:06:11 +00:00
AMOS bot 7ed98e4912 Automatically generated installer lang files 2018-02-17 00:06:13 +00:00
sam marshall 163d280053 MDL-58885 core_search: Group support unit tests 2018-02-16 16:57:01 +00:00
sam marshall 3261e9237d MDL-58885 core_search: Group support in relevant module search areas 2018-02-16 16:57:01 +00:00
sam marshall 4359ef18bb MDL-58885 core_search: Add group support
Adds group support to the core search API and the Solr search engine.
This allows for:

* User searching by group (in the API only, no interface yet)
* Automatically restrict search results by group (in some cases like
  separate-groups forums)
2018-02-16 16:57:00 +00:00
M Kassaei 7ce538be0f MDL-61402 Core: Add a cancel button to edit profile page 2018-02-16 09:34:23 +00:00
Luca Bösch a58fd9710d MDL-61408 qbehaviour: Correct "Check" button styling. 2018-02-16 08:45:56 +01:00
Luca Bösch 3a9f0ad138 MDL-58845 mod_choice: In reports, respect "Show column for unanswered" 2018-02-16 08:45:51 +01:00
Jun Pataleta 6a51b279ec MDL-61462 admin_roles: Point back to roles link to the correct URL 2018-02-16 10:32:44 +08:00
Marina Glancy 6bc6757084 MDL-56635 tags: use recordset since component may not be unique 2018-02-16 09:50:57 +08:00
Eloy Lafuente (stronk7) d1b4ca921e weekly release 3.5dev 2018-02-15 17:10:22 +01:00
Dan Marsden d406ddca03 MDL-61005 core_cohort: Allow teachers to view site-wide cohorts 2018-02-14 20:02:39 +01:00
David Mudrák 26c1c01629 MDL-61453 user: Fix accepted file type when uploading user pictures
Not all archives are supported, only ZIP files are.
2018-02-14 18:06:45 +01:00
Stephen Bourget b4993d29f7 MDL-45837 Grades: Minor fixes to grade_letter events 2018-02-14 17:31:57 +01:00
David Monllao e4607502bf NOBUG: Keep mod_workshop higher version after reverting MDL-60820 2018-02-14 12:03:12 +01:00
David Monllao 4b140685ad Merge branch 'MDL-45837_master' of git://github.com/markn86/moodle 2018-02-13 07:48:16 +01:00
Andrew Nicols 5ac4e277fa Merge branch 'MDL-61135-master-fixes' of https://github.com/lameze/moodle 2018-02-13 11:01:15 +08:00
Simey Lameze cf81447c74 MDL-61135 mod_quiz: deprecate unused fragment_view class 2018-02-13 10:48:22 +08:00
Simey Lameze fc23bc85cf MDL-61135 mod_quiz: move fragment_view functions to custom_view class 2018-02-13 10:48:03 +08:00
Andrew Nicols b57cd16dcf Merge branch 'wip-MDL-61344' of https://github.com/ndunand/moodle 2018-02-13 09:03:50 +08:00
Andrew Nicols 486f7c9555 Merge branch 'MDL-61150' of git://github.com/stronk7/moodle 2018-02-13 09:01:31 +08:00
David Monllao adc3c068bb Merge branch 'MDL-61236-master' of git://github.com/farhan6318/moodle 2018-02-12 12:13:55 +01:00
David Monllao 132106bfef Merge branch 'MDL-61153-master' of git://github.com/mihailges/moodle 2018-02-12 10:55:28 +01:00
David Monllao 0abe3fe373 Merge branch 'MDL-61375_master' of git://github.com/markn86/moodle 2018-02-12 09:40:31 +01:00
David Monllao 755310cbeb Merge branch 'MDL-56688-master' of https://github.com/nwp90/moodle 2018-02-12 09:32:38 +01:00
Davo Smith 8037f32b8a MDL-61324 enrol_lti: fix detection of changed grades during sync 2018-02-12 08:25:44 +00:00
David Monllao f40d707dbf Merge branch 'mod-lti-fix-test-with-hardcoded-url' of https://github.com/peikk0/moodle 2018-02-12 09:20:50 +01:00
David Monllao 1f07048f02 Merge branch 'MDL-61425-master' of git://github.com/rezaies/moodle 2018-02-12 09:13:08 +01:00
Sara Arjona bfea8655f7 MDL-61421 cohort: Fix cohort_role_sync when a user is in two cohorts 2018-02-12 08:55:38 +01:00
Andrew Nicols b6c2829745 Merge branch 'MDL-61366' of git://github.com/timhunt/moodle 2018-02-12 15:17:29 +08:00
Nicolas Dunand a0b2b76613 MDL-61344 mod_assign: Show additional files when adding submission 2018-02-12 07:40:57 +01:00
Andrew Nicols 48cf9018fa Merge branch 'MDL-60958-int-fix-1' of github.com:ryanwyllie/moodle 2018-02-12 13:51:55 +08:00
Ryan Wyllie 4e0ac12efa MDL-60958 calendar: fix test helper action factory 2018-02-12 05:47:49 +00:00
Andrew Nicols b383cec36c Merge branch 'MDL-60958-master' of git://github.com/ryanwyllie/moodle 2018-02-12 13:34:31 +08:00
Ryan Wyllie 28852998f6 MDL-60958 calendar: stop db query in repeat collection constructor
Stop loading the parent record in the constructor because it is an
unnecessary DB query for each event instantiation.

Return null on get_repeats() for events that don't have repeats.
2018-02-12 05:29:11 +00:00
Andrew Nicols 1e41e6ddd9 Merge branch 'MDL-61135-master' of git://github.com/ryanwyllie/moodle 2018-02-12 11:34:56 +08:00
Andrew Nicols f675a8e23a Merge branch 'MDL-61305-master-fix' of https://github.com/andrewnicols/moodle 2018-02-12 11:30:53 +08:00
Shamim Rezaie f0fca20bdf MDL-61425 theme_boost: Made question labels width full in question bank 2018-02-12 14:28:24 +11:00
Andrew Nicols ada9d0fb69 MDL-61305 modinfo: Add back missing require for course 2018-02-12 10:39:51 +08:00
Pierre Guinoiseau a6529e04e6 MDL-61379 mod_lti: fix a test comparing a hardcoded URL from fixtures
The hardcoded URL from tests/fixtures/ims_cartridge_basic_lti_link.xml
didn't match if TEST_EXTERNAL_FILES_HTTPS_URL was defined, the test
needs to compare with the exact same URL instead of a generated one.
2018-02-12 13:44:45 +13:00
Andrew Nicols af5f446fa8 Merge branch 'MDL-61305-master' of https://github.com/sammarshallou/moodle 2018-02-12 08:17:49 +08:00
Andrew Nicols d461d093bd Merge branch 'MDL-61413' of git://github.com/stronk7/moodle 2018-02-12 08:06:21 +08:00
Eloy Lafuente (stronk7) 54a099e989 MDL-61150 xmldb: Let's check the PATH attribute of XMLDB files
Starting with Moodle 3.5 the XMLDB->PATH attribute is checked
to be correct and pointing to the correct plugin directory.

It only was used for writing PHP savepoints code, but better we
ask for strict correctness.

With this patch applied, neither the XMLDB Editor neither install
will be able to load a file with wrong PATH anymore.
2018-02-11 23:07:18 +01:00
Marina Glancy 015e612a5f MDL-61150 xmldb: correct path to schema in install.xml 2018-02-11 23:07:18 +01:00
Eloy Lafuente (stronk7) dd9368b43d MDL-61150 xmldb: Fix wrong PATH attributes in core 2018-02-11 22:53:58 +01:00
Farhan Karmali 4fd0bdb2b7 MDL-61236 enrol: Course welcome message to be sent from correct contact 2018-02-11 20:45:49 +05:30
Eloy Lafuente (stronk7) 7fcc62c633 MDL-61413 mod_lti: Use sql_compare_text() for comparing TEXTs 2018-02-11 02:16:39 +01:00
Mark Nelson cb21b5b7fb MDL-61196 message_popup: clean params before returning via WS 2018-02-09 17:35:51 +08:00
Mark Nelson fb77b89fd8 MDL-61375 mod_chat: specify the 'eventtype' to avoid duplicate rows 2018-02-09 14:46:11 +08:00
Mark Nelson e960152141 MDL-45837 core: minor tidy up to events 2018-02-09 12:13:48 +08:00
Stephen Bourget b302d434ae MDL-45837 Grades: Add unit & behat tests for events 2018-02-09 11:41:38 +08:00
Stephen Bourget 31647f0cc9 MDL-45837 Grades: Add events for grade letters 2018-02-09 11:41:38 +08:00
Stephen Bourget 2f3b709859 MDL-45837 Grades: Add events for scales 2018-02-09 11:41:38 +08:00
sam marshall 08ec1b4e47 MDL-61305 Performance: Modinfo cache can get built in parallel
In a busy site it is possible that one user will access the site
while another is building modinfo cache. This can result in the
cache being built several times at once, potentially causing a
performance issue.
2018-02-08 14:45:55 +00:00
David Monllao 315a0a3aaf weekly release 3.5dev 2018-02-08 09:29:09 +01:00
Andrew Nicols 49b12fdbd1 Merge branch 'MDL-61133-master-fixes' of https://github.com/lameze/moodle 2018-02-08 12:01:55 +08:00
Ryan Wyllie d04f42254b MDL-61135 mod_quiz: add behat test for tag filtering in qbank modal 2018-02-08 02:44:18 +00:00
Ryan Wyllie d7abdb64ee MDL-61135 question: add behat test for tag filtering 2018-02-08 02:44:17 +00:00
Ryan Wyllie e6743b4b80 MDL-61135 mod_quiz: remove YUI question bank dialogue 2018-02-08 02:44:17 +00:00
Ryan Wyllie fff033322a MDL-61135 mod_quiz: add tag condition to question bank form 2018-02-08 02:44:17 +00:00
Ryan Wyllie 171d7919b3 MDL-61135 mod_quiz: add question bank AMD modal 2018-02-08 02:44:16 +00:00
Ryan Wyllie f33dc783f1 MDL-61135 mod_quiz: add question bank fragment 2018-02-08 02:44:16 +00:00
Ryan Wyllie 031a275288 MDL-61135 question: add tag filter condition 2018-02-08 02:44:16 +00:00
Ryan Wyllie 73d16fc61d MDL-61135 question: split edit setup logic out from POST param parsing
Decouple the business logic in the question_edit_setup function from
the GET/POST param parsing to allow the business logic to be run
on params directly passed to it.
2018-02-08 02:25:30 +00:00
Simey Lameze e842596d1d MDL-61133 core_question: disable form change checker 2018-02-08 10:10:51 +08:00
Sara Arjona 58af736dec MDL-61365 group: Fix default filter when group mode is visible 2018-02-07 18:02:56 +01:00
David Monllao 42afb6c2ac MDL-52811 version: Bump to update system capabilities and lang str 2018-02-07 07:57:18 +01:00
Andrew Nicols a87c7c03ad Merge branch 'MDL-61377-master' of git://github.com/rezaies/moodle 2018-02-07 12:52:26 +08:00
Shamim Rezaie 38b1d6cdd9 MDL-61377 Core: Fixed faulty warning when using progress_bar 2018-02-07 14:47:18 +11:00
Andrew Nicols fd26d7318e Merge branch 'MDL-52832' of https://github.com/stronk7/moodle 2018-02-07 07:07:27 +08:00
Eloy Lafuente (stronk7) 496e80e1f5 MDL-52832 quiz: sql fixing couple of incorrect group by uses 2018-02-06 18:30:11 +01:00
Tim Hunt 168635fb6f MDL-61366 setuplib: safely construct the ajax renderer when needed 2018-02-06 12:09:43 +00:00
David Monllao 7416d00ad2 Merge branch 'MDL-52832-master' of https://github.com/lucaboesch/moodle 2018-02-06 12:18:27 +01:00
David Monllao 24d8485ea6 Merge branch 'master_MDL-60421' of https://github.com/danmarsden/moodle 2018-02-06 10:46:35 +01:00
David Monllao 8c52eb2a15 MDL-52811 course: Note about the new capability when creating courses 2018-02-06 08:10:10 +01:00
David Monllao d3e54578ea Merge branch 'MDL-52811_prevent_forcelang' of git://github.com/davosmith/moodle 2018-02-06 08:00:11 +01:00
Andrew Nicols e742f93303 Merge branch 'MDL-61132-master' of git://github.com/rezaies/moodle 2018-02-06 14:33:41 +08:00
Andrew Nicols 5d7d0457d2 Merge branch 'MDL-61133-master' of git://github.com/lameze/moodle 2018-02-06 14:00:51 +08:00
Simey Lameze d1db765a64 MDL-61133 core_question: move all selectors to a new module 2018-02-06 10:24:22 +08:00
Simey Lameze fd5e2ead95 MDL-61133 core_question: add new question tags modal 2018-02-06 10:09:10 +08:00
Eloy Lafuente (stronk7) 5bdda5e535 Merge branch 'MDL-61168-master' of git://github.com/junpataleta/moodle 2018-02-05 20:17:34 +01:00
Eloy Lafuente (stronk7) b04811687c Merge branch 'MDL-61341-master' of git://github.com/andrewnicols/moodle 2018-02-05 20:06:32 +01:00
Davo Smith 4ee8ec310a MDL-52811 course: moodle/course:setforcedlanguage integration fixes 2018-02-05 13:20:42 +00:00
David Monllao 02e6350222 Merge branch 'MDL-61027-master' of git://github.com/rezaies/moodle 2018-02-05 11:56:18 +01:00
David Monllao 69b4a73de8 Merge branch 'MDL-61251-master' of https://github.com/lucaboesch/moodle 2018-02-05 11:50:39 +01:00
David Monllao 1cc79637c7 Merge branch 'MDL-42764_master' of git://github.com/markn86/moodle 2018-02-05 11:18:34 +01:00
Andrew Nicols ad1ba7f02a Merge branch 'MDL-61269' of git://github.com/stronk7/moodle 2018-02-05 17:29:25 +08:00
Andrew Nicols a88658fbf0 Merge branch 'MDL-51189-master' of git://github.com/rezaies/moodle 2018-02-05 15:43:47 +08:00
Ryan Wyllie 4c72d4bec1 MDL-61135 core_tag: add function get_tags_by_area_in_contexts
Add a function to allow for searching tags by an area (component and
itemtype) in a given set of contexts.
2018-02-05 06:59:13 +00:00
Shamim Rezaie b0ae7d082a MDL-61132 Questions: Fix behat failures 2018-02-05 13:59:39 +11:00
Simey Lameze 7f4b6dfe70 MDL-61133 core_question: tags form and fragment callback 2018-02-05 10:58:04 +08:00
Simey Lameze 680d5c5be6 MDL-61133 core_question: new submit_tags_form webservice 2018-02-05 10:58:04 +08:00
Simey Lameze d587dc6f6f MDL-61133 core_question: add tags column class to question list 2018-02-05 10:57:04 +08:00
Simey Lameze f31804c01c MDL-61133 core_output: add fontawesome mapping for tags icon 2018-02-05 09:36:52 +08:00
Shamim Rezaie 869320c7f4 MDL-61132 Questions: Unit tests compatibility
Modified unit tests to adapt with "Top" categories.
2018-02-05 11:58:58 +11:00
Shamim Rezaie f86f8c85c1 MDL-61132 Questions: Adapt logic on export/import
Modified import/export to adapt with "Top" categories.
2018-02-05 11:58:58 +11:00
Shamim Rezaie 8df402e401 MDL-61132 Questions: Adapt logic on backup/restore
Modifying backup/restore to adapt with "Top" categories.
2018-02-05 11:58:57 +11:00
Shamim Rezaie 3b8f3198de MDL-61132 Quiz: "Random" question from "Top" categories
* Support for adding ranodm questions from "Top" categories
2018-02-05 11:58:57 +11:00
Shamim Rezaie 9275220de3 MDL-61132 Questions: Question Bank amendments to cope with Top category
* Display "Top" categories in the category filter when listing questions in the question bank
* Prevent editing "Top" categories
* Prevent deleting "Top" categories
2018-02-05 11:58:52 +11:00
Shamim Rezaie bb06397130 MDL-61132 Questions: Add "Top" categories by default when don't exist
Create "Top" categories along with the default categories when they don't exist
2018-02-05 11:53:36 +11:00
Shamim Rezaie d2c4ff10bf MDL-61132 Questions: Upgrade step to add Top to existing contexts
Upgrade script to add a "Top" category as a real category to the question bank
2018-02-05 11:20:50 +11:00
Eloy Lafuente (stronk7) b26bc628cf MDL-61269 composer: better license GPL-3.0-or-later
Source: https://spdx.org/licenses/
2018-02-04 19:38:32 +01:00
Sara Arjona 8d7c385203 MDL-61261 badges: Add email validation during backpack configuration 2018-02-02 11:33:15 +01:00
Ryan Wyllie 99df051805 MDL-61135 templates: improve loading icon for loading templates 2018-02-02 03:58:49 +00:00
Ryan Wyllie 2328bcccde MDL-61135 javascript: fix modal body height resizing when loading 2018-02-02 03:57:25 +00:00
Andrew Nicols 139dfc8b8a MDL-61341 theme_boost: Fix usertour zindex calculations 2018-02-02 11:31:14 +08:00
Andrew Nicols 2bc3246f93 MDL-61341 theme_boost: Modify variables used for calculations
Variables must be of the same type for Math to take place. We cannot
mix REM and EM because they have different relative roots.
2018-02-02 11:29:34 +08:00
Jun Pataleta 5c7351a263 MDL-61168 mod_assign: Truncate only the online text submission 2018-02-02 09:20:57 +08:00
Luca Bösch 1477e62936 MDL-61251 admin: configenablerssfeedsdisabled2 string more correct. 2018-02-01 22:59:33 +01:00
Luca Bösch bcf4a7f076 MDL-52832 quiz: timeclose in activities block looks after overrides. 2018-02-01 22:52:19 +01:00
Davo Smith 4a9624af21 MDL-52811 course: fix unit tests broken by setforcedlanguage 2018-02-01 17:07:23 +00:00
Davo Smith 1433a07881 MDL-52811 course: prevent setting of 'lang' without permission 2018-02-01 17:07:12 +00:00
Yair Spielmann ecce451878 MDL-52811 course: Require course:setforcedlanguage to force language. 2018-02-01 17:06:57 +00:00
David Monllao a409707794 weekly release 3.5dev 2018-02-01 14:26:35 +01:00
David Monllao e395d46b3b Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-02-01 14:26:33 +01:00
Dan Marsden 3e080111f9 MDL-60421 tool_cohortroles: fix deprecated call. 2018-02-01 20:58:31 +13:00
Jake Dallimore 91f841d00f Merge branch 'MDL-60077-master-fix' of https://github.com/andrewnicols/moodle 2018-02-01 14:55:50 +08:00
Andrew Nicols 826f61e500 MDL-60077 tool_usertours: Pull v0.12.2 of usertours for triangle fix 2018-02-01 14:28:13 +08:00
Andrew Nicols 258f54501b MDL-37190 blocks: Fix behat failure with new langstring 2018-02-01 10:33:21 +08:00
David Mudrák 051857fcb9 MDL-61242 repository_equella: Fix missing class repository
The call to the class 'repository' introduced in the commit d05c2ac7cc
didn't fully work and threw: "Exception - Class 'repository' not found".
This fixes the missing library inclusion.
2018-02-01 10:33:21 +08:00
Eloy Lafuente (stronk7) 632293b09a Merge branch 'MDL-61058-master' of git://github.com/junpataleta/moodle 2018-02-01 10:33:20 +08:00
Eloy Lafuente (stronk7) 025ef39f14 Merge branch 'MDL-61023-master' of git://github.com/junpataleta/moodle 2018-02-01 10:33:20 +08:00
Andrew Nicols ec010c09b3 Merge branch 'MDL-37190-master-fix2' of https://github.com/snake/moodle 2018-02-01 10:33:20 +08:00
Andrew Nicols 5eca8239f2 Merge branch 'MDL-61313_master' of git://github.com/dmonllao/moodle 2018-02-01 10:33:19 +08:00
Jake Dallimore 878f4b7ae0 MDL-37190 blocks: fix erroneous strings in the block_blog_tags block 2018-02-01 10:33:19 +08:00
David Monllao 3fd655242d MDL-61313 behat: Move future events further 2018-02-01 10:33:19 +08:00
Andrew Nicols b183ace176 Merge branch 'MDL-37190-master-fix1' of https://github.com/snake/moodle 2018-02-01 10:33:18 +08:00
David Monllao 5cce9a8fff Merge branch 'MDL-60836-master' of git://github.com/jleyva/moodle 2018-02-01 10:33:18 +08:00
Jake Dallimore 4cff1e5476 MDL-37190 behat: fix for char case in html block test 2018-02-01 10:33:18 +08:00
Jake Dallimore cdef2e7d34 Merge branch 'MDL-37190-master' of https://github.com/lucaboesch/moodle 2018-02-01 10:33:17 +08:00
David Monllao e57392fabe Merge branch 'MDL-57394-master' of git://github.com/jleyva/moodle 2018-02-01 10:33:17 +08:00
Eloy Lafuente (stronk7) 74c0b5fe91 Merge branch 'MDL-44612-master' of git://github.com/junpataleta/moodle 2018-02-01 10:33:17 +08:00
Eloy Lafuente (stronk7) aa78380630 Merge branch 'MDL-61281_master' of git://github.com/dmonllao/moodle 2018-02-01 10:33:16 +08:00
David Monllao e9fd486eb6 Merge branch 'MDL-60646-master' of git://github.com/junpataleta/moodle 2018-02-01 10:33:16 +08:00
David Monllao f372f96656 Merge branch 'MDL-60997-master' of git://github.com/junpataleta/moodle 2018-02-01 10:33:16 +08:00
David Monllao 54c51cc810 Merge branch 'MDL-61152-master' of git://github.com/junpataleta/moodle 2018-02-01 10:33:16 +08:00
David Monllao 237bc01fdf Merge branch 'MDL-61260_master' of git://github.com/markn86/moodle 2018-02-01 10:33:15 +08:00
Jake Dallimore 915140bced Merge branch 'MDL-61253-master' of git://github.com/andrewnicols/moodle 2018-02-01 10:33:15 +08:00
Andrew Nicols 8be8fb9a2e Merge branch 'MDL-60077-master' of https://github.com/HuongNV13/moodle 2018-02-01 10:33:15 +08:00
Andrew Nicols 377a1a4cbb Merge branch 'MDL-61250-master' of https://github.com/lucaboesch/moodle 2018-02-01 10:33:14 +08:00
Adrian Greeve 375db4ebc5 MDL-61322 reports: Reformated the display date to include the year. 2018-02-01 08:26:27 +08:00
AMOS bot 5b60901de6 Automatically generated installer lang files 2018-02-01 00:06:35 +00:00
AMOS bot cab91b357a Automatically generated installer lang files 2018-01-31 00:06:25 +00:00
Juan Leyva bf7a643f8a MDL-57394 mod_chat: New WS mod_chat_get_session_messages 2018-01-30 14:30:51 +01:00
Juan Leyva 2971d8421c MDL-57394 mod_chat: Move get session messages code to new function 2018-01-30 14:21:13 +01:00
Juan Leyva 26b4e8580d MDL-57394 mod_chat: New WS mod_chat_get_sessions 2018-01-30 13:52:05 +01:00
Juan Leyva 9b82171b18 MDL-57394 mod_chat: Move get sessions code to new function
To avoid code duplication when creating new web services we need to
move code to a function chat_get_sessions.
2018-01-30 13:52:05 +01:00
Juan Leyva e3c04bd98a MDL-60836 core_calendar: Return categoryid in get_calendar_events 2018-01-30 13:47:19 +01:00
Juan Leyva 0e8b3d929d MDL-61312 completion: Return completion for teachers via WS
core_completion_get_activities_completion_status was not returning
completion information for users with the teacher role only (when it
wasn’t a role allowed to track completion).
2018-01-30 12:19:52 +01:00
AMOS bot baa46ac0e2 Automatically generated installer lang files 2018-01-30 00:06:27 +00:00
Mark Nelson b02295039e MDL-42764 core: added missing string definition
Also changed the string index so it was not
vague. The index 'emailempty' appears as if it
could belong to a validation method for a form.
2018-01-29 19:07:57 +08:00
Luca Bösch 916a72bb51 MDL-37190 blocks: Block name label consistency
AMOS BEGIN
    MOV [blocktitle,blog],[configtitle,block_blog_tags]
   AMOS END
2018-01-29 09:43:30 +01:00
Huong Nguyen 0c2ecefc45 MDL-60077 User tours: pop-up triangle look bad next to the corners 2018-01-29 10:31:31 +07:00
Mark Nelson 029ec1edfe MDL-61260 auth_ldap: require /user/profile/lib.php file 2018-01-29 11:30:05 +08:00
Eloy Lafuente (stronk7) 94eeb7cbdb Merge branch 'wip-MDL-61242-master' of git://github.com/abgreeve/moodle 2018-01-29 01:41:06 +01:00
Andrew Nicols 9e82cab6b6 Merge branch 'MDL-58410_master' of git://github.com/markn86/moodle 2018-01-29 08:15:39 +08:00
Eloy Lafuente (stronk7) b70c74548b Merge branch 'MDL-61218-master' of git://github.com/lameze/moodle 2018-01-29 00:10:25 +01:00
David Monllao 93b2267239 MDL-61281 search_solr: PHP 7.2 compatible counts 2018-01-26 13:11:51 +01:00
Luca Bösch eeb8e895da MDL-61250 questions: Omit leading space in question preview link 2018-01-25 14:24:09 +01:00
Jun Pataleta 558a6a79d6 MDL-60997 core_message: Add replytoname in unit test 2018-01-25 16:47:12 +08:00
Andrew Nicols a4f914b54d weekly release 3.5dev 2018-01-25 15:14:24 +08:00
Andrew Nicols f486223806 NOBUG: Fixed SVG browser compatibility 2018-01-25 15:14:21 +08:00
Andrew Nicols 141878736f Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-01-25 15:14:20 +08:00
Jake Dallimore efd9343924 Merge branch 'MDL-60078-master-fix' of https://github.com/andrewnicols/moodle 2018-01-25 14:47:14 +08:00
Andrew Nicols dd4ac3d2ce MDL-60078 tool_usertours: Adjust accessibility checks for all themes 2018-01-25 12:45:56 +08:00
Eloy Lafuente (stronk7) 35925a2c06 MDL-61269 behat-extension: bump to fix some caps & defaults 2018-01-24 22:20:33 +01:00
Jun Pataleta ab9ee20ec7 MDL-44612 mod_glossary: Test importing of glossary entries
* And check that the importing of entries is reflected in the recent
activity block.
2018-01-24 16:38:54 +08:00
Jun Pataleta a52f3d9d0b MDL-44612 mod_forum: Confirm forum post listing in recent activity block 2018-01-24 16:38:54 +08:00
Damyon Wiese 4c3e2bdde7 MDL-61023 behat: Automate MDLQA-8158
Verify the general section does not appear in the navigation when it is empty.
2018-01-24 11:36:49 +08:00
Damyon Wiese 3a732ec7bb MDL-61058 behat: Automate MDLQA-8146
Verify that the keyholder is displayed on the self enrolment page.
2018-01-24 11:22:50 +08:00
Igor Sazonov 358b10a337 MDL-58410 user: add support for alternative name search
The solution about searching all external names fields (middlename etc) from course enrolment page (enrolled and enrolling pages)
2018-01-24 11:15:45 +08:00
Andrew Nicols 0b048da8c0 MDL-61234 tool_usertours: Rewrite feature to work with all themes 2018-01-24 10:05:42 +08:00
Simey Lameze e63a39e013 MDL-61218 lib: set chart border color to white 2018-01-23 12:01:46 +08:00
Andrew Nicols 6d326e1179 Merge branch 'MDL-61203_m35v3' of git://github.com/sbourget/moodle 2018-01-23 11:30:09 +08:00
Jun Pataleta 3894262a2f MDL-61152 calendar: Remove usage of undefined variable 2018-01-23 10:49:18 +08:00
Andrew Nicols 51d31432c8 MDL-61253 repository: Add referenced files to archives 2018-01-23 10:38:05 +08:00
Eloy Lafuente (stronk7) b878578d90 Merge branch 'MDL-61252-master' of git://github.com/andrewnicols/moodle 2018-01-23 02:13:10 +01:00
Eloy Lafuente (stronk7) dd2e263752 Merge branch 'MDL-60814_master' of git://github.com/markn86/moodle 2018-01-23 01:24:46 +01:00
Andrew Nicols caa9cb7124 MDL-61252 mod_quiz: Fix ambiguous behat check 2018-01-23 08:21:22 +08:00
Shamim Rezaie ce8c0126a9 MDL-51189 Quiz: Edit overrides when quiz is not available to students
The $active variable should simply be used to dim the text, nothing more.
2018-01-23 10:52:19 +11:00
Eloy Lafuente (stronk7) 4a87646654 Merge branch 'MDL-60918-master' of git://github.com/ryanwyllie/moodle 2018-01-22 20:17:20 +01:00
Eloy Lafuente (stronk7) 447cf62409 Merge branch 'MDL-58006-master' of git://github.com/zig-moodle/moodle 2018-01-22 19:57:33 +01:00
Eloy Lafuente (stronk7) 3c2501ac77 Merge branch 'MDL-60812-master' of https://github.com/mwehr/moodle 2018-01-22 16:33:07 +01:00
Eloy Lafuente (stronk7) 863d7ca5aa Merge branch 'MDL-60181-master' of git://github.com/mihailges/moodle 2018-01-22 12:30:44 +01:00
Shamim Rezaie 425817793a MDL-61027 calendar: Fix datetime profile field issue with non-Gregorian 2018-01-22 18:47:06 +11:00
Mihail Geshoski 11342dbcf8 MDL-60181 glossary: Glossary rating is displayed wrongly 2018-01-22 13:51:58 +08:00
Andrew Nicols 6092574ddf Merge branch 'MDL-61240' of git://github.com/stronk7/moodle 2018-01-22 11:36:41 +08:00
Zig Tan 1a9e8542c5 MDL-58006 assign: Reset blindmarking assignments to hidden
Fix to reset blindmarking assigments to hidden as part of Course reset with behat test
2018-01-22 11:35:52 +08:00
Andrew Nicols 0cc0f72ceb MDL-60078 behat: Convert ErrorException to DriverException 2018-01-22 11:29:29 +08:00
Andrew Nicols 60ce5848f6 Merge branch 'MDL-60078-master' of https://github.com/nashtechdev01/moodle 2018-01-22 11:08:19 +08:00
Eloy Lafuente (stronk7) dba5826124 Merge branch 'MDL-50469-master' of git://github.com/junpataleta/moodle 2018-01-22 02:43:08 +01:00
Eloy Lafuente (stronk7) a610100586 Merge branch 'MDL-61077' of git://github.com/timhunt/moodle 2018-01-22 02:26:04 +01:00
Eloy Lafuente (stronk7) df4e047944 Merge branch 'MDL-61234-master' of git://github.com/andrewnicols/moodle 2018-01-22 01:37:44 +01:00
Andrew Nicols a9a67db2c9 Merge branch 'MDL-45367-master' of https://github.com/lucaboesch/moodle 2018-01-22 08:34:32 +08:00
Eloy Lafuente (stronk7) 66915b0ea1 Merge branch 'wip-MDL-61175-master' of https://github.com/kwiliarty/moodle 2018-01-22 01:24:44 +01:00
Eloy Lafuente (stronk7) b0bb30e2e7 Merge branch 'MDL-61224_master' of git://github.com/markn86/moodle 2018-01-22 01:22:22 +01:00
Adrian Greeve d05c2ac7cc MDL-61242 repository_equella: Add source key when sending the source.
A thank you to Nelson Cheng for find this issue and suggesting a patch.
2018-01-20 10:56:18 +08:00
Andrew Nicols 64c9b4046c MDL-61234 tool_usertours: Wrap library calls in pendingjs 2018-01-19 15:06:45 +08:00
AMOS bot 6ba6f13b2c Automatically generated installer lang files 2018-01-19 00:06:48 +00:00
Eloy Lafuente (stronk7) 5405354d88 MDL-61240 dml: php72 compatibility, avoid counting on non-countables
This was not detected earlier because we have been unable to
run sqlsrv + php72 till now (not available).
2018-01-19 00:59:16 +01:00
Luca Bösch 7583efe9f5 MDL-45367 questions: Add SVG icons for question types. 2018-01-18 15:29:35 +01:00
Kevin Wiliarty a0b9bf4998 MDL-61175 mod_assign: roll grade-by reminder on restore 2018-01-18 08:36:34 -05:00
Arnaud Trouvé 30146ed1ad MDL-60997 messages: add property replytoname 2018-01-18 08:41:40 +01:00
Jun Pataleta 4369677af2 MDL-60646 user_portfolio: Fix action icons in Show / hide column
* Refactor the code to make it look cleaner and easier to read.
* Fixed incorrect alt-text for the configure icon.
* Fixed missing alt-text for show/hide icon.
2018-01-18 15:26:21 +08:00
Andrew Nicols f68150ad05 weekly release 3.5dev 2018-01-18 12:47:50 +08:00
Andrew Nicols eb65276e5b Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-01-18 12:47:47 +08:00
Eloy Lafuente (stronk7) b678f3309d Merge branch 'MDL-58711-master' of git://github.com/jleyva/moodle 2018-01-17 10:55:23 +01:00
David Monllao 09896c35f2 Merge branch 'MDL-60963-master' of git://github.com/ryanwyllie/moodle 2018-01-17 10:49:58 +01:00
Eloy Lafuente (stronk7) 2ab36722f2 Merge branch 'MDL-53113-master' of git://github.com/junpataleta/moodle 2018-01-17 10:37:23 +01:00
Juan Leyva ddeabbc53a MDL-58711 mod_assign: Fix draft and submission counting 2018-01-17 09:49:46 +01:00
Mark Nelson 822fe4fc15 MDL-60814 auth_ldap: prevent setting names breaking site upgrades 2018-01-17 14:18:02 +08:00
Ryan Wyllie 3152de6a8d MDL-60963 calendar: use related cache for module instances in export 2018-01-17 03:23:36 +00:00
Jun Pataleta dd9c292700 MDL-53113 libraries: Add cleaned up PHP doc blocks 2018-01-17 10:52:16 +08:00
Eloy Lafuente (stronk7) 87f6dfdedc Merge branch 'MDL-58711-master' of git://github.com/jleyva/moodle 2018-01-17 02:27:22 +01:00
Eloy Lafuente (stronk7) 76f8b36105 MDL-53113 libraries: Also remove core_renderer->notify_xxx() methods
Keeping the methods instead of fully deleting them alternative.
2018-01-17 02:18:16 +01:00
Eloy Lafuente (stronk7) 0e68db9e83 MDL-41312 groups: documment final removal in upgrade.txt 2018-01-17 02:04:16 +01:00
Eloy Lafuente (stronk7) 8bdee69d3e Merge branch 'MDL-41312-master' of git://github.com/ankitagarwal/moodle 2018-01-17 02:02:54 +01:00
AMOS bot 300ace312e Automatically generated installer lang files 2018-01-17 00:06:20 +00:00
Stephen Bourget cfdd8d12dd MDL-61203 badges: Allow profile picture as badge criteria 2018-01-16 10:18:23 -05:00
Jun Pataleta 3f5cae3679 Merge branch 'MDL-61221-master' of git://github.com/andrewnicols/moodle 2018-01-16 23:00:59 +08:00
David Monllao 641e7d41a6 MDL-60967 calendar: Add argument for missing mini param 2018-01-16 13:30:14 +01:00
David Monllao abf089f2a3 Merge branch 'MDL-60967-master' of git://github.com/ryanwyllie/moodle 2018-01-16 12:36:27 +01:00
KietLy 26872a8006 MDL-60078 User tours accessibility: Tab should go back into the pop-up 2018-01-16 17:36:25 +07:00
Mark Nelson e4d9eff640 MDL-61224 core_role: prevent short name from exceeding 100 chars 2018-01-16 18:14:42 +08:00
Andrew Nicols 68c2b72673 MDL-61223 course: Set default course start date 2018-01-16 14:26:19 +08:00
Andrew Nicols 389aad6eef MDL-61221 badges: Ignore site availabilty for behat
Behat sites should not be available publically, and the check against
the backpack API for site availablity can time out in some situations.

We should be testing as though the site _is_ available, as this is the
standard expectation.
2018-01-16 13:21:51 +08:00
Adam Olley e36a2f2aa7 MDL-60918 core_message: update preferences of user behat test 2018-01-16 05:07:13 +00:00
Andrew Nicols 174fbacc9b Merge branch 'MDL-60815-master' of git://github.com/ryanwyllie/moodle 2018-01-16 12:27:43 +08:00
Ryan Wyllie 745783fa13 MDL-60918 message: use current user in message preference update 2018-01-16 03:49:55 +00:00
Ryan Wyllie bb8bb8e41c MDL-60815 theme: fix loading editor styles 2018-01-16 03:39:09 +00:00
Jun Pataleta 56c9d66652 MDL-50469 core: Update lib/upgrade.txt about notify() final deprecation 2018-01-16 11:34:00 +08:00
Ankit Agarwal 943e290059 MDL-50469 libraries: Final deprecation of notify() 2018-01-16 11:28:26 +08:00
Andrew Nicols 5705fd0907 Merge branch 'MDL-60549-master' of https://github.com/davidknu/moodle 2018-01-16 10:08:26 +08:00
Andrew Nicols 0881745a9e Merge branch 'MDL-59567-master' of https://github.com/mackensen/moodle 2018-01-16 09:30:59 +08:00
Eloy Lafuente (stronk7) 5242a76a4b Merge branch 'MDL-61204-master' of git://github.com/andrewnicols/moodle 2018-01-16 02:16:40 +01:00
Eloy Lafuente (stronk7) 3e9282d486 Merge branch 'MDL-60959-master' of git://github.com/ryanwyllie/moodle 2018-01-16 01:14:39 +01:00
AMOS bot f79437ef3b Automatically generated installer lang files 2018-01-16 00:06:27 +00:00
Eloy Lafuente (stronk7) 4fa58ece62 Merge branch 'MDL-61081-master' of git://github.com/sarjona/moodle 2018-01-16 00:27:38 +01:00
Eloy Lafuente (stronk7) 2b2cad6f0a Merge branch 'MDL-37390-master' of git://github.com/sarjona/moodle 2018-01-16 00:25:15 +01:00
Eloy Lafuente (stronk7) d2d919e478 Merge branch 'MDL-61162-master' of git://github.com/junpataleta/moodle 2018-01-15 22:57:12 +01:00
Eloy Lafuente (stronk7) d7ba45290b Merge branch 'MDL-61063-master' of https://github.com/sammarshallou/moodle 2018-01-15 22:02:08 +01:00
Ankit Agarwal 3becfcd226 MDL-53113 libraries: Remove deprecated constants 2018-01-15 20:19:07 +01:00
Eloy Lafuente (stronk7) b3b79085e6 Merge branch 'MDL-51885-master' of git://github.com/ankitagarwal/moodle 2018-01-15 19:09:52 +01:00
Tim Hunt bccad386b0 MDL-61077 question stats: make calculations more robust 2018-01-15 16:07:57 +00:00
David Monllao 88d7a6a6b7 MDL-60960 qtype_essay: Update specific_filepicker_options deprecation message 2018-01-15 15:58:19 +01:00
David Monllao f4a30c5fdf Merge branch 'MDL-41090_rebased' of https://github.com/andrewhancox/moodle 2018-01-15 15:52:29 +01:00
David Balch d2bba97d77 MDL-60548 profile: Clarify some users can always see email addresses. 2018-01-15 12:21:09 +00:00
David Balch 565f3f25f0 MDL-60548 profile: Show profile email when 'maildisplay' allows it.
Adds 'email' to hiddenuserfields, which allows:
 * user to view email on their own profile,
 * users with cap site:viewuseridentity to view email on any profile (admins/teachers)
 * admin to veto display of email to users without site:viewuseridentity (except viewing their own)
 * unprivileged users to view if the profile's maildisplay permits it.

Changes in user/lib.php include removal of is_siteadmin() test, which
is redundant due to checks via has_capability().

Fixes regression from 2.9 (MDL-45774).
2018-01-15 12:21:09 +00:00
Andrew Hancox f3d9872aa3 MDL-41090 questions: Allow embedding files in response comments 2018-01-15 11:19:06 +00:00
Andrew Hancox fd2ce923cf MDL-41090 questions: Move editor and filepicker options into engine 2018-01-15 11:19:01 +00:00
David Monllao 2692af9032 Merge branch 'MDL-60960-master' of git://github.com/ryanwyllie/moodle 2018-01-15 12:10:20 +01:00
Eloy Lafuente (stronk7) c1dd6af98a Merge branch 'MDL-61166-master' of git://github.com/rezaies/moodle 2018-01-15 10:57:38 +01:00
David Monllao e3d292301e Merge branch 'MDL-55382-master' of git://github.com/damyon/moodle 2018-01-15 10:05:05 +01:00
David Monllao 5d89d24bea Merge branch 'MDL-61010-master' of git://github.com/andrewnicols/moodle 2018-01-15 09:53:48 +01:00
Andrew Nicols 110965aecd Merge branch 'MDL-61205_m35v1' of git://github.com/sbourget/moodle 2018-01-15 14:17:01 +08:00
Andrew Nicols a7db60dcf1 Merge branch 'MDL-61156-master' of https://github.com/mwehr/moodle 2018-01-15 13:48:08 +08:00
Shamim Rezaie e4d3ed18ff MDL-61166 Groups: Fixed a typo in PHPDoc 2018-01-14 09:18:12 +11:00
wehr 122c999536 MDL-60812 enrol_manual: Fixes not working default role 2018-01-12 16:13:27 +01:00
David Balch 224796f0fa MDL-60548 profile: Behat tests for email display in profiles. 2018-01-12 11:36:43 +00:00
sam marshall 470d59d31f MDL-61063 Scheduled tasks: Add link to clear fail delay 2018-01-12 11:10:29 +00:00
Farhan Karmali 6363c9ade2 MDL-37390 course: Set startdate and enddate properly for approved course
Once a course is approved the startdate and enddate were not set properly
This patch sets current date as startdate and enddate is startdate +
default duration of the course
2018-01-12 10:02:18 +01:00
Farhan Karmali 19f0685069 MDL-61081 enrol: Start and end date for courses created by external db
Course created by external db enrolment plugin should have start date as current date
and end date is todays date + default course duration
2018-01-12 09:57:22 +01:00
wehr e6a87bd192 MDL-61156 enrol_manual: Fixes not working manual quick enrolment in IE11 2018-01-12 09:14:28 +01:00
Stephen Bourget dccd9540d0 MDL-61205 completion: allow expected completion to support time 2018-01-11 21:30:13 -05:00
Andrew Nicols 4b55982446 MDL-61204 user: Fix random failure in behat
We need to get into the habit of not using usernames like 'student1'
and 'student10' as our matches are non-strict, and the tests become
dependent upon DB sort order.

This change adds a character after the varying value to act as a
delimter for all of these tests.
2018-01-12 09:35:56 +08:00
Eloy Lafuente (stronk7) f5b956679e weekly release 3.5dev 2018-01-12 02:12:35 +01:00
Juan Leyva ff626f7bb1 MDL-58711 mod_assign: Handle groups in get_submission_status 2018-01-11 15:03:08 +01:00
Jake Dallimore 9b49ac26d5 Merge branch 'MDL-61177-master' of git://github.com/andrewnicols/moodle 2018-01-11 09:22:24 +08:00
David Monllao 197672e26c Merge branch 'MDL-60427_dnd_folder_improved' of git://github.com/davosmith/moodle 2018-01-10 12:16:38 +01:00
David Knuplesch cc3c33f8ba MDL-60549 lti: support for moving embedded lti into separate tab 2018-01-10 12:08:44 +01:00
Davo Smith 96eaee3daf MDL-60427 dndupload: fix Firefox handling of 0-byte folders 2018-01-10 09:58:51 +00:00
Cameron Ball 9aa776a848 MDL-61143 core_files: Don't append dot when checking domain names or IP addresses.
Previously we appended a dot at the end of IP addresses and domain names in the
cURL security helper, but it causes issues with Google OAuth so this patch removes it.
2018-01-10 15:22:17 +08:00
Andrew Nicols 6d019541ad Merge branch 'MDL-43648-int-fix-1' of github.com:ryanwyllie/moodle 2018-01-10 10:38:20 +08:00
Ryan Wyllie 9f421a184a MDL-43648 form: fix hours and minutes in date_time_selector 2018-01-10 02:28:19 +00:00
Andrew Nicols 168fc2d9ec Merge branch 'MDL-61061_hideif_group' of git://github.com/davosmith/moodle 2018-01-10 08:46:05 +08:00
Andrew Nicols 57e226b96f MDL-61177 badges: JS pending checks in connection test 2018-01-10 08:12:59 +08:00
Andrew Hancox 18e1450b4b MDL-41090 questions: Support for files in behaviour response 2018-01-09 21:12:58 +00:00
Adrian Greeve f1d1a60e0a MDL-61131 repositories: Added a key to verify incoming urls. 2018-01-09 11:34:37 +01:00
Cameron Ball 4cca0082df MDL-61143 core_files: Update unit tests for curl_security_helper
Previously some of the unit tests were passing "by accident" becuase
we had the security helper letting through domains where the DNS lookup
failed. That behaviour has changed and now such domains are blocked.

Additionally tests for domains with multiple A records and weird Unicode
stuff have been added.

This patch also mocks the DNS resolution in the test, rather than actually
resolving the domain.
2018-01-09 16:54:32 +08:00
Cameron Ball fbe7f1f8ba MDL-61143 core_files: Block hosts that cannot be determined to be an IP address of domain name
Freaky deaky Unicode/octal/hex domains can be resolved by cURL but are technically not valid.

This patch causes anything that Moodle does not consider to be a valid domain or IP to be blocked
by the cURL security helper.
2018-01-09 16:54:32 +08:00
Cameron Ball cae2eb357d MDL-61143 core_files: Check all A records when testing blocked IPs 2018-01-09 16:54:32 +08:00
Juan Leyva 01a79b4e86 MDL-60908 mod_quiz: Return question state only when configured
The question state should be returned following the quiz review options
settings.
2018-01-09 16:54:32 +08:00
David Monllao 51673a3469 Merge branch 'wip-MDL-60742-master' of git://github.com/marinaglancy/moodle 2018-01-09 09:52:44 +01:00
David Monllao 1679485693 Merge branch 'MDL-60079-master' of https://github.com/nashtechdev01/moodle 2018-01-09 08:09:15 +01:00
Andrew Nicols a52fc1f7a8 Merge branch 'wip-MDL-60415-master' of git://github.com/abgreeve/moodle 2018-01-09 14:30:34 +08:00
David Knuplesch a2701db412 MDL-60415 mod_lti: avoid confusing error-message 2018-01-09 14:00:37 +08:00
Ryan Wyllie 60908b2187 MDL-60967 calendar: only load course filter when required 2018-01-09 05:57:38 +00:00
Thinh Pham 48a9fd89e0 MDL-60079 User tours: leave unnecessary aria tags in the page 2018-01-09 11:26:14 +07:00
Andrew Nicols 61f56fd5f9 Merge branch 'MDL-43648_m35v2' of https://github.com/sbourget/moodle 2018-01-09 11:43:33 +08:00
Ryan Wyllie a606f2e2c5 MDL-60967 calendar: preload contexts in course_filter_selector 2018-01-09 03:04:41 +00:00
Jun Pataleta f9b3597e21 Merge branch 'MDL-61068-master' of git://github.com/andrewnicols/moodle 2018-01-09 09:52:47 +08:00
Ryan Wyllie 4e6c9ead6d MDL-60959 calendar: remove duplicate events export in weekday 2018-01-09 01:51:13 +00:00
Ryan Wyllie 6b02488559 MDL-60959 calendar: remove duplicate course export in event exporter 2018-01-09 01:51:13 +00:00
Ryan Wyllie bb4691ec7b MDL-60959 calendar: use related course in calendar_event_exporter 2018-01-09 01:51:12 +00:00
Andrew Nicols 08ac68de3e MDL-61068 mod_forum: Fix neighbour test dates 2018-01-09 09:08:40 +08:00
Eloy Lafuente (stronk7) b9e05ae65d Merge branch 'MDL-60943-master' of https://github.com/sammarshallou/moodle 2018-01-09 00:52:17 +01:00
Eloy Lafuente (stronk7) abe4713565 Merge branch 'MDL-61098-master' of git://github.com/jleyva/moodle 2018-01-08 21:06:13 +01:00
Eloy Lafuente (stronk7) 8d9a55a05b Merge branch 'master_MDL-61050' of https://github.com/danmarsden/moodle 2018-01-08 20:38:29 +01:00
Eloy Lafuente (stronk7) d8ef541bbc Merge branch 'MDL-61068-master' of git://github.com/andrewnicols/moodle 2018-01-08 19:56:24 +01:00
David Monllao 1b9fcbf7a7 Merge branch 'MDL-60427_dnd_folder_improved' of git://github.com/davosmith/moodle 2018-01-08 17:42:30 +01:00
David Monllao cba780d418 Merge branch 'MDL-57892_filter_outline' of git://github.com/davosmith/moodle 2018-01-08 17:19:12 +01:00
David Monllao 22a9fed6b2 Merge branch 'MDL-61169-master' of git://github.com/andrewnicols/moodle 2018-01-08 14:58:31 +01:00
Andrew Nicols 2cf6b060cd MDL-61169 iplookup: Change to github.com IP 2018-01-08 17:15:12 +08:00
Eloy Lafuente (stronk7) 7110a3eed6 Merge branch 'MDL-61046-master-enfix' of git://github.com/mudrd8mz/moodle 2018-01-08 10:05:39 +01:00
Andrew Nicols b3f7f6d096 Merge branch 'MDL-57786-master' of git://github.com/zig-moodle/moodle 2018-01-08 15:16:06 +08:00
Ankit Agarwal 84fe42d8b6 MDL-51885 lang: Remove strings deprecated in 3.1 2018-01-08 12:44:07 +05:30
Andrew Nicols 7d6d0788f2 Merge branch 'MDL-43042-master' of git://github.com/mihailges/moodle 2018-01-08 15:12:51 +08:00
Andrew Nicols 0b4304b6e3 Merge branch 'MDL-53985-master' of git://github.com/damyon/moodle 2018-01-08 12:39:19 +08:00
Jun Pataleta 0552bc77ba MDL-61162 mod_forum: Remove unnecessary forum creation step 2018-01-08 11:00:08 +08:00
Andrew Nicols 098f4337d2 MDL-61068 mod_forum: Round timed posts to nearest 60 seconds
This slightly reduces the effectiveness of the DB query cache, but gives
us correct results every time.
2018-01-05 16:43:02 +08:00
Mihail Geshoski 7b319d20a8 MDL-43042 lesson: Confusing feedback order in multiple answer questions 2018-01-05 15:03:14 +08:00
Dan Marsden 0c64c64b48 MDL-61050 auth_ldap: fix regression caused by MDL-42834 2018-01-05 10:43:20 +13:00
sam marshall d20ec3606b MDL-60943 core_search: Improve exception for preg_replace errors 2018-01-04 17:27:46 +00:00
Helen Foster 700522badd MDL-61046 lang: Merge English strings from the en_fix language pack
Significant string changes:

* pluginname_desc, enrol_category - improved explanation
* pathtopythondesc, core_admin - mentioning Python version
* configdeleteunconfirmed, core_admin - setting applies to more than
  just email-based self-registration
2018-01-04 11:30:54 +01:00
David Monllao 013f0b2266 weekly release 3.5dev 2018-01-04 11:02:34 +01:00
David Monllao 443d34d115 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2018-01-04 11:02:33 +01:00
Mihail Geshoski ec819f5141 MDL-61153 lesson: Inconsistent column sizing in detailed statistics 2018-01-04 15:46:11 +08:00
Marina Glancy 099bca6de6 MDL-60742 calendar: allow customisation of 12/24h time format strings 2018-01-04 15:16:08 +08:00
Jun Pataleta 06634b7550 Merge branch 'MDL-40613-master-ldap' of git://github.com/andrewnicols/moodle 2018-01-04 14:57:32 +08:00
Andrew Nicols 725fcf3178 MDL-40613 auth_ldap: Call update_user_record on create 2018-01-04 14:32:13 +08:00
Jun Pataleta 0138cb7cf1 Merge branch 'MDL-40613_master-fix' of git://github.com/markn86/moodle 2018-01-04 09:57:38 +08:00
AMOS bot b8787d5957 Automatically generated installer lang files 2018-01-04 00:06:51 +00:00
Davo Smith d5cd1496ce MDL-61061 formslib: make sure hideIf rules hide labels within groups 2018-01-03 13:05:58 +00:00
Davo Smith 385280469a MDL-57892 report_outline: add behat tests 2018-01-03 12:52:50 +00:00
Davo Smith eadd195151 MDL-57892 report_outline: add date filter 2018-01-03 12:52:50 +00:00
Davo Smith 4e737cf37f MDL-60427 dndupload: detect attempts to upload folders 2018-01-03 12:36:32 +00:00
Mark Nelson e8a1a5868a MDL-40613 auth_ldap: removed usage of profile_load_custom_fields()
Also reverted profile_load_custom_fields() signature and changed
behaviour of the new function profile_save_custom_fields().
2018-01-03 18:13:01 +08:00
Jun Pataleta 60236650d6 Merge branch 'MDL-60962-master' of git://github.com/ryanwyllie/moodle 2018-01-03 16:53:49 +08:00
Jun Pataleta 80d7aa1813 Merge branch 'MDL-56543-master' of git://github.com/ankitagarwal/moodle 2018-01-03 09:26:12 +08:00
AMOS bot 610ab37f55 Automatically generated installer lang files 2018-01-03 00:06:15 +00:00
Eloy Lafuente (stronk7) ff9a93a8b6 Merge branch 'MDL-23887-master-2' of https://github.com/snake/moodle 2018-01-03 00:24:41 +01:00
David Monllao e3cd0dfc2c Merge branch 'MDL-57727-master' of git://github.com/mihailges/moodle 2018-01-02 12:33:40 +01:00
Jake Dallimore fa2a9cc933 MDL-23887 database: fix use of deprecated system tables for mssql
Catalog views are available which we should use instead.
2018-01-02 17:19:17 +08:00
Jun Pataleta 1588837a9d Merge branch 'MDL-40613_master' of git://github.com/markn86/moodle 2018-01-02 16:50:29 +08:00
David Monllao 6ffb51e74c Merge branch 'MDL-59813-master' of git://github.com/farhan6318/moodle 2018-01-02 09:03:03 +01:00
David Monllao b5e7264543 Merge branch 'MDL-61107' of git://github.com/timhunt/moodle 2018-01-02 08:34:39 +01:00
Zig Tan e5d9af8c56 MDL-57786 mod_assign: Fix word count for online text submissions 2018-01-02 13:10:37 +08:00
Jun Pataleta dc61d1bea0 Merge branch 'MDL-56945-master' of git://github.com/zig-moodle/moodle 2018-01-02 10:09:45 +08:00
Farhan Karmali c0aca8f3c7 MDL-59813 navigation: Changed 'more..' link to point to dashboard
In the navigation menu , the 'more' option was previously taking the user to all course page
This patch fixes that behavior and takes the user to the dashboard
2017-12-29 15:10:56 +05:30
Zig Tan 6976c8e1b5 MDL-56945 assign: Add 'View all submissions' link to PDF feedback/grader 2017-12-29 09:47:40 +08:00
David Monllao 3fa531ea2c weekly release 3.5dev 2017-12-28 12:35:12 +01:00
David Monllao ce37a8cc7e MDL-51089 mod_quiz: Hide first page last node 2017-12-28 10:15:08 +01:00
Ankit Agarwal 50587d71a5 MDL-41312 groups: Remove old bulk events 2017-12-28 11:57:34 +05:30
Ankit Agarwal a3ce9a453c MDL-56543 tasks: Add last run column to task list 2017-12-28 10:04:11 +05:30
David Monllao 1a43d6de99 MDL-50246 question: enable/disable add question button when available 2017-12-27 17:54:59 +01:00
Eloy Lafuente (stronk7) b81e81b162 Merge branch 'MDL-60363-master' of https://github.com/Kathrin84/moodle 2017-12-27 17:54:59 +01:00
Eloy Lafuente (stronk7) bb3e956ed9 Merge branch 'MDL-60966-master' of https://github.com/snake/moodle 2017-12-27 17:54:58 +01:00
Eloy Lafuente (stronk7) 72614d74d8 Merge branch 'MDL-60981-master' of https://github.com/sammarshallou/moodle 2017-12-27 17:54:58 +01:00
David Monllao f108433bcb Merge branch 'MDL-50246-master' of https://github.com/lucaboesch/moodle 2017-12-27 17:54:57 +01:00
David Monllao 8b36f14740 Merge branch 'MDL-51089-master' of https://github.com/lucaboesch/moodle 2017-12-27 17:54:57 +01:00
David Monllao ffd392a17b Merge branch 'MDL-58983-master' of git://github.com/damyon/moodle 2017-12-27 17:54:56 +01:00
David Monllao 4292318562 Merge branch 'MDL-61056-master-feedbackresponsenav' of git://github.com/mudrd8mz/moodle 2017-12-27 17:54:56 +01:00
David Monllao c1d685b500 Merge branch 'MDL-33886-master' of git://github.com/zig-moodle/moodle 2017-12-27 17:54:55 +01:00
David Monllao 1b374b4f2c MDL-60439 block_tags: Removing extra var assign 2017-12-27 17:54:55 +01:00
David Monllao 6e02b56f2a Merge branch 'MDL-60439-master' of https://github.com/lucaboesch/moodle 2017-12-27 17:54:55 +01:00
David Monllao 7b546cdb83 Merge branch 'MDL-60971-master' of git://github.com/mihailges/moodle 2017-12-27 17:54:54 +01:00
David Monllao 3410ff644f Merge branch 'MDL-60942-master' of git://github.com/ryanwyllie/moodle 2017-12-27 17:54:54 +01:00
David Monllao 41d14d5ca4 Merge branch 'MDL-60359-master' of https://github.com/lucaboesch/moodle 2017-12-27 17:54:53 +01:00
Eloy Lafuente (stronk7) 8cd0679099 Merge branch 'MDL-2051-master-2' of git://github.com/junpataleta/moodle 2017-12-26 01:25:14 +01:00
Eloy Lafuente (stronk7) 974e820e53 Merge branch 'wip-MDL-56246-master' of https://github.com/kwiliarty/moodle 2017-12-26 01:04:19 +01:00
Eloy Lafuente (stronk7) 1403c0d57a Merge branch 'MDL-61062_master' of git://github.com/dmonllao/moodle 2017-12-26 00:52:25 +01:00
Eloy Lafuente (stronk7) 708be473d6 Merge branch 'MDL-61055-master-v2' of git://github.com/lameze/moodle 2017-12-26 00:44:08 +01:00
Eloy Lafuente (stronk7) d048e94dfe Merge branch 'MDL-43827-master' of git://github.com/mihailges/moodle 2017-12-26 00:25:28 +01:00
Tim Hunt d2e1aa76e1 MDL-61107 quiz editing: handle invalid Maximum grade input 2017-12-22 13:35:29 +00:00
sam marshall 65da6840f8 MDL-60981 core_search: UI to gradually reindex a single area
Adds a new 'Gradual reindex' link to the search areas page for each
area. When clicked, this takes you to a confirm prompt, and then
adds each context from that search area to the indexing queue.

The search areas page now displays the 'Additional indexing queue'
(if it is non-empty). The table shows the first 10 items in the
queue, and it also indicates the total number in case there are
more. (I don't think people really need to see the entire
contents of it, so I didn't implement paging.)
2017-12-22 13:05:11 +00:00
sam marshall 8736fbc190 MDL-60981 core_search: New indexpriority field in search index queue
Adds indexpriority field to the database table which holds a queue of
indexing requests. This allows for potentially large area reindexes
to have a lower priority, so as not to halt the special indexes that
run after a course restore.
2017-12-22 13:05:10 +00:00
sam marshall 25564a784b MDL-60981 core_search: Add get_contexts_to_reindex API
This new API returns a list of contexts for each search area. This
allows the areas to be reindexed in a sensible order (roughly
speaking, newest first) and also allows this to be controlled by
each area.

An implementation in the forum module means that forums are ordered
by the date of the most recent discussion, so that active forums
will be reindexed early even if they were created a long time ago.
2017-12-22 13:02:37 +00:00
Kathrin Osswald e20b490da3 MDL-60363 conditional activities: Dim the icon also in student's view.
The class dimmed_text would only dim the activity's title and not the icon.
The teacher has both, icon and text, dimmed. So I added the class dimmed
to the class dimmed_text, what dims both elements for the students.
2017-12-22 13:14:22 +01:00
Kevin Wiliarty 8284ffede3 MDL-56246 gradebook: sitewide setting for grade export with feedback 2017-12-22 06:51:11 -05:00
Luca Bösch 4bfcdfed4e MDL-50246 quiz: Add selected questions to quiz btn disabled 0 selected 2017-12-22 09:25:12 +01:00
Luca Bösch 59d3deb9c0 MDL-60439 blocks: Tags block title multilang 2017-12-22 09:24:26 +01:00
Luca Bösch 11f2cec1ac MDL-51089 quiz: "Add" menu in edit quiz more keyboard accessible 2017-12-22 09:23:07 +01:00
Luca Bösch 1d8d3a0186 MDL-60359 theme_boost: have correct mc question check mark not overlap 2017-12-22 09:20:48 +01:00
Ryan Wyllie 0377e78e36 MDL-60966 external: contexts can be passed to external format funcs 2017-12-22 13:10:39 +08:00
Zig Tan 85ba9528c9 MDL-33886 backup: Add backup filename length < 255 char validation 2017-12-22 13:03:08 +08:00
Jun Pataleta 9993c1d02c weekly release 3.5dev 2017-12-22 14:41:56 +13:00
Jun Pataleta 847f10653d Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2017-12-22 14:41:55 +13:00
Eloy Lafuente (stronk7) 3e38589f77 Merge branch 'MDL-32113-master-xmldbnumeric' of https://github.com/mudrd8mz/moodle 2017-12-21 22:43:26 +01:00
David Mudrák 7cdb4266e0 MDL-32113 xmldb: Fix and extend unit tests for XMLDB_TYPE_NUMBER
These tests describe the new behaviour of the XMLDB_TYPE_NUMBER fields.
2017-12-21 19:48:04 +01:00
David Mudrák 521252d642 MDL-32113 xmldb: Support numeric fields with precision up to 38 digits
The patch increases the maximum supported precision (total number of
digits) for numeric (decimal) fields to 38 digits (current limit on
Oracle and MSSQL).

Additionally, we add our own limit for the whole number part of numeric
fields so they are no longer than integer fields (20 digits). This is to
make it easier to eventually convert from one field type to another.
Note that PHP floats commonly support precision of roughly 15 digits
anyway.
2017-12-21 19:48:03 +01:00
David Mudrák 457eaef9ec MDL-32113 xmldb: Remove hard-coded exceptions for long number fields
We are going to unify the maximum supported precision of all numeric
fields to 38 digits (which are the current Oracle and MSSQL limits). Get
rid of hard-coded exceptions for longer fields.
2017-12-21 15:37:08 +01:00
Juan Leyva b857590479 MDL-61098 repository: Retrieve correct context for repo instance
The repository instance was being retrieved without specifying a valid
context that is required in further API checks.
2017-12-21 11:33:11 +01:00
Mihail Geshoski f44f9db418 MDL-43827 filepicker: Multiple actions not accessible using keyboard 2017-12-21 14:06:25 +08:00
David Monllao ba211d5678 MDL-61062 analytics: Fix unit test wrong statement 2017-12-20 07:29:01 +01:00
Jun Pataleta 3cdb015828 Merge branch 'MDL-50666-master-fix' of git://github.com/junpataleta/moodle 2017-12-20 15:57:17 +13:00
Jun Pataleta 8403325c9e MDL-50666 core: Add sortorder to fields to be queried 2017-12-20 15:43:19 +13:00
Jun Pataleta 10c607a9bc MDL-50666 core: Add allowview key in install.xml 2017-12-20 14:46:42 +13:00
Jun Pataleta b65198b81b Merge branch 'MDL-50666-master-fix' of git://github.com/junpataleta/moodle 2017-12-20 13:42:58 +13:00
Jun Pataleta ccb8edbff5 MDL-50666 behat: Make feature names unique
* We need to have unique feature names for our Behat tests.
* I also removed the custom Behat tag @role_visibility as we only allow
Behat tags with the component name in Frankenstyle format.
2017-12-20 13:37:28 +13:00
Jun Pataleta a8dffa2d03 Merge branch 'MDL-50666-master' of https://github.com/junpataleta/moodle 2017-12-20 12:49:28 +13:00
Jun Pataleta eaf01ad4aa MDL-50666 group: Make test run without @javascript 2017-12-20 10:16:44 +13:00
Davo Smith c62f0a396b MDL-61061 formslib: add data-groupname to groups to fix hideIf rules 2017-12-19 10:47:54 +00:00
Eloy Lafuente (stronk7) a4e7e6f345 Merge branch 'MDL-60567-master' of git://github.com/damyon/moodle 2017-12-19 11:30:08 +01:00
Damyon Wiese baa8c89a56 MDL-32113 qtype_numerical: Fix db upgrade step
The upgrade step was creating a column with no default, which is different to the structure
for a new install. This was picked up by the magical cibot.
2017-12-19 16:54:25 +08:00
Simey Lameze 39cda40590 MDL-61055 calendar: guest user cannot create events 2017-12-19 16:30:08 +08:00
Andrew Nicols 600bd182fc MDL-61010 mod_forum: Add unread link to blog view 2017-12-19 15:51:58 +08:00
Damyon Wiese 6e1bfdda19 Merge branch 'MDL-32113-master' of https://github.com/lucaboesch/moodle 2017-12-19 15:12:11 +08:00
Luca Bösch ff4d8e802c MDL-32113 qtype numerical: Cope with oracle & mssql DB float 38 limit. 2017-12-19 08:07:22 +01:00
David Monllao df060516ed Merge branch 'MDL-60938-master-2' of git://github.com/junpataleta/moodle 2017-12-19 07:53:15 +01:00
Mark Nelson 55595bcfcb MDL-40613 auth: added note in upgrade.txt 2017-12-19 14:13:35 +08:00
Mark Nelson 4afad1faeb MDL-40613 auth: moved lang string to common auth file
Also fixed call to get_string() and defined var 'errorlogtag'
in base class.

AMOS BEGIN
 MOV [auth_dbusernotexist,auth_db],[auth_usernotexist,auth]
AMOS END
2017-12-19 14:13:35 +08:00
Mark Nelson 4e133e775c MDL-40613 auth: avoid undefined property 'suspended_attribute'
Re-introduce MDL-53580.
2017-12-19 14:13:34 +08:00
Mark Nelson 220ca688c1 MDL-40613 auth_ldap: include necessary file for saving profile fields 2017-12-19 14:13:34 +08:00
Albert Gasset 2c977ceb29 MDL-40613 auth_ldap: sync custom profile fields 2017-12-19 14:13:34 +08:00
David Monllao d41203c55f Merge branch 'MDL-61045' of git://github.com/timhunt/moodle 2017-12-19 06:43:17 +01:00
David Monllao dcae64d3a3 Merge branch 'MDL-61016_hideif_disabledif' of git://github.com/davosmith/moodle 2017-12-19 06:16:18 +01:00
Simey Lameze 7a1a9ec635 MDL-57431 mod_quiz: remove unnecessary class from selector 2017-12-19 12:47:43 +08:00
Andrew Nicols 3d444c4e6d MDL-19667 report_outline: Clone permissions from view capability 2017-12-19 11:51:36 +08:00
Andrew Nicols b09b1a0a0b Merge branch 'MDL-19667-master-viewuserreport' of https://github.com/dmitriim/moodle 2017-12-19 11:49:33 +08:00
Damyon Wiese 5fe6205813 Merge branch 'MDL-60767-master-3' of https://github.com/snake/moodle 2017-12-19 11:12:47 +08:00
Damyon Wiese b260dec8b7 Merge branch 'MDL-59999-master' of git://github.com/mihailges/moodle 2017-12-19 10:49:36 +08:00
Andrew Hancox 64cd459648 MDL-50666 core: Rename allow_ACTION to core_role_set_ACTION_allowed 2017-12-19 13:53:23 +13:00
Andrew Hancox a63cd3e2ca MDL-50666 core: Add function get_viewable_roles to set role visibility 2017-12-19 13:53:23 +13:00
Jun Pataleta 3e882c418b Merge branch 'MDL-59709_master' of https://github.com/marcusfabriczy/moodle 2017-12-19 13:21:35 +13:00
Eloy Lafuente (stronk7) e20a041100 Merge branch 'MDL-59200-master' of git://github.com/damyon/moodle 2017-12-19 01:08:15 +01:00
Eloy Lafuente (stronk7) cb5fb8aea5 Merge branch 'MDL-58888-master' of git://github.com/junpataleta/moodle 2017-12-19 01:04:54 +01:00
Eloy Lafuente (stronk7) dc3f4ac929 Merge branch 'MDL-60750-master' of git://github.com/lameze/moodle 2017-12-19 00:56:14 +01:00
Eloy Lafuente (stronk7) 2b7fda50d9 Merge branch 'wip-MDL-60594-master' of git://github.com/marinaglancy/moodle 2017-12-19 00:36:28 +01:00
Eloy Lafuente (stronk7) a1036e90f8 Merge branch 'MDL-60036-fix-string-online_user_block' of https://github.com/DSI-Universite-Rennes2/moodle 2017-12-19 00:26:31 +01:00
Jun Pataleta b3a36eb80d Merge branch 'm35_MDL-60793_Mod_Chat_Reserved_Words_In_MySQL8p0p3_And_Above' of https://github.com/scara/moodle 2017-12-19 12:23:18 +13:00
Eloy Lafuente (stronk7) fc0c84c04b MDL-43466 mod_assign: fix corresponding behat tests 2017-12-19 00:11:54 +01:00
Eloy Lafuente (stronk7) 22c6affdef Merge branch 'MDL-43466_master' of git://github.com/markn86/moodle 2017-12-19 00:11:52 +01:00
David Mudrák c581517dd7 MDL-61056 feedback: Fix the response navigation links
Floats are evil and unreliable. Even with the clearfix class added to
the response_navigation wrapper, the Next link would remain unaligned.
We need a proper three columns layout here.

It did not feel necessary to introduce a special template here so I'm
making use of the core one.
2017-12-18 21:56:44 +01:00
David Monllao 73aa231f83 Merge branch 'MDL-60653-master' of git://github.com/rezaies/moodle 2017-12-18 17:59:32 +01:00
David Monllao 4ea34b6d65 Merge branch 'MDL-61042-master' of git://github.com/junpataleta/moodle 2017-12-18 17:26:48 +01:00
David Monllao 7bce505885 Merge branch 'MDL-61040-master' of git://github.com/junpataleta/moodle 2017-12-18 17:24:52 +01:00
Eloy Lafuente (stronk7) 6663f615ed Merge branch 'wip-MDL-60161-master-test' of git://github.com/abgreeve/moodle 2017-12-18 16:09:51 +01:00
Matteo Scaramuccia 307dce6cf3 MDL-60793 mod_chat: Renamed 'system' into 'issystem'
'system' is now a reserved word in MySQL 8.0.3+.
2017-12-18 15:23:11 +01:00
David Monllao f71a4993c7 Merge branch 'MDL-31521-master' of https://github.com/lucaboesch/moodle 2017-12-18 13:14:22 +01:00
Eloy Lafuente (stronk7) 10d22cceb5 Merge branch 'MDL-56932-master' of git://github.com/lameze/moodle 2017-12-18 11:40:17 +01:00
David Monllao 3bcf2d2895 Merge branch 'MDL-60858-master' of git://github.com/ryanwyllie/moodle 2017-12-18 11:34:47 +01:00
David Monllao f41e1773e9 Merge branch 'MDL-61022-master' of git://github.com/damyon/moodle 2017-12-18 10:21:26 +01:00
David Monllao ee35376e28 Merge branch 'wip-MDL-52100-master' of git://github.com/abgreeve/moodle 2017-12-18 10:07:46 +01:00
Mihail Geshoski 010c17d346 MDL-60971 blocks: Remote rss feed block should display publish date 2017-12-18 16:20:37 +08:00
Andrew Nicols b91696eeac Merge branch 'MDL-42676-master' of git://github.com/zig-moodle/moodle 2017-12-18 15:08:37 +08:00
Andrew Nicols 6cb535f081 Merge branch 'MDL-60061-master' of git://github.com/lameze/moodle 2017-12-18 14:03:47 +08:00
Adrian Greeve c86189ae02 MDL-52100 filelib: Update to unit tests for maxbytes. 2017-12-18 13:12:22 +08:00
Adrian Greeve 48a9856da8 MDL-52100 filelib: Files that are oversized are checked with user.
Files that are oversized could have been uploaded by a user who
can ignore the file size limits. These files should not be deleted
in these situations.
2017-12-18 13:12:22 +08:00
Damyon Wiese dcb623be71 Merge branch 'MDL-34389-subcategories-for-category-changer' of https://github.com/lucaboesch/moodle 2017-12-18 12:56:58 +08:00
Damyon Wiese 2d08e6565a Merge branch 'MDL-57431-master' of git://github.com/lameze/moodle 2017-12-18 12:51:33 +08:00
Damyon Wiese e95db3416c Merge branch 'MDL-54967-master' of git://github.com/zig-moodle/moodle 2017-12-18 12:43:50 +08:00
Damyon Wiese 8c2a7f9c38 Merge branch 'wip-MDL-49995-master' of git://github.com/marinaglancy/moodle 2017-12-18 11:35:29 +08:00
Andrew Nicols 560ae357a0 Merge branch 'MDL-57564-master-courseorder' of git://github.com/mudrd8mz/moodle 2017-12-18 11:04:20 +08:00
Jake Dallimore cf26b6f824 MDL-60767 admin: fix usage of admin_write_settings
Make sure we always checks for failed validation, before redirecting.
A positive return value does not signal that all settings were able
to be written, only that at least one was - errors still need to be
checked!
2017-12-18 09:19:55 +08:00
Mihail Geshoski a86b75608a MDL-59999 lesson: Boost grade essays page not indicating grade status
AMOS BEGIN
    CPY [graded,assign],[graded,lesson]
    CPY [notgraded,assign],[notgraded,lesson]
AMOS END
2017-12-18 09:14:11 +08:00
AMOS bot 71ef4532de Automatically generated installer lang files 2017-12-18 00:06:09 +00:00
Tim Hunt 06b4ab81a8 MDL-61045 quiz settings: add back missing disabledIf
This got broken in Moodle 2.1 by MDL-20636.
2017-12-15 13:11:57 +00:00
Julien Boulen 6c519fe4d7 MDL-60036 block_online_users: complete string about online users
- add 3 varations of "x online users" string
- change string format from "x minutes: x online users" to "x online users (x minutes)"
- factorize some duplicated code
2017-12-15 09:36:04 +01:00
Damyon Wiese b6fdcd6071 MDL-55382 assign: Sort editpdf quick list 2017-12-15 14:57:13 +08:00
Jun Pataleta 409da21320 MDL-61042 mod_lesson: Initialise pageid variable 2017-12-15 17:36:16 +13:00
Damyon Wiese 3c016111bd MDL-53985 assign: Do not remove annotations
When an assignment submission is reverted to a draft, the timemodified on
the submission should not be modified. Changing the timemodified causes the
editpdf code to assume the pdf is stale, and forces all annotations to be removed.
2017-12-15 11:50:43 +08:00
Jun Pataleta d766bbc5b9 MDL-58888 mod_choice: Sort choice_get_my_response() results by optionid 2017-12-15 15:55:48 +13:00
Jun Pataleta 3af40cc62e MDL-58888 mod_choice: Verify sorting when testing multiple selections
* Improve test_choice_get_my_response() to verify the sorting of the
  responses returned by choice_get_my_response().
* Fix correct usage of choice_get_my_response().
2017-12-15 15:53:11 +13:00
Zig Tan e0d0f411cf MDL-54967 backup: Fix IMS CC import URL decoding for XML format
HTML encoding special characters to avoid XML compatibility issues during
Course backup restoration and avoid double encoding.
2017-12-15 09:19:31 +08:00
Stephen Bourget 57422d7158 MDL-43648 course: Allow start /end dates to have times 2017-12-14 19:48:31 -05:00
Jun Pataleta 07a46481fe MDL-61040 mod_choice: Save my choice button needs some space 2017-12-15 13:06:14 +13:00
Jun Pataleta af6c39045e MDL-60938 mod_choice: Fix rendering of users for choice results 2017-12-15 12:52:16 +13:00
Matteo Scaramuccia e8be9e7646 MDL-60793 core_ddl: Added the new MySQL 8 reserved words 2017-12-14 22:46:48 +01:00
Luca Bösch e00e36fa4f MDL-31521 questions: Allow more than one unit with multiplier equal to 1 2017-12-14 22:34:19 +01:00
Luca Bösch f987df174f MDL-34389 course: switch to subcategory w/ course:changecategory perms 2017-12-14 22:32:23 +01:00
Eloy Lafuente (stronk7) 95b7be7f05 weekly release 3.5dev 2017-12-14 14:47:29 +01:00
Eloy Lafuente (stronk7) 10e52ed009 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2017-12-14 14:47:27 +01:00
Dmitrii Metelkin 124f314d22 MDL-19667 report: Add a new capability to view user outline report 2017-12-14 16:16:04 +11:00
AMOS bot ebb250fefb Automatically generated installer lang files 2017-12-14 00:06:01 +00:00
Mark Nelson 464ddd07d5 MDL-43466 mod_assign: improve submission help text
Thanks go to Rajneel Totaram for the report.
2017-12-13 15:38:45 +08:00
Marina Glancy 10c71d8a2f MDL-31436 registration: do not send false in update request 2017-12-13 13:51:25 +08:00
Damyon Wiese ff3e43eeb0 MDL-61022 recyclebin: Verify groups are restored 2017-12-13 13:34:07 +08:00
Ryan Wyllie e236dc1446 MDL-60858 feedback: update behat tests for lang string change 2017-12-13 05:07:19 +00:00
Ryan Wyllie 85ce9b535b MDL-60858 feedback: remove ellipsis from form lang strings
Remove the trailing ellipsis from the complete_the_form and
continue_the_form lang strings.
2017-12-13 03:37:00 +00:00
Mitsuhiro Yoshida 97627d2783 MDL-60858 feedback: add button style for "Answer the questions" link. 2017-12-13 03:36:04 +00:00
Damyon Wiese 23611c3757 Merge branch 'MDL-60964-master' of git://github.com/ryanwyllie/moodle 2017-12-13 11:30:46 +08:00
Ryan Wyllie 08a7915551 MDL-60964 calendar: lazy load context for calendar_event
Stop loading the context in the constructor if it hasn't been provided.
There is no need to load it by default. We should lazily load it when it
is required.
2017-12-13 03:20:00 +00:00
Adrian Greeve 01957f1a69 MDL-60161 filelib: Unit test for duplicate curl headers. 2017-12-13 11:07:58 +08:00
Carson Tam 7d4a3d1d07 MDL-60161 class curl in filelib: Cleaned up doc block. 2017-12-13 11:07:58 +08:00
Carson Tam a2b66c7833 MDL-60161 class curl in filelib: Avoid duplicate params in http header 2017-12-13 11:07:58 +08:00
Simey Lameze 3bf572411a MDL-56932 theme_boost: fix quiz max mark input height 2017-12-13 10:21:17 +08:00
Jun Pataleta 3cd76cbecc MDL-2051 mod_choice: Show info how choice results will be published 2017-12-13 14:36:03 +13:00
Davo Smith 8fc3d41139 MDL-61016 form: fix handling disabledIf + hideIf with same dependency 2017-12-12 14:53:33 +00:00
Simey Lameze cadeb8d21c MDL-60061 mod_scorm: add unit tests for drag/drop 2017-12-12 15:15:09 +08:00
Simey Lameze f808e0432a MDL-60061 mod_scorm: add support for drag/drop events
AMOS BEGIN
	CPY [openafterclose,mod_choice],[openafterclose,mod_scorm]
AMOS END
2017-12-12 15:15:09 +08:00
Jun Pataleta 4ea790da9b Merge branch 'MDL-60759_master' of git://github.com/dmonllao/moodle 2017-12-12 20:14:03 +13:00
Jun Pataleta 29c4106e2f Merge branch 'MDL-58200-master' of git://github.com/damyon/moodle 2017-12-12 19:13:32 +13:00
Jun Pataleta 24131d08c0 Merge branch 'MDL-59970-master' of git://github.com/damyon/moodle 2017-12-12 18:52:49 +13:00
Andrew Nicols 6d326b17d8 Merge branch 'MDL-59866' of https://github.com/marcusboon/moodle 2017-12-12 13:46:07 +08:00
Andrew Nicols 2f920d9be8 Merge branch 'wip-MDL-56864-master' of git://github.com/marinaglancy/moodle 2017-12-12 13:36:32 +08:00
Damyon Wiese 8cdfa8692b Merge branch 'MDL-59438-master' of git://github.com/rezaies/moodle 2017-12-12 13:05:22 +08:00
Damyon Wiese a34a305d53 Merge branch 'MDL-44660-master' of https://github.com/lucaboesch/moodle 2017-12-12 12:49:46 +08:00
Marcus Boon f8e2383bdd MDL-59866 session: Add retry for redis sessions
There is an edge case whereby redis will fail
to accept connections on the first try but
retrying the connection seems to make it work

Included in this commit:
* Retry functionality in the session init
2017-12-12 14:42:04 +10:00
Damyon Wiese a576da555e Merge branch 'MDL-60861-master' of git://github.com/ankitagarwal/moodle 2017-12-12 12:38:11 +08:00
Tyler Bannister e53a38c666 MDL-60653 Navigation: Fixed loose string comparison.
The previous comparison would sometimes evaluate to true when the
navigation key was not a string.
2017-12-12 12:32:27 +08:00
Damyon Wiese 233c91e7d0 Merge branch 'master_MDL-60979' of https://github.com/danmarsden/moodle 2017-12-12 12:27:12 +08:00
Damyon Wiese 59be445c15 Merge branch 'MDL-58058-master' of git://github.com/lameze/moodle 2017-12-12 11:59:50 +08:00
Damyon Wiese 302104af4b Merge branch 'MDL-60920-master' of https://github.com/lucaboesch/moodle 2017-12-12 11:39:20 +08:00
Damyon Wiese 80b6f3b059 Merge branch 'MDL-60945' of https://github.com/NeillM/moodle 2017-12-12 11:31:16 +08:00
Jun Pataleta 9244faa3a4 Merge branch 'MDL-59766-master' of git://github.com/damyon/moodle 2017-12-12 16:26:34 +13:00
Damyon Wiese 6b58bb56cb Merge branch 'MDL-60965-master' of git://github.com/andrewnicols/moodle 2017-12-12 11:15:03 +08:00
Dan Marsden d55d207044 MDL-60979 cohort: allow description to be used in mustache templates. 2017-12-12 16:10:54 +13:00
Damyon Wiese f0d9af6036 Merge branch 'MDL-60969_master' of git://github.com/markn86/moodle 2017-12-12 11:08:46 +08:00
Andrew Nicols abb61e0b02 Merge branch 'MDL-60983' of git://github.com/timhunt/moodle 2017-12-12 10:56:37 +08:00
Damyon Wiese 57fe6616a8 Merge branch 'MDL-52538-master' of git://github.com/mihailges/moodle 2017-12-12 10:40:15 +08:00
Damyon Wiese 39377f8083 Merge branch 'MDL-44667-master' of https://github.com/snake/moodle 2017-12-12 10:26:08 +08:00
Damyon Wiese 740a81eeb2 Merge branch 'MDL-60968-master' of git://github.com/lameze/moodle 2017-12-12 10:19:00 +08:00
Damyon Wiese 8cae085071 Merge branch 'MDL-60976-master' of https://github.com/matt-catalyst/moodle 2017-12-12 09:56:20 +08:00
Mathew May aa6b85d2b7 MDL-57431 mod_quiz: Quiz editing help icon fix 2017-12-12 09:56:05 +08:00
Mihail Geshoski b68b5f55ca MDL-57727 reports: Activity completion report sorting problem 2017-12-12 09:39:17 +08:00
Brendan Heywood b588373656 MDL-60968 auth: Allow more flexibility with mapping attributes 2017-12-12 09:37:35 +08:00
Damyon Wiese 4786443998 Merge branch 'MDL-60041' of https://github.com/NeillM/moodle 2017-12-12 09:13:43 +08:00
Zig Tan 6901981962 MDL-42676 mod_assign: Display message fix when using grade override
Logic fix in mod_assign locallib.php to correctly set the submissionlockedstatus,
and added associated unit test in test_grade_submission_override()
2017-12-12 09:01:35 +08:00
Damyon Wiese 34adfcb4ee Merge branch 'MDL-54021-master' of git://github.com/mihailges/moodle 2017-12-12 08:55:57 +08:00
Mihail Geshoski 2034f57fe1 MDL-52538 lesson: Grade info displayed while ongoing score disabled 2017-12-12 08:54:51 +08:00
David Monllao 895e005989 MDL-60759 search_solr: Solr 7+ compatibility 2017-12-11 12:47:55 +01:00
Simey Lameze 97f4556a94 MDL-60750 mod_quiz: only apply form css rules on clean theme 2017-12-11 16:56:06 +08:00
Damyon Wiese 807ba44cc6 Merge branch 'MDL-40790-master' of git://github.com/mihailges/moodle
Conflicts:
	theme/boost/scss/moodle/modules.scss
2017-12-11 16:55:27 +08:00
Damyon Wiese 42cec80673 Merge branch 'MDL-56197-master' of git://github.com/mihailges/moodle 2017-12-11 16:47:19 +08:00
Neill Magill 3acb294828 MDL-60945 Web services: Too many progress records retrieved
The core_completion_get_activities_completion_status was getting the
progress for all users on the course called, and then discarding all
the records but one.

This change ensures that only progress for the user we are interested in
is retrieved from the database.

This has a side benefit of removing a full table scan from the query
finding the users inside the get_progress_all() method.
2017-12-11 08:41:16 +00:00
Neill Magill 61fad215f1 MDL-60041 dml: MOODLELIB sql file must have Unix line endings
If the file does not have Unix line endings then the regular expression
in oci_native_moodle_database::attempt_oci_package_install() does
not split it correctly.

This leads to an invalid package being created in Oracle.

The .gitattribute file changes for oci_native_moodle_package.sql
force it to have Unix style line endings when the branch is checked
out and the file does not already exist.

The file has been modified so that the Unix style line endings are
applied even if the file already exists, for example when pulling in
this change to an existing branch.
2017-12-11 08:40:58 +00:00
Mihail Geshoski 83b9a7c88c MDL-56197 lesson: Multichoice answers not on same line as radio button 2017-12-11 15:49:24 +08:00
Andrew Nicols 10cc00b4af Merge branch 'MDL-58272-master-2' of https://github.com/snake/moodle 2017-12-11 14:58:14 +08:00
Damyon Wiese 67c0e18ca2 Merge branch 'MDL-60057-master' of git://github.com/lameze/moodle 2017-12-11 14:54:46 +08:00
Simey Lameze 5c1ea9aea5 MDL-60057 mod_lesson: add unit tests for callbacks 2017-12-11 14:45:04 +08:00
Simey Lameze f077e0af7e MDL-60057 mod_lesson: add calendar drag and drop callbacks
AMOS BEGIN
        CPY [openafterclose,mod_choice],[openafterclose,mod_lesson]
	CPY [closebeforeopen,mod_choice],[closebeforeopen,mod_database]
	CPY [openafterclose,mod_choice],[openafterclose,mod_database]
AMOS END
2017-12-11 14:29:16 +08:00
Marina Glancy 8326cc5e3e MDL-60594 xmlrpc: wrapper for buggy xmlrpc_decode 2017-12-11 14:27:06 +08:00
Damyon Wiese 5258525f0a Merge branch 'MDL-60060-master' of git://github.com/lameze/moodle 2017-12-11 14:08:08 +08:00
Simey Lameze 61ac58a887 MDL-60060 mod_data: add unit tests for callbacks 2017-12-11 14:05:00 +08:00
Simey Lameze 5e401a2a51 MDL-60060 mod_data: add calendar drag and drop callbacks 2017-12-11 14:05:00 +08:00
Ankit Agarwal 8d6b7f0c6c MDL-60861 analytics: Remove enable menu, if no timesplitting method 2017-12-11 10:47:02 +05:30
Ankit Agarwal fabe98ac92 MDL-60861 analytics: Enabling a model requires timesplitting 2017-12-11 10:47:01 +05:30
Damyon Wiese fe955c5645 Merge branch 'wip-MDL-45500-master' of git://github.com/marinaglancy/moodle 2017-12-11 12:56:18 +08:00
Shamim Rezaie 9d27b68ce8 MDL-59438 calendar: Added a foreign key and an index
Added foreign key constraint to the event.subscriptionid column.
Also added index to the event.uuid column.
2017-12-11 12:54:49 +08:00
Damyon Wiese c6a507e9e7 Merge branch 'MDL-60948-master' of git://github.com/andrewnicols/moodle 2017-12-11 12:52:23 +08:00
Andrew Nicols b9819842d9 MDL-60948 tool_httpsreplace: Correct use of test URLs 2017-12-11 12:05:57 +08:00
Damyon Wiese 917923c860 Merge branch 'MDL-60043' of git://github.com/timhunt/moodle 2017-12-11 11:49:40 +08:00
Damyon Wiese 5ec2ce20f5 Merge branch 'MDL-54106-master' of https://github.com/lucaboesch/moodle 2017-12-11 11:37:48 +08:00
Damyon Wiese e82c025e60 Merge branch 'wip-MDL-31436-master' of git://github.com/marinaglancy/moodle 2017-12-11 11:27:28 +08:00
Marcus Fabriczy e7ec2f901b MDL-59709 mod_assign: Export to portfolio button not working
Changed the button to a text link
2017-12-10 13:47:47 +10:30
Luca Bösch 970dc511e2 MDL-44660 grade: Typos @package core_grade instead of core_grades 2017-12-08 14:21:34 +01:00
Luca Bösch 41d335f31a MDL-60920 quiz: removed legacy "edit questions" button 2017-12-08 14:13:05 +01:00
Luca Bösch 7f8773ffb8 MDL-54106 task: Deleting unconfirmed users after $CFG->deleteunconfirmed 2017-12-08 14:12:57 +01:00
Tomek Muras aceb84ad76 MDL-60043 accesslib: improve query performance by removing ORDER BY
then add back the minimal necessary sorting in PHP. That part was
added by Tim Hunt.
2017-12-08 12:08:44 +00:00
Simey Lameze f9bb74c037 MDL-58058 competency: replace other sortorder usages 2017-12-08 15:58:52 +08:00
Frederic Massart f250cdbb34 MDL-58058 competency: Allow unspecified sortorder for new competencies 2017-12-08 15:58:52 +08:00
Mihail Geshoski 473391b667 MDL-40790 lesson: Lesson content button runs off the edge of the page 2017-12-08 09:55:36 +08:00
Mihail Geshoski d381732329 MDL-54021 blocks: Course completion block lang problem 2017-12-08 09:24:03 +08:00
Jake Dallimore 46878ed87f MDL-58272 core_files: get converters from file extension not mimetype 2017-12-08 09:07:29 +08:00
AMOS bot f1ae118df3 Automatically generated installer lang files 2017-12-08 00:09:38 +00:00
Matt Clarkson 1c06098b6b MDL-60976 dml: Optimise replace_all_text()
Avoid updating fields that do not match the search string.
2017-12-08 12:35:56 +13:00
Jun Pataleta 109aa07648 weekly release 3.5dev 2017-12-08 09:09:53 +13:00
Tim Hunt 91c8d8b130 MDL-60983 get_user_capability_course: fix buggy edge cases
There were basically two problems, which are demostrated by
the new test users u7 and u8 in the unit test.

1. There was a problem if a role was overridden in a context above the
one where it was assigned. E.g. User has teacher role in a course, and
there is a role override in the course-category context. That was being
ignored.

2. Problems with the handling of PROHIBITs. It should be the case that
if there is a PROHIBIT in force, then it cannot be overridden by another
role, or by a role override. However, this was not working in all cases.

Also, I had to add comments to the unit test so that I could understand
it. Hopefully these will be hepful to other developers too.
2017-12-07 18:28:18 +00:00
Andrew Nicols f017a30ff3 Merge branch 'MDL-60880-master-fix1' of http://github.com/damyon/moodle 2017-12-07 16:18:28 +08:00
Damyon Wiese 6f7daa5e48 MDL-60880 core_search: Behat fix for clean theme
The navigation block is visible in clean so "I should not see courses" finds the link in the navigation block
2017-12-07 15:54:03 +08:00
Jun Pataleta 4ffbf22046 Merge branch 'MDL-60951-master' of git://github.com/damyon/moodle 2017-12-07 17:33:41 +13:00
David Mudrák 9cefe2f2b2 MDL-57564 enrol: Fix typos and copy&paste mistake in the exception msg 2017-12-06 23:15:17 +01:00
David Mudrák 04985346a2 MDL-57564 enrol: Make use of the new default sort parameter
Now when enrol_get_my_courses(), enrol_get_users_courses() and
enrol_get_all_users_courses() methods automatically reflect the
navsortmycoursessort setting by default, we do not need to manually
compose the sorting any more.
2017-12-06 23:15:17 +01:00
David Mudrák c260117d15 MDL-57564 enrol: Add unit tests for the new sorting behaviour 2017-12-06 23:15:17 +01:00
Damyon Wiese 97812f14c1 Merge branch 'MDL-60880-master' of https://github.com/sammarshallou/moodle 2017-12-06 19:53:37 +13:00
Andrew Nicols e3b699eab7 Merge branch 'MDL-59159' of git://github.com/stronk7/moodle 2017-12-06 19:53:36 +13:00
Jun Pataleta b908c1add2 Merge branch 'MDL-32350-master' of https://github.com/lucaboesch/moodle 2017-12-06 19:53:35 +13:00
Jun Pataleta 1396cb6346 Merge branch 'wip-MDL-60926-master' of git://github.com/marinaglancy/moodle 2017-12-06 19:53:35 +13:00
Damyon Wiese bfb5d3ba26 Merge branch 'MDL-37933_master' of git://github.com/markn86/moodle 2017-12-06 19:53:34 +13:00
David Herney d52e5dd32d MDL-60443 dataformat lib: Change a wrong variable name
The variable $type really is $dataformat. I have changed it for
prevent the error and show a correct error message.
2017-12-06 19:53:34 +13:00
Jun Pataleta f013112752 Merge branch 'wip-MDL-34161-master' of git://github.com/marinaglancy/moodle 2017-12-06 19:53:33 +13:00
Andrew Nicols adbe17ec68 Merge branch 'MDL-60801' of https://github.com/andrewhancox/moodle 2017-12-06 19:53:32 +13:00
Andrew Nicols 9501b1eb76 Merge branch 'MDL-60857-master' of https://github.com/sammarshallou/moodle 2017-12-06 19:53:32 +13:00
Andrew Nicols 0ea7278f64 Merge branch 'MDL-60899-master' of git://github.com/damyon/moodle 2017-12-06 19:53:31 +13:00
Damyon Wiese a569a33097 Merge branch 'MDL-59875_m35v1' of https://github.com/sbourget/moodle 2017-12-06 19:53:31 +13:00
Jun Pataleta 1b98e553a7 Merge branch 'MDL-36056-master-fix1' of http://github.com/damyon/moodle 2017-12-06 19:53:31 +13:00
Andrew Nicols 9e51dc406f Merge branch 'MDL-47114-master' of git://github.com/rezaies/moodle 2017-12-06 19:53:30 +13:00
Damyon Wiese 387f7aae0d MDL-36056 forms: Don't validate disabled fields
When fields are disabled, the value comes through as null so we need to specifically check for it
before validation.
2017-12-06 19:53:30 +13:00
Andrew Nicols ebe2fafa8b Merge branch 'wip-MDL-37757-master' of git://github.com/abgreeve/moodle 2017-12-06 19:53:29 +13:00
Ryan Wyllie 0ef41ee07d MDL-60962 calendar: async load calendar 3 month block 2017-12-06 06:21:16 +00:00
Ryan Wyllie 7884ecf24f MDL-60962 block_calendar_month: load content after page render 2017-12-06 06:21:16 +00:00
Mark Nelson dbe18cd356 MDL-60969 auth_ldap: replace hardcoded strings in config settings 2017-12-06 11:25:35 +08:00
Damyon Wiese 3715c59ef9 MDL-60951 travis: Disable redis on travis
Redis unit tests are currently failing on php 7.2 due to https://bugs.php.net/bug.php?id=75628
2017-12-06 10:59:54 +08:00
David Mudrák a3d003603a MDL-57564 enrol: Change the default sort in other two functions
Similarly to what the previous patch does, we now change the default
sorting in functions enrol_get_users_courses() and
enrol_get_all_users_courses() too.

The patch also adds missing phpDocs for the functions, improves the
readability of some existing bits and mentions the changes in the
enrol/upgrade.txt file.
2017-12-05 22:58:51 +01:00
Daniel Thee Roperto ee2187273f MDL-57564 enrol: Change the default sort in enrol_get_my_courses()
The new default value (null) now respects the navsortmycoursessort
behaviour and should be consistently used whenever we are displaying the
courses in the UI.
2017-12-05 22:01:18 +01:00
sam marshall 7f9fb2c846 MDL-60880 core_search: Allow search of specific context (front-end) 2017-12-05 17:42:40 +00:00
sam marshall cfa00fc565 MDL-60880 core_search: Allow search of specific context (back-end)
Adds back-end support for restricting searches to specified context
ids (for example so it is possible to search only a specific forum).
2017-12-05 17:42:38 +00:00
Ryan Wyllie 9aeb909d2f MDL-60960 calendar: check enrolment at last chance in container
The enrolment check should only be done if all other checks fail before
it because it's a fairly expensive check to run.
2017-12-05 07:38:05 +00:00
Luca Bösch fc07f6adbc MDL-32350 admin: Sort users by country ASC and DESC 2017-12-05 07:21:29 +01:00
Andrew Nicols a7d75ba5c8 MDL-60965 behat: Correct strlen use 2017-12-05 11:18:58 +08:00
Jake Dallimore 3112c22004 MDL-44667 database: fix incorrect usages of $DB->get_field
Some places were passing 5 params, meaning the strictness param was
lost. This fixes those usages.
2017-12-04 16:53:51 +08:00
Damyon Wiese 713a2cbb25 Merge branch 'MDL-60219-master' of https://github.com/abias/moodle 2017-12-04 16:28:16 +08:00
Damyon Wiese b0c4f9c21c Merge branch 'MDL-36056-master-enrolkeywhitespace' of git://github.com/mudrd8mz/moodle 2017-12-04 16:00:19 +08:00
Marina Glancy 05cd2ff627 MDL-34161 mod_lti: backup and restore of submissions 2017-12-04 15:05:00 +08:00
Marina Glancy 6489a3d455 MDL-34161 mod_lti: backup/restore of lti types
Only course tools are backed up, site tools and registrations
can be matched by id if they are restored to the same site only.

For predefined course tools the secret is backed up encrypted
and can be restored on the same site only.
2017-12-04 15:04:56 +08:00
Tim Lock edbcee25c1 MDL-34161 mod_lti: Added Behat tests 2017-12-04 15:03:44 +08:00
Gregory Faller 387a3a208a MDL-34161 mod_lti: Add support for restoring site tool 2017-12-04 15:03:44 +08:00
Jun Pataleta d8c1a57b99 Merge branch 'wip-MDL-60887-master' of git://github.com/marinaglancy/moodle 2017-12-04 18:24:15 +13:00
Jun Pataleta bea5a16203 Merge branch 'MDL-60925-master' of git://github.com/damyon/moodle 2017-12-04 14:32:26 +13:00
Marina Glancy 65a77c7381 MDL-60926 auth: do not map very long profile fields 2017-12-04 09:31:42 +08:00
Eloy Lafuente (stronk7) 7ec475e2d7 MDL-59159 upgrade: remove unused functions/settings from upgradelib
All these functions were used only by deleted upgrade steps
so it's safe to proceed with straight deletion, considering
them internal. Deletion has been documented in corresponding
upgrade.txt files:

- mod_feedback_upgrade_delete_duplicate_values()
- mod_feedback_upgrade_courseid()

These have been kept because they continue being used:

- @ install: make_competence_scale()
- @ restore: upgrade_course_letter_boundary()
2017-12-04 01:42:01 +01:00
Eloy Lafuente (stronk7) e4eba4c346 MDL-59159 upgrade: clean < 3.1.0 upgrade steps
LTS (3.5) requires previous LTS (3.1)

This just deletes all the upgrade steps previous to 3.1.0. Some
small adjustments, like adding missing MOODLE_INTERNAL or tweaking
globals can also be applied when needed.

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

Next commit will get rid of/deprecate all the upgradelib functions
not used anymore in codebase.
2017-12-04 01:18:57 +01:00
Jun Pataleta c1cd2924ec Merge branch 'MDL-60914_master' of git://github.com/markn86/moodle 2017-12-04 12:50:06 +13:00
Eloy Lafuente (stronk7) 4111611710 MDL-59159 environment: 3.1 (LTS) required 2017-12-04 00:27:53 +01:00
Eloy Lafuente (stronk7) f0781f34c9 MDL-59159 environment: 3.5 base information
This is a direct copy of the 3.4 branch to
have changes under control easier in next commits.
2017-12-04 00:25:48 +01:00
Shamim Rezaie 8c42eef35c MDL-47114 core: Improved function description 2017-12-02 07:44:35 +08:00
Ann Adamcik 4b4280f3e8 MDL-58697: Only get group submission if enabled 2017-12-01 12:56:15 -07:00
sam marshall 1b8cf12a59 MDL-60857 core_search: Improve cron log progress information 2017-12-01 15:47:22 +00:00
Ryan Wyllie 748545858c MDL-60942 filters: include filter in format_string cache key 2017-12-01 06:49:24 +00:00
Charles Fulton 5976a78a95 MDL-59567 block_mnet_hosts: use html_writer to build links 2017-11-30 15:33:51 -05:00
Eloy Lafuente (stronk7) 5f54a8760f weekly release 3.5dev 2017-11-30 17:05:14 +01:00
David Mudrák 0c6554e03c MDL-36056 form: Do not allow passwords with wrapping whitespace
This is to avoid accidental misconfiguration while copy/pasting the
password value.
2017-11-30 10:47:57 +01:00
Marina Glancy efe4210395 MDL-31436 hub: never use xmlrpc, always use REST 2017-11-30 11:28:00 +08:00
Damyon Wiese b3480499c6 MDL-60925 theme: Fix SCSS precompilation.
There is no point pre-compiling the theme SCSS if it is not stored somewhere that is available
to all webserving nodes. Localcache needs to be backed by the MUC cache.
2017-11-29 17:01:07 +08:00
Alexander Bias ee73ec3d3c MDL-60219 lti: Replace pagelayout frametop with incourse 2017-11-29 09:54:42 +01:00
Damyon Wiese 81a989e6d8 MDL-58200 competencies: Student can view linked courses 2017-11-29 16:07:07 +08:00
Damyon Wiese 1e1bc82294 Merge branch 'MDL-60174-master' of https://github.com/sammarshallou/moodle 2017-11-29 12:18:21 +08:00
Jun Pataleta 1577c5ea20 Merge branch 'wip-MDL-45068-master-fix' of https://github.com/marinaglancy/moodle 2017-11-29 16:59:25 +13:00
Marina Glancy b955ad6a55 MDL-45068 groups: corrected check for idnumber '0' 2017-11-29 11:50:44 +08:00
Jun Pataleta a0de91e9a0 Merge branch 'MDL-50861-master' of git://github.com/junpataleta/moodle 2017-11-29 10:51:22 +13:00
Amy Groshek e1eb4fb6d9 MDL-50861 mod_scorm: Add bootstrap btn classes to exit link 2017-11-29 10:44:13 +13:00
Eloy Lafuente (stronk7) 7445483873 Merge branch 'wip-MDL-60591-master' of git://github.com/marinaglancy/moodle 2017-11-28 22:35:58 +01:00
Eloy Lafuente (stronk7) 25e9c56117 Merge branch 'MDL-60738-master' of git://github.com/jleyva/moodle 2017-11-28 20:59:22 +01:00
Eloy Lafuente (stronk7) 8000e6af01 Merge branch 'MDL-60838-master' of https://github.com/sammarshallou/moodle 2017-11-28 20:48:15 +01:00
Eloy Lafuente (stronk7) 8c9eecdea7 Merge branch 'MDL-60682' of git://github.com/timhunt/moodle 2017-11-28 20:37:59 +01:00
sam marshall 34aeacadcc MDL-60174 Document new dboption in config-dist.php 2017-11-28 13:21:49 +00:00
Stephen Bourget a7370e0dd0 MDL-59875 Badges: Allow badges to be criteria for other badges 2017-11-28 08:03:02 -05:00
Damyon Wiese bf0a154217 MDL-58983 assign: Hide grade button if no cap
If the current user cannot grade students, don't show them the button.
2017-11-28 15:47:30 +08:00
Jun Pataleta 012398a8c2 Merge branch 'MDL-54693-quiz-override-help-icon' of https://github.com/lucaboesch/moodle 2017-11-28 20:10:08 +13:00
Marina Glancy 80364b7b1e MDL-49995 files: delete old file when overwriting 2017-11-28 14:50:20 +08:00
Jun Pataleta 02146e0b21 Merge branch 'MDL-59574-master' of git://github.com/ankitagarwal/moodle 2017-11-28 19:38:23 +13:00
Damyon Wiese e427ae67c2 MDL-59200 assign: add feedback when grade locked
We are including a hidden field when the grade is locked in the gradebook for a student. This field fails validation, so
the form cannot be submitted.
2017-11-28 14:36:30 +08:00
Damyon Wiese 8b0801c2b8 MDL-60899 block_lp: no permissions - empty block
Show an empty block if the current user does not have the capability to see any plans.
2017-11-28 13:37:35 +08:00
Ankit Agarwal 120a795b4e MDL-59574 analytics: Add model listing to enable_model cli script 2017-11-28 10:52:52 +05:30
Ankit Agarwal 556cb98d16 MDL-59574 tool_analytics: Add model listing to evaluate_model cli script 2017-11-28 10:52:52 +05:30
Damyon Wiese d87a31d878 Merge branch 'MDL-53004-master' of https://github.com/lucaboesch/moodle
Conflicts:
	mod/assign/styles.css
2017-11-28 13:18:03 +08:00
Marina Glancy 777720c833 MDL-45500 gradingform: allow plugin uninstall 2017-11-28 12:27:52 +08:00
Jun Pataleta 7315358ead Merge branch 'MDL-46768-master' of git://github.com/sarjona/moodle 2017-11-28 17:18:54 +13:00
Damyon Wiese 081ac91526 Merge branch 'MDL-24678-master-chat_get_latest_message' of https://github.com/bozoh/moodle 2017-11-28 12:14:08 +08:00
Damyon Wiese 2c3d8a06c8 Merge branch 'MDL-60669-master' of git://github.com/tobiasreischmann/moodle 2017-11-28 12:05:21 +08:00
Damyon Wiese bdb157653b Merge branch 'MDL-60174-master' of https://github.com/sammarshallou/moodle 2017-11-28 11:38:40 +08:00
Mark Nelson 2a56a82c9b MDL-60914 mod_lti: ensure grade_update() is defined during upgrade 2017-11-28 11:37:00 +08:00
Marina Glancy 12a67a4266 MDL-60887 registration: allow plugins to register on custom hubs 2017-11-28 11:21:25 +08:00
Jun Pataleta 49cbe666a4 Merge branch 'wip-MDL-60478-m35' of git://github.com/amygroshek/moodle 2017-11-28 13:25:51 +13:00
Eloy Lafuente (stronk7) 8edbd642b4 Merge branch 'MDL-60654' of https://github.com/joaociocca/moodle 2017-11-28 01:16:40 +01:00
Eloy Lafuente (stronk7) 9d51d8e81f Merge branch 'MDL-60441_master' of git://github.com/juancs/moodle 2017-11-28 00:55:23 +01:00
Eloy Lafuente (stronk7) 2b6fa07627 Merge branch 'MDL-60249-master' of git://github.com/damyon/moodle 2017-11-28 00:48:41 +01:00
Nick Phillips 28437460d2 MDL-56688 grade: fix ordering of grade items in grade_seq::flatten 2017-11-28 09:30:27 +13:00
sam marshall a938e4096c MDL-60174 core_dml: fix miscellaneous incorrect recordset usage
The new recordset support for Postgres requires transactions and
will cause errors if recordsets are not closed correctly. This
commit fixes problems that were identified during unit tests, and
via some basic code analysis, across all core code. Most of these
are incorrect usage of recordset (forgetting to close them).
2017-11-27 11:10:33 +00:00
sam marshall ed00d67c99 MDL-60174 core_dml: get_recordset on Postgres eats all the RAM
On Postgres, get_recordset_sql loads all the results into memory
(within the Postgres library, which doesn't count towards the PHP
memory limit, but does count towards making your server run out of
memory) as soon as the query completes.

This commit changes the code to use cursors, which in Postgres
allow the results to be returned in smaller chunks (by default
100,000 rows).
2017-11-27 11:10:29 +00:00
Tobias Reischmann 9bd6807635 MDL-60669 forum: Added duplicate check for restoring forum subscriptions
Before MDL-59854 it was possible to have duplicate forum subscriptions.
Trying to import backups created from back then, caused a DB exception
due to unqiue key constraints. Now only one of multiple identical forum
subscritions is restored.
2017-11-27 10:51:34 +01:00
Damyon Wiese d3fa95abf1 Merge branch 'MDL-60188-master' of git://github.com/rezaies/moodle 2017-11-27 15:57:41 +08:00
Mark Nelson 5211efb99b MDL-37933 core_complete: fixed criteria/criterion naming confusion 2017-11-27 15:26:43 +08:00
Jun Pataleta 417d543aaa Merge branch 'MDL-57569-master' of git://github.com/sarjona/moodle 2017-11-27 19:43:32 +13:00
Jun Pataleta 78a534dde0 Merge branch 'wip-MDL-45068-master' of git://github.com/marinaglancy/moodle 2017-11-27 19:36:00 +13:00
Marina Glancy e95df45bba MDL-60591 mod_forum: inline attachments are not displayed in plain text 2017-11-27 14:29:00 +08:00
Marina Glancy ec43371a3f MDL-45068 groups: fixes to group import
- If 'coursename' is specified in the CSV it should match the course short name - thanks Yusuf Yılmaz for the patch
- If 'idnumber' is specified but 'groupidnumber' is not, idnumber should be used for matching the course idnumber only
- If 'groupingname' is not specified, there should be no notices (regression from MDL-42514)
- If 'coursename' or 'idnumber' column is present, it can contain empty values in some/all lines
2017-11-27 14:24:58 +08:00
Shamim Rezaie 0897d6588e MDL-60188 groups: cache user's groups and groupings
The function groups_get_user_groups is called too often both before rendering the page and after the page is rendered (using ajax).
The function was executing a query joining 3 tables in each call. The plementation of the function has now modified to store the
query result in a request cache.
2017-11-27 10:46:35 +08:00
Jake Dallimore d735cb5230 Merge branch 'MDL-60830-master' of git://github.com/sarjona/moodle 2017-11-27 10:29:55 +08:00
Jun Pataleta d470de673c Merge branch 'MDL-58887-master' of git://github.com/ryanwyllie/moodle 2017-11-27 15:05:46 +13:00
Jake Dallimore 29abde4709 Merge branch 'MDL-27230-master' of https://github.com/lucaboesch/moodle 2017-11-27 09:43:44 +08:00
Eugene Venter feb23f1b96 MDL-60905 auth_email: remember loginpage wantsurl for account creation
this allows for redirecting to the correct location upon account
confirmation ;)
2017-11-27 13:42:26 +13:00
Jun Pataleta 84ae267c56 Merge branch 'MDL-60904' of git://github.com/stronk7/moodle 2017-11-27 11:27:57 +13:00
Eloy Lafuente (stronk7) 2fdd9eed54 MDL-60904 behat: Update master to use 3.35.0 behat extension tag 2017-11-26 20:27:00 +01:00
Andrew Hancox 1744570b2e MDL-60801 tool_uploaduser: Fix issue with defaults being ignored 2017-11-24 15:29:23 +00:00
Carlos Alexandre S. da Fonseca 38e7a9525f MDL-24678 mod_chat: Fixed race condition on chat module 2017-11-24 10:36:42 -02:00
sam marshall 411b5f3a02 MDL-60838 core_search: File upload does not honour timeout 2017-11-24 11:00:45 +00:00
Sara Arjona 6820f36bda MDL-57569 core_files: Fix to let show generated f3 image 2017-11-24 11:48:32 +01:00
Sara Arjona d77a6026d2 MDL-46768 core_badges: changed badge name type from FILE to TEXT 2017-11-24 11:34:15 +01:00
Luca Bösch b4fcf278c2 MDL-54693 quiz: Info for attempts allowed in user and group override. 2017-11-23 19:11:11 +01:00
Luca Bösch 409758c035 MDL-53004 assignment: Separate label and pulldown in grading (Clean) 2017-11-23 16:42:26 +01:00
Luca Bösch 99618f89bf MDL-27230 quiz: remove and update group overrides in calendar 2017-11-23 16:42:20 +01:00
David Monllao 5bde2c2b62 weekly release 3.5dev 2017-11-23 13:35:10 +01:00
Damyon Wiese 07a91fd4cc Merge branch 'wip-MDL-27886-master' of https://github.com/marinaglancy/moodle 2017-11-23 12:25:31 +08:00
Marina Glancy dc9353a07b MDL-27886 backup: When setting is unlocked set it to original value 2017-11-23 12:21:03 +08:00
Damyon Wiese 9a73d11cfd MDL-59766 assign: Allow teachers to disable annotations
If teachers do not want to use the pdf annotation features, they should be able to disable it for a single assignment.

AMOS BEGIN
    CPY [default,assignfeedback_comments],[default,assignfeedback_editpdf]
    CPY [default_help,assignfeedback_comments],[default_help,assignfeedback_editpdf]
AMOS END
2017-11-23 10:46:39 +08:00
Jake Dallimore 1cce91b1bb Merge branch 'MDL-60831-master' of git://github.com/ankitagarwal/moodle 2017-11-22 13:24:34 +01:00
Ankit Agarwal 7e6ef63e5f MDL-60831 search: add BS classes to block elements 2017-11-22 13:24:34 +01:00
Jun Pataleta ddb3857cdf Merge branch 'wip-MDL-60546-master' of git://github.com/abgreeve/moodle 2017-11-22 13:24:33 +01:00
Jun Pataleta 9ff02b52b2 Merge branch 'MDL-60813-master' of git://github.com/jleyva/moodle 2017-11-22 13:24:33 +01:00
Jun Pataleta fd64ae3140 Merge branch 'MDL-60526-master-fix1' of http://github.com/damyon/moodle 2017-11-22 13:24:32 +01:00
Damyon Wiese 992c5ccfbf MDL-60526 forms: Button elements should have type
The mform "buttons" should be of type "button", instead it's not specified so they get
the default of "submit". This is causing behat fails.
2017-11-22 13:24:32 +01:00
David Monllao 63469571c8 Merge branch 'm34_MDL-60745_Bump_ComposerLock_ToPHPUnit_6d4d4' of https://github.com/scara/moodle 2017-11-22 13:24:31 +01:00
David Monllao e968cf1def MDL-59512 version: Following 2 digits scheme 2017-11-22 13:24:31 +01:00
David Monllao eee87c8a24 Merge branch 'MDL-59512-master' of git://github.com/Dagefoerde/moodle 2017-11-22 13:24:31 +01:00
Jun Pataleta 4b560e4a8e Merge branch 'mdl58817-master' of https://github.com/tlock/moodle 2017-11-22 13:24:30 +01:00
Jun Pataleta 6472ad5600 Merge branch 'MDL-60637-master' of git://github.com/lameze/moodle 2017-11-22 13:24:30 +01:00
Jake Dallimore ef4192b8e7 Merge branch 'MDL-60796-master' of git://github.com/ankitagarwal/moodle 2017-11-22 13:24:30 +01:00
Jun Pataleta 8317549dff Merge branch 'MDL-60780_master' of git://github.com/dmonllao/moodle 2017-11-22 13:24:29 +01:00
David Monllao 5d96469c8c Merge branch 'MDL-60751-master' of git://github.com/lameze/moodle 2017-11-22 13:24:29 +01:00
Sara Arjona 46ea440b87 MDL-60830 core_enrol: Added email when searching users in course enrol 2017-11-22 13:16:16 +01:00
Damyon Wiese 9a7671da80 MDL-59970 competencies: performance
Remove useless get_records call in get_least_proficient_competencies_for_course function.
On big sites this would cause huge memory usage.
2017-11-22 15:35:20 +08:00
Adrian Greeve 7b4e995015 MDL-60546 mod_choice: Update to select all functionality. 2017-11-22 14:10:55 +08:00
Ryan Wyllie 05df02a0ec MDL-58887 core: fix default title for action menu
Thanks to Michelle Melton <meltonml@appstate.edu> for the original
version of this patch.
2017-11-22 01:36:31 +00:00
Tim Hunt 223419d92c MDL-60682 forms: date/times should use step 1 minute by default 2017-11-21 14:50:28 +00:00
Marina Glancy 077edd3038 MDL-56864 forms: allow to remove last tag with forced standard tags 2017-11-21 15:29:03 +08:00
Marina Glancy be2e38ed92 MDL-56864 forms: boost templates don't allow remove last tag 2017-11-21 15:29:02 +08:00
Simey Lameze 486ecb1b89 MDL-60637 core_group: fix unit tests failures 2017-11-21 09:59:56 +08:00
Simey Lameze effa7d2ba1 MDL-60637 group: remove useless id number validation on web services 2017-11-21 09:52:40 +08:00
Amy Groshek ecdfab51a3 MDL-60478 mod_scorm: Makes checknet alerts less obtrusive.
Alters checknet component to accept frequency,
timeout, and maxalerts arguments. Sets checknet
launched during SCORM session for 30 sec
frequency, 10 sec timeout, and 1 alert max.
2017-11-20 12:59:14 -06:00
David Monllao b78d40e637 Merge branch 'MDL-60526-master' of git://github.com/damyon/moodle 2017-11-20 13:43:54 +01:00
David Monllao d6170fe7f8 Merge branch 'MDL-60436' of https://github.com/NeillM/moodle 2017-11-20 13:26:01 +01:00
David Monllao 007dd71c17 Merge branch 'MDL-56253-master' of https://github.com/lucaboesch/moodle 2017-11-20 12:55:28 +01:00
David Monllao c39071d32a Merge branch 'MDL-60823-master' of git://github.com/lameze/moodle 2017-11-20 12:06:42 +01:00
Jake Dallimore 4a9268b6e7 Merge branch 'MDL-60708-master' of git://github.com/jleyva/moodle 2017-11-20 17:54:56 +08:00
David Monllao 087b3303a5 Merge branch 'MDL-60842-master' of git://github.com/lameze/moodle 2017-11-20 10:27:58 +01:00
Juan Leyva d995cd47fb MDL-60708 mod_workshop: Return author feedback for submission
The feedback and grade information for submission should be returned
for teachers in the evaluation and closed phases.
2017-11-20 10:07:57 +01:00
Simey Lameze 2dc93a3769 MDL-60842 calendar: do not load all course fields 2017-11-20 16:49:45 +08:00
Juan Leyva 6db2423551 MDL-60738 webservice: Clean theme and lang properly
Sometimes the "theme" and "lang" fields in the user and course tables
in the database are set to incorrect values (uninstalled or
non-existent themes and language packs).
This makes Web Services functions to fail because the WS server
validate the returned data using the validate_param function that clean
parameters.
2017-11-20 09:37:30 +01:00
Jun Pataleta 3e6dabadaa Merge branch 'MDL-60187_master' of git://github.com/markn86/moodle 2017-11-20 21:33:00 +13:00
Damyon Wiese 1d59696017 Merge branch 'MDL-60810_master' of git://github.com/markn86/moodle 2017-11-20 15:57:00 +08:00
Damyon Wiese f1c9b8de47 Merge branch 'MDL-60809-master' of git://git.cameron1729.xyz/moodle 2017-11-20 15:29:53 +08:00
Damyon Wiese e590227922 Merge branch 'MDL-60806-master' of git://github.com/lameze/moodle 2017-11-20 15:23:42 +08:00
Jakob Ackermann 4d5a33e424 MDL-60187 mod_lti: Do not create a grade item when grades are disabled.
If the privacy option "Accept grades from the tool" is disabled, the
module should not appear in the gradebook when edited inline or when
recover grades is running during enrolment.
2017-11-20 15:13:24 +08:00
Jake Dallimore 8ee2d9c3d4 Merge branch 'MDL-60824-master-profilefield' of git://github.com/mudrd8mz/moodle 2017-11-20 15:04:08 +08:00
Luca Bösch c6c480f786 MDL-56253 grade: have coursemodule name pass filters. 2017-11-20 06:32:11 +01:00
Damyon Wiese 18c02e9f28 Merge branch 'MDL-27886-master' of git://github.com/tobiasreischmann/moodle 2017-11-20 13:25:37 +08:00
Simey Lameze 5e8e87aaee MDL-60806 core_calendar: return hidden categories 2017-11-20 12:06:47 +08:00
Jake Dallimore 268e772a8a Merge branch 'MDL-60835-master' of git://github.com/crazyserver/moodle 2017-11-20 11:27:46 +08:00
Jun Pataleta 4768fa336a Merge branch 'master_MDL-60253' of https://github.com/CengageEng/moodle 2017-11-20 13:21:30 +13:00
Jun Pataleta 1508fa23d2 Merge branch 'MDL-55808_master' of git://github.com/juancs/moodle 2017-11-20 10:34:55 +13:00
Neill Magill 7251472c83 MDL-60436 blocks: Unit test for dashboard block positioning 2017-11-17 14:40:30 +00:00
Neill Magill 667e6ebc20 MDL-60436 blocks: Improve performance of block loading 2017-11-17 14:40:01 +00:00
Marcus Fabriczy f32ee5c54e MDL-60546 mod_choice: Fixed select all functionality
Fixed the functionality which ticks or unticks all checkboxes when
clicking the Select all or Deselect all elements when viewing the
responses.

Caused by deprecating checkall and checknone functions in
MDL-57490.
2017-11-17 20:08:29 +10:30
yair.spielmann b323508554 MDL-59512 tool_oauth2: add option for basic authentication 2017-11-17 10:15:29 +01:00
Damyon Wiese e76e6bc8bd MDL-60249 assign: resize quickgrade textareas
The Bootstrap CSS reset prevents horizontal resizing of textareas. We want to allow it in the quickgrading ui.
2017-11-17 14:55:28 +08:00
Damyon Wiese 5f8407d5da Merge branch 'MDL-60773-master' of https://github.com/snake/moodle 2017-11-17 14:11:12 +08:00
Andrew Nicols 78162bf5cf MDL-60773 core: Add pendingJS checks for autocomplete interactions 2017-11-17 13:52:04 +08:00
Simey Lameze 1a765e32b0 MDL-60823 calendar: use first day of week on prepadding calc 2017-11-17 11:02:39 +08:00
David Mudrák 88f4b6c75d MDL-60824 profile: Fix handling of to-be-created user id
The script user/editadvanced.php uses special value of userid = -1 for
the case when a new user is being created. Such a value passes the
non-empty check and would lead to "invaliduser" error.
2017-11-16 22:14:16 +01:00
Juan Leyva 44ae08383b MDL-60813 calendar: Fix core_calendar_get_calendar_events for categories
Users couldn’t see category events when filtering by categories in the
core_calendar_get_calendar_events WS.
2017-11-16 19:16:01 +01:00
Pau Ferrer Ocaña 15ead7a176 MDL-60835 completion: Add overrideby field to completion status WS 2017-11-16 16:35:43 +01:00
David Monllao 19bf156be9 MDL-60780 analytics: Prevent timing issues 2017-11-16 09:17:46 +01:00
Adrian Greeve 33e385a5fb MDL-37757 repositories: Deleting a repository deletes files.
If the user decides to remove a repository all of the linked
files are now deleted along with file references. This was causing
problems such as the course page displaying an error with no recourse
to fix the problem.
2017-11-16 14:46:40 +08:00
Cameron Ball d3e980c4ea MDL-60809 xmlrpc: Include filelib when making xmlrpc call 2017-11-16 14:46:36 +08:00
Jake Dallimore 4275ea4a43 weekly on-sync release 3.5dev 2017-11-16 11:13:29 +08:00
Jake Dallimore e767ba20fc Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2017-11-16 11:13:28 +08:00
David Monllao 9304ba2212 Merge branch 'MDL-60789-master' of git://github.com/sarjona/moodle 2017-11-15 10:35:30 +01:00
Damyon Wiese a571aa9b85 Merge branch 'wip-MDL-59876-master' of git://github.com/abgreeve/moodle 2017-11-15 10:35:30 +01:00
Damyon Wiese fda2fa2680 MDL-60526 forms: Prevent duplicate type attributes
The exporter for mform elements does not skip "type" (which is included as a separate value).
2017-11-15 11:53:56 +08:00
Adrian Greeve 2c97abeff2 MDL-59876 core_user: Add required library for function.
The external service create_users has a function call to
useredit_update_user_preference() that requires editlib.php
2017-11-15 11:43:19 +08:00
AMOS bot 231127ce6c Automatically generated installer lang files 2017-11-15 00:05:16 +00:00
Damyon Wiese aece25138f Merge branch 'MDL-60675-master' of git://github.com/mihailges/moodle 2017-11-14 16:40:59 +08:00
Mihail Geshoski 3420d30762 MDL-60675 analytics: Apply strict comparison check 2017-11-14 16:22:36 +08:00
Sara Arjona 3dbb8dc598 MDL-60789 workshop: Check title submission maxlength 2017-11-14 08:52:31 +01:00
Jake Dallimore 55b2742724 Merge branch 'MDL-60741' of git://github.com/timhunt/moodle 2017-11-14 15:28:06 +08:00
Ankit Agarwal 05ba0b9574 MDL-60796 analytics: Fix phpdoc issues 2017-11-14 12:33:46 +05:30
Simey Lameze 7e781cfc2b MDL-60751 core_calendar: remove useless NULL_ALLOWED parameter 2017-11-14 14:12:17 +08:00
Jun Pataleta 592c216520 Merge branch 'm34_MDL-59099_MySQL8_InnoDB_Params_Removed' of https://github.com/scara/moodle 2017-11-14 12:22:29 +13:00
Damyon Wiese 294f1dbaa3 Merge branch 'MDL-60693-backup-multilang-activities' of https://github.com/lucaboesch/moodle 2017-11-13 14:33:57 +08:00
Damyon Wiese fee3033bc7 Merge branch 'MDL-60675-master' of git://github.com/mihailges/moodle 2017-11-13 14:11:50 +08:00
Jake Dallimore e105a752c0 Merge branch 'MDL-60707' of git://github.com/aolley/moodle 2017-11-13 13:26:00 +08:00
Jake Dallimore dbc56205b3 Merge branch 'MDL-60783' of git://github.com/stronk7/moodle 2017-11-13 11:26:30 +08:00
Damyon Wiese dbf0819d92 Merge branch 'MDL-59876-master' of git://github.com/jleyva/moodle 2017-11-13 10:47:49 +08:00
Damyon Wiese 3ac10fa82a Merge branch 'MDL-60784' of git://github.com/stronk7/moodle 2017-11-13 10:37:37 +08:00
Tim Lock a33be61af8 MDL-58817 mod_lti: cartridge: maintain custom icons 2017-11-13 10:15:33 +10:30
Eloy Lafuente (stronk7) 6499085f36 MDL-60784 upgrade: add 3.4.0 separation line to all upgrade scripts 2017-11-12 18:43:30 +01:00
Eloy Lafuente (stronk7) bd8a809598 MDL-60783 backup: Bump release to 3.5 2017-11-12 17:56:17 +01:00
Luca Bösch 9ae6cd775a MDL-60693 backup: Use multilang with course activities
On backup and restore, activities are shown after passing format_string,
supporting multilang.
2017-11-12 14:58:18 +01:00
Eloy Lafuente (stronk7) 0164f50e80 weekly back-to-dev release 3.5dev 2017-11-11 19:41:57 +01:00
Eloy Lafuente (stronk7) 6821ca92ad NOBUG: Change travis.yml back to master 2017-11-11 19:31:19 +01:00
Eloy Lafuente (stronk7) 665c3ac59c Moodle release 3.4 2017-11-11 19:31:19 +01:00
Eloy Lafuente (stronk7) 07c0bb10fb NOBUG: Change travis.yml to MOODLE_34_STABLE 2017-11-11 19:31:18 +01:00
Eloy Lafuente (stronk7) cf57ee9285 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2017-11-11 19:31:14 +01:00
Eloy Lafuente (stronk7) d334aea208 Merge branch 'MDL-60779-master' of git://github.com/junpataleta/moodle 2017-11-11 13:03:54 +01:00
Jun Pataleta 0cf288757d MDL-60779 calendar: Pass correct parameters for get_calendar_X_view() 2017-11-11 22:28:38 +13:00
AMOS bot 695cd06817 Automatically generated installer lang files 2017-11-11 00:05:36 +00:00
David Monllao ab9936962e Moodle release 3.4rc3 2017-11-10 15:15:37 +01:00
David Monllao d39fcc420e Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2017-11-10 15:15:35 +01:00
David Monllao 08641175b3 Merge branch 'MDL-60764' of git://github.com/stronk7/moodle 2017-11-10 10:20:25 +01:00
Eloy Lafuente (stronk7) 66aee746e3 MDL-60764 versions: remove some outdated releases in requires 2017-11-10 09:45:56 +01:00
Damyon Wiese f738fc8efd Merge branch 'MDL-60763-master' of git://github.com/andrewnicols/moodle 2017-11-10 13:57:04 +08:00
Andrew Nicols 27973b545c MDL-60763 calendar: Use PHP concat, not JS 2017-11-10 13:56:39 +08:00
Damyon Wiese 3192438075 Merge branch 'MDL-60763-master' of git://github.com/andrewnicols/moodle 2017-11-10 13:47:05 +08:00
Andrew Nicols 41b7375c07 MDL-60763 core_calendar: Deprecate calendar_get_upcoming 2017-11-10 13:45:32 +08:00
Jun Pataleta cb04dcf4ce Merge branch 'MDL-60771-master' of git://github.com/lameze/moodle 2017-11-10 18:03:49 +13:00
Jun Pataleta c3925187ed Merge branch 'MDL-60758_master' of git://github.com/dmonllao/moodle 2017-11-10 17:21:15 +13:00
Damyon Wiese 4ceece6ea1 Merge branch 'MDL-60749-master' of git://github.com/sarjona/moodle 2017-11-10 12:05:46 +08:00
Jun Pataleta cfbc820e1b Merge branch 'MDL-60766-master' of git://github.com/ryanwyllie/moodle 2017-11-10 17:02:41 +13:00
Simey Lameze fbbcf45ef2 MDL-60771 mod_scorm: typecast score to integer 2017-11-10 12:00:17 +08:00
Andrew Nicols 6e2d8c121b Merge branch 'MDL-52838-master' of git://github.com/damyon/moodle 2017-11-10 11:38:13 +08:00
Damyon Wiese 6b2a9a6fb8 Merge branch 'MDL-60765-master' of git://github.com/andrewnicols/moodle 2017-11-10 10:55:09 +08:00
Mihail Geshoski ae4522ff55 MDL-60675 analytics: Error when selecting invalid insight 2017-11-10 10:43:51 +08:00
Andrew Nicols fb5bbf1424 MDL-60765 theme: Make inplace-autocomplete rule more specific
This change was intended to fix an issue with the autocomplete in RTL,
but was applied to all inplace-editables.
2017-11-10 10:29:11 +08:00
Damyon Wiese ce225e1c5e MDL-52838 workshop: Each criterion > 0 levels
Add validation to the edit assessment form so each criterion in a rubric requires at least one level.
2017-11-10 10:22:27 +08:00
Ryan Wyllie 08b7558483 MDL-60766 block_calendar_upcoming: stop summary modal not logged in
Stopped the JS from running on the block when the user is not logged in
because it attempts to load a summary modal when an event is clicked on
which results in a failed call to a webservice.
2017-11-10 02:20:32 +00:00
Andrew Nicols 9dead25fd5 MDL-60763 core_calendar: Revert removal of calendar_get_upcoming
This reverts part of commit 522b84be04.
2017-11-10 10:11:42 +08:00
Ryan Wyllie eac88b955f MDL-60766 block_calendar_month: hide nav when not logged in 2017-11-10 02:07:50 +00:00
Eloy Lafuente (stronk7) 438c98cc98 MDL-60764 versions: main version bump 2017-11-10 02:56:14 +01:00
Eloy Lafuente (stronk7) ba854606e6 MDL-60764 versions: bump all versions and requires near release
version = 2017111300 release version
requires= 2017110800 current rc2 version
2017-11-10 02:52:53 +01:00
Jake Dallimore f5b63fc829 Merge branch 'MDL-60760_master' of git://github.com/dmonllao/moodle 2017-11-10 09:32:17 +08:00
Andrew Nicols 6996fbaa0e MDL-60763 core_calendar: Revert removal of calendar_get_upcoming
Revert "MDL-60092 core_calendar: remove unused calendar_get_upcoming method"

This reverts commit 4259387ebb.
2017-11-10 08:11:36 +08:00
David Monllao 20305a8a8f MDL-60758 tool_analytics: Skip guess start if higher than guess end 2017-11-09 17:11:34 +01:00
David Monllao 5da020169e MDL-60760 tool_analytics: No onlycli link for managers 2017-11-09 17:05:08 +01:00
Sara Arjona 2f673d8b6a MDL-60749 scorm: Remove &nbsp; from files when downloading 2017-11-09 10:15:03 +01:00
Sara Arjona 4bcb0a9a1d MDL-60550 user: Add more restrictions in keyword searches
Original patch provided by Tim Schroeder.
2017-11-09 16:29:29 +08:00
David Monllao a4e0b7468c Merge branch 'MDL-60718-master' of git://github.com/sarjona/moodle 2017-11-09 09:27:01 +01:00
David Monllao 7fdcdc04ff Merge branch 'MDL-60615-master' of git://github.com/damyon/moodle 2017-11-09 08:48:48 +01:00
Damyon Wiese bef5a8ca10 Merge branch 'MDL-60752-master' of git://github.com/andrewnicols/moodle 2017-11-09 15:08:11 +08:00
Damyon Wiese 246698e779 MDL-60615 imscc: string to array fix
Sloppy typing in the imscc converter is causing errors on php7.1

Variable is initialised as a string and then used as an array.
2017-11-09 15:05:36 +08:00
Jake Dallimore 4f3262fede Merge branch 'MDL-60753_master' of git://github.com/markn86/moodle 2017-11-09 14:47:23 +08:00
Andrew Nicols f169f4fd21 MDL-60752 lti: Compare text in types_config properly 2017-11-09 14:25:51 +08:00
Mark Nelson d48d1ba19a MDL-60753 report_competency: fixed dialogue failing to show 2017-11-09 14:11:24 +08:00
Jun Pataleta 7a571b813a Merge branch 'MDL-60628-master' of git://github.com/lameze/moodle 2017-11-09 17:08:46 +13:00
Simey Lameze 754016ab33 MDL-60628 calendar: amend web service unit test 2017-11-09 11:43:49 +08:00
Simey Lameze 10c17dcc10 MDL-60628 calendar: support category events on get_calendar_events ws 2017-11-09 11:29:07 +08:00
Andrew Nicols 5518a32de5 Merge branch 'MDL-60579-master-fix2' of https://github.com/damyon/moodle 2017-11-09 11:18:14 +08:00
Damyon Wiese 56f05f23c6 MDL-60579 user: Don't lose text filters
When replacing a group filter with a different group filter - don't forget all the current text filters that have
been applied.
2017-11-09 11:06:30 +08:00
Damyon Wiese bb869f05e8 MDL-60579 user: Move defines into library
Entry page user/index.php was defining constants that were used by the renderer.
This means the renderer was tied to user/index.php.
2017-11-09 11:06:30 +08:00
Andrew Nicols 7cf4331a6f MDL-60579 user: Correct PARAM type for filters
Damyon pointed out during the integration of this fixset, that the
PARAM type is incorrect.
2017-11-09 10:07:13 +08:00
Andrew Nicols 762f8dc1db MDL-60579 user: Add missing case breaks 2017-11-09 09:07:34 +08:00
Andrew Nicols a997dc9da5 MDL-60579 user: Correct search for strings 2017-11-09 09:07:21 +08:00
Andrew Nicols 446b21b512 MDL-60579 user: Check filter strings have correct part count 2017-11-09 09:07:02 +08:00
Andrew Nicols 3968d2ca7e MDL-60579 user: Prevent behat from interacting til setup complete 2017-11-09 09:05:22 +08:00
Adam Olley 7f83e99e5f MDL-60707 core_search: In tests, use faked time for indexing length
Without this change its possible that the unit tests will fail at any time.
Before this change the indexing time is measured by real-time, not fake time,
making all index timings 0.

This happens as PHP offers no guarantee around the sort-order of an array for
any given two members that equate as equal. It just happens to pass for the
current array of search areas in vanilla Moodle.
2017-11-09 10:49:53 +10:30
AMOS bot 68c580c903 Automatically generated installer lang files 2017-11-09 00:05:00 +00:00
Matteo Scaramuccia 373a35dd31 MDL-60745 phpunit: Bump phpunit from 6.4.3 to 6.4.4
$ php composer.phar update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 0 installs, 3 updates, 0 removals
  - Updating sebastian/comparator (2.0.2 => 2.1.0): Downloading (100%)
  - Updating phpunit/php-code-coverage (5.2.2 => 5.2.3): Downloading (100%)
  - Updating phpunit/phpunit (6.4.3 => 6.4.4): Downloading (100%)
Writing lock file
Generating autoload files
2017-11-08 23:02:24 +01:00
João Umberto Ciocca de Almeida 6bc8a2e11f MDL-60654 calendar: Clean up lines 140-154
The if+switch code between lines 140 and 154, even though they selected 3 different choices, all of them gave the same result.
Therefore, it'd be cleaner to replace those 16 lines for just two.
2017-11-08 18:36:03 -02:00
Sara Arjona 0c0d460e8b MDL-60718 analytics: Avoid duplicates for users with 2 enrolments 2017-11-08 19:12:59 +01:00
David Monllao ed0e2cea00 Merge branch 'MDL-60732-master' of git://github.com/damyon/moodle 2017-11-08 17:48:07 +01:00
David Monllao 7effd6dd79 Merge branch 'MDL-60720-master' of https://github.com/sammarshallou/moodle 2017-11-08 17:27:15 +01:00
David Monllao 29adfbc3c8 Merge branch 'MDL-58699-master' of git://github.com/damyon/moodle 2017-11-08 15:56:25 +01:00
Tim Hunt d00007bc45 MDL-60741 purgecaches: did not correctly setup the admin page
Note that, admin_externalpage_setup does the right capability check.
2017-11-08 14:30:27 +00:00
David Monllao 4e73acf3cf Merge branch 'MDL-60579-master' of https://github.com/mihailges/moodle 2017-11-08 12:16:20 +01:00
David Monllao fcafb22c22 MDL-60733 oauth: Remove outdated comment 2017-11-08 12:04:31 +01:00
David Monllao 6463a047a2 Merge branch 'MDL-60733-master' of git://github.com/damyon/moodle 2017-11-08 12:03:43 +01:00
Damyon Wiese a471bc4971 MDL-60732 core_user: Show group filters
Always show the group filters, even if the course is in NO_GROUPS mode.
2017-11-08 16:45:42 +08:00
Damyon Wiese d3882ea4a3 MDL-60733 core: B/C for google_oauth
The google_oauth class extends oauth2client which was modified to send "Accept" headers.

The "Accept" headers break picasa and could break any other plugin that was using google_oauth.
2017-11-08 15:41:53 +08:00
sam marshall 4b0facc984 MDL-60720 core_search: Indexing halts on failed get_document
The recordsets used for search indexing sometimes return results
which are invalid (e.g. cannot be found in database). When this
happens, the result in the iterator for the recordset will be
false. Due to a bug, the iterator used to stop when it encountered
a false value, which prevented indexing from getting past the
problematic record.

In addition, the iterator that skips future data resulted in the
current() function of its parent indicator being called twice per
entry, which meant that search indexing called get_document()
twice as many times.
2017-11-07 16:36:37 +00:00
Juan Leyva abdb8f59a5 MDL-59876 webservice: Fix the user preference name field type
Web Services from user and enrol components has been updated to change
the user preference name field type from PARAM_ALPHANUMEXT to
PARAM_RAW.
The old type was not matching the core functionality.
2017-11-07 16:44:48 +01:00
Mihail Geshoski c835126185 MDL-60579 enrolments: Applied filters lost on certain actions
AMOS BEGIN
    CPY [invalidrequest,enrol_lti],[invalidrequest,enrol]
AMOS END
2017-11-07 16:17:00 +08:00
Damyon Wiese 65c52e05d1 MDL-58699 mod_quiz: Require javascript for popup
If any of the access rules require the attempt to open in a new window, assume we
require javascript to attempt the quiz. This makes it harder to bypass the javascript
pseudo security restrictions.
2017-11-07 12:48:21 +08:00
Tobias Reischmann 34eb2faa0d MDL-27886 backup: Decision if a setting is fixed based on level
Previously, when a during backup/restore the "Schema"-stage is loaded,
some settings are fixed if they are LOCKED_BY_HIERARCHY. However, user
data fields of activities can be locked, when the section they are
contained in has user data set to false. When this setting is changed on
the same screen, the fixed setting of the activity can not be "unfixed"
by javascript.

This patch adds a settings-level to the call of is_changeable. With this
only those dependency_settings are considered, which belong to parent
settings, which are not changeable on the current stage.
2017-11-06 12:07:20 +01:00
Tobias Reischmann 8c067bb86d MDL-27886 backup: Enabled unlocking of backup settings
The function is_locked was changed to determine only, if the
dependency_setting want's the dependent setting to be locked.
In the previous version, is_locked did not only check, if the
dependency_setting want's the setting to be locked, but also if the
setting was already locked. A recursive call to the status of the
dependent setting leaded to problems, when unlocking locked settings.

Also the PHPDOC of the is_locked was adjusted to coincide with the current
usage in backup_ui_settings->is_changeable() and
base_setting->set_status(). In both functions all dependency_settings of
a setting are iterated to check if this setting should be or is LOCKED_BY_HIERARCHY.
The actual state of the setting was therefore either checked beforehand
or is not interesting, since the question is, if it shall be changed.
2017-11-06 12:07:20 +01:00
Tobias Reischmann 77a4d33755 MDL-27886 backup: Added behat tests for user data settings
This new test defines different combinations of global and local user
data settings during the restore process and tests that global defaults
can be overriden.
2017-11-06 12:07:20 +01:00
Matteo Scaramuccia 740a9315c3 MDL-59099 dml: MySQL8 supports only the Barracuda file format.
The following InnoDB file format configuration parameters were deprecated
in MySQL 5.7.7 and are now removed:
- innodb_file_format
- innodb_file_format_check
- innodb_file_format_max
- innodb_large_prefix

File format configuration parameters were necessary for creating tables
compatible with earlier versions of InnoDB in MySQL 5.1.
Now that MySQL 5.1 has reached the end of its product lifecycle,
the parameters are no longer required.

The FILE_FORMAT column was removed from the INNODB_SYS_TABLES and
INNODB_SYS_TABLESPACES Information Schema tables.

Ref: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-0.html
2017-10-27 17:38:36 +02:00
Damyon Wiese 1518ce952f MDL-60567 competencies: test list_competencies 2017-10-27 11:50:11 +08:00
Damyon Wiese f09f01fcad MDL-60567 competencies: list_competencies wrong type
"validate_params" returns arrays in external functions.
2017-10-27 11:49:13 +08:00
Juan Segarra Montesinos 6e4e60ef9f MDL-60441 mod_glossary: Add a link to glossary entries 2017-10-15 15:33:17 +02:00
Juan Segarra Montesinos f8c0b9e71f MDL-55808 mod_glossary: Search glossary entries with ratings enabled doesn't work 2017-10-13 17:12:37 +02:00
Vervoort, Claude 18ae59bea1 MDL-60253 lti: also consider securetoolurl for URL match 2017-09-27 13:26:42 -04:00
4295 changed files with 288550 additions and 35402 deletions
+4 -2
View File
@@ -3,8 +3,8 @@
*/**/build/
node_modules/
vendor/
admin/tool/policy/amd/src/jquery-eu-cookie-law-popup.js
admin/tool/usertours/amd/src/tour.js
admin/tool/usertours/amd/src/popper.js
auth/cas/CAS/
enrol/lti/ims-blti/
filter/algebra/AlgParser.pm
@@ -41,7 +41,6 @@ lib/html2text/
lib/markdown/
lib/recaptchalib.php
lib/xhprof/
lib/xmlize.php
lib/horde/
lib/requirejs/
lib/amd/src/loglevel.js
@@ -58,7 +57,10 @@ lib/maxmind/MaxMind/
lib/ltiprovider/
lib/amd/src/truncate.js
lib/fonts/
lib/amd/src/adapter.js
lib/validateurlsyntax.php
lib/amd/src/popper.js
lib/geopattern-php/
media/player/videojs/amd/src/video-lazy.js
media/player/videojs/amd/src/Youtube-lazy.js
media/player/videojs/videojs/
+1 -1
View File
@@ -203,7 +203,7 @@
}
},
{
files: ["**/amd/src/*.js"],
files: ["**/amd/src/*.js", "Gruntfile.js"],
// Check AMD with some slightly stricter rules.
rules: {
'no-unused-vars': 'error',
+1
View File
@@ -1,4 +1,5 @@
**/yui/build/** -diff
**/amd/build/** -diff
lib/dml/oci_native_moodle_package.sql text eol=lf
theme/bootstrapbase/style/editor.css -diff
theme/bootstrapbase/style/moodle.css -diff
+10 -2
View File
@@ -9,10 +9,18 @@
#
# See gitignore(5) man page for more details
#
# Swap files (vim)
[._]*.s[a-v][a-z]
[._]*.sw[a-p]
[._]s[a-rt-v][a-z]
[._]ss[a-gi-z]
[._]sw[a-p]
# Temporary files including undo
*~
#
/config.php
/lib/editor/tinymce/extra/tools/temp/
*~
*.swp
/tags
/TAGS
/cscope.*
+2
View File
@@ -0,0 +1,2 @@
**/amd/**
/*.js
+1
View File
@@ -0,0 +1 @@
v8.16.1
+5 -2
View File
@@ -2,10 +2,11 @@
theme/bootstrapbase/style/
theme/clean/style/custom.css
theme/more/style/custom.css
theme/boost/style/moodle.css
node_modules/
vendor/
admin/tool/policy/amd/src/jquery-eu-cookie-law-popup.js
admin/tool/usertours/amd/src/tour.js
admin/tool/usertours/amd/src/popper.js
auth/cas/CAS/
enrol/lti/ims-blti/
filter/algebra/AlgParser.pm
@@ -42,7 +43,6 @@ lib/html2text/
lib/markdown/
lib/recaptchalib.php
lib/xhprof/
lib/xmlize.php
lib/horde/
lib/requirejs/
lib/amd/src/loglevel.js
@@ -59,7 +59,10 @@ lib/maxmind/MaxMind/
lib/ltiprovider/
lib/amd/src/truncate.js
lib/fonts/
lib/amd/src/adapter.js
lib/validateurlsyntax.php
lib/amd/src/popper.js
lib/geopattern-php/
media/player/videojs/amd/src/video-lazy.js
media/player/videojs/amd/src/Youtube-lazy.js
media/player/videojs/videojs/
+15 -8
View File
@@ -11,6 +11,8 @@ notifications:
language: php
dist: trusty
php:
# We only run the highest and lowest supported versions to reduce the load on travis-ci.org.
- 7.2
@@ -23,8 +25,9 @@ addons:
- mysql-client-core-5.6
- mysql-client-5.6
services:
- redis-server
# Redis tests are currently failing on php 7.2 due to https://bugs.php.net/bug.php?id=75628
# services:
# - redis-server
env:
# Although we want to run these jobs and see failures as quickly as possible, we also want to get the slowest job to
@@ -55,7 +58,7 @@ matrix:
include:
# Run grunt/npm install on highest version ('node' is an alias for the latest node.js version.)
- php: 7.2
env: DB=none TASK=GRUNT NVM_VERSION='8.9'
env: DB=none TASK=GRUNT NVM_VERSION='lts/carbon'
exclude:
# MySQL - it's just too slow.
@@ -99,8 +102,9 @@ install:
fi
# Enable Redis.
echo 'extension="redis.so"' > /tmp/redis.ini
phpenv config-add /tmp/redis.ini
# Redis tests are currently failing on php 7.2 due to https://bugs.php.net/bug.php?id=75628
# echo 'extension="redis.so"' > /tmp/redis.ini
# phpenv config-add /tmp/redis.ini
# Install composer dependencies.
# We need --no-interaction in case we hit API limits for composer. This causes it to fall back to a standard clone.
@@ -171,10 +175,11 @@ before_script:
mkdir -p "$HOME"/roots/phpunit
# The phpunit dataroot and prefix..
# Redis tests are currently failing on php 7.2 due to https://bugs.php.net/bug.php?id=75628
# -e "/require_once/i \\define('TEST_SESSION_REDIS_HOST', '127.0.0.1');" \
sed -i \
-e "/require_once/i \\\$CFG->phpunit_dataroot = '\/home\/travis\/roots\/phpunit';" \
-e "/require_once/i \\\$CFG->phpunit_prefix = 'p_';" \
-e "/require_once/i \\define('TEST_SESSION_REDIS_HOST', '127.0.0.1');" \
config.php ;
# Initialise PHPUnit for Moodle.
@@ -204,7 +209,7 @@ before_script:
# We need the official upstream for comparison
git remote add upstream https://github.com/moodle/moodle.git;
git fetch upstream master;
git fetch upstream MOODLE_35_STABLE;
export GIT_PREVIOUS_COMMIT="`git merge-base FETCH_HEAD $TRAVIS_COMMIT`";
export GIT_COMMIT="$TRAVIS_COMMIT";
export UPSTREAM_FETCH_HEAD=`git rev-parse FETCH_HEAD`
@@ -245,7 +250,7 @@ script:
- >
if [ "$TASK" = 'PHPUNIT' ];
then
vendor/bin/phpunit;
vendor/bin/phpunit --fail-on-risky --disallow-test-output --verbose;
fi
- >
@@ -260,7 +265,9 @@ script:
grunt ;
# Add all files to the git index and then run diff --cached to see all changes.
# This ensures that we get the status of all files, including new files.
# We ignore npm-shrinkwrap.json to make the tasks immune to npm changes.
git add . ;
git reset -- npm-shrinkwrap.json ;
git diff --cached --exit-code ;
fi
+15 -2
View File
@@ -24,6 +24,7 @@
* Grunt configuration
*/
/* eslint-env node */
module.exports = function(grunt) {
var path = require('path'),
tasks = {},
@@ -137,6 +138,16 @@ module.exports = function(grunt) {
}
}
},
sass: {
dist: {
files: {
"theme/boost/style/moodle.css": "theme/boost/scss/preset/default.scss"
}
},
options: {
includePaths: ["theme/boost/scss/"]
}
},
watch: {
options: {
nospawn: true // We need not to spawn so config can be changed dynamically.
@@ -214,7 +225,8 @@ module.exports = function(grunt) {
'# Generated by "grunt ignorefiles"',
'theme/bootstrapbase/style/',
'theme/clean/style/custom.css',
'theme/more/style/custom.css'
'theme/more/style/custom.css',
'theme/boost/style/moodle.css'
].concat(thirdPartyPaths);
grunt.file.write('.stylelintignore', stylelintIgnores.join('\n'));
};
@@ -362,6 +374,7 @@ module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-sass');
grunt.loadNpmTasks('grunt-eslint');
grunt.loadNpmTasks('grunt-stylelint');
@@ -374,7 +387,7 @@ module.exports = function(grunt) {
grunt.registerTask('js', ['amd', 'yui']);
// Register CSS taks.
grunt.registerTask('css', ['stylelint:scss', 'stylelint:less', 'less:bootstrapbase', 'stylelint:css']);
grunt.registerTask('css', ['stylelint:scss', 'sass', 'stylelint:less', 'less:bootstrapbase', 'stylelint:css']);
// Register the startup task.
grunt.registerTask('startup', 'Run the correct tasks for the current directory', tasks.startup);
+6
View File
@@ -165,6 +165,12 @@ function print_auth_lock_options($auth, $user_fields, $helptext, $retrieveopts,
// If custom field then pick name from database.
$fieldshortname = str_replace('profile_field_', '', $fieldname);
$fieldname = $customfieldname[$fieldshortname]->name;
if (core_text::strlen($fieldshortname) > 67) {
// If custom profile field name is longer than 67 characters we will not be able to store the setting
// such as 'field_updateremote_profile_field_NOTSOSHORTSHORTNAME' in the database because the character
// limit for the setting name is 100.
continue;
}
} elseif ($fieldname == 'url') {
$fieldname = get_string('webpage');
} else {
+13 -9
View File
@@ -54,14 +54,16 @@ $statusmsg = '';
$errormsg = '';
if ($data = data_submitted() and confirm_sesskey()) {
if (admin_write_settings($data)) {
$statusmsg = get_string('changessaved');
}
$count = admin_write_settings($data);
if (empty($adminroot->errors)) {
switch ($return) {
case 'site': redirect("$CFG->wwwroot/");
case 'admin': redirect("$CFG->wwwroot/$CFG->admin/");
// No errors. Did we change any setting? If so, then indicate success.
if ($count) {
$statusmsg = get_string('changessaved');
} else {
switch ($return) {
case 'site': redirect("$CFG->wwwroot/");
case 'admin': redirect("$CFG->wwwroot/$CFG->admin/");
}
}
} else {
$errormsg = get_string('errorwithsettings', 'admin');
@@ -73,7 +75,7 @@ if ($data = data_submitted() and confirm_sesskey()) {
if ($PAGE->user_allowed_editing() && $adminediting != -1) {
$USER->editing = $adminediting;
}
$buttons = null;
if ($PAGE->user_allowed_editing()) {
$url = clone($PAGE->url);
if ($PAGE->user_is_editing()) {
@@ -127,7 +129,9 @@ if ($savebutton) {
$visiblepathtosection = array_reverse($settingspage->visiblepath);
$PAGE->set_title("$SITE->shortname: " . implode(": ",$visiblepathtosection));
$PAGE->set_heading($SITE->fullname);
$PAGE->set_button($buttons);
if ($buttons) {
$PAGE->set_button($buttons);
}
echo $OUTPUT->header();
+41
View File
@@ -0,0 +1,41 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for core_admin.
*
* @package core_admin
* @copyright 2018 Carlos Escobedo <carlos@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace core_admin\privacy;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for core_admin implementing null_provider.
*
* @copyright 2018 Carlos Escobedo <carlos@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements \core_privacy\local\metadata\null_provider {
/**
* Get the language string identifier with the component's language
* file to explain why this plugin stores no data.
*
* @return string
*/
public static function get_reason() : string {
return 'privacy:metadata';
}
}
+1
View File
@@ -73,6 +73,7 @@ foreach ($rs as $user) {
echo "Redeleting user $user->id: $user->username ($user->email)\n";
delete_user($user);
}
$rs->close();
cli_heading('Deleting all leftovers');
+2 -2
View File
@@ -219,7 +219,6 @@ $databases = array('mysqli' => moodle_database::get_driver_instance('mysqli', 'n
'pgsql' => moodle_database::get_driver_instance('pgsql', 'native'),
'oci' => moodle_database::get_driver_instance('oci', 'native'),
'sqlsrv' => moodle_database::get_driver_instance('sqlsrv', 'native'), // MS SQL*Server PHP driver
'mssql' => moodle_database::get_driver_instance('mssql', 'native'), // FreeTDS driver
);
foreach ($databases as $type=>$database) {
if ($database->driver_installed() !== true) {
@@ -443,6 +442,7 @@ if ($interactive) {
}
}
$CFG->tempdir = $CFG->dataroot.'/temp';
$CFG->backuptempdir = $CFG->tempdir.'/backup';
$CFG->cachedir = $CFG->dataroot.'/cache';
$CFG->localcachedir = $CFG->dataroot.'/localcache';
@@ -710,7 +710,7 @@ if ($interactive) {
cli_separator();
cli_heading(get_string('cliadminemail', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', $options['adminemail']);
$options['adminemail'] = cli_input($prompt);
$options['adminemail'] = cli_input($prompt, $options['adminemail']);
}
// Validate that the address provided was an e-mail address.
+6 -6
View File
@@ -82,11 +82,6 @@ require_once($CFG->libdir.'/installlib.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/componentlib.class.php');
// make sure no tables are installed yet
if ($DB->get_tables() ) {
cli_error(get_string('clitablesexist', 'install'));
}
$CFG->early_install_lang = true;
get_string_manager(true);
@@ -109,12 +104,17 @@ list($options, $unrecognized) = cli_get_params(
)
);
// We show help text even if tables are installed.
if ($options['help']) {
echo $help;
die;
}
// Make sure no tables are installed yet.
if ($DB->get_tables() ) {
cli_error(get_string('clitablesexist', 'install'));
}
if (!$options['agree-license']) {
cli_error('You have to agree to the license. --help prints out the help'); // TODO: localize
}
+5 -4
View File
@@ -131,10 +131,11 @@ if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
$a = new stdClass();
$a->oldversion = $oldversion;
$a->newversion = $newversion;
if ($interactive) {
$a = new stdClass();
$a->oldversion = $oldversion;
$a->newversion = $newversion;
echo cli_heading(get_string('databasechecking', '', $a)) . PHP_EOL;
}
@@ -193,5 +194,5 @@ admin_apply_default_settings(NULL, false);
// to immediately start browsing the site.
upgrade_themes();
echo get_string('cliupgradefinished', 'admin')."\n";
echo get_string('cliupgradefinished', 'admin', $a)."\n";
exit(0); // 0 means success
+723
View File
@@ -2097,6 +2097,7 @@
<VENDOR name="oracle" version="10.2" />
</DATABASE>
<PHP version="7.0.0" level="required">
<RESTRICT function="restrict_php_version_73" message="unsupportedphpversion73" />
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
@@ -2259,4 +2260,726 @@
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.5" requires="3.1">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="5.5.31" />
<VENDOR name="mysql" version="5.5.31" />
<VENDOR name="postgres" version="9.3" />
<VENDOR name="mssql" version="10.0" />
<VENDOR name="oracle" version="10.2" />
</DATABASE>
<PHP version="7.0.0" level="required">
<RESTRICT function="restrict_php_version_73" message="unsupportedphpversion73" />
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="optional">
<FEEDBACK>
<ON_CHECK message="mbstringrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.6" requires="3.1">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="5.5.31" />
<VENDOR name="mysql" version="5.6" />
<VENDOR name="postgres" version="9.4" />
<VENDOR name="mssql" version="10.0" />
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.0.0" level="required">
<RESTRICT function="restrict_php_version_74" message="unsupportedphpversion74" />
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="optional">
<FEEDBACK>
<ON_CHECK message="mbstringrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="optional">
<FEEDBACK>
<ON_CHECK message="sixtyfourbitswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.7" requires="3.2">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="5.5.31" />
<VENDOR name="mysql" version="5.6" />
<VENDOR name="postgres" version="9.4" />
<VENDOR name="mssql" version="10.0" />
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.1.0" level="required">
<RESTRICT function="restrict_php_version_74" message="unsupportedphpversion74" />
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="optional">
<FEEDBACK>
<ON_CHECK message="mbstringrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="optional">
<FEEDBACK>
<ON_CHECK message="sixtyfourbitswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.8" requires="3.2">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="5.5.31" />
<VENDOR name="mysql" version="5.6" />
<VENDOR name="postgres" version="9.4" />
<VENDOR name="mssql" version="11.0" />
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.1.0" level="required">
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="optional">
<FEEDBACK>
<ON_CHECK message="mbstringrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="optional">
<FEEDBACK>
<ON_CHECK message="sixtyfourbitswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
</COMPATIBILITY_MATRIX>
+3 -4
View File
@@ -29,9 +29,10 @@ require_once($CFG->libdir.'/adminlib.php');
$confirm = optional_param('confirm', 0, PARAM_BOOL);
$returnurl = optional_param('returnurl', null, PARAM_LOCALURL);
admin_externalpage_setup('purgecaches');
// If we have got here as a confirmed aciton, do it.
if ($confirm && isloggedin() && confirm_sesskey()) {
require_capability('moodle/site:config', context_system::instance());
if ($confirm && confirm_sesskey()) {
// Valid request. Purge, and redirect the user back to where they came from.
purge_all_caches();
@@ -45,8 +46,6 @@ if ($confirm && isloggedin() && confirm_sesskey()) {
}
// Otherwise, show a button to actually purge the caches.
admin_externalpage_setup('purgecaches');
$actionurl = new moodle_url('/admin/purgecaches.php', array('sesskey'=>sesskey(), 'confirm'=>1));
if ($returnurl) {
$actionurl->param('returnurl', $returnurl);
@@ -46,6 +46,14 @@ $error = optional_param('error', '', PARAM_ALPHANUM);
admin_externalpage_setup('registrationmoodleorg');
if ($url !== HUB_MOODLEORGHUBURL) {
// Allow other plugins to confirm registration on hubs other than moodle.net . Plugins implementing this
// callback need to redirect or exit. See https://docs.moodle.org/en/Hub_registration .
$callbacks = get_plugins_with_function('hub_registration');
foreach ($callbacks as $plugintype => $plugins) {
foreach ($plugins as $plugin => $callback) {
$callback('confirm');
}
}
throw new moodle_exception('errorotherhubsnotsupported', 'hub');
}
+4 -3
View File
@@ -40,8 +40,9 @@ if ($unregistration && \core\hub\registration::is_registered()) {
if ($siteunregistrationform->is_cancelled()) {
redirect(new moodle_url('/admin/registration/index.php'));
} else if ($data = $siteunregistrationform->get_data()) {
if (\core\hub\registration::unregister($data->unpublishalladvertisedcourses,
$data->unpublishalluploadedcourses)) {
\core\hub\registration::unregister($data->unpublishalladvertisedcourses,
$data->unpublishalluploadedcourses);
if (!\core\hub\registration::is_registered()) {
redirect(new moodle_url('/admin/registration/index.php'));
}
}
@@ -110,7 +111,7 @@ if (\core\hub\registration::is_registered()) {
echo $OUTPUT->heading(get_string('registerwithmoodleorg', 'admin'));
}
$renderer = $PAGE->get_renderer('core', 'register');
$renderer = $PAGE->get_renderer('core', 'admin');
echo $renderer->moodleorg_registration_message();
$siteregistrationform->display();
-41
View File
@@ -1,41 +0,0 @@
<?php
///////////////////////////////////////////////////////////////////////////
// //
// This file is part of Moodle - http://moodle.org/ //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// //
// Moodle is free software: you can redistribute it and/or modify //
// it under the terms of the GNU General Public License as published by //
// the Free Software Foundation, either version 3 of the License, or //
// (at your option) any later version. //
// //
// Moodle is distributed in the hope that it will be useful, //
// but WITHOUT ANY WARRANTY; without even the implied warranty of //
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
// GNU General Public License for more details. //
// //
// You should have received a copy of the GNU General Public License //
// along with Moodle. If not, see <http://www.gnu.org/licenses/>. //
// //
///////////////////////////////////////////////////////////////////////////
/**
* Registration renderer.
* @package moodle
* @subpackage registration
* @copyright 2010 Moodle Pty Ltd (http://moodle.com)
* @author Jerome Mouneyrac
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class core_register_renderer extends plugin_renderer_base {
/**
* Display message about the benefits of registering on Moodle.org
*
* @return string
*/
public function moodleorg_registration_message() {
return format_text(get_string('registermoodlenet', 'admin'), FORMAT_HTML, ['noclean' => true]);
}
}
+8
View File
@@ -40,6 +40,14 @@ $token = optional_param('token', '', PARAM_TEXT);
admin_externalpage_setup('registrationmoodleorg');
if ($url !== HUB_MOODLEORGHUBURL) {
// Allow other plugins to renew registration on hubs other than moodle.net . Plugins implementing this
// callback need to redirect or exit. See https://docs.moodle.org/en/Hub_registration .
$callbacks = get_plugins_with_function('hub_registration');
foreach ($callbacks as $plugintype => $plugins) {
foreach ($plugins as $plugin => $callback) {
$callback('renew');
}
}
throw new moodle_exception('errorotherhubsnotsupported', 'hub');
}
+11 -3
View File
@@ -823,8 +823,7 @@ class core_admin_renderer extends plugin_renderer_base {
*/
protected function registration_warning($registered) {
if (!$registered) {
if (!$registered && site_is_public()) {
if (has_capability('moodle/site:config', context_system::instance())) {
$registerbutton = $this->single_button(new moodle_url('/admin/registration/index.php'),
get_string('register', 'admin'));
@@ -1990,7 +1989,7 @@ class core_admin_renderer extends plugin_renderer_base {
if (empty($CFG->docroot) or $environment_result->plugin) {
$report = get_string($stringtouse, 'admin', $rec);
} else {
$report = $this->doc_link(join($linkparts, '/'), get_string($stringtouse, 'admin', $rec));
$report = $this->doc_link(join($linkparts, '/'), get_string($stringtouse, 'admin', $rec), true);
}
// Enclose report text in div so feedback text will be displayed underneath it.
$report = html_writer::div($report);
@@ -2084,4 +2083,13 @@ class core_admin_renderer extends plugin_renderer_base {
return $this->warning(get_string('legacylogginginuse'));
}
}
/**
* Display message about the benefits of registering on Moodle.org
*
* @return string
*/
public function moodleorg_registration_message() {
return format_text(get_string('registermoodlenet', 'admin'), FORMAT_HTML, ['noclean' => true]);
}
}
+5 -1
View File
@@ -29,7 +29,8 @@ $mode = required_param('mode', PARAM_ALPHANUMEXT);
$classformode = array(
'assign' => 'core_role_allow_assign_page',
'override' => 'core_role_allow_override_page',
'switch' => 'core_role_allow_switch_page'
'switch' => 'core_role_allow_switch_page',
'view' => 'core_role_allow_view_page'
);
if (!isset($classformode[$mode])) {
print_error('invalidmode', '', '', $mode);
@@ -58,6 +59,9 @@ if (optional_param('submit', false, PARAM_BOOL) && data_submitted() && confirm_s
case 'switch':
$event = \core\event\role_allow_switch_updated::create(array('context' => $syscontext));
break;
case 'view':
$event = \core\event\role_allow_view_updated::create(array('context' => $syscontext));
break;
}
if ($event) {
$event->trigger();
+1 -1
View File
@@ -245,7 +245,7 @@ if ($roleid) {
$select = new single_select($PAGE->url, 'roleid', $nameswithcounts, $roleid, null);
$select->label = get_string('assignanotherrole', 'core_role');
echo $OUTPUT->render($select);
echo '<p><a href="' . $PAGE->url . '">' . get_string('backtoallroles', 'core_role') . '</a></p>';
echo '<p><a href="' . $url . '">' . get_string('backtoallroles', 'core_role') . '</a></p>';
echo '</div>';
} else if (empty($assignableroles)) {
+1 -1
View File
@@ -33,7 +33,7 @@ class core_role_allow_assign_page extends core_role_allow_role_page {
}
protected function set_allow($fromroleid, $targetroleid) {
allow_assign($fromroleid, $targetroleid);
core_role_set_assign_allowed($fromroleid, $targetroleid);
}
protected function get_cell_tooltip($fromrole, $targetrole) {
+1 -1
View File
@@ -33,7 +33,7 @@ class core_role_allow_override_page extends core_role_allow_role_page {
}
protected function set_allow($fromroleid, $targetroleid) {
allow_override($fromroleid, $targetroleid);
core_role_set_override_allowed($fromroleid, $targetroleid);
}
protected function get_cell_tooltip($fromrole, $targetrole) {
+1 -1
View File
@@ -41,7 +41,7 @@ class core_role_allow_switch_page extends core_role_allow_role_page {
}
protected function set_allow($fromroleid, $targetroleid) {
allow_switch($fromroleid, $targetroleid);
core_role_set_switch_allowed($fromroleid, $targetroleid);
}
protected function is_allowed_target($targetroleid) {
+77
View File
@@ -0,0 +1,77 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Role view matrix.
*
* @package core_role
* @copyright 2016 onwards Andrew Hancox <andrewdchancox@googlemail.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
/**
* Subclass of role_allow_role_page for the Allow views tab.
*
* @package core_role
* @copyright 2016 onwards Andrew Hancox <andrewdchancox@googlemail.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class core_role_allow_view_page extends core_role_allow_role_page {
/** @var array */
protected $allowedtargetroles;
/**
* core_role_allow_view_page constructor.
*/
public function __construct() {
parent::__construct('role_allow_view', 'allowview');
}
/**
* Allow from role to view target role.
* @param int $fromroleid
* @param int $targetroleid
*/
protected function set_allow($fromroleid, $targetroleid) {
core_role_set_view_allowed($fromroleid, $targetroleid);
}
/**
* Get tool tip for cell.
* @param string $fromrole
* @param string $targetrole
* @return string
* @throws \coding_exception
*/
protected function get_cell_tooltip($fromrole, $targetrole) {
$a = new stdClass;
$a->fromrole = $fromrole->localname;
$a->targetrole = $targetrole->localname;
return get_string('allowroletoview', 'core_role', $a);
}
/**
* Get intro text for role allow view page.
* @return string
* @throws \coding_exception
*/
public function get_intro_text() {
return get_string('configallowview', 'core_admin');
}
}
+5 -2
View File
@@ -69,8 +69,11 @@ class core_role_check_users_selector extends user_selector_base {
if ($coursecontext and $coursecontext != SITEID) {
$sql1 = " FROM {user} u
JOIN {user_enrolments} ue ON (ue.userid = u.id)
JOIN {enrol} e ON (e.id = ue.enrolid AND e.courseid = :courseid1)
JOIN (SELECT DISTINCT subu.id
FROM {user} subu
JOIN {user_enrolments} ue ON (ue.userid = subu.id)
JOIN {enrol} e ON (e.id = ue.enrolid AND e.courseid = :courseid1)
) subq ON subq.id = u.id
WHERE $wherecondition";
$params['courseid1'] = $coursecontext->instanceid;
@@ -42,6 +42,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
protected $allowassign;
protected $allowoverride;
protected $allowswitch;
protected $allowview;
public function __construct($context, $roleid) {
$this->roleid = $roleid;
@@ -72,6 +73,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$this->allowassign = array_keys($this->get_allow_roles_list('assign'));
$this->allowoverride = array_keys($this->get_allow_roles_list('override'));
$this->allowswitch = array_keys($this->get_allow_roles_list('switch'));
$this->allowview = array_keys($this->get_allow_roles_list('view'));
} else {
$this->role = new stdClass;
@@ -83,6 +85,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$this->allowassign = array();
$this->allowoverride = array();
$this->allowswitch = array();
$this->allowview = array();
}
parent::load_current_permissions();
}
@@ -100,6 +103,8 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$this->role->shortname = core_text::strtolower(clean_param($this->role->shortname, PARAM_ALPHANUMEXT));
if (empty($this->role->shortname)) {
$this->errors['shortname'] = get_string('errorbadroleshortname', 'core_role');
} else if (core_text::strlen($this->role->shortname) > 100) { // Check if it exceeds the max of 100 characters.
$this->errors['shortname'] = get_string('errorroleshortnametoolong', 'core_role');
}
}
if ($DB->record_exists_select('role', 'shortname = ? and id <> ?', array($this->role->shortname, $this->roleid))) {
@@ -162,6 +167,10 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
if (!is_null($allow)) {
$this->allowswitch = $allow;
}
$allow = optional_param_array('allowview', null, PARAM_INT);
if (!is_null($allow)) {
$this->allowview = $allow;
}
// Now read the permissions for each capability.
parent::read_submitted_permissions();
@@ -178,7 +187,8 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
* @param int $roleid role id or 0 for no role
* @param array $options array with following keys:
* 'name', 'shortname', 'description', 'permissions', 'archetype',
* 'contextlevels', 'allowassign', 'allowoverride', 'allowswitch'
* 'contextlevels', 'allowassign', 'allowoverride', 'allowswitch',
* 'allowview'
*/
public function force_duplicate($roleid, array $options) {
global $DB;
@@ -215,6 +225,9 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
if ($options['allowswitch']) {
$this->allowswitch = array();
}
if ($options['allowview']) {
$this->allowview = array();
}
if ($options['permissions']) {
foreach ($this->capabilities as $capid => $cap) {
@@ -260,6 +273,9 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
if ($options['allowswitch']) {
$this->allowswitch = array_keys($this->get_allow_roles_list('switch', $roleid));
}
if ($options['allowview']) {
$this->allowview = array_keys($this->get_allow_roles_list('view', $roleid));
}
if ($options['permissions']) {
$this->permissions = $DB->get_records_menu('role_capabilities',
@@ -280,7 +296,8 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
* @param string $archetype
* @param array $options array with following keys:
* 'name', 'shortname', 'description', 'permissions', 'archetype',
* 'contextlevels', 'allowassign', 'allowoverride', 'allowswitch'
* 'contextlevels', 'allowassign', 'allowoverride', 'allowswitch',
* 'allowview'
*/
public function force_archetype($archetype, array $options) {
$archetypes = get_role_archetypes();
@@ -321,6 +338,9 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
if ($options['allowswitch']) {
$this->allowswitch = get_default_role_archetype_allows('switch', $archetype);
}
if ($options['allowview']) {
$this->allowview = get_default_role_archetype_allows('view', $archetype);
}
if ($options['permissions']) {
$defaultpermissions = get_default_capabilities($archetype);
@@ -340,7 +360,8 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
* @param string $xml
* @param array $options array with following keys:
* 'name', 'shortname', 'description', 'permissions', 'archetype',
* 'contextlevels', 'allowassign', 'allowoverride', 'allowswitch'
* 'contextlevels', 'allowassign', 'allowoverride', 'allowswitch',
* 'allowview'
*/
public function force_preset($xml, array $options) {
if (!$info = core_role_preset::parse_preset($xml)) {
@@ -377,7 +398,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
}
}
foreach (array('assign', 'override', 'switch') as $type) {
foreach (array('assign', 'override', 'switch', 'view') as $type) {
if ($options['allow'.$type]) {
if (isset($info['allow'.$type])) {
$this->{'allow'.$type} = $info['allow'.$type];
@@ -438,6 +459,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$this->save_allow('assign');
$this->save_allow('override');
$this->save_allow('switch');
$this->save_allow('view');
// Permissions.
parent::save_changes();
@@ -449,7 +471,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$current = array_keys($this->get_allow_roles_list($type));
$wanted = $this->{'allow'.$type};
$addfunction = 'allow_'.$type;
$addfunction = "core_role_set_{$type}_allowed";
$deltable = 'role_allow_'.$type;
$field = 'allow'.$type;
@@ -476,7 +498,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
}
protected function get_shortname_field($id) {
return '<input type="text" id="' . $id . '" name="' . $id . '" maxlength="254" value="' . s($this->role->shortname) . '"' .
return '<input type="text" id="' . $id . '" name="' . $id . '" maxlength="100" value="' . s($this->role->shortname) . '"' .
' class="form-control"/>';
}
@@ -506,9 +528,11 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
if (!$this->disabled) {
$output .= '<input type="hidden" name="contextlevel' . $cl . '" value="0" />';
}
$output .= '<input type="checkbox" id="cl' . $cl . '" name="contextlevel' . $cl .
$output .= '<div class="form-check justify-content-start w-100">';
$output .= '<input class="form-check-input" type="checkbox" id="cl' . $cl . '" name="contextlevel' . $cl .
'" value="1" ' . $extraarguments . '/> ';
$output .= '<label for="cl' . $cl . '">' . $clname . "</label><br />\n";
$output .= '<label class="form-check-label" for="cl' . $cl . '">' . $clname . "</label>\n";
$output .= '</div>';
}
return $output;
}
@@ -523,7 +547,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
protected function get_allow_roles_list($type, $roleid = null) {
global $DB;
if ($type !== 'assign' and $type !== 'switch' and $type !== 'override') {
if ($type !== 'assign' and $type !== 'switch' and $type !== 'override' and $type !== 'view') {
debugging('Invalid role allowed type specified', DEBUG_DEVELOPER);
return array();
}
@@ -547,11 +571,11 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
/**
* Returns an array of roles with the allowed type.
*
* @param string $type Must be one of: assign, switch, or override.
* @param string $type Must be one of: assign, switch, override or view.
* @return array Am array of role names with the allowed type
*/
protected function get_allow_role_control($type) {
if ($type !== 'assign' and $type !== 'switch' and $type !== 'override') {
if ($type !== 'assign' and $type !== 'switch' and $type !== 'override' and $type !== 'view') {
debugging('Invalid role allowed type specified', DEBUG_DEVELOPER);
return '';
}
@@ -641,6 +665,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$this->print_field('menuallowassign', get_string('allowassign', 'core_role'), $this->get_allow_role_control('assign'));
$this->print_field('menuallowoverride', get_string('allowoverride', 'core_role'), $this->get_allow_role_control('override'));
$this->print_field('menuallowswitch', get_string('allowswitch', 'core_role'), $this->get_allow_role_control('switch'));
$this->print_field('menuallowview', get_string('allowview', 'core_role'), $this->get_allow_role_control('view'));
if ($risks = $this->get_role_risks_info()) {
$this->print_field('', get_string('rolerisks', 'core_role'), $risks);
}
+2 -2
View File
@@ -84,7 +84,7 @@ class core_role_preset {
$contextlevels->appendChild($dom->createElement('level', $name));
}
foreach (array('assign', 'override', 'switch') as $type) {
foreach (array('assign', 'override', 'switch', 'view') as $type) {
$allows = $dom->createElement('allow'.$type);
$top->appendChild($allows);
$records = $DB->get_records('role_allow_'.$type, array('roleid'=>$roleid), "allow$type ASC");
@@ -205,7 +205,7 @@ class core_role_preset {
}
}
foreach (array('assign', 'override', 'switch') as $type) {
foreach (array('assign', 'override', 'switch', 'view') as $type) {
$values = self::get_node_children_values($dom, '/role/allow'.$type, 'shortname');
if (!isset($values)) {
$info['allow'.$type] = null;
+1
View File
@@ -79,6 +79,7 @@ class core_role_preset_form extends moodleform {
$mform->addElement('advcheckbox', 'allowassign', get_string('allowassign', 'core_role'));
$mform->addElement('advcheckbox', 'allowoverride', get_string('allowoverride', 'core_role'));
$mform->addElement('advcheckbox', 'allowswitch', get_string('allowswitch', 'core_role'));
$mform->addElement('advcheckbox', 'allowview', get_string('allowview', 'core_role'));
$mform->addElement('advcheckbox', 'permissions', get_string('permissions', 'core_role'));
}
+459
View File
@@ -0,0 +1,459 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for core_role.
*
* @package core_role
* @copyright 2018 Carlos Escobedo <carlos@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace core_role\privacy;
defined('MOODLE_INTERNAL') || die();
use \core_privacy\local\metadata\collection;
use \core_privacy\local\request\contextlist;
use \core_privacy\local\request\approved_contextlist;
use \core_privacy\local\request\transform;
use \core_privacy\local\request\writer;
use \core_privacy\local\request\userlist;
use \core_privacy\local\request\approved_userlist;
/**
* Privacy provider for core_role.
*
* @copyright 2018 Carlos Escobedo <carlos@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements
\core_privacy\local\metadata\provider,
\core_privacy\local\request\subsystem\provider,
\core_privacy\local\request\subsystem\plugin_provider,
\core_privacy\local\request\user_preference_provider,
\core_privacy\local\request\core_userlist_provider {
/**
* Get information about the user data stored by this plugin.
*
* @param collection $collection An object for storing metadata.
* @return collection The metadata.
*/
public static function get_metadata(collection $collection) : collection {
$rolecapabilities = [
'roleid' => 'privacy:metadata:role_capabilities:roleid',
'capability' => 'privacy:metadata:role_capabilities:capability',
'permission' => 'privacy:metadata:role_capabilities:permission',
'timemodified' => 'privacy:metadata:role_capabilities:timemodified',
'modifierid' => 'privacy:metadata:role_capabilities:modifierid'
];
$roleassignments = [
'roleid' => 'privacy:metadata:role_assignments:roleid',
'userid' => 'privacy:metadata:role_assignments:userid',
'timemodified' => 'privacy:metadata:role_assignments:timemodified',
'modifierid' => 'privacy:metadata:role_assignments:modifierid',
'component' => 'privacy:metadata:role_assignments:component',
'itemid' => 'privacy:metadata:role_assignments:itemid'
];
$collection->add_database_table('role_capabilities', $rolecapabilities,
'privacy:metadata:role_capabilities:tableexplanation');
$collection->add_database_table('role_assignments', $roleassignments,
'privacy:metadata:role_assignments:tableexplanation');
$collection->add_user_preference('definerole_showadvanced',
'privacy:metadata:preference:showadvanced');
return $collection;
}
/**
* Export all user preferences for the plugin.
*
* @param int $userid The userid of the user whose data is to be exported.
*/
public static function export_user_preferences(int $userid) {
$showadvanced = get_user_preferences('definerole_showadvanced', null, $userid);
if ($showadvanced !== null) {
writer::export_user_preference('core_role',
'definerole_showadvanced',
transform::yesno($showadvanced),
get_string('privacy:metadata:preference:showadvanced', 'core_role')
);
}
}
/**
* Return all contexts for this userid.
*
* @param int $userid The user ID.
* @return contextlist The list of context IDs.
*/
public static function get_contexts_for_userid(int $userid) : contextlist {
global $DB;
$contextlist = new contextlist();
// The role_capabilities table contains user data.
$contexts = [
CONTEXT_SYSTEM,
CONTEXT_USER,
CONTEXT_COURSECAT,
CONTEXT_COURSE,
CONTEXT_MODULE,
CONTEXT_BLOCK
];
list($insql, $inparams) = $DB->get_in_or_equal($contexts, SQL_PARAMS_NAMED);
$sql = "SELECT ctx.id
FROM {context} ctx
JOIN {role_capabilities} rc
ON rc.contextid = ctx.id
AND ((ctx.contextlevel {$insql} AND rc.modifierid = :modifierid)
OR (ctx.contextlevel = :contextlevel AND ctx.instanceid = :userid))";
$params = [
'modifierid' => $userid,
'contextlevel' => CONTEXT_USER,
'userid' => $userid
];
$params += $inparams;
$contextlist->add_from_sql($sql, $params);
// The role_assignments table contains user data.
$contexts = [
CONTEXT_SYSTEM,
CONTEXT_USER,
CONTEXT_COURSECAT,
CONTEXT_COURSE,
CONTEXT_MODULE,
CONTEXT_BLOCK
];
list($insql, $inparams) = $DB->get_in_or_equal($contexts, SQL_PARAMS_NAMED);
$params = [
'userid' => $userid,
'modifierid' => $userid
];
$params += $inparams;
$sql = "SELECT ctx.id
FROM {role_assignments} ra
JOIN {context} ctx
ON ctx.id = ra.contextid
AND ctx.contextlevel {$insql}
WHERE (ra.userid = :userid
OR ra.modifierid = :modifierid)
AND ra.component != 'tool_cohortroles'";
$contextlist->add_from_sql($sql, $params);
return $contextlist;
}
/**
* Get the list of users within a specific context.
*
* @param userlist $userlist The userlist containing the list of users who have data in this context/plugin combination.
*/
public static function get_users_in_context(userlist $userlist) {
if (empty($userlist)) {
return;
}
$context = $userlist->get_context();
// Include users who created or modified role capabilities.
$sql = "SELECT modifierid as userid
FROM {role_capabilities}
WHERE contextid = :contextid";
$params = [
'contextid' => $context->id
];
$userlist->add_from_sql('userid', $sql, $params);
// Include users that have a role assigned to them.
$sql = "SELECT userid
FROM {role_assignments}
WHERE contextid = :contextid";
$userlist->add_from_sql('userid', $sql, $params);
// Include users who created or modified the role assignment.
// Differentiate and exclude special cases where tool_cohortroles adds records through the
// "Assign user roles to cohort" feature into the role_assignments table.
// These records should be separately processed in tool_cohortroles.
$sql = "SELECT modifierid as userid
FROM {role_assignments}
WHERE contextid = :contextid
AND component != 'tool_cohortroles'";
$userlist->add_from_sql('userid', $sql, $params);
}
/**
* Export all user data for the specified user, in the specified contexts.
*
* @param approved_contextlist $contextlist The list of approved contexts for a user.
*/
public static function export_user_data(approved_contextlist $contextlist) {
global $DB;
if (empty($contextlist)) {
return;
}
$rolesnames = self::get_roles_name();
$userid = $contextlist->get_user()->id;
$ctxfields = \context_helper::get_preload_record_columns_sql('ctx');
list($insql, $inparams) = $DB->get_in_or_equal($contextlist->get_contextids(), SQL_PARAMS_NAMED);
// Role Assignments export data.
$contexts = [
CONTEXT_SYSTEM,
CONTEXT_USER,
CONTEXT_COURSECAT,
CONTEXT_COURSE,
CONTEXT_MODULE,
CONTEXT_BLOCK
];
list($inctxsql, $ctxparams) = $DB->get_in_or_equal($contexts, SQL_PARAMS_NAMED);
$sql = "SELECT ra.id, ra.contextid, ra.roleid, ra.userid, ra.timemodified, ra.modifierid, $ctxfields
FROM {role_assignments} ra
JOIN {context} ctx
ON ctx.id = ra.contextid
AND ctx.contextlevel {$inctxsql}
AND (ra.userid = :userid OR ra.modifierid = :modifierid)
AND ra.component != 'tool_cohortroles'
JOIN {role} r
ON r.id = ra.roleid
WHERE ctx.id {$insql}";
$params = ['userid' => $userid, 'modifierid' => $userid];
$params += $inparams;
$params += $ctxparams;
$assignments = $DB->get_recordset_sql($sql, $params);
foreach ($assignments as $assignment) {
\context_helper::preload_from_record($assignment);
$alldata[$assignment->contextid][$rolesnames[$assignment->roleid]][] = (object)[
'timemodified' => transform::datetime($assignment->timemodified),
'userid' => transform::user($assignment->userid),
'modifierid' => transform::user($assignment->modifierid)
];
}
$assignments->close();
if (!empty($alldata)) {
array_walk($alldata, function($roledata, $contextid) {
$context = \context::instance_by_id($contextid);
array_walk($roledata, function($data, $rolename) use ($context) {
writer::with_context($context)->export_data(
[get_string('privacy:metadata:role_assignments', 'core_role'), $rolename],
(object)$data);
});
});
unset($alldata);
}
// Role Capabilities export data.
$strpermissions = self::get_permissions_name();
$contexts = [
CONTEXT_SYSTEM,
CONTEXT_USER,
CONTEXT_COURSECAT,
CONTEXT_COURSE,
CONTEXT_MODULE,
CONTEXT_BLOCK
];
list($inctxsql, $ctxparams) = $DB->get_in_or_equal($contexts, SQL_PARAMS_NAMED);
$sql = "SELECT rc.id, rc.contextid, rc.capability, rc.permission, rc.timemodified, rc.roleid, $ctxfields
FROM {context} ctx
JOIN {role_capabilities} rc
ON rc.contextid = ctx.id
AND ((ctx.contextlevel {$inctxsql} AND rc.modifierid = :modifierid)
OR (ctx.contextlevel = :contextlevel AND ctx.instanceid = :userid))
WHERE ctx.id {$insql}";
$params = [
'modifierid' => $userid,
'contextlevel' => CONTEXT_USER,
'userid' => $userid
];
$params += $inparams;
$params += $ctxparams;
$capabilities = $DB->get_recordset_sql($sql, $params);
foreach ($capabilities as $capability) {
\context_helper::preload_from_record($capability);
$alldata[$capability->contextid][$rolesnames[$capability->roleid]][] = (object)[
'timemodified' => transform::datetime($capability->timemodified),
'capability' => $capability->capability,
'permission' => $strpermissions[$capability->permission]
];
}
$capabilities->close();
if (!empty($alldata)) {
array_walk($alldata, function($capdata, $contextid) {
$context = \context::instance_by_id($contextid);
array_walk($capdata, function($data, $rolename) use ($context) {
writer::with_context($context)->export_data(
[get_string('privacy:metadata:role_capabilities', 'core_role'), $rolename],
(object)$data);
});
});
}
}
/**
* Exports the data relating to tool_cohortroles component on role assignments by
* Assign user roles to cohort feature.
*
* @param int $userid The user ID.
*/
public static function export_user_role_to_cohort(int $userid) {
global $DB;
$rolesnames = self::get_roles_name();
$sql = "SELECT ra.id, ra.contextid, ra.roleid, ra.userid, ra.timemodified, ra.modifierid, r.id as roleid
FROM {role_assignments} ra
JOIN {context} ctx
ON ctx.id = ra.contextid
AND ctx.contextlevel = :contextlevel
AND ra.component = 'tool_cohortroles'
JOIN {role} r
ON r.id = ra.roleid
WHERE ctx.instanceid = :instanceid
OR ra.userid = :userid";
$params = ['userid' => $userid, 'instanceid' => $userid, 'contextlevel' => CONTEXT_USER];
$assignments = $DB->get_recordset_sql($sql, $params);
foreach ($assignments as $assignment) {
$alldata[$assignment->contextid][$rolesnames[$assignment->roleid]][] = (object)[
'timemodified' => transform::datetime($assignment->timemodified),
'userid' => transform::user($assignment->userid),
'modifierid' => transform::user($assignment->modifierid)
];
}
$assignments->close();
if (!empty($alldata)) {
array_walk($alldata, function($roledata, $contextid) {
$context = \context::instance_by_id($contextid);
array_walk($roledata, function($data, $rolename) use ($context) {
writer::with_context($context)->export_related_data(
[get_string('privacy:metadata:role_cohortroles', 'core_role'), $rolename], 'cohortroles',
(object)$data);
});
});
}
}
/**
* Delete all user data for this context.
*
* @param \context $context The context to delete data for.
*/
public static function delete_data_for_all_users_in_context(\context $context) {
global $DB;
// Don't remove data from role_capabilities.
// Because this data affects the whole Moodle, there are override capabilities.
// Don't belong to the modifier user.
// Remove data from role_assignments.
$DB->delete_records('role_assignments', ['contextid' => $context->id]);
}
/**
* Delete multiple users within a single context.
*
* @param approved_userlist $userlist The approved context and user information to delete information for.
*/
public static function delete_data_for_users(approved_userlist $userlist) {
global $DB;
// Don't remove data from role_capabilities.
// Because this data affects the whole Moodle, there are override capabilities.
// Don't belong to the modifier user.
$context = $userlist->get_context();
$userids = $userlist->get_userids();
if (empty($userids)) {
return;
}
list($usersql, $userparams) = $DB->get_in_or_equal($userids, SQL_PARAMS_NAMED);
$params = ['contextid' => $context->id] + $userparams;
// Remove data from role_assignments.
$DB->delete_records_select('role_assignments',
"contextid = :contextid AND userid {$usersql}", $params);
}
/**
* Delete all user data for this user only.
*
* @param approved_contextlist $contextlist The list of approved contexts for a user.
*/
public static function delete_data_for_user(approved_contextlist $contextlist) {
global $DB;
// Don't remove data from role_capabilities.
// Because this data affects the whole Moodle, there are override capabilities.
// Don't belong to the modifier user.
// Remove data from role_assignments.
if (empty($contextlist->count())) {
return;
}
$userid = $contextlist->get_user()->id;
$contextids = $contextlist->get_contextids();
list($contextsql, $contextparams) = $DB->get_in_or_equal($contextids, SQL_PARAMS_NAMED);
$params = ['userid' => $userid] + $contextparams;
// Only delete the roles assignments where the user is assigned in all contexts.
$DB->delete_records_select('role_assignments',
"userid = :userid AND contextid {$contextsql}", $params);
}
/**
* Delete user entries in role_assignments related to the feature
* Assign user roles to cohort feature.
*
* @param int $userid The user ID.
*/
public static function delete_user_role_to_cohort(int $userid) {
global $DB;
// Delete entries where userid is a mentor by tool_cohortroles.
$DB->delete_records('role_assignments', ['userid' => $userid, 'component' => 'tool_cohortroles']);
}
/**
* Get all the localised roles name in a simple array.
*
* @return array Array of name of the roles by roleid.
*/
protected static function get_roles_name() {
$roles = role_fix_names(get_all_roles(), \context_system::instance(), ROLENAME_ORIGINAL);
$rolesnames = array();
foreach ($roles as $role) {
$rolesnames[$role->id] = $role->localname;
}
return $rolesnames;
}
/**
* Get all the permissions name in a simple array.
*
* @return array Array of permissions name.
*/
protected static function get_permissions_name() {
$strpermissions = array(
CAP_INHERIT => get_string('inherit', 'role'),
CAP_ALLOW => get_string('allow', 'role'),
CAP_PREVENT => get_string('prevent', 'role'),
CAP_PROHIBIT => get_string('prohibit', 'role')
);
return $strpermissions;
}
}
+4 -2
View File
@@ -103,7 +103,8 @@ if ($action === 'add' and $resettype !== 'none') {
'contextlevels' => 1,
'allowassign' => 1,
'allowoverride' => 1,
'allowswitch' => 1);
'allowswitch' => 1,
'allowview' => 1);
if ($showadvanced) {
$definitiontable = new core_role_define_role_table_advanced($systemcontext, 0);
} else {
@@ -150,7 +151,8 @@ if ($action === 'add' and $resettype !== 'none') {
'contextlevels' => $data->contextlevels,
'allowassign' => $data->allowassign,
'allowoverride' => $data->allowoverride,
'allowswitch' => $data->allowswitch);
'allowswitch' => $data->allowswitch,
'allowview' => $data->allowview);
if ($showadvanced) {
$definitiontable = new core_role_define_role_table_advanced($systemcontext, $roleid);
} else {
+1
View File
@@ -29,6 +29,7 @@ $toprow[] = new tabobject('manage', new moodle_url('/admin/roles/manage.php'), g
$toprow[] = new tabobject('assign', new moodle_url('/admin/roles/allow.php', array('mode'=>'assign')), get_string('allowassign', 'core_role'));
$toprow[] = new tabobject('override', new moodle_url('/admin/roles/allow.php', array('mode'=>'override')), get_string('allowoverride', 'core_role'));
$toprow[] = new tabobject('switch', new moodle_url('/admin/roles/allow.php', array('mode'=>'switch')), get_string('allowswitch', 'core_role'));
$toprow[] = new tabobject('view', new moodle_url('/admin/roles/allow.php', ['mode' => 'view']), get_string('allowview', 'core_role'));
echo $OUTPUT->tabtree($toprow, $currenttab);
+8
View File
@@ -11,6 +11,7 @@
<xs:element ref="allowassign" minOccurs="0"/>
<xs:element ref="allowoverride" minOccurs="0"/>
<xs:element ref="allowswitch" minOccurs="0"/>
<xs:element ref="allowview" minOccurs="0"/>
<xs:element ref="permissions" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
@@ -45,6 +46,13 @@
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="allowview">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="shortname"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="permissions">
<xs:complexType>
<xs:sequence>
+1 -1
View File
@@ -44,7 +44,7 @@ class core_role_preset_testcase extends advanced_testcase {
$contextlevels = get_role_contextlevels($role->id);
$this->assertEquals(array_values($contextlevels), array_values($info['contextlevels']));
foreach (array('assign', 'override', 'switch') as $type) {
foreach (array('assign', 'override', 'switch', 'view') as $type) {
$records = $DB->get_records('role_allow_'.$type, array('roleid'=>$role->id), "allow$type ASC");
$allows = array();
foreach ($records as $record) {
+747
View File
@@ -0,0 +1,747 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy test for core_role
*
* @package core_role
* @category test
* @copyright 2018 Carlos Escobedo <carlos@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
use \core_role\privacy\provider;
use \core_privacy\local\request\approved_contextlist;
use \core_privacy\local\request\writer;
use \core_privacy\tests\provider_testcase;
use \core_privacy\local\request\transform;
use \tool_cohortroles\api;
use \core_privacy\local\request\approved_userlist;
/**
* Privacy test for core_role
*
* @copyright 2018 Carlos Escobedo <carlos@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class core_role_privacy_testcase extends provider_testcase {
/**
* Test to check export_user_preferences.
* returns user preferences data.
*/
public function test_export_user_preferences() {
$this->resetAfterTest();
$this->setAdminUser();
$user = $this->getDataGenerator()->create_user();
$this->setUser($user);
$showadvanced = 1;
set_user_preference('definerole_showadvanced', $showadvanced);
provider::export_user_preferences($user->id);
$writer = writer::with_context(\context_system::instance());
$prefs = $writer->get_user_preferences('core_role');
$this->assertEquals(transform::yesno($showadvanced), transform::yesno($prefs->definerole_showadvanced->value));
$this->assertEquals(get_string('privacy:metadata:preference:showadvanced', 'core_role'),
$prefs->definerole_showadvanced->description);
}
/**
* Check all contexts are returned if there is any user data for this user.
*/
public function test_get_contexts_for_userid() {
global $DB;
$this->resetAfterTest();
$this->setAdminUser();
$user = $this->getDataGenerator()->create_user();
$this->assertEmpty(provider::get_contexts_for_userid($user->id));
$user2 = $this->getDataGenerator()->create_user();
$usercontext2 = \context_user::instance($user2->id);
$course = $this->getDataGenerator()->create_course();
$course2 = $this->getDataGenerator()->create_course();
$coursecat = $this->getDataGenerator()->create_category();
$cm = $this->getDataGenerator()->create_module('chat', ['course' => $course->id]);
$cmcontext = \context_module::instance($cm->cmid);
$page = $this->getDataGenerator()->create_module('page', array('course' => $course->id));
$cmcontext2 = \context_module::instance($page->cmid);
$coursecontext = \context_course::instance($course->id);
$coursecontext2 = \context_course::instance($course2->id);
$coursecatcontext = \context_coursecat::instance($coursecat->id);
$systemcontext = \context_system::instance();
$block = $this->getDataGenerator()->create_block('online_users');
$blockcontext = \context_block::instance($block->id);
$student = $DB->get_record('role', array('shortname' => 'student'), '*', MUST_EXIST);
$manager = $DB->get_record('role', array('shortname' => 'manager'), '*', MUST_EXIST);
// Role assignments, where the user is assigned.
role_assign($student->id, $user->id, $cmcontext2->id);
role_assign($student->id, $user->id, $coursecontext2->id);
role_assign($student->id, $user->id, $blockcontext->id);
role_assign($manager->id, $user->id, $usercontext2->id);
// Role assignments, where the user makes assignments.
$this->setUser($user);
role_assign($student->id, $user2->id, $coursecontext->id);
role_assign($manager->id, $user2->id, $coursecatcontext->id);
role_assign($manager->id, $user2->id, $systemcontext->id);
// Role capabilities.
$this->setUser($user);
$result = assign_capability('moodle/backup:backupcourse', CAP_ALLOW, $student->id, $cmcontext->id);
$contextlist = provider::get_contexts_for_userid($user->id)->get_contextids();
$this->assertCount(8, $contextlist);
$this->assertTrue(in_array($cmcontext->id, $contextlist));
}
/**
* Test that user data is exported correctly.
*/
public function test_export_user_data() {
global $DB;
$this->resetAfterTest();
$this->setAdminUser();
$user = $this->getDataGenerator()->create_user();
$user2 = $this->getDataGenerator()->create_user();
$usercontext2 = \context_user::instance($user2->id);
$course = $this->getDataGenerator()->create_course();
$course2 = $this->getDataGenerator()->create_course();
$coursecat = $this->getDataGenerator()->create_category();
$cm = $this->getDataGenerator()->create_module('chat', ['course' => $course->id]);
$cmcontext = \context_module::instance($cm->cmid);
$page = $this->getDataGenerator()->create_module('page', array('course' => $course->id));
$cmcontext2 = \context_module::instance($page->cmid);
$coursecontext = \context_course::instance($course->id);
$coursecontext2 = \context_course::instance($course2->id);
$coursecatcontext = \context_coursecat::instance($coursecat->id);
$systemcontext = \context_system::instance();
$block = $this->getDataGenerator()->create_block('online_users');
$blockcontext = \context_block::instance($block->id);
$student = $DB->get_record('role', array('shortname' => 'student'), '*', MUST_EXIST);
$manager = $DB->get_record('role', array('shortname' => 'manager'), '*', MUST_EXIST);
$rolesnames = self::get_roles_name();
$subcontextstudent = [
get_string('privacy:metadata:role_assignments', 'core_role'),
$rolesnames[$student->id]
];
$subcontextmanager = [
get_string('privacy:metadata:role_assignments', 'core_role'),
$rolesnames[$manager->id]
];
$subcontextrc = [
get_string('privacy:metadata:role_capabilities', 'core_role'),
$rolesnames[$student->id]
];
// Test over role assignments.
// Where the user is assigned.
role_assign($student->id, $user->id, $cmcontext2->id);
role_assign($student->id, $user->id, $coursecontext2->id);
role_assign($student->id, $user->id, $blockcontext->id);
role_assign($manager->id, $user->id, $usercontext2->id);
// Where the user makes assignments.
$this->setUser($user);
role_assign($manager->id, $user2->id, $coursecatcontext->id);
role_assign($manager->id, $user2->id, $systemcontext->id);
// Test overridable roles in module, course, category, user, system and block.
assign_capability('moodle/backup:backupactivity', CAP_ALLOW, $student->id, $cmcontext->id, true);
assign_capability('moodle/backup:backupcourse', CAP_ALLOW, $student->id, $coursecontext->id, true);
assign_capability('moodle/category:manage', CAP_ALLOW, $student->id, $coursecatcontext->id, true);
assign_capability('moodle/backup:backupcourse', CAP_ALLOW, $student->id, $systemcontext->id, true);
assign_capability('moodle/block:edit', CAP_ALLOW, $student->id, $blockcontext->id, true);
assign_capability('moodle/competency:evidencedelete', CAP_ALLOW, $student->id, $usercontext2->id, true);
// Retrieve the user's context ids.
$contextlist = provider::get_contexts_for_userid($user->id);
$approvedcontextlist = new approved_contextlist($user, 'core_role', $contextlist->get_contextids());
$strpermissions = array(
CAP_INHERIT => get_string('inherit', 'role'),
CAP_ALLOW => get_string('allow', 'role'),
CAP_PREVENT => get_string('prevent', 'role'),
CAP_PROHIBIT => get_string('prohibit', 'role')
);
// Retrieve role capabilities and role assignments.
provider::export_user_data($approvedcontextlist);
foreach ($contextlist as $context) {
$writer = writer::with_context($context);
$this->assertTrue($writer->has_any_data());
if ($context->contextlevel == CONTEXT_MODULE) {
if ($data = $writer->get_data($subcontextstudent)) {
$this->assertEquals($user->id, reset($data)->userid);
}
if ($data = $writer->get_data($subcontextrc)) {
$this->assertEquals('moodle/backup:backupactivity', reset($data)->capability);
$this->assertEquals($strpermissions[CAP_ALLOW], reset($data)->permission);
}
}
if ($context->contextlevel == CONTEXT_COURSE) {
if ($data = $writer->get_data($subcontextstudent)) {
$this->assertEquals($user->id, reset($data)->userid);
}
if ($data = $writer->get_data($subcontextrc)) {
$this->assertEquals('moodle/backup:backupcourse', reset($data)->capability);
}
}
if ($context->contextlevel == CONTEXT_COURSECAT) {
if ($data = $writer->get_data($subcontextmanager)) {
$this->assertEquals($user->id, reset($data)->modifierid);
}
if ($data = $writer->get_data($subcontextrc)) {
$this->assertEquals('moodle/category:manage', reset($data)->capability);
}
}
if ($context->contextlevel == CONTEXT_SYSTEM) {
if ($data = $writer->get_data($subcontextmanager)) {
$this->assertEquals($user->id, reset($data)->modifierid);
}
if ($data = $writer->get_data($subcontextrc)) {
$this->assertEquals('moodle/backup:backupcourse', reset($data)->capability);
}
}
if ($context->contextlevel == CONTEXT_BLOCK) {
if ($data = $writer->get_data($subcontextstudent)) {
$this->assertEquals($user->id, reset($data)->userid);
}
if ($data = $writer->get_data($subcontextrc)) {
$this->assertEquals('moodle/block:edit', reset($data)->capability);
}
}
if ($context->contextlevel == CONTEXT_USER) {
if ($data = $writer->get_data($subcontextmanager)) {
$this->assertEquals($user->id, reset($data)->userid);
}
if ($data = $writer->get_data($subcontextrc)) {
$this->assertEquals('moodle/competency:evidencedelete', reset($data)->capability);
}
}
}
}
/**
* Test for provider::delete_data_for_all_users_in_context().
*/
public function test_delete_data_for_all_users_in_context() {
global $DB;
$this->resetAfterTest();
$this->setAdminUser();
$user = $this->getDataGenerator()->create_user();
$user2 = $this->getDataGenerator()->create_user();
$usercontext2 = \context_user::instance($user2->id);
$user3 = $this->getDataGenerator()->create_user();
$course = $this->getDataGenerator()->create_course();
$coursecontext = \context_course::instance($course->id);
$coursecat = $this->getDataGenerator()->create_category();
$coursecatcontext = \context_coursecat::instance($coursecat->id);
$systemcontext = \context_system::instance();
$cm = $this->getDataGenerator()->create_module('chat', ['course' => $course->id]);
$cmcontext = \context_module::instance($cm->cmid);
$student = $DB->get_record('role', array('shortname' => 'student'), '*', MUST_EXIST);
$manager = $DB->get_record('role', array('shortname' => 'manager'), '*', MUST_EXIST);
$block = $this->getDataGenerator()->create_block('online_users');
$blockcontext = \context_block::instance($block->id);
// Role assignments CONTEXT_COURSE.
role_assign($student->id, $user->id, $coursecontext->id);
role_assign($student->id, $user2->id, $coursecontext->id);
role_assign($student->id, $user3->id, $coursecontext->id);
$count = $DB->count_records('role_assignments', ['contextid' => $coursecontext->id]);
$this->assertEquals(3, $count);
// Role assignments CONTEXT_COURSECAT.
role_assign($student->id, $user2->id, $coursecatcontext->id);
role_assign($student->id, $user3->id, $coursecatcontext->id);
$count = $DB->count_records('role_assignments', ['contextid' => $coursecatcontext->id]);
$this->assertEquals(2, $count);
// Role assignments CONTEXT_SYSTEM.
role_assign($student->id, $user->id, $systemcontext->id);
$count = $DB->count_records('role_assignments', ['contextid' => $systemcontext->id]);
$this->assertEquals(1, $count);
// Role assignments CONTEXT_MODULE.
role_assign($student->id, $user->id, $cmcontext->id);
$count = $DB->count_records('role_assignments', ['contextid' => $cmcontext->id]);
$this->assertEquals(1, $count);
// Role assigments CONTEXT_BLOCK.
role_assign($student->id, $user->id, $blockcontext->id);
$count = $DB->count_records('role_assignments', ['contextid' => $blockcontext->id]);
$this->assertEquals(1, $count);
// Role assigments CONTEXT_USER.
role_assign($manager->id, $user->id, $usercontext2->id);
$count = $DB->count_records('role_assignments', ['contextid' => $usercontext2->id]);
$this->assertEquals(1, $count);
// Delete data based on CONTEXT_COURSE context.
provider::delete_data_for_all_users_in_context($coursecontext);
// After deletion, the role_assignments entries for this context should have been deleted.
$count = $DB->count_records('role_assignments', ['contextid' => $coursecontext->id]);
$this->assertEquals(0, $count);
// Check it is not removing data on other contexts.
$count = $DB->count_records('role_assignments', ['contextid' => $coursecatcontext->id]);
$this->assertEquals(2, $count);
$count = $DB->count_records('role_assignments', ['contextid' => $systemcontext->id]);
$this->assertEquals(1, $count);
$count = $DB->count_records('role_assignments', ['contextid' => $cmcontext->id]);
$this->assertEquals(1, $count);
// Delete data based on CONTEXT_COURSECAT context.
provider::delete_data_for_all_users_in_context($coursecatcontext);
// After deletion, the role_assignments entries for this context should have been deleted.
$count = $DB->count_records('role_assignments', ['contextid' => $coursecatcontext->id]);
$this->assertEquals(0, $count);
// Delete data based on CONTEXT_SYSTEM context.
provider::delete_data_for_all_users_in_context($systemcontext);
// After deletion, the role_assignments entries for this context should have been deleted.
$count = $DB->count_records('role_assignments', ['contextid' => $systemcontext->id]);
$this->assertEquals(0, $count);
// Delete data based on CONTEXT_MODULE context.
provider::delete_data_for_all_users_in_context($cmcontext);
// After deletion, the role_assignments entries for this context should have been deleted.
$count = $DB->count_records('role_assignments', ['contextid' => $cmcontext->id]);
$this->assertEquals(0, $count);
// Delete data based on CONTEXT_BLOCK context.
provider::delete_data_for_all_users_in_context($usercontext2);
// After deletion, the role_assignments entries for this context should have been deleted.
$count = $DB->count_records('role_assignments', ['contextid' => $usercontext2->id]);
$this->assertEquals(0, $count);
}
/**
* Test for provider::delete_data_for_user().
*/
public function test_delete_data_for_user() {
global $DB;
$this->resetAfterTest();
$this->setAdminUser();
$user = $this->getDataGenerator()->create_user();
$user2 = $this->getDataGenerator()->create_user();
$usercontext2 = \context_user::instance($user2->id);
$user3 = $this->getDataGenerator()->create_user();
$usercontext3 = \context_user::instance($user3->id);
$course = $this->getDataGenerator()->create_course();
$course2 = $this->getDataGenerator()->create_course();
$course3 = $this->getDataGenerator()->create_course();
$coursecontext = \context_course::instance($course->id);
$coursecontext2 = \context_course::instance($course2->id);
$coursecontext3 = \context_course::instance($course3->id);
$coursecat = $this->getDataGenerator()->create_category();
$coursecatcontext = \context_coursecat::instance($coursecat->id);
$systemcontext = \context_system::instance();
$cm = $this->getDataGenerator()->create_module('chat', ['course' => $course->id]);
$cmcontext = \context_module::instance($cm->cmid);
$student = $DB->get_record('role', array('shortname' => 'student'), '*', MUST_EXIST);
$manager = $DB->get_record('role', array('shortname' => 'manager'), '*', MUST_EXIST);
$block = $this->getDataGenerator()->create_block('online_users');
$blockcontext = \context_block::instance($block->id);
// Role assignments, Where the user is assigned.
role_assign($student->id, $user->id, $coursecontext->id);
role_assign($student->id, $user->id, $coursecontext2->id);
role_assign($student->id, $user->id, $coursecatcontext->id);
role_assign($student->id, $user->id, $cmcontext->id);
role_assign($student->id, $user->id, $systemcontext->id);
role_assign($student->id, $user->id, $blockcontext->id);
role_assign($manager->id, $user->id, $usercontext2->id);
role_assign($manager->id, $user->id, $usercontext3->id);
$count = $DB->count_records('role_assignments', ['userid' => $user->id]);
$this->assertEquals(8, $count);
// Role assignments, where the user makes assignments.
$this->setUser($user);
role_assign($student->id, $user2->id, $coursecontext3->id);
role_assign($student->id, $user3->id, $coursecontext3->id);
$count = $DB->count_records('role_assignments', ['modifierid' => $user->id]);
$this->assertEquals(2, $count);
$contextlist = provider::get_contexts_for_userid($user->id);
$approvedcontextlist = new approved_contextlist($user, 'core_role', $contextlist->get_contextids());
provider::delete_data_for_user($approvedcontextlist);
// After deletion, the role_assignments assigned to the user should have been deleted.
$count = $DB->count_records('role_assignments', ['userid' => $user->id]);
$this->assertEquals(0, $count);
// After deletion, the role_assignments assigned by the user should not have been deleted.
$count = $DB->count_records('role_assignments', ['modifierid' => $user->id]);
$this->assertEquals(2, $count);
}
/**
* Export for a user with a key against a script where no instance is specified.
*/
public function test_export_user_role_to_cohort() {
global $DB;
$this->resetAfterTest();
$this->setAdminUser();
// Assign user roles to cohort.
$user = $this->getDataGenerator()->create_user();
$contextuser = \context_user::instance($user->id);
$teacher = $DB->get_record('role', array('shortname' => 'teacher'), '*', MUST_EXIST);
$cohort = $this->getDataGenerator()->create_cohort();
$userassignover = $this->getDataGenerator()->create_user();
$contextuserassignover = \context_user::instance($userassignover->id);
cohort_add_member($cohort->id, $userassignover->id);
$this->setAdminUser();
$params = (object) array(
'userid' => $user->id,
'roleid' => $teacher->id,
'cohortid' => $cohort->id
);
api::create_cohort_role_assignment($params);
api::sync_all_cohort_roles();
$rolesnames = self::get_roles_name();
$subcontextteacher = [
get_string('privacy:metadata:role_cohortroles', 'core_role'),
$rolesnames[$teacher->id]
];
// Test User is assigned role teacher to cohort.
provider::export_user_role_to_cohort($user->id);
$writer = writer::with_context($contextuserassignover);
$this->assertTrue($writer->has_any_data());
$exported = $writer->get_related_data($subcontextteacher, 'cohortroles');
$this->assertEquals($user->id, reset($exported)->userid);
// Test User is member of a cohort which User2 is assigned to role to this cohort.
$user2 = $this->getDataGenerator()->create_user();
$cohort2 = $this->getDataGenerator()->create_cohort();
cohort_add_member($cohort2->id, $user->id);
$params = (object) array(
'userid' => $user2->id,
'roleid' => $teacher->id,
'cohortid' => $cohort2->id
);
api::create_cohort_role_assignment($params);
api::sync_all_cohort_roles();
provider::export_user_role_to_cohort($user->id);
$writer = writer::with_context($contextuser);
$this->assertTrue($writer->has_any_data());
$exported = $writer->get_related_data($subcontextteacher, 'cohortroles');
$this->assertEquals($user2->id, reset($exported)->userid);
}
/**
* Test for provider::delete_user_role_to_cohort().
*/
public function test_delete_user_role_to_cohort() {
global $DB;
$this->resetAfterTest();
$this->setAdminUser();
// Assign user roles to cohort.
$user = $this->getDataGenerator()->create_user();
$user2 = $this->getDataGenerator()->create_user();
$user3 = $this->getDataGenerator()->create_user();
$user4 = $this->getDataGenerator()->create_user();
$teacher = $DB->get_record('role', array('shortname' => 'teacher'), '*', MUST_EXIST);
$cohort = $this->getDataGenerator()->create_cohort();
cohort_add_member($cohort->id, $user2->id);
cohort_add_member($cohort->id, $user3->id);
cohort_add_member($cohort->id, $user4->id);
$this->setAdminUser();
$params = (object) array(
'userid' => $user->id,
'roleid' => $teacher->id,
'cohortid' => $cohort->id
);
api::create_cohort_role_assignment($params);
api::sync_all_cohort_roles();
$count = $DB->count_records('role_assignments', ['userid' => $user->id, 'component' => 'tool_cohortroles']);
$this->assertEquals(3, $count);
provider::delete_user_role_to_cohort($user->id);
$count = $DB->count_records('role_assignments', ['userid' => $user->id, 'component' => 'tool_cohortroles']);
$this->assertEquals(0, $count);
}
/**
* Test that only users within a course context are fetched.
*/
public function test_get_users_in_context() {
global $DB;
$this->resetAfterTest();
$component = 'core_role';
$this->setAdminUser();
$admin = \core_user::get_user_by_username('admin');
// Create user1.
$user1 = $this->getDataGenerator()->create_user();
$usercontext1 = \context_user::instance($user1->id);
// Create user2.
$user2 = $this->getDataGenerator()->create_user();
$usercontext2 = \context_user::instance($user2->id);
// Create course1.
$course1 = $this->getDataGenerator()->create_course();
$coursecontext1 = \context_course::instance($course1->id);
// Create course category.
$coursecat = $this->getDataGenerator()->create_category();
$coursecatcontext = \context_coursecat::instance($coursecat->id);
// Create chat module.
$cm = $this->getDataGenerator()->create_module('chat', ['course' => $course1->id]);
$cmcontext = \context_module::instance($cm->cmid);
$systemcontext = \context_system::instance();
// Create a block.
$block = $this->getDataGenerator()->create_block('online_users');
$blockcontext = \context_block::instance($block->id);
$studentrole = $DB->get_record('role', array('shortname' => 'student'), '*', MUST_EXIST);
$managerrole = $DB->get_record('role', array('shortname' => 'manager'), '*', MUST_EXIST);
// Role assignments CONTEXT_COURSE.
role_assign($studentrole->id, $user1->id, $coursecontext1->id);
role_assign($studentrole->id, $user2->id, $coursecontext1->id);
// Role assignments CONTEXT_COURSECAT.
role_assign($studentrole->id, $user2->id, $coursecatcontext->id);
// Role assignments CONTEXT_SYSTEM.
role_assign($studentrole->id, $user1->id, $systemcontext->id);
// Role assignments CONTEXT_MODULE.
role_assign($studentrole->id, $user2->id, $cmcontext->id);
// Role assigments CONTEXT_BLOCK.
role_assign($studentrole->id, $user1->id, $blockcontext->id);
// Role assigments CONTEXT_USER.
role_assign($managerrole->id, $user1->id, $usercontext2->id);
// Role capabilities.
$this->setUser($user1);
assign_capability('moodle/backup:backupcourse', CAP_ALLOW, $studentrole->id, $cmcontext->id);
// The user list for usercontext1 should not return any users.
$userlist1 = new \core_privacy\local\request\userlist($usercontext1, $component);
provider::get_users_in_context($userlist1);
$this->assertCount(0, $userlist1);
// The user list for usercontext2 should user1 and admin (role creator).
$userlist2 = new \core_privacy\local\request\userlist($usercontext2, $component);
provider::get_users_in_context($userlist2);
$this->assertCount(2, $userlist2);
$expected = [
$user1->id,
$admin->id
];
$this->assertEquals($expected, $userlist2->get_userids(), '', 0.0, 10, true);
// The user list for coursecontext1 should user1, user2 and admin (role creator).
$userlist3 = new \core_privacy\local\request\userlist($coursecontext1, $component);
provider::get_users_in_context($userlist3);
$this->assertCount(3, $userlist3);
$expected = [
$user1->id,
$user2->id,
$admin->id
];
$this->assertEquals($expected, $userlist3->get_userids(), '', 0.0, 10, true);
// The user list for coursecatcontext should user2 and admin (role creator).
$userlist4 = new \core_privacy\local\request\userlist($coursecatcontext, $component);
provider::get_users_in_context($userlist4);
$this->assertCount(2, $userlist4);
$expected = [
$user2->id,
$admin->id
];
$this->assertEquals($expected, $userlist4->get_userids(), '', 0.0, 10, true);
// The user list for systemcontext should user1 and admin (role creator).
$userlist6 = new \core_privacy\local\request\userlist($systemcontext, $component);
provider::get_users_in_context($userlist6);
$this->assertCount(2, $userlist6);
$expected = [
$user1->id,
$admin->id
];
$this->assertEquals($expected, $userlist6->get_userids(), '', 0.0, 10, true);
// The user list for cmcontext should user1, user2 and admin (role creator).
$userlist7 = new \core_privacy\local\request\userlist($cmcontext, $component);
provider::get_users_in_context($userlist7);
$this->assertCount(3, $userlist7);
$expected = [
$user1->id,
$user2->id,
$admin->id
];
$this->assertEquals($expected, $userlist7->get_userids(), '', 0.0, 10, true);
// The user list for blockcontext should user1 and admin (role creator).
$userlist8 = new \core_privacy\local\request\userlist($blockcontext, $component);
provider::get_users_in_context($userlist8);
$this->assertCount(2, $userlist8);
$expected = [
$user1->id,
$admin->id
];
$this->assertEquals($expected, $userlist8->get_userids(), '', 0.0, 10, true);
}
/**
* Test that data for users in approved userlist is deleted.
*/
public function test_delete_data_for_users() {
global $DB;
$this->resetAfterTest();
$component = 'core_role';
$this->setAdminUser();
$admin = \core_user::get_user_by_username('admin');
// Create user1.
$user1 = $this->getDataGenerator()->create_user();
// Create user2.
$user2 = $this->getDataGenerator()->create_user();
$usercontext2 = \context_user::instance($user2->id);
// Create course1.
$course1 = $this->getDataGenerator()->create_course();
$coursecontext1 = \context_course::instance($course1->id);
// Create course category.
$coursecat = $this->getDataGenerator()->create_category();
$coursecatcontext = \context_coursecat::instance($coursecat->id);
// Create chat module.
$cm = $this->getDataGenerator()->create_module('chat', ['course' => $course1->id]);
$cmcontext = \context_module::instance($cm->cmid);
$systemcontext = \context_system::instance();
// Create a block.
$block = $this->getDataGenerator()->create_block('online_users');
$blockcontext = \context_block::instance($block->id);
$studentrole = $DB->get_record('role', array('shortname' => 'student'), '*', MUST_EXIST);
$managerrole = $DB->get_record('role', array('shortname' => 'manager'), '*', MUST_EXIST);
// Role assignments CONTEXT_COURSE.
role_assign($studentrole->id, $user1->id, $coursecontext1->id);
role_assign($studentrole->id, $user2->id, $coursecontext1->id);
// Role assignments CONTEXT_COURSECAT.
role_assign($studentrole->id, $user2->id, $coursecatcontext->id);
// Role assignments CONTEXT_SYSTEM.
role_assign($studentrole->id, $user1->id, $systemcontext->id);
// Role assignments CONTEXT_MODULE.
role_assign($studentrole->id, $user2->id, $cmcontext->id);
// Role assigments CONTEXT_BLOCK.
role_assign($studentrole->id, $user1->id, $blockcontext->id);
// Role assigments CONTEXT_USER.
role_assign($managerrole->id, $user1->id, $usercontext2->id);
// Role capabilities.
$this->setUser($user1);
assign_capability('moodle/backup:backupcourse', CAP_ALLOW, $studentrole->id, $cmcontext->id);
// The user list for usercontext2 should user1 and admin (role creator).
$userlist1 = new \core_privacy\local\request\userlist($usercontext2, $component);
provider::get_users_in_context($userlist1);
$this->assertCount(2, $userlist1);
// The user list for coursecontext1 should user1, user2 and admin (role creator).
$userlist2 = new \core_privacy\local\request\userlist($coursecontext1, $component);
provider::get_users_in_context($userlist2);
$this->assertCount(3, $userlist2);
// The user list for coursecatcontext should user2 and admin (role creator).
$userlist3 = new \core_privacy\local\request\userlist($coursecatcontext, $component);
provider::get_users_in_context($userlist3);
$this->assertCount(2, $userlist3);
// The user list for systemcontext should user1 and admin (role creator).
$userlist4 = new \core_privacy\local\request\userlist($systemcontext, $component);
provider::get_users_in_context($userlist4);
$this->assertCount(2, $userlist4);
// The user list for cmcontext should user1, user2 and admin (role creator).
$userlist5 = new \core_privacy\local\request\userlist($cmcontext, $component);
provider::get_users_in_context($userlist5);
$this->assertCount(3, $userlist5);
// The user list for blockcontext should user1 and admin (role creator).
$userlist6 = new \core_privacy\local\request\userlist($blockcontext, $component);
provider::get_users_in_context($userlist6);
$this->assertCount(2, $userlist6);
// Convert $userlist1 into an approved_contextlist.
$approvedlist1 = new approved_userlist($usercontext2, $component, $userlist1->get_userids());
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist1);
// Re-fetch users in usercontext2.
$userlist1 = new \core_privacy\local\request\userlist($usercontext2, $component);
provider::get_users_in_context($userlist1);
$this->assertCount(0, $userlist1);
// Convert $userlist2 into an approved_contextlist.
$approvedlist2 = new approved_userlist($coursecontext1, $component, $userlist2->get_userids());
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist2);
// Re-fetch users in coursecontext1.
$userlist2 = new \core_privacy\local\request\userlist($coursecontext1, $component);
provider::get_users_in_context($userlist2);
$this->assertCount(0, $userlist2);
// Convert $userlist3 into an approved_contextlist.
$approvedlist3 = new approved_userlist($coursecatcontext, $component, $userlist3->get_userids());
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist3);
// Re-fetch users in coursecatcontext.
$userlist3 = new \core_privacy\local\request\userlist($coursecatcontext, $component);
provider::get_users_in_context($userlist3);
$this->assertCount(0, $userlist3);
// Convert $userlist4 into an approved_contextlist.
$approvedlist4 = new approved_userlist($systemcontext, $component, $userlist4->get_userids());
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist4);
// Re-fetch users in systemcontext.
$userlist4 = new \core_privacy\local\request\userlist($systemcontext, $component);
provider::get_users_in_context($userlist4);
// The data from role_capabilities should still be present. The user list should return the admin user.
$this->assertCount(1, $userlist4);
$expected = [$admin->id];
$this->assertEquals($expected, $userlist4->get_userids());
// Convert $userlist5 into an approved_contextlist.
$approvedlist5 = new approved_userlist($cmcontext, $component, $userlist5->get_userids());
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist5);
// Re-fetch users in cmcontext.
$userlist5 = new \core_privacy\local\request\userlist($cmcontext, $component);
provider::get_users_in_context($userlist5);
// The data from role_capabilities should still be present. The user list should return user1.
$this->assertCount(1, $userlist5);
$expected = [$user1->id];
$this->assertEquals($expected, $userlist5->get_userids());
// Convert $userlist6 into an approved_contextlist.
$approvedlist6 = new approved_userlist($blockcontext, $component, $userlist6->get_userids());
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist6);
// Re-fetch users in blockcontext.
$userlist6 = new \core_privacy\local\request\userlist($blockcontext, $component);
provider::get_users_in_context($userlist6);
$this->assertCount(0, $userlist6);
}
/**
* Supoort function to get all the localised roles name
* in a simple array for testing.
*
* @return array Array of name of the roles by roleid.
*/
protected static function get_roles_name() {
$roles = role_fix_names(get_all_roles(), \context_system::instance(), ROLENAME_ORIGINAL);
$rolesnames = array();
foreach ($roles as $role) {
$rolesnames[$role->id] = $role->localname;
}
return $rolesnames;
}
}
+5 -4
View File
@@ -32,15 +32,16 @@ $focus = '';
// now we'll deal with the case that the admin has submitted the form with changed settings
if ($data = data_submitted() and confirm_sesskey() and isset($data->action) and $data->action == 'save-settings') {
require_capability('moodle/site:config', $context);
if (admin_write_settings($data)) {
redirect($PAGE->url, get_string('changessaved'), null, \core\output\notification::NOTIFY_SUCCESS);
}
$count = admin_write_settings($data);
if (!empty($adminroot->errors)) {
$errormsg = get_string('errorwithsettings', 'admin');
$firsterror = reset($adminroot->errors);
$focus = $firsterror->id;
} else {
// No errors. Did we change any setting? If so, then redirect with success.
if ($count) {
redirect($PAGE->url, get_string('changessaved'), null, \core\output\notification::NOTIFY_SUCCESS);
}
redirect($PAGE->url);
}
}
+136 -61
View File
@@ -28,85 +28,139 @@ admin_externalpage_setup('searchareas');
$areaid = optional_param('areaid', null, PARAM_ALPHAEXT);
$action = optional_param('action', null, PARAM_ALPHA);
$indexingenabled = \core_search\manager::is_indexing_enabled(); // This restricts many of the actions on this page.
// Get a search manager instance, which we'll need for display and to handle some actions.
try {
$searchmanager = \core_search\manager::instance();
} catch (core_search\engine_exception $searchmanagererror) {
// Continue, we return an error later depending on the requested action.
// In action cases, we'll throw this exception below. In non-action cases, we produce a lang string error.
}
echo $OUTPUT->header();
// Handle all the actions.
if ($action) {
require_sesskey();
// If dealing with an areaid, we need to check that the area exists.
if ($areaid) {
// We need to check that the area exists.
$area = \core_search\manager::get_search_area($areaid);
if ($area === false) {
throw new moodle_exception('invalidrequest');
}
}
// All actions but enable/disable need the search engine to be ready.
if ($action !== 'enable' && $action !== 'disable') {
if (!empty($searchmanagererror)) {
throw $searchmanagererror;
// All the indexing actions.
if (in_array($action, ['delete', 'indexall', 'reindexall', 'deleteall'])) {
// All of these actions require that indexing is enabled.
if ($indexingenabled) {
// For all of these actions, we strictly need a manager instance.
if (isset($searchmanagererror)) {
throw $searchmanagererror;
}
// Show confirm prompt for all these actions as they may be inadvisable, or may cause
// an interruption in search functionality, on production systems.
if (!optional_param('confirm', 0, PARAM_INT)) {
// Display confirmation prompt.
$a = null;
if ($areaid) {
$a = html_writer::tag('strong', $area->get_visible_name());
}
$actionparams = ['sesskey' => sesskey(), 'action' => $action, 'confirm' => 1];
if ($areaid) {
$actionparams['areaid'] = $areaid;
}
$actionurl = new moodle_url('/admin/searchareas.php', $actionparams);
$cancelurl = new moodle_url('/admin/searchareas.php');
echo $OUTPUT->header();
echo $OUTPUT->confirm(get_string('confirm_' . $action, 'search', $a),
new single_button($actionurl, get_string('continue'), 'post', true),
new single_button($cancelurl, get_string('cancel'), 'get'));
echo $OUTPUT->footer();
exit;
} else {
// Confirmed, so run the required action.
require_sesskey();
switch ($action) {
case 'delete':
$searchmanager->delete_index($areaid);
\core\notification::success(get_string('searchindexdeleted', 'admin'));
break;
case 'indexall':
$searchmanager->index();
\core\notification::success(get_string('searchindexupdated', 'admin'));
break;
case 'reindexall':
$searchmanager->index(true);
\core\notification::success(get_string('searchreindexed', 'admin'));
break;
case 'deleteall':
$searchmanager->delete_index();
\core\notification::success(get_string('searchalldeleted', 'admin'));
break;
default:
break;
}
// Redirect back to the main page after taking action.
redirect(new moodle_url('/admin/searchareas.php'));
}
}
}
} else if (in_array($action, ['enable', 'disable'])) {
// Toggling search areas requires no confirmation.
require_sesskey();
switch ($action) {
case 'enable':
$area->set_enabled(true);
echo $OUTPUT->notification(get_string('searchareaenabled', 'admin'), \core\output\notification::NOTIFY_SUCCESS);
break;
case 'disable':
$area->set_enabled(false);
echo $OUTPUT->notification(get_string('searchareadisabled', 'admin'), \core\output\notification::NOTIFY_SUCCESS);
break;
case 'delete':
$search = \core_search\manager::instance();
$search->delete_index($areaid);
echo $OUTPUT->notification(get_string('searchindexdeleted', 'admin'), \core\output\notification::NOTIFY_SUCCESS);
break;
case 'indexall':
$searchmanager->index();
echo $OUTPUT->notification(get_string('searchindexupdated', 'admin'), \core\output\notification::NOTIFY_SUCCESS);
break;
case 'reindexall':
$searchmanager->index(true);
echo $OUTPUT->notification(get_string('searchreindexed', 'admin'), \core\output\notification::NOTIFY_SUCCESS);
break;
case 'deleteall':
$searchmanager->delete_index();
echo $OUTPUT->notification(get_string('searchalldeleted', 'admin'), \core\output\notification::NOTIFY_SUCCESS);
break;
default:
throw new moodle_exception('invalidaction');
break;
switch ($action) {
case 'enable':
$area->set_enabled(true);
\core\notification::success(get_string('searchareaenabled', 'admin'));
break;
case 'disable':
$area->set_enabled(false);
core\notification::success(get_string('searchareadisabled', 'admin'));
break;
default:
break;
}
redirect(new moodle_url('/admin/searchareas.php'));
} else {
// Invalid action.
throw new moodle_exception('invalidaction');
}
}
$searchareas = \core_search\manager::get_search_areas_list();
if (empty($searchmanagererror)) {
$areasconfig = $searchmanager->get_areas_config($searchareas);
// Display.
if (isset($searchmanager) && $indexingenabled) {
\core\notification::info(get_string('indexinginfo', 'admin'));
} else if (isset($searchmanager)) {
$params = (object) [
'url' => (new moodle_url("/admin/settings.php?section=manageglobalsearch#admin-searchindexwhendisabled"))->out(false)
];
\core\notification::error(get_string('indexwhendisabledfullnotice', 'search', $params));
} else {
$areasconfig = false;
}
if (!empty($searchmanagererror)) {
// In non-action cases, init errors are translated and displayed to the user as error notifications.
$errorstr = get_string($searchmanagererror->errorcode, $searchmanagererror->module, $searchmanagererror->a);
echo $OUTPUT->notification($errorstr, \core\output\notification::NOTIFY_ERROR);
} else {
echo $OUTPUT->notification(get_string('indexinginfo', 'admin'), \core\output\notification::NOTIFY_INFO);
\core\notification::error($errorstr);
}
echo $OUTPUT->header();
$table = new html_table();
$table->id = 'core-search-areas';
$table->head = [
get_string('searcharea', 'search'),
get_string('enable'),
get_string('newestdocindexed', 'admin'),
get_string('searchlastrun', 'admin'),
get_string('searchindexactions', 'admin')
];
$table->head = array(get_string('searcharea', 'search'), get_string('enable'), get_string('newestdocindexed', 'admin'),
get_string('searchlastrun', 'admin'), get_string('searchindexactions', 'admin'));
$searchareas = \core_search\manager::get_search_areas_list();
$areasconfig = isset($searchmanager) ? $searchmanager->get_areas_config($searchareas) : false;
foreach ($searchareas as $area) {
$areaid = $area->get_area_id();
$columns = array(new html_table_cell($area->get_visible_name()));
@@ -116,7 +170,7 @@ foreach ($searchareas as $area) {
new pix_icon('t/hide', get_string('disable'), 'moodle', array('title' => '', 'class' => 'iconsmall')),
null, array('title' => get_string('disable')));
if ($areasconfig) {
if ($areasconfig && $indexingenabled) {
$columns[] = $areasconfig[$areaid]->lastindexrun;
if ($areasconfig[$areaid]->indexingstart) {
@@ -132,10 +186,24 @@ foreach ($searchareas as $area) {
$laststatus = '';
}
$columns[] = $laststatus;
$columns[] = html_writer::link(admin_searcharea_action_url('delete', $areaid), 'Delete index');
$accesshide = html_writer::span($area->get_visible_name(), 'accesshide');
$actions = [];
$actions[] = $OUTPUT->pix_icon('t/delete', '') .
html_writer::link(admin_searcharea_action_url('delete', $areaid),
get_string('deleteindex', 'search', $accesshide));
if ($area->supports_get_document_recordset()) {
$actions[] = $OUTPUT->pix_icon('i/reload', '') . html_writer::link(
new moodle_url('searchreindex.php', ['areaid' => $areaid]),
get_string('gradualreindex', 'search', $accesshide));
}
$columns[] = html_writer::alist($actions, ['class' => 'unstyled list-unstyled']);
} else {
$blankrow = new html_table_cell(get_string('searchnotavailable', 'admin'));
if (!$areasconfig) {
$blankrow = new html_table_cell(get_string('searchnotavailable', 'admin'));
} else {
$blankrow = new html_table_cell(get_string('indexwhendisabledshortnotice', 'search'));
}
$blankrow->colspan = 3;
$columns[] = $blankrow;
}
@@ -154,10 +222,7 @@ foreach ($searchareas as $area) {
}
// Cross-search area tasks.
$options = array();
if (!empty($searchmanagererror)) {
$options['disabled'] = true;
}
$options = (isset($searchmanager) && $indexingenabled) ? [] : ['disabled' => true];
echo $OUTPUT->box_start('search-areas-actions');
echo $OUTPUT->single_button(admin_searcharea_action_url('indexall'), get_string('searchupdateindex', 'admin'), 'get', $options);
echo $OUTPUT->single_button(admin_searcharea_action_url('reindexall'), get_string('searchreindexindex', 'admin'), 'get', $options);
@@ -165,6 +230,13 @@ echo $OUTPUT->single_button(admin_searcharea_action_url('deleteall'), get_string
echo $OUTPUT->box_end();
echo html_writer::table($table);
if (isset($searchmanager)) {
// Show information about queued index requests for specific contexts.
$searchrenderer = $PAGE->get_renderer('core_search');
echo $searchrenderer->render_index_requests_info($searchmanager->get_index_requests_info());
}
echo $OUTPUT->footer();
/**
@@ -175,9 +247,12 @@ echo $OUTPUT->footer();
* @return moodle_url
*/
function admin_searcharea_action_url($action, $areaid = false) {
$params = array('action' => $action, 'sesskey' => sesskey());
$params = array('action' => $action);
if ($areaid) {
$params['areaid'] = $areaid;
}
if ($action === 'disable' || $action === 'enable') {
$params['sesskey'] = sesskey();
}
return new moodle_url('/admin/searchareas.php', $params);
}
+87
View File
@@ -0,0 +1,87 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Adds a search area to the queue for indexing.
*
* @package core_search
* @copyright 2017 The Open University
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('NO_OUTPUT_BUFFERING', true);
require(__DIR__ . '/../config.php');
// Check access.
require_once($CFG->libdir . '/adminlib.php');
admin_externalpage_setup('searchareas', '', null, (new moodle_url('/admin/searchreindex.php'))->out(false));
// Get area parameter and check it exists.
$areaid = required_param('areaid', PARAM_ALPHAEXT);
$area = \core_search\manager::get_search_area($areaid);
if ($area === false) {
throw new moodle_exception('invalidrequest');
}
$areaname = $area->get_visible_name();
// Start page output.
$heading = get_string('gradualreindex', 'search', '');
$PAGE->set_title($PAGE->title . ': ' . $heading);
$PAGE->navbar->add($heading);
echo $OUTPUT->header();
echo $OUTPUT->heading($heading);
// If sesskey is supplied, actually carry out the action.
if (optional_param('sesskey', '', PARAM_ALPHANUM)) {
require_sesskey();
// Get all contexts for search area. This query can take time in large cases.
\core_php_time_limit::raise(0);
$contextiterator = $area->get_contexts_to_reindex();
$progress = new \core\progress\display_if_slow('');
$progress->start_progress($areaname);
// Request reindexing for each context (with low priority).
$count = 0;
foreach ($contextiterator as $context) {
\core_php_time_limit::raise(30);
\core_search\manager::request_index($context, $area->get_area_id(),
\core_search\manager::INDEX_PRIORITY_REINDEXING);
$progress->progress();
$count++;
}
// Unset the iterator which should close the recordset (if there is one).
unset($contextiterator);
$progress->end_progress();
$a = (object)['name' => html_writer::tag('strong', $areaname), 'count' => $count];
echo $OUTPUT->box(get_string('gradualreindex_queued', 'search', $a));
echo $OUTPUT->continue_button(new moodle_url('/admin/searchareas.php'));
} else {
// Display confirmation prompt.
echo $OUTPUT->confirm(get_string('gradualreindex_confirm', 'search', html_writer::tag('strong', $areaname)),
new single_button(new moodle_url('/admin/searchreindex.php', ['areaid' => $areaid,
'sesskey' => sesskey()]), get_string('continue'), 'post', true),
new single_button(new moodle_url('/admin/searchareas.php'), get_string('cancel'), 'get'));
}
echo $OUTPUT->footer();
+9 -4
View File
@@ -38,12 +38,17 @@ if (!($settingspage->check_access())) {
$statusmsg = '';
$errormsg = '';
if ($data = data_submitted() and confirm_sesskey()) {
if (admin_write_settings($data)) {
redirect($PAGE->url, get_string('changessaved'), null, \core\output\notification::NOTIFY_SUCCESS);
}
// Form is submitted with changed settings. Do not want to execute when modifying a block.
if ($data = data_submitted() and confirm_sesskey() and isset($data->action) and $data->action == 'save-settings') {
$count = admin_write_settings($data);
// Regardless of whether any setting change was written (a positive count), check validation errors for those that didn't.
if (empty($adminroot->errors)) {
// No errors. Did we change any setting? If so, then redirect with success.
if ($count) {
redirect($PAGE->url, get_string('changessaved'), null, \core\output\notification::NOTIFY_SUCCESS);
}
// We didn't change a setting.
switch ($return) {
case 'site': redirect("$CFG->wwwroot/");
case 'admin': redirect("$CFG->wwwroot/$CFG->admin/");
+2 -1
View File
@@ -22,6 +22,7 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) { // sp
$temp->add(new admin_setting_configcheckbox('allowuserthemes', new lang_string('allowuserthemes', 'admin'), new lang_string('configallowuserthemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowcoursethemes', new lang_string('allowcoursethemes', 'admin'), new lang_string('configallowcoursethemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowcategorythemes', new lang_string('allowcategorythemes', 'admin'), new lang_string('configallowcategorythemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowcohortthemes', new lang_string('allowcohortthemes', 'admin'), new lang_string('configallowcohortthemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowthemechangeonurl', new lang_string('allowthemechangeonurl', 'admin'), new lang_string('configallowthemechangeonurl', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowuserblockhiding', new lang_string('allowuserblockhiding', 'admin'), new lang_string('configallowuserblockhiding', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('allowblockstodock', new lang_string('allowblockstodock', 'admin'), new lang_string('configallowblockstodock', 'admin'), 1));
@@ -199,7 +200,7 @@ preferences,moodle|/user/preferences.php|preferences',
// "documentation" settingpage
$temp = new admin_settingpage('documentation', new lang_string('moodledocs'));
$temp->add(new admin_setting_configtext('docroot', new lang_string('docroot', 'admin'), new lang_string('configdocroot', 'admin'), 'http://docs.moodle.org', PARAM_URL));
$temp->add(new admin_setting_configtext('docroot', new lang_string('docroot', 'admin'), new lang_string('configdocroot', 'admin'), 'https://docs.moodle.org', PARAM_URL));
$ltemp = array('' => get_string('forceno'));
$ltemp += get_string_manager()->get_list_of_translations(true);
$temp->add(new admin_setting_configselect('doclang', get_string('doclang', 'admin'), get_string('configdoclang', 'admin'), '', $ltemp));
+1 -1
View File
@@ -325,7 +325,7 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_skip_modif_prev', new lang_string('skipmodifprev', 'backup'), new lang_string('skipmodifprevhelp', 'backup'), 0));
// Automated defaults section.
$temp->add(new admin_setting_heading('automatedsettings', new lang_string('automatedsettings','backup'), ''));
$temp->add(new admin_setting_heading('automatedsettings', new lang_string('automatedsettings','backup'), new lang_string('recyclebin_desc', 'backup')));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_users', new lang_string('generalusers', 'backup'), new lang_string('configgeneralusers', 'backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_role_assignments', new lang_string('generalroleassignments','backup'), new lang_string('configgeneralroleassignments','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_activities', new lang_string('generalactivities','backup'), new lang_string('configgeneralactivities','backup'), 1));
+8 -1
View File
@@ -14,6 +14,11 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$temp->add(new admin_setting_configcheckbox('dndallowtextandlinks', new lang_string('dndallowtextandlinks', 'admin'), new lang_string('configdndallowtextandlinks', 'admin'), 0));
$temp->add(new admin_setting_configexecutable('pathtosassc', new lang_string('pathtosassc', 'admin'), new lang_string('pathtosassc_help', 'admin'), ''));
$temp->add(new admin_setting_configcheckbox('forceclean', new lang_string('forceclean', 'core_admin'),
new lang_string('forceclean_desc', 'core_admin'), 0));
$ADMIN->add('experimental', $temp);
// "debugging" settingpage
@@ -28,7 +33,9 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$ADMIN->add('development', $temp);
// "Profiling" settingpage (conditionally if the 'xhprof' extension is available only).
$xhprofenabled = extension_loaded('xhprof') || extension_loaded('tideways');
$xhprofenabled = extension_loaded('tideways_xhprof');
$xhprofenabled = $xhprofenabled || extension_loaded('tideways');
$xhprofenabled = $xhprofenabled || extension_loaded('xhprof');
$temp = new admin_settingpage('profiling', new lang_string('profiling', 'admin'), 'moodle/site:config', !$xhprofenabled);
// Main profiling switch.
$temp->add(new admin_setting_configcheckbox('profilingenabled', new lang_string('profilingenabled', 'admin'), new lang_string('profilingenabled_help', 'admin'), false));
+3
View File
@@ -42,6 +42,9 @@ if (has_capability('moodle/grade:manage', $systemcontext)
// enable publishing in exports/imports
$temp->add(new admin_setting_configcheckbox('gradepublishing', new lang_string('gradepublishing', 'grades'), new lang_string('gradepublishing_help', 'grades'), 0));
$temp->add(new admin_setting_configcheckbox('grade_export_exportfeedback', new lang_string('exportfeedback', 'grades'),
new lang_string('exportfeedback_desc', 'grades'), 0));
$temp->add(new admin_setting_configselect('grade_export_displaytype', new lang_string('gradeexportdisplaytype', 'grades'),
new lang_string('gradeexportdisplaytype_desc', 'grades'), GRADE_DISPLAY_TYPE_REAL, $display_types));
+1 -1
View File
@@ -556,7 +556,7 @@ if ($hassiteconfig) {
// Search engine selection.
$temp->add(new admin_setting_heading('searchengineheading', new lang_string('searchengine', 'admin'), ''));
$temp->add(new admin_setting_configselect('searchengine',
new lang_string('selectsearchengine', 'admin'), '', 'solr', $engines));
new lang_string('selectsearchengine', 'admin'), '', 'simpledb', $engines));
$temp->add(new admin_setting_heading('searchoptionsheading', new lang_string('searchoptions', 'admin'), ''));
$temp->add(new admin_setting_configcheckbox('searchindexwhendisabled',
new lang_string('searchindexwhendisabled', 'admin'), new lang_string('searchindexwhendisabled_desc', 'admin'),
+1 -2
View File
@@ -54,8 +54,7 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
3600 => new lang_string('numminutes', '', 60))));
$temp->add(new admin_setting_configcheckbox('extendedusernamechars', new lang_string('extendedusernamechars', 'admin'), new lang_string('configextendedusernamechars', 'admin'), 0));
$temp->add(new admin_setting_configtext('sitepolicy', new lang_string('sitepolicy', 'admin'), new lang_string('sitepolicy_help', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtext('sitepolicyguest', new lang_string('sitepolicyguest', 'admin'), new lang_string('sitepolicyguest_help', 'admin'), (isset($CFG->sitepolicy) ? $CFG->sitepolicy : ''), PARAM_RAW));
$temp->add(new admin_setting_configcheckbox('extendedusernamechars', new lang_string('extendedusernamechars', 'admin'), new lang_string('configextendedusernamechars', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('keeptagnamecase', new lang_string('keeptagnamecase','admin'),new lang_string('configkeeptagnamecase', 'admin'),'1'));
+2 -1
View File
@@ -7,7 +7,8 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// "systempaths" settingpage
$temp = new admin_settingpage('systempaths', new lang_string('systempaths','admin'));
$temp->add(new admin_setting_configexecutable('pathtophp', new lang_string('pathtophp', 'admin'),
new lang_string('configpathtophp', 'admin'), ''));
$temp->add(new admin_setting_configexecutable('pathtodu', new lang_string('pathtodu', 'admin'), new lang_string('configpathtodu', 'admin'), ''));
$temp->add(new admin_setting_configexecutable('aspellpath', new lang_string('aspellpath', 'admin'), new lang_string('edhelpaspellpath'), ''));
$temp->add(new admin_setting_configexecutable('pathtodot', new lang_string('pathtodot', 'admin'), new lang_string('pathtodot_help', 'admin'), ''));
+22 -4
View File
@@ -15,10 +15,28 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$optionalsubsystems->add(new admin_setting_configcheckbox('messaging', new lang_string('messaging', 'admin'), new lang_string('configmessaging','admin'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('messaginghidereadnotifications', new lang_string('messaginghidereadnotifications', 'admin'), new lang_string('configmessaginghidereadnotifications','admin'), 0));
$options = array(DAYSECS=>new lang_string('secondstotime86400'), WEEKSECS=>new lang_string('secondstotime604800'), 2620800=>new lang_string('nummonths', 'moodle', 1), 15724800=>new lang_string('nummonths', 'moodle', 6),0=>new lang_string('never'));
$optionalsubsystems->add(new admin_setting_configselect('messagingdeletereadnotificationsdelay', new lang_string('messagingdeletereadnotificationsdelay', 'admin'), new lang_string('configmessagingdeletereadnotificationsdelay', 'admin'), 604800, $options));
$options = array(
DAYSECS => new lang_string('secondstotime86400'),
WEEKSECS => new lang_string('secondstotime604800'),
2620800 => new lang_string('nummonths', 'moodle', 1),
7862400 => new lang_string('nummonths', 'moodle', 3),
15724800 => new lang_string('nummonths', 'moodle', 6),
0 => new lang_string('never')
);
$optionalsubsystems->add(new admin_setting_configselect(
'messagingdeletereadnotificationsdelay',
new lang_string('messagingdeletereadnotificationsdelay', 'admin'),
new lang_string('configmessagingdeletereadnotificationsdelay', 'admin'),
604800,
$options)
);
$optionalsubsystems->add(new admin_setting_configselect(
'messagingdeleteallnotificationsdelay',
new lang_string('messagingdeleteallnotificationsdelay', 'admin'),
new lang_string('configmessagingdeleteallnotificationsdelay', 'admin'),
2620800,
$options)
);
$optionalsubsystems->add(new admin_setting_configcheckbox('messagingallowemailoverride', new lang_string('messagingallowemailoverride', 'admin'), new lang_string('configmessagingallowemailoverride','admin'), 0));
+48 -1
View File
@@ -4,6 +4,7 @@
$ADMIN->add('users', new admin_category('accounts', new lang_string('accounts', 'admin')));
$ADMIN->add('users', new admin_category('roles', new lang_string('permissions', 'role')));
$ADMIN->add('users', new admin_category('privacy', new lang_string('privacyandpolicies', 'admin')));
if ($hassiteconfig
or has_capability('moodle/user:create', $systemcontext)
@@ -28,7 +29,7 @@ if ($hassiteconfig
$choices['1'] = new lang_string('emaildisplayyes');
$choices['2'] = new lang_string('emaildisplaycourse');
$temp->add(new admin_setting_configselect('defaultpreference_maildisplay', new lang_string('emaildisplay'),
'', 2, $choices));
new lang_string('emaildisplay_help'), 2, $choices));
$choices = array();
$choices['0'] = new lang_string('textformat');
@@ -150,6 +151,7 @@ if ($hassiteconfig
$temp->add(new admin_setting_configmultiselect('hiddenuserfields', new lang_string('hiddenuserfields', 'admin'),
new lang_string('confighiddenuserfields', 'admin'), array(),
array('description' => new lang_string('description'),
'email' => new lang_string('email'),
'city' => new lang_string('city'),
'country' => new lang_string('country'),
'timezone' => new lang_string('timezone'),
@@ -209,3 +211,48 @@ if ($hassiteconfig
$ADMIN->add('roles', new admin_externalpage('checkpermissions', new lang_string('checkglobalpermissions', 'role'), "$CFG->wwwroot/$CFG->admin/roles/check.php?contextid=".$systemcontext->id, array('moodle/role:assign', 'moodle/role:safeoverride', 'moodle/role:override', 'moodle/role:manage')));
} // end of speedup
// Privacy settings.
if ($hassiteconfig) {
$temp = new admin_settingpage('privacysettings', new lang_string('privacysettings', 'admin'));
$options = array(
0 => get_string('no'),
1 => get_string('yes')
);
$url = new moodle_url('/admin/settings.php?section=supportcontact');
$url = $url->out();
$setting = new admin_setting_configselect('agedigitalconsentverification',
new lang_string('agedigitalconsentverification', 'admin'),
new lang_string('agedigitalconsentverification_desc', 'admin', $url), 0, $options);
$setting->set_force_ltr(true);
$temp->add($setting);
// See {@link https://gdpr-info.eu/art-8-gdpr/}.
$ageofdigitalconsentmap = implode(PHP_EOL, [
'*, 16',
'AT, 14',
'ES, 14',
'US, 13'
]);
$setting = new admin_setting_agedigitalconsentmap('agedigitalconsentmap',
new lang_string('ageofdigitalconsentmap', 'admin'),
new lang_string('ageofdigitalconsentmap_desc', 'admin'),
$ageofdigitalconsentmap,
PARAM_RAW
);
$temp->add($setting);
$ADMIN->add('privacy', $temp);
// Policy settings.
$temp = new admin_settingpage('policysettings', new lang_string('policysettings', 'admin'));
$temp->add(new admin_settings_sitepolicy_handler_select('sitepolicyhandler', new lang_string('sitepolicyhandler', 'core_admin'),
new lang_string('sitepolicyhandler_desc', 'core_admin')));
$temp->add(new admin_setting_configtext('sitepolicy', new lang_string('sitepolicy', 'core_admin'),
new lang_string('sitepolicy_help', 'core_admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtext('sitepolicyguest', new lang_string('sitepolicyguest', 'core_admin'),
new lang_string('sitepolicyguest_help', 'core_admin'), (isset($CFG->sitepolicy) ? $CFG->sitepolicy : ''), PARAM_RAW));
$ADMIN->add('privacy', $temp);
}
+1
View File
@@ -40,6 +40,7 @@
<div class="settingsform clearfix">
{{#params}}
<input type="hidden" name="{{name}}" value="{{value}}">
<input type="hidden" name="action" value="save-settings">
{{/params}}
<input type="hidden" name="sesskey" value="{{sesskey}}">
<input type="hidden" name="return" value="{{return}}">
+5 -29
View File
@@ -48,7 +48,6 @@ class behat_admin extends behat_base {
* @param TableNode $table
*/
public function i_set_the_following_administration_settings_values(TableNode $table) {
if (!$data = $table->getRowsHash()) {
return;
}
@@ -57,17 +56,12 @@ class behat_admin extends behat_base {
// We expect admin block to be visible, otherwise go to homepage.
if (!$this->getSession()->getPage()->find('css', '.block_settings')) {
$this->getSession()->visit($this->locate_path('/'));
$this->wait(self::TIMEOUT * 1000, self::PAGE_READY_JS);
$this->execute('behat_forms::i_am_on_homepage');
}
// Search by label.
$searchbox = $this->find_field(get_string('searchinsettings', 'admin'));
$searchbox->setValue($label);
$submitsearch = $this->find('css', 'form.adminsearchform input[type=submit]');
$submitsearch->press();
$this->wait(self::TIMEOUT * 1000, self::PAGE_READY_JS);
$this->execute('behat_forms::i_set_the_field_to', [get_string('searchinsettings', 'admin'), $label]);
$this->execute("behat_general::i_click_on_in_the", [get_string('search', 'admin'), 'button', '.block_settings', 'css_element']);
// Admin settings does not use the same DOM structure than other moodle forms
// but we also need to use lib/behat/form_field/* to deal with the different moodle form elements.
@@ -83,35 +77,17 @@ class behat_admin extends behat_base {
"@id=//span[contains(normalize-space(.), $label)]/preceding-sibling::label[1]/@for]";
$fieldnode = $this->find('xpath', $fieldxpath, $exception);
$formfieldtypenode = $this->find('xpath', $fieldxpath . "/ancestor::div[@class='form-setting']" .
"/child::div[contains(concat(' ', @class, ' '), ' form-')]/child::*/parent::div");
} catch (ElementNotFoundException $e) {
// Multi element settings, interacting only the first one.
$fieldxpath = "//*[label[normalize-space(.)= $label]|span[normalize-space(.)= $label]]/" .
"ancestor::div[contains(concat(' ', normalize-space(@class), ' '), ' form-item ')]" .
"/descendant::div[@class='form-group']/descendant::*[self::input | self::textarea | self::select]" .
"[not(./@type = 'submit' or ./@type = 'image' or ./@type = 'hidden')]";
$fieldnode = $this->find('xpath', $fieldxpath);
// It is the same one that contains the type.
$formfieldtypenode = $fieldnode;
}
// Getting the class which contains the field type.
$classes = explode(' ', $formfieldtypenode->getAttribute('class'));
foreach ($classes as $class) {
if (substr($class, 0, 5) == 'form-') {
$type = substr($class, 5);
}
}
// Instantiating the appropiate field type.
$field = behat_field_manager::get_field_instance($type, $fieldnode, $this->getSession());
$field->set_value($value);
$this->find_button(get_string('savechanges'))->press();
$this->execute('behat_forms::i_set_the_field_with_xpath_to', [$fieldxpath, $value]);
$this->execute("behat_general::i_click_on", [get_string('savechanges'), 'button']);
}
}
@@ -1,57 +1,74 @@
@core @core_admin
Feature: Enable multiple accounts to have the same email address
In order to have multiple accounts registerd on the system with the same email address
@core @core_admin @core_user
Feature: Allowing multiple accounts to have the same email address
In order to manage user accounts
As an admin
I need to enable multiple accounts to be registered with the same email address and verify it is applied
I need to be able to set whether to allow multiple accounts with the same email or not
Background:
Given I log in as "admin"
Scenario: Enable registration of multiple accounts with the same email address
Scenario Outline: Create a user with the same email as an existing user
Given the following config values are set as admin:
| allowaccountssameemail | 1 |
When I navigate to "Add a new user" node in "Site administration>Users>Accounts"
| allowaccountssameemail | <allowsameemail> |
And the following "users" exist:
| username | firstname | lastname | email |
| s1 | John | Doe | s1@example.com |
When I log in as "admin"
And I navigate to "Users > Accounts > Add a new user" in site administration
And I set the following fields to these values:
| Username | testmultiemailuser1 |
| Choose an authentication method | Manual accounts |
| New password | test@User1 |
| First name | Test |
| Surname | Multi1 |
| Email address | testmultiemailuser@example.com |
| Username | s2 |
| First name | Jane |
| Surname | Doe |
| Email address | <email> |
| New password | test |
And I press "Create user"
And I should see "Test Multi1"
And I press "Add a new user"
And I set the following fields to these values:
| Username | testmultiemailuser2 |
| Choose an authentication method | Manual accounts |
| New password | test@User2 |
| First name | Test |
| Surname | Multi2 |
| Email address | testmultiemailuser@example.com |
And I press "Create user"
Then I should see "Test Multi2"
And I should not see "This email address is already registered"
Then I should <expect> "This email address is already registered."
Scenario: Disable registration of multiple accounts with the same email address
Examples:
| allowsameemail | email | expect |
| 0 | s1@example.com | see |
| 0 | S1@EXAMPLE.COM | see |
| 1 | s1@example.com | not see |
| 1 | S1@EXAMPLE.COM | not see |
Scenario Outline: Update a user with the same email as an existing user
Given the following config values are set as admin:
| allowaccountssameemail | 0 |
When I navigate to "Add a new user" node in "Site administration>Users>Accounts"
And I set the following fields to these values:
| Username | testmultiemailuser1 |
| Choose an authentication method | Manual accounts |
| New password | test@User1 |
| First name | Test |
| Surname | Multi1 |
| Email address | testmultiemailuser@example.com |
And I press "Create user"
And I should see "Test Multi1"
And I press "Add a new user"
And I set the following fields to these values:
| Username | testmultiemailuser2 |
| Choose an authentication method | Manual accounts |
| New password | test@User2 |
| First name | Test |
| Surname | Multi2 |
| Email address | testmultiemailuser@example.com |
And I press "Create user"
Then I should see "This email address is already registered"
| allowaccountssameemail | <allowsameemail> |
And the following "users" exist:
| username | firstname | lastname | email |
| s1 | John | Doe | s1@example.com |
| s2 | Jane | Doe | s2@example.com |
When I log in as "admin"
And I navigate to "Users > Accounts > Browse list of users" in site administration
And I click on "Edit" "link" in the "Jane Doe" "table_row"
And I set the field "Email address" to "<email>"
And I press "Update profile"
Then I should <expect> "This email address is already registered."
Examples:
| allowsameemail | email | expect |
| 0 | s1@example.com | see |
| 0 | S1@EXAMPLE.COM | see |
| 1 | s1@example.com | not see |
| 1 | S1@EXAMPLE.COM | not see |
| 0 | S2@EXAMPLE.COM | not see |
| 1 | S2@EXAMPLE.COM | not see |
Scenario Outline: Update own user profile with the same email as an existing user
Given the following config values are set as admin:
| allowaccountssameemail | <allowsameemail> |
And the following "users" exist:
| username | firstname | lastname | email |
| s1 | John | Doe | s1@example.com |
| s2 | Jane | Doe | s2@example.com |
When I log in as "s2"
And I open my profile in edit mode
And I set the field "Email address" to "<email>"
And I press "Update profile"
Then I should <expect> "This email address is already registered."
Examples:
| allowsameemail | email | expect |
| 0 | s1@example.com | see |
| 0 | S1@EXAMPLE.COM | see |
| 1 | s1@example.com | not see |
| 1 | S1@EXAMPLE.COM | not see |
| 0 | S2@EXAMPLE.COM | not see |
| 1 | S2@EXAMPLE.COM | not see |
+1
View File
@@ -9,6 +9,7 @@ Feature: Manage tokens
| username | password | firstname | lastname |
| testuser | testuser | Joe | Bloggs |
| testuser2 | testuser2 | TestFirstname | TestLastname |
And I change window size to "small"
And I log in as "admin"
And I am on site homepage
+21
View File
@@ -0,0 +1,21 @@
@core @core_admin
Feature: Use the search areas admin screen
In order to control search indexing
As an admin
I need to use the search areas admin screen
Background:
Given I log in as "admin"
And I navigate to "Plugins > Search > Search areas" in site administration
Scenario: Disable and enable a search area
When I click on "Disable" "link" in the "Book - resource information" "table_row"
Then I should see "Search area disabled" in the ".alert-success" "css_element"
And I should see "Search area disabled" in the "Book - resource information" "table_row"
When I click on "Enable" "link" in the "Book - resource information" "table_row"
Then I should see "Search area enabled" in the ".alert-success" "css_element"
And I should not see "Search area disabled" in the "Book - resource information" "table_row"
# Note: Other scenarios are not currently easy to implement in Behat because there is no mock
# search engine - we could add testing once Moodle has an internal database search engine.
@@ -0,0 +1,55 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Helper class that contains helper functions for cli scripts.
*
* @package tool_analytics
* @copyright 2017 onwards Ankit Agarwal
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_analytics;
defined('MOODLE_INTERNAL') || die();
/**
* Helper class that contains helper functions for cli scripts.
*
* @package tool_analytics
* @copyright 2017 onwards Ankit Agarwal
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class clihelper {
/**
* List all models in the system. To be used from cli scripts.
*
* @return void
*/
public static function list_models() {
cli_heading("List of models");
echo str_pad(get_string('modelid', 'tool_analytics'), 15, ' ') . ' ' . str_pad(get_string('name'), 50, ' ') .
' ' . str_pad(get_string('status'), 15, ' ') . "\n";
$models = \core_analytics\manager::get_all_models();
foreach ($models as $model) {
$modelid = $model->get_id();
$isenabled = $model->is_enabled() ? get_string('enabled', 'tool_analytics') : get_string('disabled', 'tool_analytics');
$name = $model->get_target()->get_name();
echo str_pad($modelid, 15, ' ') . ' ' . str_pad($name, 50, ' ') . ' ' . str_pad($isenabled, 15, ' ') . "\n";
}
}
}
@@ -153,6 +153,12 @@ class invalid_analysables implements \renderable, \templatable {
$data->analysables[] = $obj;
}
if (empty($data->analysables)) {
$data->noanalysables = [
'message' => get_string('noinvalidanalysables', 'tool_analytics'),
'announce' => true,
];
}
return $data;
}
}
@@ -119,6 +119,9 @@ class models_list implements \renderable, \templatable {
debugging("The time splitting method '{$modeldata->timesplitting}' should include a '{$identifier}_help'
string to describe its purpose.", DEBUG_DEVELOPER);
}
} else {
$helpicon = new \help_icon('timesplittingnotdefined', 'tool_analytics');
$modeldata->timesplittinghelp = $helpicon->export_for_template($output);
}
// Has this model generated predictions?.
@@ -207,19 +210,22 @@ class models_list implements \renderable, \templatable {
}
// Enable / disable.
if ($model->is_enabled()) {
$action = 'disable';
$text = get_string('disable');
$icontype = 't/block';
} else {
$action = 'enable';
$text = get_string('enable');
$icontype = 'i/checked';
if ($model->is_enabled() || !empty($modeldata->timesplitting)) {
// If there is no timesplitting method set, the model can not be enabled.
if ($model->is_enabled()) {
$action = 'disable';
$text = get_string('disable');
$icontype = 't/block';
} else {
$action = 'enable';
$text = get_string('enable');
$icontype = 'i/checked';
}
$urlparams['action'] = $action;
$url = new \moodle_url('model.php', $urlparams);
$icon = new \action_menu_link_secondary($url, new \pix_icon($icontype, $text), $text);
$actionsmenu->add($icon);
}
$urlparams['action'] = $action;
$url = new \moodle_url('model.php', $urlparams);
$icon = new \action_menu_link_secondary($url, new \pix_icon($icontype, $text), $text);
$actionsmenu->add($icon);
// Export training data.
if (!$model->is_static() && $model->is_trained()) {
@@ -241,7 +247,7 @@ class models_list implements \renderable, \templatable {
}
// Clear model.
if (!empty($predictioncontexts)) {
if (!empty($predictioncontexts) || $model->is_trained()) {
$actionid = 'clear-' . $model->get_id();
$PAGE->requires->js_call_amd('tool_analytics/model', 'confirmAction', [$actionid, 'clear']);
$urlparams['action'] = 'clear';
@@ -264,8 +270,13 @@ class models_list implements \renderable, \templatable {
} else {
$url = new \moodle_url('/admin/settings.php', array('section' => 'analyticssettings'),
'id_s_analytics_onlycli');
$langstrid = 'clievaluationandpredictionsnoadmin';
if (is_siteadmin()) {
$langstrid = 'clievaluationandpredictions';
}
$data->infos = array(
(object)array('message' => get_string('clievaluationandpredictions', 'tool_analytics', $url->out()),
(object)array('message' => get_string($langstrid, 'tool_analytics', $url->out()),
'closebutton' => true)
);
}
@@ -0,0 +1,46 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for tool_analytics.
*
* @package tool_analytics
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_analytics\privacy;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for tool_analytics implementing null_provider.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements \core_privacy\local\metadata\null_provider {
/**
* Get the language string identifier with the component's language
* file to explain why this plugin stores no data.
*
* @return string
*/
public static function get_reason() : string {
return 'privacy:metadata';
}
}
+8 -1
View File
@@ -31,6 +31,7 @@ $help = "Enables the provided model.
Options:
--modelid Model id
--list List models
--timesplitting Time splitting method full class name
-h, --help Print out this help
@@ -42,6 +43,7 @@ Example:
list($options, $unrecognized) = cli_get_params(
array(
'help' => false,
'list' => false,
'modelid' => false,
'timesplitting' => false
),
@@ -55,7 +57,12 @@ if ($options['help']) {
exit(0);
}
if ($options['modelid'] === false || $options['timesplitting'] === false) {
if ($options['list'] || $options['modelid'] === false) {
\tool_analytics\clihelper::list_models();
exit(0);
}
if ($options['timesplitting'] === false) {
echo $help;
exit(0);
}
+4 -2
View File
@@ -31,6 +31,7 @@ $help = "Evaluates the provided model.
Options:
--modelid Model id
--list List models
--non-interactive Not interactive questions
--timesplitting Restrict the evaluation to 1 single time splitting method (Optional)
--filter Analyser dependant. e.g. A courseid would evaluate the model using a single course (Optional)
@@ -47,6 +48,7 @@ list($options, $unrecognized) = cli_get_params(
array(
'help' => false,
'modelid' => false,
'list' => false,
'timesplitting' => false,
'reuse-prev-analysed' => true,
'non-interactive' => false,
@@ -62,8 +64,8 @@ if ($options['help']) {
exit(0);
}
if ($options['modelid'] === false) {
echo $help;
if ($options['list'] || $options['modelid'] === false) {
\tool_analytics\clihelper::list_models();
exit(0);
}
@@ -117,12 +117,21 @@ function tool_analytics_calculate_course_dates($course, $options) {
$notification = $course->shortname . ' (id = ' . $course->id . '): ';
$originalenddate = null;
$guessedstartdate = null;
$guessedenddate = null;
$samestartdate = null;
$lowerenddate = null;
if ($options['guessstart'] || $options['guessall']) {
$originalstartdate = $course->startdate;
$guessedstartdate = $courseman->guess_start();
if ($guessedstartdate == $originalstartdate) {
$samestartdate = ($guessedstartdate == $originalstartdate);
$lowerenddate = ($course->enddate && ($course->enddate < $guessedstartdate));
if ($samestartdate) {
if (!$guessedstartdate) {
$notification .= PHP_EOL . ' ' . get_string('cantguessstartdate', 'tool_analytics');
} else {
@@ -131,6 +140,9 @@ function tool_analytics_calculate_course_dates($course, $options) {
}
} else if (!$guessedstartdate) {
$notification .= PHP_EOL . ' ' . get_string('cantguessstartdate', 'tool_analytics');
} else if ($lowerenddate) {
$notification .= PHP_EOL . ' ' . get_string('cantguessstartdate', 'tool_analytics') . ': ' .
get_string('enddatebeforestartdate', 'error') . ' - ' . userdate($guessedstartdate);
} else {
// Update it to something we guess.
@@ -151,6 +163,10 @@ function tool_analytics_calculate_course_dates($course, $options) {
if ($options['guessend'] || $options['guessall']) {
if (!empty($lowerenddate) && !empty($guessedstartdate)) {
$course->startdate = $guessedstartdate;
}
$originalenddate = $course->enddate;
$format = course_get_format($course);
@@ -196,10 +212,8 @@ function tool_analytics_calculate_course_dates($course, $options) {
$updateit = true;
}
if ($options['update']) {
if ($course->enddate > $course->startdate) {
update_course($course);
}
if ($options['update'] && $updateit) {
update_course($course);
}
}
}
@@ -33,6 +33,8 @@ $string['clearpredictions'] = 'Clear predictions';
$string['clearmodelpredictions'] = 'Are you sure you want to clear all "{$a}" predictions?';
$string['clienablemodel'] = 'You can enable the model by selecting a time-splitting method by its ID. Note that you can also enable it later using the web interface (\'none\' to exit).';
$string['clievaluationandpredictions'] = 'A scheduled task iterates through enabled models and gets predictions. Models evaluation via the web interface is disabled. You can allow these processes to be executed manually via the web interface by disabling the <a href="{$a}">\'onlycli\'</a> analytics setting.';
$string['clievaluationandpredictionsnoadmin'] = 'A scheduled task iterates through enabled models and gets predictions. Models evaluation via the web interface is disabled. It may be enabled by a site administrator.';
$string['disabled'] = 'Disabled';
$string['editmodel'] = 'Edit "{$a}" model';
$string['edittrainedwarning'] = 'This model has already been trained. Note that changing its indicators or its time-splitting method will delete its previous predictions and start generating new predictions.';
$string['enabled'] = 'Enabled';
@@ -60,11 +62,12 @@ $string['indicators'] = 'Indicators';
$string['info'] = 'Info';
$string['insights'] = 'Insights';
$string['invalidanalysables'] = 'Invalid site elements';
$string['invalidanalysablesinfo'] = 'This pages lists this site analysable elements that can not be used by this prediction model. The listed elements can not be used neither to train the prediction model nor the prediction model can get predictions for them.';
$string['invalidanalysablesinfo'] = 'This page lists analysable elements that can\'t be used by this prediction model. The listed elements can\'t be used either to train the prediction model nor can the prediction model obtain predictions for them.';
$string['invalidanalysablestable'] = 'Invalid site analysable elements table';
$string['invalidprediction'] = 'Invalid to get predictions';
$string['invalidtraining'] = 'Invalid to train the model';
$string['loginfo'] = 'Log extra info';
$string['modelid'] = 'Model ID';
$string['modelinvalidanalysables'] = 'Invalid analysable elements for "{$a}" model';
$string['modelresults'] = '{$a} results';
$string['modeltimesplitting'] = 'Time splitting';
@@ -72,6 +75,7 @@ $string['nextpage'] = 'Next page';
$string['nodatatoevaluate'] = 'There is no data to evaluate the model';
$string['nodatatopredict'] = 'No new elements to get predictions for';
$string['nodatatotrain'] = 'There is no new data that can be used for training';
$string['noinvalidanalysables'] = 'This site does not contain any invalid analysable element.';
$string['notdefined'] = 'Not yet defined';
$string['pluginname'] = 'Analytic models';
$string['predictionresults'] = 'Prediction results';
@@ -82,6 +86,8 @@ $string['previouspage'] = 'Previous page';
$string['samestartdate'] = 'Current start date is good';
$string['sameenddate'] = 'Current end date is good';
$string['target'] = 'Target';
$string['timesplittingnotdefined'] = 'Time splitting is not defined.';
$string['timesplittingnotdefined_help'] = 'You need to select a time-splitting method before enabling the model.';
$string['trainandpredictmodel'] = 'Training model and calculating predictions';
$string['trainingprocessfinished'] = 'Training process finished';
$string['trainingresults'] = 'Training results';
@@ -89,3 +95,4 @@ $string['trainmodels'] = 'Train models';
$string['viewlog'] = 'Log';
$string['weeksenddateautomaticallyset'] = 'End date automatically set based on start date and the number of sections';
$string['weeksenddatedefault'] = 'End date automatically calculated from the course start date.';
$string['privacy:metadata'] = 'The Analytic models plugin does not store any personal data.';
@@ -48,31 +48,38 @@
<div class="box">
<h3>{{#str}}modelinvalidanalysables, tool_analytics, {{modelname}}{{/str}}</h3>
<div>{{#str}}invalidanalysablesinfo, tool_analytics{{/str}}</div>
<div class="m-t-2 m-b-1">
<span>{{#prev}}{{> core/single_button}}{{/prev}}</span>
<span>{{#next}}{{> core/single_button}}{{/next}}</span>
</div>
<table class="generaltable fullwidth">
<caption class="accesshide">{{#str}}invalidanalysablestable, tool_analytics{{/str}}</caption>
<thead>
<tr>
<th scope="col">{{#str}}name{{/str}}</th>
<th scope="col">{{#str}}invalidtraining, tool_analytics{{/str}}</th>
<th scope="col">{{#str}}invalidprediction, tool_analytics{{/str}}</th>
</tr>
</thead>
<tbody>
{{#analysables}}
<tr>
<td>{{{url}}}</td>
<td>{{validtraining}}</td>
<td>{{validprediction}}</td>
</tr>
{{/analysables}}
</tbody>
</table>
<div class="m-t-1 m-b-2">
<span>{{#prev}}{{> core/single_button}}{{/prev}}</span>
<span>{{#next}}{{> core/single_button}}{{/next}}</span>
</div>
{{#noanalysables}}
<div class="m-t-2 m-b-1">
{{> core/notification_info}}
</div>
{{/noanalysables}}
{{^noanalysables}}
<div class="m-t-2 m-b-1">
<span>{{#prev}}{{> core/single_button}}{{/prev}}</span>
<span>{{#next}}{{> core/single_button}}{{/next}}</span>
</div>
<table class="generaltable fullwidth">
<caption class="accesshide">{{#str}}invalidanalysablestable, tool_analytics{{/str}}</caption>
<thead>
<tr>
<th scope="col">{{#str}}name{{/str}}</th>
<th scope="col">{{#str}}invalidtraining, tool_analytics{{/str}}</th>
<th scope="col">{{#str}}invalidprediction, tool_analytics{{/str}}</th>
</tr>
</thead>
<tbody>
{{#analysables}}
<tr>
<td>{{{url}}}</td>
<td>{{validtraining}}</td>
<td>{{validprediction}}</td>
</tr>
{{/analysables}}
</tbody>
</table>
<div class="m-t-1 m-b-2">
<span>{{#prev}}{{> core/single_button}}{{/prev}}</span>
<span>{{#next}}{{> core/single_button}}{{/next}}</span>
</div>
{{/noanalysables}}
</div>
@@ -160,6 +160,9 @@
{{/timesplitting}}
{{^timesplitting}}
{{#str}}notdefined, tool_analytics{{/str}}
{{#timesplittinghelp}}
{{>core/help_icon}}
{{/timesplittinghelp}}
{{/timesplitting}}
</td>
<td>
+2 -2
View File
@@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2017051500; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2017050500; // Requires this Moodle version.
$plugin->version = 2018051400; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2018050800; // Requires this Moodle version.
$plugin->component = 'tool_analytics'; // Full name of the plugin (used for diagnostics).
@@ -0,0 +1,73 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for tool_assignmentupgrade.
*
* @package tool_assignmentupgrade
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_assignmentupgrade\privacy;
use core_privacy\local\metadata\collection;
use core_privacy\local\request\writer;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for tool_assignmentupgrade implementing metadata, plugin, and user_preference providers.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements
\core_privacy\local\metadata\provider,
\core_privacy\local\request\user_preference_provider {
/**
* Returns meta data about this system.
*
* @param collection $collection The initialised collection to add items to.
* @return collection A listing of user data stored through this system.
*/
public static function get_metadata(collection $collection) : collection {
$collection->add_user_preference(
'tool_assignmentupgrade_perpage',
'privacy:metadata:preference:perpage'
);
return $collection;
}
/**
* Export all user preferences for the plugin.
*
* @param int $userid The userid of the user whose data is to be exported.
*/
public static function export_user_preferences(int $userid) {
$perpage = get_user_preferences('tool_assignmentupgrade_perpage', null, $userid);
if ($perpage !== null) {
writer::export_user_preference(
'tool_assignmentupgrade',
'perpage',
$perpage,
get_string('privacy:metadata:preference:perpage', 'tool_assignmentupgrade')
);
}
}
}
@@ -58,3 +58,4 @@ $string['upgradeallconfirm'] = 'Upgrade all assignments?';
$string['upgradeprogress'] = 'Upgrade assignment {$a->current} of {$a->total}';
$string['upgradesingle'] = 'Upgrade single assignment';
$string['viewcourse'] = 'View the course with the converted assignment';
$string['privacy:metadata:preference:perpage'] = 'The assignment upgrade records per page preference set for the user.';
@@ -0,0 +1,75 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy tests for tool_assignmentupgrade.
*
* @package tool_assignmentupgrade
* @category test
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
use \core_privacy\tests\provider_testcase;
use \core_privacy\local\request\writer;
use \tool_assignmentupgrade\privacy\provider;
/**
* Unit tests for tool_assignmentupgrade/classes/privacy/policy
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_assignmentupgrade_privacy_testcase extends provider_testcase {
/**
* Overriding setUp() function to always reset after tests.
*/
public function setUp() {
$this->resetAfterTest(true);
}
/**
* Test for provider::test_export_user_preferences().
*/
public function test_export_user_preferences() {
// Test setup.
$user = $this->getDataGenerator()->create_user();
$this->setUser($user);
// Add a user home page preference for the User.
set_user_preference('tool_assignmentupgrade_perpage', '100', $user);
// Test the user preference exists.
$params = [
'userid' => $user->id,
'name' => 'tool_assignmentupgrade_perpage'
];
// Test the user preferences export contains 1 user preference record for the User.
provider::export_user_preferences($user->id);
$contextuser = context_user::instance($user->id);
$writer = writer::with_context($contextuser);
$this->assertTrue($writer->has_any_data());
$exportedpreferences = $writer->get_user_preferences('tool_assignmentupgrade');
$this->assertCount(1, (array) $exportedpreferences);
$this->assertEquals('100', $exportedpreferences->perpage->value);
}
}
+3 -3
View File
@@ -24,7 +24,7 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2017051500;
$plugin->requires = 2017050500;
$plugin->version = 2018051400;
$plugin->requires = 2018050800;
$plugin->component = 'tool_assignmentupgrade';
$plugin->dependencies = array('mod_assign' => 2017050500);
$plugin->dependencies = array('mod_assign' => 2018050800);
@@ -0,0 +1,46 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for tool_availabilityconditions.
*
* @package tool_availabilityconditions
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_availabilityconditions\privacy;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for tool_availabilityconditions implementing null_provider.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements \core_privacy\local\metadata\null_provider {
/**
* Get the language string identifier with the component's language
* file to explain why this plugin stores no data.
*
* @return string
*/
public static function get_reason() : string {
return 'privacy:metadata';
}
}
@@ -24,3 +24,4 @@
$string['manageplugins'] = 'Manage restrictions';
$string['pluginname'] = 'Availability condition management';
$string['privacy:metadata'] = 'The Availability condition management plugin does not store any personal data.';
@@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2017051500;
$plugin->requires = 2017050500;
$plugin->version = 2018051400;
$plugin->requires = 2018050800;
$plugin->component = 'tool_availabilityconditions';
@@ -0,0 +1,46 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for tool_behat.
*
* @package tool_behat
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_behat\privacy;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for tool_behat implementing null_provider.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements \core_privacy\local\metadata\null_provider {
/**
* Get the language string identifier with the component's language
* file to explain why this plugin stores no data.
*
* @return string
*/
public static function get_reason() : string {
return 'privacy:metadata';
}
}
+12 -1
View File
@@ -109,6 +109,17 @@ require_once(__DIR__ . '/../../../../lib/behat/lib.php');
require_once(__DIR__ . '/../../../../lib/behat/classes/behat_command.php');
require_once(__DIR__ . '/../../../../lib/behat/classes/behat_config_manager.php');
// Remove error handling overrides done in config.php. This is consistent with admin/tool/behat/cli/util_single_run.php.
$CFG->debug = (E_ALL | E_STRICT);
$CFG->debugdisplay = 1;
error_reporting($CFG->debug);
ini_set('display_errors', '1');
ini_set('log_errors', '1');
// Import the necessary libraries.
require_once($CFG->libdir . '/setuplib.php');
require_once($CFG->libdir . '/behat/classes/util.php');
// For drop option check if parallel site.
if ((empty($options['parallel'])) && ($options['drop']) || $options['updatesteps']) {
$options['parallel'] = behat_config_manager::get_behat_run_config_value('parallel');
@@ -398,7 +409,7 @@ function print_combined_install_output($processes) {
// Show process name in first row.
foreach ($processes as $name => $process) {
// If we don't have enough space to show full run name then show runX.
if ($lengthofprocessline < strlen($name + 2)) {
if ($lengthofprocessline < strlen($name) + 2) {
$name = substr($name, -5);
}
// One extra padding as we are adding | separator for rest of the data.
+1 -1
View File
@@ -218,7 +218,7 @@ if ($options['install']) {
// Run behat command to get steps in feature files.
$featurestepscmd = behat_command::get_behat_command(true);
$featurestepscmd .= ' --config ' . behat_config_manager::get_behat_cli_config_filepath();
$featurestepscmd .= ' --dry-run --format=moodle_step_count';
$featurestepscmd .= ' --dry-run --format=moodle_stepcount';
$processes = cli_execute_parallel(array($featurestepscmd), __DIR__ . "/../../../../");
$status = print_update_step_output(array_pop($processes), $behatstepfile);
+7 -6
View File
@@ -23,30 +23,31 @@
*/
$string['aim'] = 'This administration tool helps developers and test writers to create .feature files describing Moodle\'s functionalities and run them automatically. Step definitions available for use in .feature files are listed below.';
$string['allavailablesteps'] = 'All the available steps definitions';
$string['allavailablesteps'] = 'All available step definitions';
$string['errorbehatcommand'] = 'Error running behat CLI command. Try running "{$a} --help" manually from CLI to find out more about the problem.';
$string['errorcomposer'] = 'Composer dependencies are not installed.';
$string['errordataroot'] = '$CFG->behat_dataroot is not set or is invalid.';
$string['errorsetconfig'] = '$CFG->behat_dataroot, $CFG->behat_prefix and $CFG->behat_wwwroot need to be set in config.php.';
$string['erroruniqueconfig'] = '$CFG->behat_dataroot, $CFG->behat_prefix and $CFG->behat_wwwroot values need to be different than $CFG->dataroot, $CFG->prefix, $CFG->wwwroot, $CFG->phpunit_dataroot and $CFG->phpunit_prefix values.';
$string['fieldvalueargument'] = 'Field value arguments';
$string['fieldvalueargument_help'] = 'This argument should be completed by a field value, there are many field types, simple ones like checkboxes, selects or textareas or complex ones like date selectors. You can check <a href="http://docs.moodle.org/dev/Acceptance_testing#Providing_values_to_steps" target="_blank">Field values</a> to see the expected field value depending on the field type you provide.';
$string['fieldvalueargument_help'] = 'This argument should be completed by a field value. There are many field types, including simple ones like checkboxes, selects or textareas, or complex ones like date selectors. See the dev documentation <a href="http://docs.moodle.org/dev/Acceptance_testing" target="_blank">Acceptance_testing</a> for details of expected field values.';
$string['giveninfo'] = 'Given. Processes to set up the environment';
$string['infoheading'] = 'Info';
$string['installinfo'] = 'Read {$a} for installation and tests execution info';
$string['newstepsinfo'] = 'Read {$a} for info about how to add new steps definitions';
$string['newstepsinfo'] = 'Read {$a} for info about how to add new step definitions';
$string['newtestsinfo'] = 'Read {$a} for info about how to write new tests';
$string['nostepsdefinitions'] = 'There aren\'t steps definitions matching this filters';
$string['nostepsdefinitions'] = 'There aren\'t any step definitions matching this filter';
$string['pluginname'] = 'Acceptance testing';
$string['stepsdefinitionscomponent'] = 'Area';
$string['stepsdefinitionscontains'] = 'Contains';
$string['stepsdefinitionsfilters'] = 'Steps definitions';
$string['stepsdefinitionsfilters'] = 'Step definitions';
$string['stepsdefinitionstype'] = 'Type';
$string['theninfo'] = 'Then. Checkings to ensure the outcomes are the expected ones';
$string['unknownexceptioninfo'] = 'There was a problem with Selenium or your browser. Please ensure you are using the latest version of Selenium. Error:';
$string['viewsteps'] = 'Filter';
$string['wheninfo'] = 'When. Actions that provokes an event';
$string['wheninfo'] = 'When. Action that provokes an event';
$string['wrongbehatsetup'] = 'Something is wrong with the behat setup and so step definitions cannot be listed: <b>{$a->errormsg}</b><br/><br/>Please check:<ul>
<li>$CFG->behat_dataroot, $CFG->behat_prefix and $CFG->behat_wwwroot are set in config.php with different values from $CFG->dataroot, $CFG->prefix and $CFG->wwwroot.</li>
<li>You ran "{$a->behatinit}" from your Moodle root directory.</li>
<li>Dependencies are installed in vendor/ and {$a->behatcommand} file has execution permissions.</li></ul>';
$string['privacy:metadata'] = 'The Acceptance testing plugin does not store any personal data.';
+4 -4
View File
@@ -139,7 +139,7 @@ class tool_behat_renderer extends plugin_renderer_base {
$msg = get_string('wrongbehatsetup', 'tool_behat', $a);
// Error box including generic error string + specific error msg.
$html .= $this->output->box_start('box errorbox');
$html .= $this->output->box_start('box errorbox alert alert-danger');
$html .= html_writer::tag('div', $msg);
$html .= $this->output->box_end();
@@ -162,11 +162,11 @@ class tool_behat_renderer extends plugin_renderer_base {
$html .= $this->output->heading($title);
// Info.
$installurl = behat_command::DOCS_URL . '#Installation';
$installurl = behat_command::DOCS_URL;
$installlink = html_writer::tag('a', $installurl, array('href' => $installurl, 'target' => '_blank'));
$writetestsurl = behat_command::DOCS_URL . '#Writing_features';
$writetestsurl = 'https://docs.moodle.org/dev/Writing acceptance tests';
$writetestslink = html_writer::tag('a', $writetestsurl, array('href' => $writetestsurl, 'target' => '_blank'));
$writestepsurl = behat_command::DOCS_URL . '#Adding_steps_definitions';
$writestepsurl = 'https://docs.moodle.org/dev/Writing_new_acceptance_test_step_definitions';
$writestepslink = html_writer::tag('a', $writestepsurl, array('href' => $writestepsurl, 'target' => '_blank'));
$infos = array(
get_string('installinfo', 'tool_behat', $installlink),
@@ -0,0 +1,27 @@
@tool_behat
Feature: Behat steps for interacting with form work
In order to test my Moodle code
As a developer
I need the Behat steps for form elements to work reliably
@javascript
Scenario: Test fields in containers
Given the following "courses" exist:
| fullname | shortname |
| Course 1 | C1 |
When I log in as "admin"
And I am on "Course 1" course homepage
# Just get to any form.
And I navigate to "Edit settings" in current page administration
And I set the field "Course full name" in the "General" "fieldset" to "Frog"
And I set the following fields in the "Appearance" "fieldset" to these values:
| Show activity reports | Yes |
| Number of announcements | 1 |
Then the field "Show activity reports" in the "Appearance" "fieldset" matches value "Yes"
And the field "Show activity reports" in the "Appearance" "fieldset" does not match value "No"
And the following fields in the "region-main" "region" match these values:
| Course full name | Frog |
| Number of announcements | 1 |
And the following fields in the "region-main" "region" do not match these values:
| Course full name | Course 1 |
| Number of announcements | 5 |
@@ -11,7 +11,7 @@ Feature: List the system steps definitions
@javascript
Scenario: Accessing the list
Then I should see "Steps definitions"
Then I should see "Step definitions"
And I should not see "There aren't steps definitions matching this filter"
@javascript
+2 -2
View File
@@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2017051500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2017050500; // Requires this Moodle version
$plugin->version = 2018051400; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2018050800; // Requires this Moodle version
$plugin->component = 'tool_behat'; // Full name of the plugin (used for diagnostics)
@@ -0,0 +1,46 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for tool_capability.
*
* @package tool_capability
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_capability\privacy;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for tool_capability implementing null_provider.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements \core_privacy\local\metadata\null_provider {
/**
* Get the language string identifier with the component's language
* file to explain why this plugin stores no data.
*
* @return string
*/
public static function get_reason() : string {
return 'privacy:metadata';
}
}
@@ -34,3 +34,4 @@ $string['pluginname'] = 'Capability overview';
$string['reportforcapability'] = 'Report for capability \'{$a}\'';
$string['reportsettings'] = 'Report settings';
$string['roleslabel'] = 'Roles:';
$string['privacy:metadata'] = 'The Capability overview plugin does not store any personal data.';
+2 -2
View File
@@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2017051500; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2017050500; // Requires this Moodle version.
$plugin->version = 2018051400; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2018050800; // Requires this Moodle version.
$plugin->component = 'tool_capability'; // Full name of the plugin (used for diagnostics).
+43 -1
View File
@@ -167,7 +167,7 @@ class api {
$params['roleid'] = $roleid;
$params['userid'] = $userid;
$sql = 'SELECT u.id AS userid, ra.id, ctx.id AS contextid
$sql = 'SELECT DISTINCT u.id AS userid, ra.id, ctx.id AS contextid
FROM {user} u
JOIN {cohort_members} cm ON u.id = cm.userid
JOIN {context} ctx ON u.id = ctx.instanceid AND ctx.contextlevel = :usercontext
@@ -222,6 +222,48 @@ class api {
}
}
// Clean the legacy role assignments which are stale.
$paramsclean['usercontext'] = CONTEXT_USER;
$paramsclean['component'] = 'tool_cohortroles';
$sql = 'SELECT DISTINCT(ra.id), ra.roleid, ra.userid, ra.contextid, ctx.instanceid
FROM {role_assignments} ra
JOIN {context} ctx ON ctx.id = ra.contextid AND ctx.contextlevel = :usercontext
JOIN {cohort_members} cm ON cm.userid = ctx.instanceid
LEFT JOIN {tool_cohortroles} tc ON tc.cohortid = cm.cohortid
AND tc.userid = ra.userid
AND tc.roleid = ra.roleid
WHERE ra.component = :component
AND tc.id is null';
if ($candidatelegacyassignments = $DB->get_records_sql($sql, $paramsclean)) {
$sql = 'SELECT DISTINCT(ra.id)
FROM {role_assignments} ra
JOIN {context} ctx ON ctx.id = ra.contextid AND ctx.contextlevel = :usercontext
JOIN {cohort_members} cm ON cm.userid = ctx.instanceid
JOIN {tool_cohortroles} tc ON tc.cohortid = cm.cohortid AND tc.userid = ra.userid
WHERE ra.component = :component';
if ($currentvalidroleassignments = $DB->get_records_sql($sql, $paramsclean)) {
foreach ($candidatelegacyassignments as $candidate) {
if (!array_key_exists($candidate->id, $currentvalidroleassignments)) {
role_unassign($candidate->roleid, $candidate->userid, $candidate->contextid, 'tool_cohortroles');
$rolesremoved[] = array(
'useridassignedto' => $candidate->userid,
'useridassignedover' => $candidate->instanceid,
'roleid' => $candidate->roleid
);
}
}
} else {
foreach ($candidatelegacyassignments as $candidate) {
role_unassign($candidate->roleid, $candidate->userid, $candidate->contextid, 'tool_cohortroles');
$rolesremoved[] = array(
'useridassignedto' => $candidate->userid,
'useridassignedover' => $candidate->instanceid,
'roleid' => $candidate->roleid
);
}
}
}
return array('rolesadded' => $rolesadded, 'rolesremoved' => $rolesremoved);
}
@@ -103,5 +103,4 @@ class cohort_role_assignment extends persistent {
return true;
}
}
@@ -94,11 +94,12 @@ class cohort_role_assignments_table extends table_sql {
'idnumber' => $data->cohortidnumber,
'description' => $data->cohortdescription,
'visible' => $data->cohortvisible,
'name' => $data->cohortname
'name' => $data->cohortname,
'theme' => $data->cohorttheme
);
$context = context_helper::instance_by_id($data->cohortcontextid);
$exporter = new \tool_lp\external\cohort_summary_exporter($record, array('context' => $context));
$exporter = new \core_cohort\external\cohort_summary_exporter($record, array('context' => $context));
$cohort = $exporter->export($OUTPUT);
$html = $OUTPUT->render_from_template('tool_cohortroles/cohort-in-list', $cohort);
@@ -169,7 +170,7 @@ class cohort_role_assignments_table extends table_sql {
protected function get_sql_and_params($count = false) {
$fields = 'uca.id, uca.cohortid, uca.userid, uca.roleid, ';
$fields .= 'c.name as cohortname, c.idnumber as cohortidnumber, c.contextid as cohortcontextid, ';
$fields .= 'c.visible as cohortvisible, c.description as cohortdescription, ';
$fields .= 'c.visible as cohortvisible, c.description as cohortdescription, c.theme as cohorttheme, ';
// Add extra user fields that we need for the graded user.
$extrafields = get_extra_user_fields($this->context);
@@ -0,0 +1,328 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for tool_cohortroles.
*
* @package tool_cohortroles
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_cohortroles\privacy;
use core_privacy\local\metadata\collection;
use core_privacy\local\request\approved_contextlist;
use core_privacy\local\request\context;
use core_privacy\local\request\contextlist;
use core_privacy\local\request\transform;
use core_privacy\local\request\writer;
use core_privacy\local\request\userlist;
use \core_privacy\local\request\approved_userlist;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for tool_cohortroles implementing metadata and plugin providers.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements
\core_privacy\local\metadata\provider,
\core_privacy\local\request\core_userlist_provider,
\core_privacy\local\request\plugin\provider {
/**
* Returns meta data about this system.
*
* @param collection $collection The initialised collection to add items to.
* @return collection A listing of user data stored through this system.
*/
public static function get_metadata(collection $collection) : collection {
// The tool_cohortroles plugin utilises the mdl_tool_cohortroles table.
$collection->add_database_table(
'tool_cohortroles',
[
'id' => 'privacy:metadata:tool_cohortroles:id',
'cohortid' => 'privacy:metadata:tool_cohortroles:cohortid',
'roleid' => 'privacy:metadata:tool_cohortroles:roleid',
'userid' => 'privacy:metadata:tool_cohortroles:userid',
'timecreated' => 'privacy:metadata:tool_cohortroles:timecreated',
'timemodified' => 'privacy:metadata:tool_cohortroles:timemodified',
'usermodified' => 'privacy:metadata:tool_cohortroles:usermodified'
],
'privacy:metadata:tool_cohortroles'
);
return $collection;
}
/**
* Get the list of contexts that contain user information for the specified user.
*
* @param int $userid The user to search.
* @return contextlist $contextlist The contextlist containing the list of contexts used in this plugin.
*/
public static function get_contexts_for_userid(int $userid) : contextlist {
$contextlist = new contextlist();
// When we process user deletions and expiries, we always delete from the user context.
// As a result the cohort role assignments would be deleted, which has a knock-on effect with courses
// as roles may change and data may be removed earlier than it should be.
// Retrieve the context associated with tool_cohortroles records.
$sql = "SELECT DISTINCT c.contextid
FROM {tool_cohortroles} tc
JOIN {cohort} c
ON tc.cohortid = c.id
JOIN {context} ctx
ON ctx.id = c.contextid
WHERE tc.userid = :userid
AND (ctx.contextlevel = :contextlevel1
OR ctx.contextlevel = :contextlevel2)";
$params = [
'userid' => $userid,
'contextlevel1' => CONTEXT_SYSTEM,
'contextlevel2' => CONTEXT_COURSECAT
];
$contextlist->add_from_sql($sql, $params);
return $contextlist;
}
/**
* Get the list of users within a specific context.
*
* @param userlist $userlist The userlist containing the list of users who have data in this context/plugin combination.
*/
public static function get_users_in_context(userlist $userlist) {
$context = $userlist->get_context();
// When we process user deletions and expiries, we always delete from the user context.
// As a result the cohort role assignments would be deleted, which has a knock-on effect with courses
// as roles may change and data may be removed earlier than it should be.
$allowedcontextlevels = [
CONTEXT_SYSTEM,
CONTEXT_COURSECAT
];
if (!in_array($context->contextlevel, $allowedcontextlevels)) {
return;
}
$sql = "SELECT tc.userid as userid
FROM {tool_cohortroles} tc
JOIN {cohort} c
ON tc.cohortid = c.id
WHERE c.contextid = :contextid";
$params = [
'contextid' => $context->id
];
$userlist->add_from_sql('userid', $sql, $params);
}
/**
* Export all user data for the specified user, in the specified contexts.
*
* @param approved_contextlist $contextlist The approved contexts to export information for.
*/
public static function export_user_data(approved_contextlist $contextlist) {
global $DB;
// Remove contexts different from SYSTEM or COURSECAT.
$contextids = array_reduce($contextlist->get_contexts(), function($carry, $context) {
if ($context->contextlevel == CONTEXT_SYSTEM || $context->contextlevel == CONTEXT_COURSECAT) {
$carry[] = $context->id;
}
return $carry;
}, []);
if (empty($contextids)) {
return;
}
$userid = $contextlist->get_user()->id;
list($contextsql, $contextparams) = $DB->get_in_or_equal($contextids, SQL_PARAMS_NAMED);
// Retrieve the tool_cohortroles records created for the user.
$sql = "SELECT cr.id as cohortroleid,
c.name as cohortname,
c.idnumber as cohortidnumber,
c.description as cohortdescription,
c.contextid as contextid,
r.shortname as roleshortname,
cr.userid as userid,
cr.timecreated as timecreated,
cr.timemodified as timemodified
FROM {tool_cohortroles} cr
JOIN {cohort} c ON c.id = cr.cohortid
JOIN {role} r ON r.id = cr.roleid
WHERE cr.userid = :userid
AND c.contextid {$contextsql}";
$params = ['userid' => $userid] + $contextparams;
$cohortroles = $DB->get_records_sql($sql, $params);
foreach ($cohortroles as $cohortrole) {
// The tool_cohortroles data export is organised in:
// {User Context}/Cohort roles management/{cohort name}/{role shortname}/data.json.
$subcontext = [
get_string('pluginname', 'tool_cohortroles'),
$cohortrole->cohortname,
$cohortrole->roleshortname
];
$data = (object) [
'cohortname' => $cohortrole->cohortname,
'cohortidnumber' => $cohortrole->cohortidnumber,
'cohortdescription' => $cohortrole->cohortdescription,
'roleshortname' => $cohortrole->roleshortname,
'userid' => transform::user($cohortrole->userid),
'timecreated' => transform::datetime($cohortrole->timecreated),
'timemodified' => transform::datetime($cohortrole->timemodified)
];
$context = \context::instance_by_id($cohortrole->contextid);
writer::with_context($context)->export_data($subcontext, $data);
}
}
/**
* Delete all data for all users in the specified context.
*
* @param context $context The specific context to delete data for.
*/
public static function delete_data_for_all_users_in_context(\context $context) {
global $DB;
// When we process user deletions and expiries, we always delete from the user context.
// As a result the cohort role assignments would be deleted, which has a knock-on effect with courses
// as roles may change and data may be removed earlier than it should be.
$allowedcontextlevels = [
CONTEXT_SYSTEM,
CONTEXT_COURSECAT
];
if (!in_array($context->contextlevel, $allowedcontextlevels)) {
return;
}
$cohortids = $DB->get_fieldset_select('cohort', 'id', 'contextid = :contextid',
['contextid' => $context->id]);
// Delete the tool_cohortroles records created in the specific context.
$DB->delete_records_list('tool_cohortroles', 'cohortid', $cohortids);
}
/**
* Delete multiple users within a single context.
*
* @param approved_userlist $userlist The approved context and user information to delete information for.
*/
public static function delete_data_for_users(approved_userlist $userlist) {
global $DB;
// When we process user deletions and expiries, we always delete from the user context.
// As a result the cohort role assignments would be deleted, which has a knock-on effect with courses
// as roles may change and data may be removed earlier than it should be.
$userids = $userlist->get_userids();
if (empty($userids)) {
return;
}
$context = $userlist->get_context();
$allowedcontextlevels = [
CONTEXT_SYSTEM,
CONTEXT_COURSECAT
];
if (!in_array($context->contextlevel, $allowedcontextlevels)) {
return;
}
$cohortids = $DB->get_fieldset_select('cohort', 'id', 'contextid = :contextid',
['contextid' => $context->id]);
if (empty($cohortids)) {
return;
}
list($cohortsql, $cohortparams) = $DB->get_in_or_equal($cohortids, SQL_PARAMS_NAMED);
list($usersql, $userparams) = $DB->get_in_or_equal($userids, SQL_PARAMS_NAMED);
$params = $cohortparams + $userparams;
$select = "cohortid {$cohortsql} AND userid {$usersql}";
// Delete the tool_cohortroles records created in the specific context for an approved list of users.
$DB->delete_records_select('tool_cohortroles', $select, $params);
}
/**
* Delete all user data for the specified user, in the specified contexts.
*
* @param approved_contextlist $contextlist The approved contexts and user information to delete information for.
*/
public static function delete_data_for_user(approved_contextlist $contextlist) {
global $DB;
// When we process user deletions and expiries, we always delete from the user context.
// As a result the cohort role assignments would be deleted, which has a knock-on effect with courses
// as roles may change and data may be removed earlier than it should be.
// Remove contexts different from SYSTEM or COURSECAT.
$contextids = array_reduce($contextlist->get_contexts(), function($carry, $context) {
if ($context->contextlevel == CONTEXT_SYSTEM || $context->contextlevel == CONTEXT_COURSECAT) {
$carry[] = $context->id;
}
return $carry;
}, []);
if (empty($contextids)) {
return;
}
$userid = $contextlist->get_user()->id;
list($contextsql, $contextparams) = $DB->get_in_or_equal($contextids, SQL_PARAMS_NAMED);
$selectcontext = "contextid {$contextsql}";
// Get the cohorts in the specified contexts.
$cohortids = $DB->get_fieldset_select('cohort', 'id', $selectcontext, $contextparams);
if (empty($cohortids)) {
return;
}
list($cohortsql, $cohortparams) = $DB->get_in_or_equal($cohortids, SQL_PARAMS_NAMED);
$selectcohort = "cohortid {$cohortsql} AND userid = :userid";
$params = ['userid' => $userid] + $cohortparams;
// Delete the tool_cohortroles records created for the userid.
$DB->delete_records_select('tool_cohortroles', $selectcohort, $params);
}
}
@@ -42,3 +42,11 @@ $string['selectrole'] = 'Select role';
$string['selectusers'] = 'Select users to assign role';
$string['taskname'] = 'Sync cohort role assignments';
$string['thisuserroles'] = 'Roles assigned relative to this user';
$string['privacy:metadata:tool_cohortroles'] = 'The Cohort roles management plugin stores user cohort role mappings.';
$string['privacy:metadata:tool_cohortroles:id'] = 'The ID of the cohort role mapping record';
$string['privacy:metadata:tool_cohortroles:cohortid'] = 'The ID of the cohort';
$string['privacy:metadata:tool_cohortroles:roleid'] = 'The ID of the role';
$string['privacy:metadata:tool_cohortroles:userid'] = 'The ID of the user';
$string['privacy:metadata:tool_cohortroles:timecreated'] = 'The time when the cohort role mapping was created';
$string['privacy:metadata:tool_cohortroles:timemodified'] = 'The time when the cohort role mapping was modified';
$string['privacy:metadata:tool_cohortroles:usermodified'] = 'The ID of the user who last modified the cohort role mapping';
@@ -31,13 +31,15 @@
* idnumber cohort idnumber field
* description cohort description field
* visible cohort visible field
* theme cohort theme field
Example context (json):
{ "id": "1",
"name": "Cohort 1",
"visible": true,
"idnumber": "014",
"description": "Some users"
"description": "Some users",
"theme": "clean"
}
}}
{{> tool_lp/form-cohort-selector-suggestion }}
+82 -7
View File
@@ -50,8 +50,6 @@ class tool_cohortroles_api_testcase extends advanced_testcase {
* Setup function- we will create a course and add an assign instance to it.
*/
protected function setUp() {
global $DB;
$this->resetAfterTest(true);
// Create some users.
@@ -133,14 +131,91 @@ class tool_cohortroles_api_testcase extends advanced_testcase {
public function test_delete_cohort_role_assignment() {
$this->setAdminUser();
$params = (object) array(
// Create a cohort role assigment.
$params = (object) [
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
$worked = api::delete_cohort_role_assignment($result->get('id'));
$this->assertTrue($worked);
];
$cohortroleassignment = api::create_cohort_role_assignment($params);
$sync = api::sync_all_cohort_roles();
$rolesadded = [
[
'useridassignedto' => $this->userassignto->id,
'useridassignedover' => $this->userassignover->id,
'roleid' => $this->roleid
]
];
$expected = [
'rolesadded' => $rolesadded,
'rolesremoved' => []
];
$this->assertEquals($sync, $expected);
// Delete the cohort role assigment and confirm the roles are removed.
$result = api::delete_cohort_role_assignment($cohortroleassignment->get('id'));
$this->assertTrue($result);
$sync = api::sync_all_cohort_roles();
$expected = [
'rolesadded' => [],
'rolesremoved' => $rolesadded
];
$this->assertEquals($expected, $sync);
}
/**
* Test case verifying that syncing won't remove role assignments if they are valid for another cohort role assignment.
*/
public function test_delete_cohort_role_assignment_cohorts_having_same_members() {
$this->setAdminUser();
// Create 2 cohorts, with a 1 user (user1) present in both,
// and user2 and user3 members of 1 cohort each.
$cohort1 = $this->getDataGenerator()->create_cohort();
$cohort2 = $this->getDataGenerator()->create_cohort();
$user1 = $this->getDataGenerator()->create_user();
$user2 = $this->getDataGenerator()->create_user();
$user3 = $this->getDataGenerator()->create_user();
cohort_add_member($cohort1->id, $user1->id);
cohort_add_member($cohort1->id, $user2->id);
cohort_add_member($cohort2->id, $user1->id);
cohort_add_member($cohort2->id, $user3->id);
// And a role and a user to assign that role to.
$user4 = $this->getDataGenerator()->create_user(); // A cohort manager, for example.
$roleid = create_role('Role 1', 'myrole', 'test');
// Assign the role for user4 in both cohorts.
$params = (object) [
'userid' => $user4->id,
'roleid' => $roleid,
'cohortid' => $cohort1->id
];
$cohort1roleassignment = api::create_cohort_role_assignment($params);
$params->cohortid = $cohort2->id;
$cohort2roleassignment = api::create_cohort_role_assignment($params);
$sync = api::sync_all_cohort_roles();
// There is no guarantee about the order of roles assigned.
// so confirm we have 3 role assignments, and they are for the users 1, 2 and 3.
$this->assertCount(3, $sync['rolesadded']);
$addedusers = array_column($sync['rolesadded'], 'useridassignedover');
$this->assertContains($user1->id, $addedusers);
$this->assertContains($user2->id, $addedusers);
$this->assertContains($user3->id, $addedusers);
// Remove the role assignment for user4/cohort1.
// Verify only 1 role is unassigned as the others are still valid for the other cohort role assignment.
$result = api::delete_cohort_role_assignment($cohort1roleassignment->get('id'));
$this->assertTrue($result);
$sync = api::sync_all_cohort_roles();
$this->assertCount(0, $sync['rolesadded']);
$this->assertCount(1, $sync['rolesremoved']);
$removedusers = array_column($sync['rolesremoved'], 'useridassignedover');
$this->assertContains($user2->id, $removedusers);
}
public function test_list_cohort_role_assignments() {
@@ -0,0 +1,379 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Unit tests for the tool_cohortroles implementation of the privacy API.
*
* @package tool_cohortroles
* @category test
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
global $CFG;
use \core_privacy\local\request\writer;
use \core_privacy\local\request\approved_contextlist;
use \tool_cohortroles\api;
use \tool_cohortroles\privacy\provider;
use core_privacy\local\request\approved_userlist;
/**
* Unit tests for the tool_cohortroles implementation of the privacy API.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_cohortroles_privacy_testcase extends \core_privacy\tests\provider_testcase {
/**
* Overriding setUp() function to always reset after tests.
*/
public function setUp() {
$this->resetAfterTest(true);
}
/**
* Test for provider::get_contexts_for_userid().
*/
public function test_get_contexts_for_userid() {
global $DB;
// Test setup.
$user = $this->getDataGenerator()->create_user();
$this->setUser($user);
$this->setAdminUser();
// Create course category.
$coursecategory = $this->getDataGenerator()->create_category();
$coursecategoryctx = \context_coursecat::instance($coursecategory->id);
$systemctx = context_system::instance();
// Create course.
$course = $this->getDataGenerator()->create_course();
$coursectx = \context_course::instance($course->id);
$this->setup_test_scenario_data($user->id, $systemctx, 1);
$this->setup_test_scenario_data($user->id, $coursecategoryctx, 1, 'Sausage roll 2',
'sausageroll2');
$this->setup_test_scenario_data($user->id, $coursectx, 1, 'Sausage roll 3',
'sausageroll3');
// Test the User's assigned cohortroles matches 3.
$cohortroles = $DB->get_records('tool_cohortroles', ['userid' => $user->id]);
$this->assertCount(3, $cohortroles);
// Test the User's retrieved contextlist returns only the system and course category context.
$contextlist = provider::get_contexts_for_userid($user->id);
$contexts = $contextlist->get_contexts();
$this->assertCount(2, $contexts);
$contextlevels = array_column($contexts, 'contextlevel');
$expected = [
CONTEXT_SYSTEM,
CONTEXT_COURSECAT
];
// Test the User's contexts equal the system and course category context.
$this->assertEquals($expected, $contextlevels, '', 0, 10, true);
}
/**
* Test for provider::export_user_data().
*/
public function test_export_user_data() {
// Test setup.
$user = $this->getDataGenerator()->create_user();
$this->setUser($user);
$this->setAdminUser();
// Create course category.
$coursecategory = $this->getDataGenerator()->create_category();
$coursecategoryctx = \context_coursecat::instance($coursecategory->id);
$systemctx = context_system::instance();
// Create course.
$course = $this->getDataGenerator()->create_course();
$coursectx = \context_course::instance($course->id);
$this->setup_test_scenario_data($user->id, $systemctx, 1);
$this->setup_test_scenario_data($user->id, $coursecategoryctx, 1, 'Sausage roll 2',
'sausageroll2');
$this->setup_test_scenario_data($user->id, $coursectx, 1, 'Sausage roll 3',
'sausageroll3');
// Test the User's retrieved contextlist contains two contexts.
$contextlist = provider::get_contexts_for_userid($user->id);
$contexts = $contextlist->get_contexts();
$this->assertCount(2, $contexts);
// Add a system, course category and course context to the approved context list.
$approvedcontextids = [
$systemctx->id,
$coursecategoryctx->id,
$coursectx->id
];
// Retrieve the User's tool_cohortroles data.
$approvedcontextlist = new approved_contextlist($user, 'tool_cohortroles', $approvedcontextids);
provider::export_user_data($approvedcontextlist);
// Test the tool_cohortroles data is exported at the system context level.
$writer = writer::with_context($systemctx);
$this->assertTrue($writer->has_any_data());
// Test the tool_cohortroles data is exported at the course category context level.
$writer = writer::with_context($coursecategoryctx);
$this->assertTrue($writer->has_any_data());
// Test the tool_cohortroles data is not exported at the course context level.
$writer = writer::with_context($coursectx);
$this->assertFalse($writer->has_any_data());
}
/**
* Test for provider::delete_data_for_all_users_in_context().
*/
public function test_delete_data_for_all_users_in_context() {
global $DB;
// Test setup.
$user = $this->getDataGenerator()->create_user();
$this->setUser($user);
$this->setAdminUser();
// Create course category.
$coursecategory = $this->getDataGenerator()->create_category();
$coursecategoryctx = \context_coursecat::instance($coursecategory->id);
$systemctx = context_system::instance();
$this->setup_test_scenario_data($user->id, $systemctx, 1);
$this->setup_test_scenario_data($user->id, $coursecategoryctx, 1, 'Sausage roll 2',
'sausageroll2');
// Test the User's assigned cohortroles matches 2.
$cohortroles = $DB->get_records('tool_cohortroles', ['userid' => $user->id]);
$this->assertCount(2, $cohortroles);
// Test the User's retrieved contextlist contains two contexts.
$contextlist = provider::get_contexts_for_userid($user->id);
$contexts = $contextlist->get_contexts();
$this->assertCount(2, $contexts);
// Make sure the user data is only being deleted in within the system and course category context.
$usercontext = context_user::instance($user->id);
// Delete all the User's records in mdl_tool_cohortroles table by the user context.
provider::delete_data_for_all_users_in_context($usercontext);
// Test the cohort roles records in mdl_tool_cohortroles table is still present.
$cohortroles = $DB->get_records('tool_cohortroles', ['userid' => $user->id]);
$this->assertCount(2, $cohortroles);
// Delete all the User's records in mdl_tool_cohortroles table by the specified system context.
provider::delete_data_for_all_users_in_context($systemctx);
// The user data in the system context should be deleted.
// Test the User's retrieved contextlist contains one context (course category).
$contextlist = provider::get_contexts_for_userid($user->id);
$contexts = $contextlist->get_contexts();
$this->assertCount(1, $contexts);
// Delete all the User's records in mdl_tool_cohortroles table by the specified course category context.
provider::delete_data_for_all_users_in_context($coursecategoryctx);
// Test the cohort roles records in mdl_tool_cohortroles table is equals zero.
$cohortroles = $DB->get_records('tool_cohortroles', ['userid' => $user->id]);
$this->assertCount(0, $cohortroles);
$contextlist = provider::get_contexts_for_userid($user->id);
$contexts = $contextlist->get_contexts();
$this->assertCount(0, $contexts);
}
/**
* Test for provider::delete_data_for_user().
*/
public function test_delete_data_for_user() {
global $DB;
// Test setup.
$user = $this->getDataGenerator()->create_user();
$this->setUser($user);
$this->setAdminUser();
// Create course category.
$coursecategory = $this->getDataGenerator()->create_category();
$coursecategoryctx = \context_coursecat::instance($coursecategory->id);
$systemctx = context_system::instance();
$this->setup_test_scenario_data($user->id, $systemctx, 1);
$this->setup_test_scenario_data($user->id, $coursecategoryctx, 1, 'Sausage roll 2',
'sausageroll2');
// Test the User's assigned cohortroles matches 2.
$cohortroles = $DB->get_records('tool_cohortroles', ['userid' => $user->id]);
$this->assertCount(2, $cohortroles);
// Test the User's retrieved contextlist contains two contexts.
$contextlist = provider::get_contexts_for_userid($user->id);
$contexts = $contextlist->get_contexts();
$this->assertCount(2, $contexts);
// Make sure the user data is only being deleted in within the system and the course category contexts.
$usercontext = context_user::instance($user->id);
// Delete all the User's records in mdl_tool_cohortroles table by the specified approved context list.
$approvedcontextlist = new approved_contextlist($user, 'tool_cohortroles', [$usercontext->id]);
provider::delete_data_for_user($approvedcontextlist);
// Test the cohort roles records in mdl_tool_cohortroles table are still present.
$cohortroles = $DB->get_records('tool_cohortroles', ['userid' => $user->id]);
$this->assertCount(2, $cohortroles);
// Delete all the User's records in mdl_tool_cohortroles table by the specified approved context list.
$approvedcontextlist = new approved_contextlist($user, 'tool_cohortroles', $contextlist->get_contextids());
provider::delete_data_for_user($approvedcontextlist);
// Test the records in mdl_tool_cohortroles table is equals zero.
$cohortroles = $DB->get_records('tool_cohortroles', ['userid' => $user->id]);
$this->assertCount(0, $cohortroles);
}
/**
* Test that only users within a course context are fetched.
*/
public function test_get_users_in_context() {
$component = 'tool_cohortroles';
// Create a user.
$user = $this->getDataGenerator()->create_user();
$usercontext = context_user::instance($user->id);
// Create course category.
$coursecategory = $this->getDataGenerator()->create_category();
$coursecategoryctx = \context_coursecat::instance($coursecategory->id);
$systemctx = context_system::instance();
$this->setAdminUser();
$userlist = new \core_privacy\local\request\userlist($systemctx, $component);
provider::get_users_in_context($userlist);
$this->assertCount(0, $userlist);
$this->setup_test_scenario_data($user->id, $systemctx, 1);
$this->setup_test_scenario_data($user->id, $coursecategoryctx, 1, 'Sausage roll 2',
'sausageroll2');
// The list of users within the system context should contain user.
provider::get_users_in_context($userlist);
$this->assertCount(1, $userlist);
$this->assertTrue(in_array($user->id, $userlist->get_userids()));
// The list of users within the course category context should contain user.
$userlist = new \core_privacy\local\request\userlist($coursecategoryctx, $component);
provider::get_users_in_context($userlist);
$this->assertCount(1, $userlist);
$this->assertTrue(in_array($user->id, $userlist->get_userids()));
// The list of users within the user context should be empty.
$userlist2 = new \core_privacy\local\request\userlist($usercontext, $component);
provider::get_users_in_context($userlist2);
$this->assertCount(0, $userlist2);
}
/**
* Test that data for users in approved userlist is deleted.
*/
public function test_delete_data_for_users() {
$component = 'tool_cohortroles';
// Create user1.
$user1 = $this->getDataGenerator()->create_user();
// Create user2.
$user2 = $this->getDataGenerator()->create_user();
// Create user3.
$user3 = $this->getDataGenerator()->create_user();
$usercontext3 = context_user::instance($user3->id);
// Create course category.
$coursecategory = $this->getDataGenerator()->create_category();
$coursecategoryctx = \context_coursecat::instance($coursecategory->id);
$systemctx = context_system::instance();
$this->setAdminUser();
$this->setup_test_scenario_data($user1->id, $systemctx, 1);
$this->setup_test_scenario_data($user2->id, $systemctx, 1, 'Sausage roll 2',
'sausageroll2');
$this->setup_test_scenario_data($user3->id, $coursecategoryctx, 1, 'Sausage roll 3',
'sausageroll3');
$userlist1 = new \core_privacy\local\request\userlist($systemctx, $component);
provider::get_users_in_context($userlist1);
$this->assertCount(2, $userlist1);
$this->assertTrue(in_array($user1->id, $userlist1->get_userids()));
$this->assertTrue(in_array($user2->id, $userlist1->get_userids()));
// Convert $userlist1 into an approved_contextlist.
$approvedlist1 = new approved_userlist($systemctx, $component, [$user1->id]);
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist1);
// Re-fetch users in systemcontext.
$userlist1 = new \core_privacy\local\request\userlist($systemctx, $component);
provider::get_users_in_context($userlist1);
// The user data of user1in systemcontext should be deleted.
// The user data of user2 in systemcontext should be still present.
$this->assertCount(1, $userlist1);
$this->assertTrue(in_array($user2->id, $userlist1->get_userids()));
// Convert $userlist1 into an approved_contextlist in the user context.
$approvedlist2 = new approved_userlist($usercontext3, $component, $userlist1->get_userids());
// Delete using delete_data_for_user.
provider::delete_data_for_users($approvedlist2);
// Re-fetch users in systemcontext.
$userlist1 = new \core_privacy\local\request\userlist($systemctx, $component);
provider::get_users_in_context($userlist1);
// The user data in systemcontext should not be deleted.
$this->assertCount(1, $userlist1);
}
/**
* Helper function to setup tool_cohortroles records for testing a specific user.
*
* @param int $userid The ID of the user used for testing.
* @param int $nocohortroles The number of tool_cohortroles to create for the user.
* @param string $rolename The name of the role to be created.
* @param string $roleshortname The short name of the role to be created.
* @throws \core_competency\invalid_persistent_exception
* @throws coding_exception
*/
protected function setup_test_scenario_data($userid, $context, $nocohortroles, $rolename = 'Sausage Roll',
$roleshortname = 'sausageroll') {
$roleid = create_role($rolename, $roleshortname, 'mmmm');
$result = new \stdClass();
$result->contextid = $context->id;
for ($c = 0; $c < $nocohortroles; $c++) {
$cohort = $this->getDataGenerator()->create_cohort($result);
$params = (object)array(
'userid' => $userid,
'roleid' => $roleid,
'cohortid' => $cohort->id
);
api::create_cohort_role_assignment($params);
}
}
}
+2 -2
View File
@@ -25,8 +25,8 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2017051500; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2017050500; // Requires this Moodle version.
$plugin->version = 2018051400; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2018050800; // Requires this Moodle version.
$plugin->component = 'tool_cohortroles'; // Full name of the plugin (used for diagnostics).
$plugin->dependencies = array(
@@ -0,0 +1,46 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Privacy Subsystem implementation for tool_customlang.
*
* @package tool_customlang
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_customlang\privacy;
defined('MOODLE_INTERNAL') || die();
/**
* Privacy Subsystem for tool_customlang implementing null_provider.
*
* @copyright 2018 Zig Tan <zig@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class provider implements \core_privacy\local\metadata\null_provider {
/**
* Get the language string identifier with the component's language
* file to explain why this plugin stores no data.
*
* @return string
*/
public static function get_reason() : string {
return 'privacy:metadata';
}
}
+6 -3
View File
@@ -29,14 +29,17 @@ defined('MOODLE_INTERNAL') || die();
function xmldb_tool_customlang_upgrade($oldversion) {
global $CFG;
// Moodle v3.1.0 release upgrade line.
// Put any upgrade step following this.
// Automatically generated Moodle v3.2.0 release upgrade line.
// Put any upgrade step following this.
// Automatically generated Moodle v3.3.0 release upgrade line.
// Put any upgrade step following this.
// Automatically generated Moodle v3.4.0 release upgrade line.
// Put any upgrade step following this.
// Automatically generated Moodle v3.5.0 release upgrade line.
// Put any upgrade step following this.
return true;
}
@@ -30,7 +30,7 @@ $string['checkin'] = 'Save strings to language pack';
$string['checkout'] = 'Open language pack for editing';
$string['checkoutdone'] = 'Language pack loaded';
$string['checkoutinprogress'] = 'Loading language pack';
$string['confirmcheckin'] = 'You are about to save modifications to your local language pack. This will export the customised strings from the translator into you Moodle data directory and Moodle will start using the modified strings. Press \'Continue\' to proceed with saving.';
$string['confirmcheckin'] = 'You are about to save modifications to your local language pack. This will export the customised strings from the translator into your site data directory and your site will start using the modified strings. Press \'Continue\' to proceed with saving.';
$string['customlang:edit'] = 'Edit local translation';
$string['customlang:view'] = 'View local translation';
$string['filter'] = 'Filter strings';
@@ -59,3 +59,4 @@ $string['placeholderwarning'] = 'string contains a placeholder';
$string['pluginname'] = 'Language customisation';
$string['savecheckin'] = 'Save changes to the language pack';
$string['savecontinue'] = 'Apply changes and continue editing';
$string['privacy:metadata'] = 'The Language customisation plugin does not store any personal data.';
+5
View File
@@ -159,6 +159,11 @@ class tool_customlang_utils {
$needsupdate = true;
$current[$stringid]->local = $stringlocal;
$current[$stringid]->timecustomized = $now;
} else if (isset($currentlocal) && $stringlocal !== $currentlocal) {
// If local string has been removed, we need to remove also the old local value from DB.
$needsupdate = true;
$current[$stringid]->local = null;
$current[$stringid]->timecustomized = $now;
}
if ($needsupdate) {
+6 -4
View File
@@ -134,11 +134,13 @@ class tool_customlang_renderer extends plugin_renderer_base {
$output .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'translatorsubmitted', 'value'=>1));
$output .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'sesskey', 'value'=>sesskey()));
$output .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'p', 'value'=>$translator->currentpage));
$save1 = html_writer::empty_tag('input', array('type'=>'submit', 'name'=>'savecontinue', 'value'=>get_string('savecontinue', 'tool_customlang')));
$save2 = html_writer::empty_tag('input', array('type'=>'submit', 'name'=>'savecheckin', 'value'=>get_string('savecheckin', 'tool_customlang')));
$output .= html_writer::tag('fieldset', $save1.$save2, array('class'=>'buttonsbar'));
$save1 = html_writer::empty_tag('input', array('type' => 'submit', 'name' => 'savecontinue',
'value' => get_string('savecontinue', 'tool_customlang'), 'class' => 'btn btn-secondary'));
$save2 = html_writer::empty_tag('input', array('type' => 'submit', 'name' => 'savecheckin',
'value' => get_string('savecheckin', 'tool_customlang'), 'class' => 'btn btn-secondary'));
$output .= html_writer::tag('fieldset', $save1 . ' ' . $save2, array('class' => 'buttonsbar'));
$output .= html_writer::table($table);
$output .= html_writer::tag('fieldset', $save1.$save2, array('class'=>'buttonsbar'));
$output .= html_writer::tag('fieldset', $save1 . ' ' . $save2, array('class' => 'buttonsbar'));
$output .= html_writer::end_tag('div');
$output .= html_writer::end_tag('form');

Some files were not shown because too many files have changed in this diff Show More