public function isSilenced() { if (!$this->silenceID) { return false; } $ActiveSilence = new Silence($this->silenceID); if ($ActiveSilence->isEnabled()) { $this->ActiveSilence = $ActiveSilence; return true; } else { return false; } }
$postboxopen = false; $viewthread = $new['id']; } catch (Exception $e) { $messageproblem = $e->getMessage(); $postboxopen = true; } } } else { // To a thread $threadDetails = $DB->sql_hash("SELECT f.id, f.latestReplySent, \r\n\t\t\t\t\t\tf.silenceID,\r\n\t\t\t\t\t\tsilence.userID as silenceUserID,\r\n\t\t\t\t\t\tsilence.postID as silencePostID,\r\n\t\t\t\t\t\tsilence.moderatorUserID as silenceModeratorUserID,\r\n\t\t\t\t\t\tsilence.enabled as silenceEnabled,\r\n\t\t\t\t\t\tsilence.startTime as silenceStartTime,\r\n\t\t\t\t\t\tsilence.length as silenceLength,\r\n\t\t\t\t\t\tsilence.reason as silenceReason\r\n\t\t\t\t\tFROM wD_ForumMessages f \r\n\t\t\t\t\tLEFT JOIN wD_Silences silence ON ( f.silenceID = silence.id )\r\n\t\t\t\t\tWHERE f.id=" . $new['sendtothread'] . "\r\n\t\t\t\t\t\tAND f.type='ThreadStart'"); unset($messageproblem); if ($threadDetails['latestReplySent'] < $Misc->ThreadAliveThreshold) { $messageproblem = l_t("The thread you are attempting to reply to is too old, and has expired."); } elseif (Silence::isSilenced($threadDetails)) { $silence = new Silence($threadDetails); if ($silence->isEnabled()) { $messageproblem = l_t("The thread you are attempting to reply to has been silenced; ") . $silence->reason; } unset($silence); } if (isset($threadDetails['id']) && !isset($messageproblem)) { // It's being sent to an existing, non-silenced / dated thread. try { $new['id'] = Message::send($new['sendtothread'], $User->id, $new['message'], '', 'ThreadReply'); $_SESSION['lastPostText'] = $new['message']; $_SESSION['lastPostTime'] = time(); $_SESSION['lastPostType'] = 'ThreadReply'; header("Location: " . $_SERVER['REQUEST_URI'] . '&reply=success'); } catch (Exception $e) { $messageproblem = $e->getMessage(); }
public function changeSilenceLength(array $params) { $silence = new Silence($params['silenceID']); $previousLength = $silence->length; // This function will validate the given length and check that it's not a post silence $silence->changeLength($params['length']); if (!$silence->isEnabled()) { // Don't look for changes to posts, because they will not be affected by length changes self::setNextActiveUserSilence($silence->id); } return l_t('%s changed from <i>%s</i> to <i>%s</i>.', $silence->toString(), Silence::printLength($previousLength), Silence::printLength($silence->length)); }