143 Commits

Author SHA1 Message Date
Adrian Greeve
ea81e783ef MDL-62491 privacy: Fix running the download script.
Previously running the code to generate the download file
was very fagile. Now the code can be run anywhere without
problems occuring copying files.
2018-10-09 09:31:13 +08:00
Adrian Greeve
e90a0a7415 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-08 09:00:08 +08:00
Eloy Lafuente (stronk7)
cf76059eda Merge branch 'MDL-62535-master' of git://github.com/abgreeve/moodle 2018-08-30 01:19:57 +02:00
Michael Hawkins
693f690c18 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 15:31:20 +08:00
Adrian Greeve
4c6781f009 MDL-62535 privacy: Create deprecated provider interface.
Any interfaces that have become deprecated should extend
this interface.
2018-08-20 11:32:01 +08:00
Eloy Lafuente (stronk7)
c9840c0144 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:05:55 +02:00
David Mudrák
cea03cbd43 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:43 +02:00
Andrew Nicols
d7cb7550c7 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:43 +02:00
Adrian Greeve
666aae9deb 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:24:38 +08:00
Adrian Greeve
c84cb13cd4 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:24:38 +08:00
Marina Glancy
004fd4259e MDL-62147 privacy: unittest ensures that all tables covered 2018-05-16 13:57:19 +08:00
Andrew Nicols
22c0a30888 MDL-62134 core_privacy: Allow for a failure handler 2018-05-16 11:52:46 +08:00
Marina Glancy
65abf2a37c MDL-62134 privacy: consistantly call components methods 2018-05-16 09:02:01 +08: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
502344a904 MDL-62370 core_privacy: Directory-less subsystems are compliant 2018-05-14 19:59:43 +08:00
David Monllao
05dcf35796 Merge branch 'MDL-62425-master' of git://github.com/andrewnicols/moodle 2018-05-14 10:57:14 +02:00
Andrew Nicols
66f2da2e0a MDL-62425 core_privacy: Add core to the list of components 2018-05-14 15:40:56 +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
Eloy Lafuente (stronk7)
28ec28e026 Merge branch 'MDL-62251-master' of git://github.com/rezaies/moodle 2018-05-13 20:10:44 +02:00
Andrew Nicols
563852791d MDL-62371 core_privacy: Add support for progress trace 2018-05-13 15:45:24 +08:00
Andrew Nicols
7b4fa14f36 MDL-61858 core_privacy: Add test to ensure component implementations 2018-05-11 19:37:48 +08: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
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
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
06ede94f07 Merge branch 'wip-MDL-62351-master' of git://github.com/marinaglancy/moodle 2018-05-10 09:17:28 +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
Marina Glancy
468c8d39c3 MDL-62351 privacy: check that subsystem/plugintype exist 2018-05-09 17:37:31 +08:00
Jake Dallimore
e4a37fbef1 MDL-62029 core_course: Fixes to context-aware provider implementation. 2018-05-09 15:34:41 +08:00
Adrian Greeve
9faf51a7ca MDL-62029 core_privacy: context aware provider creation. 2018-05-09 10:11:47 +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
Andrew Nicols
630a72f19f Merge branch 'MDL-62285-master' of git://github.com/ryanwyllie/moodle 2018-05-08 11:08:03 +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
Adrian Greeve
6d3b250b4f MDL-62137 core_privacy: Update to helper to use core_completion 2018-05-07 14:28:17 +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
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
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
Andrew Nicols
04507546ec MDL-61407 privacy: Track changes in any context 2018-05-02 19:13:30 +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
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
Andrew Nicols
9b7527defc MDL-62248 core_privacy: Add getter for user context prefs 2018-04-30 20:35:56 +08: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
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
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