feat: bili comm antifraud

Closes #275

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-02-17 18:45:08 +08:00
parent 957c326148
commit 7ddc3adfaa
15 changed files with 196 additions and 112 deletions

View File

@@ -1,8 +1,10 @@
import 'package:PiliPlus/grpc/app/main/community/reply/v1/reply.pb.dart';
import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/models/common/reply_type.dart';
import 'package:PiliPlus/models/dynamics/result.dart';
import 'package:PiliPlus/pages/common/reply_controller.dart';
import 'package:PiliPlus/utils/global_data.dart';
import 'package:PiliPlus/utils/id_utils.dart';
import 'package:PiliPlus/utils/storage.dart';
import 'package:get/get.dart';
import 'package:PiliPlus/http/html.dart';
@@ -11,13 +13,17 @@ import 'package:fixnum/fixnum.dart' as $fixnum;
class DynamicDetailController extends ReplyController {
DynamicDetailController(this.oid, this.type);
int? oid;
int? type;
int oid;
int type;
late DynamicItemModel item;
int? floor;
late final horizontalPreview = GStorage.horizontalPreview;
@override
dynamic get sourceId =>
type == ReplyType.video.index ? IdUtils.av2bv(oid) : oid;
@override
void onInit() {
super.onInit();
@@ -42,8 +48,8 @@ class DynamicDetailController extends ReplyController {
@override
Future<LoadingState> customGetData() => GlobalData().grpcReply
? ReplyHttp.replyListGrpc(
type: type ?? 1,
oid: oid!,
type: type,
oid: oid,
cursor: CursorReq(
next: cursor?.next ?? $fixnum.Int64(0),
mode: mode.value,
@@ -53,9 +59,9 @@ class DynamicDetailController extends ReplyController {
)
: ReplyHttp.replyList(
isLogin: isLogin,
oid: oid!,
oid: oid,
nextOffset: nextOffset,
type: type!,
type: type,
sort: sortType.value.index,
page: currentPage,
banWordForReply: banWordForReply,

View File

@@ -27,7 +27,6 @@ import 'package:PiliPlus/pages/dynamics/detail/index.dart';
import 'package:PiliPlus/pages/dynamics/widgets/author_panel.dart';
import 'package:PiliPlus/pages/video/detail/reply_reply/index.dart';
import 'package:PiliPlus/utils/feed_back.dart';
import 'package:PiliPlus/utils/id_utils.dart';
import 'package:share_plus/share_plus.dart';
import '../../../utils/grid.dart';
@@ -430,11 +429,9 @@ class _DynamicDetailPageState extends State<DynamicDetailPage>
heroTag: null,
onPressed: () {
feedBack();
dynamic oid = _dynamicDetailController.oid ??
IdUtils.bv2av(Get.parameters['bvid']!);
_dynamicDetailController.onReply(
context,
oid: oid,
oid: _dynamicDetailController.oid,
replyType: ReplyType.values[replyType],
);
},