diff --git a/mod/assign/overrides.php b/mod/assign/overrides.php
index 1125b734f05..effc9df7e19 100644
--- a/mod/assign/overrides.php
+++ b/mod/assign/overrides.php
@@ -201,17 +201,15 @@ foreach ($overrides as $override) {
// Icons.
$iconstr = '';
- if ($active) {
- // Edit.
- $editurlstr = $overrideediturl->out(true, array('id' => $override->id));
- $iconstr = '' .
- $OUTPUT->pix_icon('t/edit', get_string('edit')) . ' ';
- // Duplicate.
- $copyurlstr = $overrideediturl->out(true,
- array('id' => $override->id, 'action' => 'duplicate'));
- $iconstr .= '' .
- $OUTPUT->pix_icon('t/copy', get_string('copy')) . ' ';
- }
+ // Edit.
+ $editurlstr = $overrideediturl->out(true, array('id' => $override->id));
+ $iconstr = '' .
+ $OUTPUT->pix_icon('t/edit', get_string('edit')) . ' ';
+ // Duplicate.
+ $copyurlstr = $overrideediturl->out(true,
+ array('id' => $override->id, 'action' => 'duplicate'));
+ $iconstr .= '' .
+ $OUTPUT->pix_icon('t/copy', get_string('copy')) . ' ';
// Delete.
$deleteurlstr = $overridedeleteurl->out(true,
array('id' => $override->id, 'sesskey' => sesskey()));
diff --git a/mod/assign/tests/behat/assign_user_override.feature b/mod/assign/tests/behat/assign_user_override.feature
index ef542ce7e8d..9f1e0394c93 100644
--- a/mod/assign/tests/behat/assign_user_override.feature
+++ b/mod/assign/tests/behat/assign_user_override.feature
@@ -277,3 +277,28 @@ Feature: Assign user override
And I navigate to "User overrides" in current page administration
Then I should see "Student1" in the ".generaltable" "css_element"
And I should not see "Student2" in the ".generaltable" "css_element"
+
+ @javascript
+ Scenario: Create a user override when the assignment is not available to the student
+ Given I log in as "teacher1"
+ And I am on "Course 1" course homepage with editing mode on
+ And I follow "Test assignment name"
+ And I navigate to "Edit settings" in current page administration
+ And I expand all fieldsets
+ And I set the field "Availability" to "Hide from students"
+ And I click on "Save and display" "button"
+ When I navigate to "User overrides" in current page administration
+ And I press "Add user override"
+ And I set the following fields to these values:
+ | Override user | Student1 |
+ | id_allowsubmissionsfromdate_enabled | 1 |
+ | allowsubmissionsfromdate[day] | 1 |
+ | allowsubmissionsfromdate[month] | January |
+ | allowsubmissionsfromdate[year] | 2015 |
+ | allowsubmissionsfromdate[hour] | 08 |
+ | allowsubmissionsfromdate[minute] | 00 |
+ And I press "Save"
+ Then I should see "This override is inactive"
+ And "Edit" "icon" should exist in the "Sam1 Student1" "table_row"
+ And "copy" "icon" should exist in the "Sam1 Student1" "table_row"
+ And "Delete" "icon" should exist in the "Sam1 Student1" "table_row"
diff --git a/mod/lesson/overrides.php b/mod/lesson/overrides.php
index 657dcfb4b19..9ff3cddc598 100644
--- a/mod/lesson/overrides.php
+++ b/mod/lesson/overrides.php
@@ -218,17 +218,15 @@ foreach ($overrides as $override) {
// Icons.
$iconstr = '';
- if ($active) {
- // Edit.
- $editurlstr = $overrideediturl->out(true, array('id' => $override->id));
- $iconstr = '' .
- $OUTPUT->pix_icon('t/edit', get_string('edit')) . ' ';
- // Duplicate.
- $copyurlstr = $overrideediturl->out(true,
- array('id' => $override->id, 'action' => 'duplicate'));
- $iconstr .= '' .
- $OUTPUT->pix_icon('t/copy', get_string('copy')) . ' ';
- }
+ // Edit.
+ $editurlstr = $overrideediturl->out(true, array('id' => $override->id));
+ $iconstr = '' .
+ $OUTPUT->pix_icon('t/edit', get_string('edit')) . ' ';
+ // Duplicate.
+ $copyurlstr = $overrideediturl->out(true,
+ array('id' => $override->id, 'action' => 'duplicate'));
+ $iconstr .= '' .
+ $OUTPUT->pix_icon('t/copy', get_string('copy')) . ' ';
// Delete.
$deleteurlstr = $overridedeleteurl->out(true,
array('id' => $override->id, 'sesskey' => sesskey()));
diff --git a/mod/lesson/tests/behat/lesson_user_override.feature b/mod/lesson/tests/behat/lesson_user_override.feature
index e6b9fd0a8dd..fecffd63f23 100644
--- a/mod/lesson/tests/behat/lesson_user_override.feature
+++ b/mod/lesson/tests/behat/lesson_user_override.feature
@@ -248,7 +248,7 @@ Feature: Lesson user override
And I log in as "student2"
And I am on "Course 1" course homepage
And I follow "Test lesson"
- Then I should see "This lesson will be open on Tuesday, 1 January 2030, 8:00"
+ Then I should see "This lesson will be open on Tuesday, 1 January 2030, 8:00"
And I should not see "Cat is an amphibian"
And I log out
And I log in as "student1"
@@ -383,3 +383,23 @@ Feature: Lesson user override
And I navigate to "User overrides" in current page administration
Then I should see "Student1" in the ".generaltable" "css_element"
And I should not see "Student2" in the ".generaltable" "css_element"
+
+ @javascript
+ Scenario: Create a user override when the lesson is not available to the student
+ Given I log in as "teacher1"
+ And I am on "Course 1" course homepage with editing mode on
+ And I follow "Test lesson name"
+ And I navigate to "Edit settings" in current page administration
+ And I expand all fieldsets
+ And I set the field "Availability" to "Hide from students"
+ And I click on "Save and display" "button"
+ When I navigate to "User overrides" in current page administration
+ And I press "Add user override"
+ And I set the following fields to these values:
+ | Override user | Student1 |
+ | Maximum number of attempts | 2 |
+ And I press "Save"
+ Then I should see "This override is inactive"
+ And "Edit" "icon" should exist in the "Sam1 Student1" "table_row"
+ And "copy" "icon" should exist in the "Sam1 Student1" "table_row"
+ And "Delete" "icon" should exist in the "Sam1 Student1" "table_row"
diff --git a/mod/quiz/tests/behat/quiz_user_override.feature b/mod/quiz/tests/behat/quiz_user_override.feature
index 344488fa7e1..408345d8b22 100644
--- a/mod/quiz/tests/behat/quiz_user_override.feature
+++ b/mod/quiz/tests/behat/quiz_user_override.feature
@@ -63,7 +63,10 @@ Feature: Quiz user override
| Override user | Student1 |
| Attempts allowed | 1 |
And I press "Save"
- Then "Edit" "icon" should exist in the "Student One" "table_row"
+ Then I should see "This override is inactive"
+ And "Edit" "icon" should exist in the "Student One" "table_row"
+ And "copy" "icon" should exist in the "Student One" "table_row"
+ And "Delete" "icon" should exist in the "Student One" "table_row"
Scenario: A teacher without accessallgroups permission should only be able to add user override for users that he/she shares groups with,
when the activity's group mode is to "separate groups"