Commit graph

7468 commits

Author SHA1 Message Date
Andrew Nicols
76075bcf6b MDL-63401 tool_dataprivacy: Move final cap check to endpoint 2018-10-09 08:22:42 +08: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
0de0739e8e MDL-63401 tool_dataprivacy: Move cap checks to endpoints from API 2018-10-08 20:51:09 +08: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
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
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
Adrian Greeve
8855e0041d MDL-62558 tool_dataprivacy: Create a summary page for users. 2018-10-03 10:38:12 +08: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
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
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
Jun Pataleta
d283cf2cee MDL-63184 tool_dataprivacy: Ensure PO roles have correct capability 2018-09-17 22:35:23 +08: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
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
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
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
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
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
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)
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
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
Mihail Geshoski
3bee541afc MDL-62989 privacy: Improve data request order for users 2018-08-24 15:33:19 +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
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
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
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
Jun Pataleta
629c7f75b3 MDL-62660 tool_dataprivacy: Behat fix for data deletion 2018-08-21 10:37:56 +08:00