Merge branch 'MDL-70972-main' of https://github.com/PhMemmel/moodle

This commit is contained in:
Sara Arjona 2024-06-10 12:33:18 +02:00
commit 94adf2ae31
No known key found for this signature in database
2 changed files with 12 additions and 3 deletions

View file

@ -157,7 +157,16 @@ class format_singleactivity extends core_courseformat\base {
foreach (array_keys($availabletypes) as $activity) {
$capability = "mod/{$activity}:addinstance";
if (!has_capability($capability, $testcontext)) {
unset($availabletypes[$activity]);
if (!$this->categoryid) {
unset($availabletypes[$activity]);
} else {
// We do not have a course yet, so we guess if the user will have the capability to add the activity after
// creating the course.
$categorycontext = \context_coursecat::instance($this->categoryid);
if (!guess_if_creator_will_have_course_capability($capability, $categorycontext)) {
unset($availabletypes[$activity]);
}
}
}
}
}

View file

@ -21,7 +21,6 @@ Feature: Courses can be created in Single Activity mode
| moodle/course:manageactivities | allow |
| moodle/course:viewparticipants | allow |
| moodle/role:assign | allow |
| mod/quiz:addinstance | allow |
When I log in as "kevin"
And I am on site homepage
And I press "Add a new course"
@ -31,6 +30,7 @@ Feature: Courses can be created in Single Activity mode
| Format | Single activity |
And I press "Update format"
Then I should see "Quiz" in the "Type of activity" "field"
And I should not see "Forum" in the "Type of activity" "field"
And I should see "Forum" in the "Type of activity" "field"
And I set the field "Type of activity" to "Quiz"
And I press "Save and display"
And I should see "New Quiz"