merged, fixed an infinite loop

This commit is contained in:
toyomoyo 2006-10-20 05:09:37 +00:00
parent 5469bd9c2b
commit 80dfce19ae

View File

@ -3766,13 +3766,23 @@ function forum_remove_user_subscriptions($userid, $context) {
switch ($context->contextlevel) {
case CONTEXT_SYSTEM: // For the whole site
if ($courses = get_records('course')) {
foreach ($courses as $course) {
$subcontext = get_context_instance(CONTEXT_COURSE, $course->id);
forum_remove_user_subscriptions($userid, $subcontext);
}
}
break;
if ($courses = get_records('course')) {
foreach ($courses as $course) {
if ($course->id == SITEID) {
if ($course = get_records('course', 'id', $context->instanceid)) {
if ($forums = get_all_instances_in_course('forum', $course)) {
foreach ($forums as $forum) {
forum_unsubscribe($userid, $forum->id);
}
}
}
continue;
}
$subcontext = get_context_instance(CONTEXT_COURSE, $course->id);
forum_remove_user_subscriptions($userid, $subcontext);
}
}
break;
case CONTEXT_COURSECAT: // For a whole category
if ($courses = get_records('course', 'category', $context->instanceid)) {