moodle/site:accessallgroups in code. Removed former from mod/forum/db/access.php.
)
),
- 'mod/forum:viewdiscussionsfromallgroups' => array(
-
- 'captype' => 'read',
- 'contextlevel' => CONTEXT_MODULE,
- 'legacy' => array(
- 'guest' => CAP_PREVENT,
- 'student' => CAP_PREVENT,
- 'teacher' => CAP_PREVENT,
- 'editingteacher' => CAP_ALLOW,
- 'coursecreator' => CAP_ALLOW,
- 'admin' => CAP_ALLOW
- )
- ),
-
'mod/forum:startdiscussion' => array(
'captype' => 'read',
$canviewdiscussion = false;
- $context = get_context_instance(CONTEXT_MODULE, $cm->id);
- if (has_capability('mod/forum:viewdiscussion', $context->id)) {
+ $modcontext = get_context_instance(CONTEXT_MODULE, $cm->id);
+ if (has_capability('mod/forum:viewdiscussion', $modcontext->id)) {
$canviewdiscussion = true;
}
if (!empty($move)) {
- if (has_capability('mod/forum:movediscussions', $context->id)) {
+ if (has_capability('mod/forum:movediscussions', $modcontext->id)) {
error("You do not have the permission to move this discussion!");
}
if ($forum = get_record("forum", "id", $move)) {
- if ($groupmode and !has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)) { // Groups must be kept separate
+ if ($groupmode and !has_capability('moodle/site:accessallgroups', $modcontext->id)) { // Groups must be kept separate
//change this to ismember
$mygroupid = mygroupid($course->id); //only useful if 0, otherwise it's an array now
if ($groupmode == SEPARATEGROUPS) {
} else if ($groupmode == VISIBLEGROUPS) {
$canreply = ( (empty($mygroupid) && $discussion->groupid == -1) ||
(ismember($discussion->groupid) || $mygroupid == $discussion->groupid) &&
- has_capability('mod/forum:replypost', $context->id) );
+ has_capability('mod/forum:replypost', $modcontext->id) );
}
}
echo '<table width="100%"><tr><td width="33%">';
- if ($groupmode == VISIBLEGROUPS or ($groupmode and has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id))) {
+ if ($groupmode == VISIBLEGROUPS or ($groupmode and has_capability('moodle/site:accessallgroups', $modcontext->id))) {
if ($groups = get_records_menu('groups', 'courseid', $course->id, 'name ASC', 'id,name')) {
print_group_menu($groups, $groupmode, $discussion->groupid, "view.php?id=$cm->id&group=");
}
forum_print_mode_form($discussion->id, $displaymode);
echo "</td><td width=\"33%\">";
- if (has_capability('mod/forum:movediscussions', $context->id)) { // Popup menu to move discussions to other forums
+ if (has_capability('mod/forum:movediscussions', $modcontext->id)) { // Popup menu to move discussions to other forums
if ($forums = get_all_instances_in_course("forum", $course)) {
if ($course->format == 'weeks') {
$strsection = get_string("week");
notify(get_string('thisforumisthrottled','forum',$a));
}
- if ($forum->type == 'qanda' && !has_capability('mod/forum:viewqandawithoutposting', $context->id) &&
+ if ($forum->type == 'qanda' && !has_capability('mod/forum:viewqandawithoutposting', $modcontext->id) &&
!forum_user_has_posted($forum->id,$discussion->id,$USER->id)) {
notify(get_string('qandanotify','forum'));
}
}
/// Print the actual discussion
- $canrate = has_capability('mod/forum:rate', $context->id);
+ $canrate = has_capability('mod/forum:rate', $modcontext->id);
forum_print_discussion($course, $forum, $discussion, $post, $displaymode, $canreply, $canrate);
print_footer($course);
// this is potentially wrong logic. could possibly check for if user has the right to hmmm
- if ($groupmode == SEPARATEGROUPS and !has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)) {
+ if ($groupmode == SEPARATEGROUPS and !has_capability('moodle/site:accessallgroups', $context->id)) {
$count = count_records_select("forum_discussions", "forum = '$forum->id' AND (groupid = '$currentgroup' OR groupid = '-1')");
} else {
$count = count_records("forum_discussions", "forum", "$forum->id");
if ($usetracking) {
if (($forum->trackingtype == FORUM_TRACKING_ON) || !isset($untracked[$forum->id])) {
- $groupid = ($groupmode==SEPARATEGROUPS && !has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)) ? $currentgroup : false;
+ $groupid = ($groupmode==SEPARATEGROUPS && !has_capability('moodle/site:accessallgroups', $context->id)) ? $currentgroup : false;
$unread = forum_tp_count_forum_unread_posts($USER->id, $forum->id, $groupid);
if ($unread > 0) {
$unreadlink = '<span class="unread"><a href="view.php?f='.$forum->id.'">'.$unread.'</a>';
if (forum_is_forcesubscribed($forum->id)) {
$sublink = $stryes;
} else {
- if ($groupmode and !has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id) and !mygroupid($course->id)) {
+ if ($groupmode and !has_capability('moodle/site:accessallgroups', $context->id) and !mygroupid($course->id)) {
$sublink = $strno; // Can't subscribe to a group forum (not in a group)
$forumlink = format_string($forum->name,true);
} else {
$forum->visible = instance_is_visible("forum", $forum);
$cm = get_coursemodule_from_instance("forum", $forum->id, $course->id);
- if ($groupmode == SEPARATEGROUPS and !has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)) {
+ if ($groupmode == SEPARATEGROUPS and !has_capability('moodle/site:accessallgroups', $context->id)) {
$count = count_records("forum_discussions", "forum", "$forum->id", "groupid", $currentgroup);
} else {
$count = count_records("forum_discussions", "forum", "$forum->id");
* @param $groupid - either a single groupid or an array of groupids.
* this specifies the groups the search is to be carried
* for. However, please note that, unless the user has
- * the capability 'mod/forum:viewdiscussionsfromallgroups',
+ * the capability 'moodle/site:accessallgroups',
* we will restrict the search to a subset of groups from
* $groupid. The subset consists of the groups the user
* really is in.
}
// Take into account user groups.
- if (has_capability('mod/forum:viewdiscussionsfromallgroups', $modcontext->id)) {
+ if (has_capability('moodle/site:accessallgroups', $modcontext->id)) {
$selectgroup = '';
$coursetable = '';
if ($forum->type == "eachuser") {
return (!forum_user_has_posted_discussion($forum->id, $USER->id));
} else if ($currentgroup) {
- return (has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)
+ return (has_capability('moodle/site:accessallgroups', $context->id)
or (ismember($currentgroup) and $forum->open == 2));
} else {
//else it might be group 0 in visible mode
if ($discussion->groupid > 0) {
if ($cm->groupmode == SEPARATEGROUPS) {
return ismember($discussion->groupid) ||
- has_capability('mod/forum:viewdiscussionsfromallgroups', $modcontext->id);
+ has_capability('moodle/site:accessallgroups', $modcontext->id);
}
}
return true;
}
if (!$currentgroup and ($groupmode != SEPARATEGROUPS or
- has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)) ) {
+ has_capability('moodle/site:accessallgroups', $context->id)) ) {
$visiblegroups = -1;
} else {
$visiblegroups = $currentgroup;
$context = get_context_instance(CONTEXT_MODULE, $cm->id);
if (groupmode($course, $cm) and
- !has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)) {
+ !has_capability('moodle/site:accessallgroups', $context->id)) {
if (!mygroupid($course->id)) {
error('Sorry, but you must be a group member to subscribe.');
}
$currentgroup = get_and_set_current_group($course, $groupmode, $changegroup);
if ($groupmode and ($currentgroup === false) and
- !has_capability('mod/forum:viewdiscussionsfromallgroups', $context->id)) {
+ !has_capability('moodle/site:accessallgroups', $context->id)) {
print_heading(get_string("notingroup", "forum"));
print_footer($course);
//now we need a menu for separategroups as well!
if ($groupmode == VISIBLEGROUPS or ($groupmode and
- has_capability('module:forum:viewdiscussionsfromallgroups', $context->id))) {
+ has_capability('moodle/site:accessallgroups', $context->id))) {
//the following query really needs to change
if ($groups = get_records_menu("groups", "courseid", $course->id, "name ASC", "id,name")) {