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.
This commit is contained in:
@@ -232,6 +232,10 @@ class page_agreedocs implements renderable, templatable {
|
||||
];
|
||||
redirect(new moodle_url('/admin/tool/policy/view.php', $urlparams));
|
||||
}
|
||||
} else {
|
||||
// Update the policyagreed for the user to avoid infinite loop because there are no policies to-be-accepted.
|
||||
api::update_policyagreed($userid);
|
||||
$this->redirect_to_previous_url();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -292,3 +292,23 @@ Feature: Viewing acceptances reports and accepting on behalf of other users
|
||||
And I should see "2 of 2" in the "User One" "table_row"
|
||||
And "Consent given on behalf of user" "icon" should exist in the "User Two" "table_row"
|
||||
And I should see "2 of 2" in the "User Two" "table_row"
|
||||
|
||||
Scenario: View acceptances made by users on their own after inactivating a policy
|
||||
Given I log in as "user1"
|
||||
And I should see "This site policy"
|
||||
And I should not see "Course overview"
|
||||
And I press "Next"
|
||||
And I set the field "I agree to the This site policy" to "1"
|
||||
And I press "Next"
|
||||
And I should see "Course overview"
|
||||
And I log out
|
||||
And I log in as "admin"
|
||||
And I navigate to "Users > Privacy and policies > Manage policies" in site administration
|
||||
And I click on "Actions" "link_or_button" in the "This privacy policy" "table_row"
|
||||
And I click on "Set status to \"Active\"" "link" in the "This privacy policy" "table_row"
|
||||
And I press "Continue"
|
||||
And I click on "Set status to \"Inactive\"" "link" in the "This privacy policy" "table_row"
|
||||
And I press "Continue"
|
||||
And I log out
|
||||
When I log in as "user1"
|
||||
Then I should see "Course overview"
|
||||
|
||||
Reference in New Issue
Block a user