require_login($course->id, false, $cm); if (isguest()) { // Guests can't subscribe $navigation = build_navigation('', $cm); print_header($course->shortname, $course->fullname, $navigation, '', '', true, "", navmenu($course, $cm)); echo $OUTPUT->confirm(get_string('noguestsubscribe', 'forum') . '<br /><br />' . get_string('liketologin'), get_login_url(), new moodle_url()); echo $OUTPUT->footer(); exit; } $returnto = optional_param('backtoindex', 0, PARAM_INT) ? "index.php?id=" . $course->id : "view.php?f={$id}"; if ($force and has_capability('mod/forum:managesubscriptions', $context)) { if (forum_is_forcesubscribed($forum)) { forum_forcesubscribe($forum->id, 0); redirect($returnto, get_string("everyonecannowchoose", "forum"), 1); } else { forum_forcesubscribe($forum->id, 1); redirect($returnto, get_string("everyoneisnowsubscribed", "forum"), 1); } } if (forum_is_forcesubscribed($forum)) { redirect($returnto, get_string("everyoneisnowsubscribed", "forum"), 1); } $info->name = fullname($user); $info->forum = format_string($forum->name); if (forum_is_subscribed($user->id, $forum->id)) { if (forum_unsubscribe($user->id, $forum->id)) { add_to_log($course->id, "forum", "unsubscribe", "view.php?f={$forum->id}", $forum->id, $cm->id); redirect($returnto, get_string("nownotsubscribed", "forum", $info), 1); } else { print_error('cannotunsubscribe', 'forum', $_SERVER["HTTP_REFERER"]); }
require_sesskey(); switch ($mode) { case FORUM_CHOOSESUBSCRIBE : // 0 forum_forcesubscribe($forum->id, FORUM_CHOOSESUBSCRIBE); redirect($returnto, get_string("everyonecannowchoose", "forum"), 1); break; case FORUM_FORCESUBSCRIBE : // 1 forum_forcesubscribe($forum->id, FORUM_FORCESUBSCRIBE); redirect($returnto, get_string("everyoneisnowsubscribed", "forum"), 1); break; case FORUM_INITIALSUBSCRIBE : // 2 forum_forcesubscribe($forum->id, FORUM_INITIALSUBSCRIBE); redirect($returnto, get_string("everyoneisnowsubscribed", "forum"), 1); break; case FORUM_DISALLOWSUBSCRIBE : // 3 forum_forcesubscribe($forum->id, FORUM_DISALLOWSUBSCRIBE); redirect($returnto, get_string("noonecansubscribenow", "forum"), 1); break; default: print_error(get_string('invalidforcesubscribe', 'forum')); } } if (forum_is_forcesubscribed($forum)) { redirect($returnto, get_string("everyoneisnowsubscribed", "forum"), 1); } $info = new stdClass(); $info->name = fullname($user); $info->forum = format_string($forum->name);