完善站点运营设置:分路由管理、登录可见评论、邮件模板内联与关闭注册 SSR。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -25,8 +25,9 @@ import {
|
||||
import { canModerateBoard, canStaffSoftDelete, canPurgeContent } from "@/lib/roles";
|
||||
import { toast } from "@/lib/toast";
|
||||
import { formatCommentTime, formatDateTime } from "@/lib/format";
|
||||
import { useAllowComments } from "@/components/CommentsPolicyProvider";
|
||||
import { useAllowComments, useCommentsRequireLogin } from "@/components/CommentsPolicyProvider";
|
||||
import CommentsUnsupported from "@/components/CommentsUnsupported";
|
||||
import CommentsLoginRequired from "@/components/CommentsLoginRequired";
|
||||
import Avatar from "./Avatar";
|
||||
import Pagination from "./Pagination";
|
||||
import MarkdownBodyClient from "@/components/MarkdownBodyClient";
|
||||
@@ -197,6 +198,7 @@ export default function CommentSection({
|
||||
const winnerCommentIdSet = new Set(winnerCommentIds.filter((id) => id > 0));
|
||||
const router = useRouter();
|
||||
const commentsOpen = useAllowComments();
|
||||
const commentsRequireLogin = useCommentsRequireLogin();
|
||||
const [content, setContent] = useState("");
|
||||
// 内联回复目标:同一时间只有一个回复框;草稿按目标评论隔离
|
||||
const [replyTarget, setReplyTarget] = useState<{
|
||||
@@ -1177,6 +1179,9 @@ export default function CommentSection({
|
||||
if (!commentsOpen) {
|
||||
return <CommentsUnsupported />;
|
||||
}
|
||||
if (commentsRequireLogin && !user) {
|
||||
return <CommentsLoginRequired redirect={`/post/${postId}#comments`} />;
|
||||
}
|
||||
|
||||
return (
|
||||
<section id="comments" className="panel p-6 sm:p-8 mt-6 scroll-mt-24" aria-label="评论区">
|
||||
|
||||
Reference in New Issue
Block a user