]> git.mjollnir.org Git - moodle.git/commitdiff
forum subscriptions use capabilities
authormoodler <moodler>
Fri, 1 Sep 2006 06:56:24 +0000 (06:56 +0000)
committermoodler <moodler>
Fri, 1 Sep 2006 06:56:24 +0000 (06:56 +0000)
mod/forum/lib.php

index f567bc89920628871af02aedb77aaac9d9c4a5cd..7fa52e17c5cf4d8ca10695fd80f9d3a851c9bba2 100644 (file)
@@ -3524,12 +3524,13 @@ function forum_add_user($userid, $courseid) {
 /// Add subscriptions for new users
     if ($forums = get_records_select('forum', "course = '$courseid' AND forcesubscribe = '".FORUM_INITIALSUBSCRIBE."'")) {
         foreach ($forums as $forum) {
-            forum_subscribe($userid, $forum->id);
-        }
-    }
-    if ($forums = get_records_select('forum', "course = '".SITEID."' AND forcesubscribe = '".FORUM_INITIALSUBSCRIBE."'")) {
-        foreach ($forums as $forum) {
-            forum_subscribe($userid, $forum->id);
+            if ($cm = get_coursemodule_from_id('forum', $forum->id)) {   // TODO: get this data in the above query
+                if ($context = get_context_instance(CONTEXT_MODULE, $cm->id)) {
+                    if (has_capability('mod/forum:viewforum', $context)) {
+                        forum_subscribe($userid, $forum->id);
+                    }
+                }
+            }
         }
     }
 }
@@ -4297,4 +4298,4 @@ function forum_convert_to_roles($forum, $forummodid, $studentroles=array(), $gue
 
 
 
-?>
\ No newline at end of file
+?>