function useredit_update_trackforums($user, $usernew) { global $CFG; if (!isset($usernew->trackforums)) { //locked field return; } if (!isset($user->trackforums) || $usernew->trackforums != $user->trackforums and !$usernew->trackforums) { require_once $CFG->dirroot . '/mod/forum/lib.php'; forum_tp_delete_read_records($usernew->id); } }
/** * @global object * @global object * @param int $forumid * @param int $userid */ function forum_tp_stop_tracking($forumid, $userid=false) { global $USER, $DB; if ($userid === false) { $userid = $USER->id; } if (!$DB->record_exists('forum_track_prefs', array('userid' => $userid, 'forumid' => $forumid))) { $track_prefs = new stdClass(); $track_prefs->userid = $userid; $track_prefs->forumid = $forumid; $DB->insert_record('forum_track_prefs', $track_prefs); } return forum_tp_delete_read_records($userid, -1, -1, $forumid); }
} else { $parent = $discussion->firstpost; } if (!($post = forum_get_post_full($parent))) { print_error("notexists", 'forum', "{$CFG->wwwroot}/mod/forum/view.php?f={$forum->id}"); } if (!forum_user_can_see_post($forum, $discussion, $post, null, $cm)) { print_error('noviewdiscussionspermission', 'forum', "{$CFG->wwwroot}/mod/forum/view.php?id={$forum->id}"); } if ($mark == 'read' or $mark == 'unread') { if ($CFG->forum_usermarksread && forum_tp_can_track_forums($forum) && forum_tp_is_tracked($forum)) { if ($mark == 'read') { forum_tp_add_read_record($USER->id, $postid); } else { // unread forum_tp_delete_read_records($USER->id, $postid); } } } $searchform = forum_search_form($course); $forumnode = $PAGE->navigation->find($cm->id, navigation_node::TYPE_ACTIVITY); if (empty($forumnode)) { $forumnode = $PAGE->navbar; } else { $forumnode->make_active(); } $node = $forumnode->add(format_string($discussion->name), new moodle_url('/mod/forum/discuss.php', array('d' => $discussion->id))); $node->display = false; if ($node && $post->id != $discussion->firstpost) { $node->add(format_string($post->subject), $PAGE->url); }
/** * */ function forum_tp_stop_tracking($forumid, $userid = false) { global $USER; if ($userid === false) { $userid = $USER->id; } if (!record_exists('forum_track_prefs', 'userid', $userid, 'forumid', $forumid)) { $track_prefs = new object(); $track_prefs->userid = $userid; $track_prefs->forumid = $forumid; insert_record('forum_track_prefs', $track_prefs); } return forum_tp_delete_read_records($userid, -1, -1, $forumid); }
/** * */ function forum_tp_stop_tracking($forumid, $userid = false) { global $USER; if ($userid === false) { $userid = $USER->id; } $track_prefs = new stdClass(); $track_prefs->userid = $userid; $track_prefs->forumid = $forumid; if (insert_record('forum_track_prefs', $track_prefs)) { return forum_tp_delete_read_records($userid, -1, -1, $forumid); } else { return false; } }