/** * Отметить удаленный блог, что он удален, для дальнейшего модерирования) * * @param integer $fid ID Пользователя * @param integer $edit_id ИД Сообщения * @param string $ip ИП того кто удаляет * @param mixed $error Сообщение об ошибке * @param boolean $mod Имеет ли юзер права на удаление * @param string $reason Причина удаления * @return integer $thread_id ИД удаленного сообщения */ function MarkDeleteMsg($fid, $edit_id, $ip, &$error, $mod = 1, $reason = '') { global $DB; $sql = "SELECT fromuser_id, thread_id from blogs_msgs WHERE id = ?i"; $res = $DB->row($sql, $edit_id); $from_id = $res['fromuser_id']; $thread_id = $res['thread_id']; $sql = "SELECT fromuser_id from blogs_msgs WHERE thread_id = ?i AND reply_to ISNULL"; $buser_id = $DB->val($sql, $thread_id); if ($fid != $from_id && $mod == 1 && ($fid != $buser_id && $mod == 1)) { $err = "Вы не можете удалять чужие сообщения!"; return $thread_id; } require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/user_content.php'; $sModer = ' , moderator_status = ' . ($fid == $from_id ? 'NULL' : $fid) . ' '; $sql = $DB->parse('DELETE FROM moderation WHERE rec_id = ?i AND rec_type = ?i;', $edit_id, user_content::MODER_BLOGS); $sql .= "UPDATE blogs_msgs SET deleted=NOW(), deluser_id=?i, deleted_reason = ? {$sModer} WHERE id = ?i"; $userSubscribe = self::getUsersSubscribe(array($edit_id)); $res = $DB->query($sql, $fid, $reason, $edit_id); $error = $DB->error; if (!$error) { require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/smail.php"; $s = new smail(); $s->sendBlogPostDeleted(get_uid(false), $userSubscribe); } return $thread_id; }