/** * */ function forum_tp_add_read_record($userid, $postid, $discussionid, $forumid) { if (!($readrecords = forum_tp_get_read_records($userid, $postid))) { // New read record $readrecord = new object(); $readrecord->userid = $userid; $readrecord->postid = $postid; $readrecord->discussionid = $discussionid; $readrecord->forumid = $forumid; $readrecord->firstread = time(); $readrecord->lastread = $readrecord->firstread; return insert_record('forum_read', $readrecord, true); } else { // Update read record $readrecord = reset($readrecords); $readrecord->lastread = time(); $readrecord->discussionid = $discussionid; $readrecord->forumid = $forumid; return update_record('forum_read', $readrecord); } }
/** * TODO document */ function forum_tp_add_read_record($userid, $postid, $discussionid = -1, $forumid = -1) { if (($readrecord = forum_tp_get_read_records($userid, $postid)) === false) { // New read record unset($readrecord); $readrecord->userid = $userid; $readrecord->postid = $postid; $readrecord->discussionid = $discussionid; $readrecord->forumid = $forumid; $readrecord->firstread = time(); $readrecord->lastread = $readrecord->firstread; return insert_record('forum_read', $readrecord, true); } else { // Update read record $readrecord = reset($readrecord); $readrecord->lastread = time(); $update = NULL; $update->id = $readrecord->id; $update->lastread = $readrecord->lastread; // This shouldn't happen, but just in case... if (!$readrecord->firstread) { // Update the 'firstread' field. $update->firstread = $readrecord->lastread; } if ($discussionid > -1) { // Update the 'discussionid' field. $update->discussionid = $discussionid; } if ($forumid > -1) { // Update the 'forumid' field. $update->forumid = $forumid; } return update_record('forum_read', $update); } }