From: vyshane Date: Fri, 22 Sep 2006 06:29:40 +0000 (+0000) Subject: Replaced isteacher & co. Fixed some issues. X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=1febf1a77a81d91cef87d1a004c01809c3d393b2;p=moodle.git Replaced isteacher & co. Fixed some issues. --- diff --git a/mod/forum/index.php b/mod/forum/index.php index c20cdd8a22..0e02e72fcd 100644 --- a/mod/forum/index.php +++ b/mod/forum/index.php @@ -18,8 +18,9 @@ } require_course_login($course); - $currentgroup = get_current_group($course->id); + $coursecontext = get_context_instance(CONTEXT_COURSE, $course->id); + unset($SESSION->fromdiscussion); @@ -59,7 +60,7 @@ $generaltable->align[] = 'center'; } - if ($can_subscribe = (isstudent($course->id) or isteacher($course->id) or isadmin())) { + if ($can_subscribe = has_capability('moodle/course:view', $coursecontext)) { $generaltable->head[] = $strsubscribed; $generaltable->align[] = 'center'; } @@ -116,14 +117,6 @@ unset($learningforums[$forum->keyreference]); } break; - /* - case "teacher": - if (isteacher($course->id)) { - $forum->visible = true; - $generalforums[] = $forum; - } - break; - */ default: if (!$course->category or empty($forum->section)) { // Site level or section 0 $generalforums[] = $forum; @@ -256,7 +249,8 @@ $subscribed = $strno; $subtitle = get_string("subscribe", "forum"); } - if ($forum->forcesubscribe == FORUM_DISALLOWSUBSCRIBE && !isteacher($forum->course)) { + if ($forum->forcesubscribe == FORUM_DISALLOWSUBSCRIBE + && !has_capability('mod/forum:managesubscriptions', $context)) { $sublink = '-'; } else { $sublink = "id\">$subscribed"; @@ -300,7 +294,7 @@ $learningtable->align[] = 'center'; } - if ($can_subscribe = (isstudent($course->id) or isteacher($course->id) or isadmin())) { + if ($can_subscribe) { $learningtable->head[] = $strsubscribed; $learningtable->align[] = 'center'; } @@ -324,8 +318,11 @@ $currentsection = ""; foreach ($learningforums as $key => $forum) { $groupmode = groupmode($course, $forum); /// Can do this because forum->groupmode is defined - $forum->visible = instance_is_visible("forum", $forum); + $forum->visible = instance_is_visible("forum", $forum) + || has_capability('moodle/course:view', $coursecontext); + $cm = get_coursemodule_from_instance("forum", $forum->id, $course->id); + $context = get_context_instance(CONTEXT_MODULE, $cm->id); if ($groupmode == SEPARATEGROUPS and !has_capability('moodle/site:accessallgroups', $context)) { $count = count_records("forum_discussions", "forum", "$forum->id", "groupid", $currentgroup); @@ -336,7 +333,9 @@ if ($usetracking) { if (($forum->trackingtype == FORUM_TRACKING_ON) || !isset($untracked[$forum->id])) { - $groupid = ($groupmode==SEPARATEGROUPS && !isteacheredit($course->id)) ? $currentgroup : false; + $groupid = ($groupmode==SEPARATEGROUPS + && !has_capability('modforum:viewdiscussionsfromallgroups', $context)) + ? $currentgroup : false; $unread = forum_tp_count_forum_unread_posts($USER->id, $forum->id, $groupid); if ($unread > 0) { $unreadlink = ''.$unread.''; @@ -400,7 +399,8 @@ if (forum_is_forcesubscribed($forum->id)) { $sublink = $stryes; } else { - if ($groupmode and !isteacheredit($course->id) and !mygroupid($course->id)) { + if ($groupmode and !has_capability('mod/forum:viewdiscussionsfromallgroups', $context) + and !mygroupid($course->id)) { $sublink = $strno; // Can't subscribe to a group forum (not in a group) if ($groupmode == SEPARATEGROUPS) { $forumlink = format_string($forum->name,true); @@ -476,4 +476,4 @@ print_footer($course); -?> +?> \ No newline at end of file