Skip to content

Commit

Permalink
Merge branch 'MDL-68210-master' of https://github.com/snake/moodle
Browse files Browse the repository at this point in the history
  • Loading branch information
sarjona committed Jul 16, 2020

Unverified

This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
2 parents 57ad9e1 + c032adf commit d189edb
Showing 5 changed files with 70 additions and 24 deletions.
20 changes: 9 additions & 11 deletions mod/assign/overrides.php
Original file line number Diff line number Diff line change
@@ -201,17 +201,15 @@
// Icons.
$iconstr = '';

if ($active) {
// Edit.
$editurlstr = $overrideediturl->out(true, array('id' => $override->id));
$iconstr = '<a title="' . get_string('edit') . '" href="'. $editurlstr . '">' .
$OUTPUT->pix_icon('t/edit', get_string('edit')) . '</a> ';
// Duplicate.
$copyurlstr = $overrideediturl->out(true,
array('id' => $override->id, 'action' => 'duplicate'));
$iconstr .= '<a title="' . get_string('copy') . '" href="' . $copyurlstr . '">' .
$OUTPUT->pix_icon('t/copy', get_string('copy')) . '</a> ';
}
// Edit.
$editurlstr = $overrideediturl->out(true, array('id' => $override->id));
$iconstr = '<a title="' . get_string('edit') . '" href="'. $editurlstr . '">' .
$OUTPUT->pix_icon('t/edit', get_string('edit')) . '</a> ';
// Duplicate.
$copyurlstr = $overrideediturl->out(true,
array('id' => $override->id, 'action' => 'duplicate'));
$iconstr .= '<a title="' . get_string('copy') . '" href="' . $copyurlstr . '">' .
$OUTPUT->pix_icon('t/copy', get_string('copy')) . '</a> ';
// Delete.
$deleteurlstr = $overridedeleteurl->out(true,
array('id' => $override->id, 'sesskey' => sesskey()));
25 changes: 25 additions & 0 deletions mod/assign/tests/behat/assign_user_override.feature
Original file line number Diff line number Diff line change
@@ -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"
20 changes: 9 additions & 11 deletions mod/lesson/overrides.php
Original file line number Diff line number Diff line change
@@ -218,17 +218,15 @@
// Icons.
$iconstr = '';

if ($active) {
// Edit.
$editurlstr = $overrideediturl->out(true, array('id' => $override->id));
$iconstr = '<a title="' . get_string('edit') . '" href="'. $editurlstr . '">' .
$OUTPUT->pix_icon('t/edit', get_string('edit')) . '</a> ';
// Duplicate.
$copyurlstr = $overrideediturl->out(true,
array('id' => $override->id, 'action' => 'duplicate'));
$iconstr .= '<a title="' . get_string('copy') . '" href="' . $copyurlstr . '">' .
$OUTPUT->pix_icon('t/copy', get_string('copy')) . '</a> ';
}
// Edit.
$editurlstr = $overrideediturl->out(true, array('id' => $override->id));
$iconstr = '<a title="' . get_string('edit') . '" href="'. $editurlstr . '">' .
$OUTPUT->pix_icon('t/edit', get_string('edit')) . '</a> ';
// Duplicate.
$copyurlstr = $overrideediturl->out(true,
array('id' => $override->id, 'action' => 'duplicate'));
$iconstr .= '<a title="' . get_string('copy') . '" href="' . $copyurlstr . '">' .
$OUTPUT->pix_icon('t/copy', get_string('copy')) . '</a> ';
// Delete.
$deleteurlstr = $overridedeleteurl->out(true,
array('id' => $override->id, 'sesskey' => sesskey()));
24 changes: 23 additions & 1 deletion mod/lesson/tests/behat/lesson_user_override.feature
Original file line number Diff line number Diff line change
@@ -210,6 +210,7 @@ Feature: Lesson user override
And I log in as "student2"
And I am on "Course 1" course homepage
And I follow "Test lesson"
And I wait until the page is ready
Then I should see "This lesson closed on Saturday, 1 January 2000, 8:00"
And I should not see "Cat is an amphibian"
And I log out
@@ -248,7 +249,8 @@ 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"
And I wait until the page is ready
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 +385,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"
5 changes: 4 additions & 1 deletion mod/quiz/tests/behat/quiz_user_override.feature
Original file line number Diff line number Diff line change
@@ -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"

0 comments on commit d189edb

Please sign in to comment.