Commit graph

98 commits

Author SHA1 Message Date
Eloy Lafuente (stronk7)
9da4b1821f Merge branch 'MDL-65788' of git://github.com/Chocolate-lightning/moodle 2019-07-22 21:38:20 +02:00
Ryan Wyllie
195ea4480b MDL-62497 javascript: build AMD modules with new transpiler 2019-07-19 14:12:49 +08:00
Mathew May
90117cefb8 MDL-65788 tool_policy: Move accept_policy JS call into an array 2019-07-18 10:47:18 +08:00
Mathew May
25d31d43b7 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-14 18:52:27 +08:00
Mathew May
4828648258 MDL-65770 tool_policy: Add Moodle changes for guest policy popup 2019-06-13 13:25:35 +08:00
Mathew May
fcdc822350 MDL-65770 tool_policy: Update guest policy popup 2019-06-13 11:52:55 +08:00
Eloy Lafuente (stronk7)
3572a25cc3 MDL-65644 upgrade: add 3.7.0 separation line to all upgrade scripts 2019-05-20 19:35:05 +02:00
Eloy Lafuente (stronk7)
c9a1a6341c MDL-65571 versions: bump all versions and requires near release
version = 2019052000 release version
requires= 2019051100 current beta (week6roll2) version
2019-05-12 23:46:34 +02:00
Mathew May
5db1ce5331 MDL-64506 templates: BS2 pull-x -> BS4 float-x 2019-04-03 19:47:13 +08:00
Mathew May
5cac5fa428 MDL-64506 templates: BS2 m-x-x to BS4 mx-x 2019-04-03 19:47:11 +08:00
Mathew May
3f2c68f119 MDL-64506 templates: Move BS2 labels to BS4 badges 2019-04-03 19:34:20 +08:00
Mathew May
29551c4b1a MDL-64506 templates: Move BS2 btns' to BS4 btns'
well bs2 class is now card in bs4
2019-04-03 19:34:20 +08:00
Jun Pataleta
f50778c822 MDL-65005 tool_policy: Ensure the user's on the Dashboard after agreeing 2019-03-20 12:58:16 +08:00
Sara Arjona
63be19c543 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-08 10:01:51 +01:00
Eloy Lafuente (stronk7)
f47c8f3525 MDL-64300 upgrade: add 3.6.0 separation line to all upgrade scripts 2018-12-02 18:36:40 +01:00
Eloy Lafuente (stronk7)
085353b315 MDL-64282 versions: bump all versions and requires near release
version = 2018120300 release version
requires= 2018112800 current rc2 (week7roll1) version
2018-11-29 18:24:08 +01:00
Andrew Nicols
705003beae MDL-63303 behat: Behat fixes 2018-11-15 16:26:16 +08:00
Damyon Wiese
cfd390ee94 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:14:41 +08:00
Damyon Wiese
3ed1cec01e MDL-62139 behat: Invalid test
If javascript is disabled, we can't open the menu.
2018-10-23 16:47:20 +08:00
Andrew Nicols
33368fb6d5 MDL-63664 tool_policy: Whitespace fix 2018-10-23 10:54:15 +08:00
Andrew Nicols
dfb151b2d9 Merge branch 'MDL-63664-master' of git://github.com/mickhawkins/moodle 2018-10-23 10:42:48 +08:00
Michael Hawkins
f6843ac966 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:02:58 +08:00
David Mudrák
aa7e539c6f MDL-62309 tool_policy: Add Behat scenarios for the optional policies 2018-10-22 08:49:36 +02:00
David Mudrák
222c378870 MDL-62309 tool_policy: Amend behaviour of handler's accept() method
When accepting the policies via the sitepolicy handler, only compulsory
policies are to be marked as accepted. Optional policies will be left as
pending. Users must express their consent explicitly for them.

As a side product of the change, unit tests are added for the whole
handler class.
2018-10-22 08:49:36 +02:00
David Mudrák
ad5e2135c5 MDL-62309 tool_policy: Improve permission evaluation methods
Please refer to the unit tests for the specification of the expected
behaviour.
2018-10-22 08:49:36 +02:00
David Mudrák
4a742e4f94 MDL-62309 tool_policy: Update user acceptances reports
This adds support for optional policies to the user acceptance reports.
Distinguished are "Pending" acceptances (we did not hear yet) from
"Declined" (user did not agree). The status workflow updated to support
new transitions: pending -> declined and declined -> accepted.
2018-10-22 08:49:36 +02:00
David Mudrák
56390aa246 MDL-62309 tool_policy: New icons for user acceptances report
There was an accessibility issue with the previous icons that we used
the same "checked" shape just in different colours for different
meanings. New icons added for the new statuses:

* partial - a warning icon for the overall status column that the user
  has only some policies accepted, not all.
* pending - that we did not hear yet from the user - whcih is different
  from a declined policy.
2018-10-22 08:49:36 +02:00
David Mudrák
5348b1eef5 MDL-62309 tool_policy: Optional policies can be declined by the user
For optional policies, we provide a radio selector to let the user
choose the acceptance status on the consent page. For policies displayed
on their own page, we display a link to decline the policy.

The way how we pass the list of policy version ids to index.php has
changed so that we can now not only pass the list of ids, but also the
actual acceptance status (accepted / declined).
2018-10-22 08:49:36 +02:00
David Mudrák
faf4222edc MDL-62309 tool_policy: Add api::get_agreement_optional() method
This method allows to quickly check if the given policy version is
marked as optional or compulsory. This will be needed in other places
such as permissions check.
2018-10-22 08:49:36 +02:00
David Mudrák
1617fde9a8 MDL-62309 tool_policy: New API method to decline a policy
Policy can be declined. Optional policies do not need to be accepted to
use the site. But we still want to hear explicitly from the user.
2018-10-22 08:49:36 +02:00
David Mudrák
f98cd91a13 MDL-62309 tool_policy: Improve api::is_user_version_accepted() return
The method now returns three-state logic. A bool value true/false is
returned if the user has accepted/rejected the policy, respectively. A
null value is returned if the user did not express their agreement in
either way yet.

This allows to distinguish between "rejected the policy" and "did not
say anything about it yet" cases.
2018-10-22 08:49:36 +02:00
David Mudrák
9011d394ab MDL-62309 tool_policy: Add new field to hold the optional policy flag
The patch adds a new column to the database table to hold the
information if giving agreement to the policy is compulsory or optional.
The flag can be defined via the policy editing form and is displayed at
the policies management screen.

The last modified time merged with the version column at the policies
management screen to save a bit of horizontal space - needed as we
display more information now at the first column.
2018-10-22 08:49:36 +02:00
Eloy Lafuente (stronk7)
659d9fe942 Merge branch 'MDL-63013-master-prioritypolicy' of git://github.com/mudrd8mz/moodle 2018-09-26 23:21:09 +02:00
David Mudrák
7fb0e8a260 MDL-63013 tool_policy: Add Behat tests for the new style of agreements
The tests make sure that both existing users as well as signing up users
can accept policies with "on their own page" style of agreement prior
reaching the consent page.
2018-09-19 09:55:42 +02:00
David Mudrák
362ae1b443 MDL-63013 tool_policy: Change acceptance flow for policies with own page
The idea of the patch is to check the list of policies that are shown
before and on the consent page. If that list contains a policy that is
supposed to be accepted on its own page, the existing flow is
interrupted and the user is redirected to a view.php to display that
particular policy.

The view template for such a policy contains a button for getting the
user agreement. When pressed, the policy is marked as accepted and we
can go to start again.

To make this working during the signup, we need to extend the existing
logic and start tracking which particular policies the visitor accepted
prior reaching the signup form. Similarly, we need to start track which
particular policies were displayed and use that list when evaluating
which policies were unchecked on the consent page.
2018-09-19 09:55:42 +02:00
David Mudrák
23b663ed55 MDL-63013 tool_policy: Policy agreement style can be defined now
The patch introduces a new property of a policy document called
"Agreement style". It allows the admin to define if the policy should be
accepted together with all others on the consent page (legacy and
default behaviour) or on its page before the consent page is reached
(the new optional behaviour).
2018-09-19 09:55:42 +02:00
Mihail Geshoski
85de6d525d MDL-63109 privacy: Add behat tests 2018-09-18 15:06:23 +08:00
Mihail Geshoski
2b85015b83 MDL-63109 privacy: Fix the initialisation of the policy acceptance modal 2018-09-18 12:55:35 +08:00
Mihail Geshoski
2e72392bbf MDL-62342 privacy: Fix strings used in the consent on behalf modal 2018-09-03 12:53:19 +08:00
Mihail Geshoski
c106d489c5 MDL-62342 privacy: Use singular/plural form in labels 2018-09-03 12:53:19 +08:00
Eloy Lafuente (stronk7)
1766184e97 Merge branch 'MDL-63094-master' of git://github.com/andrewnicols/moodle 2018-08-28 23:53:58 +02:00
Andrew Nicols
5ab0e8aae3 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
4b6780417e 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:23:30 +08:00
Víctor Déniz Falcón
02fda279ed MDL-57281 behat: deprecated step definition I navigate to node in
Definition step deprecated and affected tests modified.
2018-08-20 12:53:26 +01:00
Mihail Geshoski
be38df119d MDL-62341 privacy: Add behat test 2018-08-13 07:52:09 +08:00
Mihail Geshoski
e55e9df388 MDL-62341 privacy: Add link to previous page in viewall policies page 2018-08-13 07:52:09 +08:00
Jun Pataleta
1d4eecffc6 Merge branch 'MDL-62950-master' of git://github.com/andrewnicols/moodle 2018-07-27 16:19:22 +08:00
Andrew Nicols
d80fbaaca6 MDL-62950 behat: Correct path to P&P 2018-07-26 14:49:04 +08:00
Jun Pataleta
6830ae12c7 Merge branch 'MDL-62852-master' of git://github.com/sarjona/moodle 2018-07-25 16:38:47 +08:00
Sara Arjona
7b3a113776 MDL-62852 policy: Display policy audience in the viewall.php page 2018-07-25 10:20:01 +02:00