From e02f891449864e0adfbf9aee1e935342657150d1 Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Mon, 13 Jan 2025 19:27:40 +0800 Subject: [PATCH] opt: filter reply Signed-off-by: bggRGjQaUbCoE --- lib/http/reply.dart | 10 +++++----- lib/pages/common/reply_controller.dart | 2 ++ lib/pages/dynamics/detail/controller.dart | 2 ++ lib/pages/html/controller.dart | 2 ++ lib/pages/video/detail/reply/controller.dart | 2 ++ lib/pages/video/detail/reply_reply/controller.dart | 5 +++++ 6 files changed, 18 insertions(+), 5 deletions(-) diff --git a/lib/http/reply.dart b/lib/http/reply.dart index 5887331d..137599db 100644 --- a/lib/http/reply.dart +++ b/lib/http/reply.dart @@ -21,6 +21,7 @@ class ReplyHttp { required int type, required int page, int sort = 1, + required String banWordForReply, }) async { Options? options = !isLogin ? Options( @@ -51,7 +52,6 @@ class ReplyHttp { ); if (res.data['code'] == 0) { ReplyData replyData = ReplyData.fromJson(res.data['data']); - String banWordForReply = GStorage.banWordForReply; if (banWordForReply.isNotEmpty) { // topReplies if (replyData.topReplies?.isNotEmpty == true) { @@ -97,11 +97,11 @@ class ReplyHttp { int type = 1, required int oid, required CursorReq cursor, + required String banWordForReply, }) async { dynamic res = await GrpcRepo.mainList(type: type, oid: oid, cursor: cursor); if (res['status']) { MainListReply mainListReply = res['data']; - String banWordForReply = GStorage.banWordForReply; if (banWordForReply.isNotEmpty) { // upTop if (mainListReply.hasUpTop() && @@ -139,6 +139,7 @@ class ReplyHttp { required int pageNum, required int type, int sort = 1, + required String banWordForReply, }) async { Options? options = GStorage.userInfo.get('userInfoCache') == null ? Options( @@ -158,7 +159,6 @@ class ReplyHttp { ); if (res.data['code'] == 0) { ReplyReplyData replyData = ReplyReplyData.fromJson(res.data['data']); - String banWordForReply = GStorage.banWordForReply; if (banWordForReply.isNotEmpty) { if (replyData.replies?.isNotEmpty == true) { replyData.replies!.removeWhere((item) => @@ -178,6 +178,7 @@ class ReplyHttp { required int root, required int rpid, required CursorReq cursor, + required String banWordForReply, }) async { dynamic res = await GrpcRepo.detailList( type: type, @@ -188,7 +189,6 @@ class ReplyHttp { ); if (res['status']) { DetailListReply detailListReply = res['data']; - String banWordForReply = GStorage.banWordForReply; if (banWordForReply.isNotEmpty) { if (detailListReply.root.replies.isNotEmpty) { detailListReply.root.replies.removeWhere((item) => @@ -208,6 +208,7 @@ class ReplyHttp { required int root, required int rpid, required CursorReq cursor, + required String banWordForReply, }) async { dynamic res = await GrpcRepo.dialogList( type: type, @@ -218,7 +219,6 @@ class ReplyHttp { ); if (res['status']) { DialogListReply dialogListReply = res['data']; - String banWordForReply = GStorage.banWordForReply; if (banWordForReply.isNotEmpty) { if (dialogListReply.replies.isNotEmpty) { dialogListReply.replies.removeWhere((item) => diff --git a/lib/pages/common/reply_controller.dart b/lib/pages/common/reply_controller.dart index dd33586b..413cd5f5 100644 --- a/lib/pages/common/reply_controller.dart +++ b/lib/pages/common/reply_controller.dart @@ -33,6 +33,8 @@ abstract class ReplyController extends CommonController { late Mode mode = Mode.MAIN_LIST_HOT; bool hasUpTop = false; + late final banWordForReply = GStorage.banWordForReply; + @override void onInit() { super.onInit(); diff --git a/lib/pages/dynamics/detail/controller.dart b/lib/pages/dynamics/detail/controller.dart index f214604a..b446f7c3 100644 --- a/lib/pages/dynamics/detail/controller.dart +++ b/lib/pages/dynamics/detail/controller.dart @@ -47,6 +47,7 @@ class DynamicDetailController extends ReplyController { next: cursor?.next ?? $fixnum.Int64(0), mode: mode, ), + banWordForReply: banWordForReply, ) : ReplyHttp.replyList( isLogin: isLogin, @@ -55,5 +56,6 @@ class DynamicDetailController extends ReplyController { type: type!, sort: sortType.index, page: currentPage, + banWordForReply: banWordForReply, ); } diff --git a/lib/pages/html/controller.dart b/lib/pages/html/controller.dart index 2d544655..373ab21e 100644 --- a/lib/pages/html/controller.dart +++ b/lib/pages/html/controller.dart @@ -57,6 +57,7 @@ class HtmlRenderController extends ReplyController { next: cursor?.next ?? $fixnum.Int64(0), mode: mode, ), + banWordForReply: banWordForReply, ) : ReplyHttp.replyList( isLogin: isLogin, @@ -65,5 +66,6 @@ class HtmlRenderController extends ReplyController { type: type, sort: sortType.index, page: currentPage, + banWordForReply: banWordForReply, ); } diff --git a/lib/pages/video/detail/reply/controller.dart b/lib/pages/video/detail/reply/controller.dart index bcf0bf8f..b5a2d1b1 100644 --- a/lib/pages/video/detail/reply/controller.dart +++ b/lib/pages/video/detail/reply/controller.dart @@ -27,6 +27,7 @@ class VideoReplyController extends ReplyController { next: cursor?.next ?? $fixnum.Int64(0), mode: mode, ), + banWordForReply: banWordForReply, ) : ReplyHttp.replyList( isLogin: isLogin, @@ -35,5 +36,6 @@ class VideoReplyController extends ReplyController { type: ReplyType.video.index, sort: sortType.index, page: currentPage, + banWordForReply: banWordForReply, ); } diff --git a/lib/pages/video/detail/reply_reply/controller.dart b/lib/pages/video/detail/reply_reply/controller.dart index 451444b2..cc71ef96 100644 --- a/lib/pages/video/detail/reply_reply/controller.dart +++ b/lib/pages/video/detail/reply_reply/controller.dart @@ -45,6 +45,8 @@ class VideoReplyReplyController extends CommonController late final horizontalPreview = GStorage.horizontalPreview; + late final banWordForReply = GStorage.banWordForReply; + @override void onInit() { super.onInit(); @@ -186,6 +188,7 @@ class VideoReplyReplyController extends CommonController next: cursor?.next, mode: mode.value, ), + banWordForReply: banWordForReply, ) : GlobalData().grpcReply ? ReplyHttp.replyReplyListGrpc( @@ -197,12 +200,14 @@ class VideoReplyReplyController extends CommonController next: cursor?.next, mode: mode.value, ), + banWordForReply: banWordForReply, ) : ReplyHttp.replyReplyList( oid: oid!, root: rpid!, pageNum: currentPage, type: replyType.index, + banWordForReply: banWordForReply, ); queryBySort() {