southnote-mini-sdk 1.0.21 → 1.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/app.js +1 -22
  2. package/assets/file/badwords.js +1 -63008
  3. package/assets/file/rules.js +1 -38
  4. package/components/bottomSheet/bottomSheet.js +1 -473
  5. package/components/experience-item/experience-item.js +1 -105
  6. package/components/grid-item/grid-item.js +1 -8
  7. package/components/post-item/post-item.js +1 -1086
  8. package/components/wiki-renderer/wiki-renderer.js +1 -636
  9. package/components/wiki-tabs/wiki-tabs.js +1 -52
  10. package/index.js +1 -49
  11. package/package.json +2 -22
  12. package/pages/addGame/addGame.js +1 -454
  13. package/pages/addSubject/addSubject.js +1 -199
  14. package/pages/commonLogin/commonLogin.js +1 -269
  15. package/pages/copyOfficial/copyOfficial.js +1 -25
  16. package/pages/demo/demo.js +1 -23
  17. package/pages/game/game.js +1 -1305
  18. package/pages/home/home.js +1 -665
  19. package/pages/lottery-winners/lottery-winners.js +1 -60
  20. package/pages/message/messageCommentsAndAt/messageCommentsAndAt.js +1 -178
  21. package/pages/message/messageEntire/messageEntire.js +1 -112
  22. package/pages/message/messageLikeAndCollect/messageLikeAndCollect.js +1 -147
  23. package/pages/message/messageNewFans/messageNewFans.js +1 -139
  24. package/pages/officialWebview/officialWebview.js +1 -13
  25. package/pages/post/post.js +1 -1856
  26. package/pages/post-editor/post-editor.js +1 -465
  27. package/pages/postDialog/postDialog.js +1 -560
  28. package/pages/report-category/report-category.js +1 -29
  29. package/pages/report-form/report-form.js +1 -65
  30. package/pages/sevenDaySignDetail/sevenDaySignDetail.js +1 -273
  31. package/pages/topic/topic.js +1 -266
  32. package/pages/user/user.js +1 -939
  33. package/pages/userDatum/userDatum.js +1 -24
  34. package/pages/userGameLib/userGameLib.js +1 -105
  35. package/pages/webview/webview.js +1 -25
  36. package/pages/wheelActivivty/wheelActivivty.js +1 -492
  37. package/pages/wiki/wiki.js +1 -138
  38. package/request/JKRequest.js +1 -177
  39. package/services/home.js +1 -603
  40. package/utils/auth.js +1 -17
  41. package/utils/base64.js +1 -67
  42. package/utils/compressImage.js +1 -41
  43. package/utils/exp.js +1 -49
  44. package/utils/formatPost.js +1 -18
  45. package/utils/parseContent.js +1 -191
  46. package/utils/query-select.js +1 -9
  47. package/utils/sensitive.js +1 -82
@@ -1,1305 +1 @@
1
- import {
2
- queryGameInfo,
3
- queryGameWiki,
4
- queryGameWikiUsers,
5
- queryGamePosts,
6
- addGame,
7
- deleteContent,
8
- collectPost,
9
- setUserPostTop,
10
- queryGameBannerVideo
11
- } from "../../services/home";
12
- import {
13
- decompressBase64Gzip,
14
- isEmptyObject
15
- } from "../../utils/base64"
16
- import {
17
- formatUTCYear
18
- } from "../../utils/formatPost";
19
- import formatUTC from "../../utils/formatPost";
20
- import {
21
- getLevelByExp,
22
- getLevelImg
23
- } from "../../utils/exp";
24
- import {
25
- checkLogin
26
- } from "../../utils/auth"
27
- import sdk from '../../index'
28
- const rulesData = require("../../assets/file/rules.js");
29
-
30
- Page({
31
- data: {
32
- gameId: 0,
33
- gameInfo: {},
34
- introduceInfo: {},
35
- protocolInfo: {},
36
- empiricInfo: {},
37
- tabs: [],
38
- currentTab: 1,
39
- gameWikiJson: [],
40
- wikiUsers: [],
41
- wiki_created_at: '',
42
- showSheet: false,
43
- sheetMode: 'forward',
44
- originPost: {},
45
-
46
- postTabs: [{
47
- title: "最新",
48
- filter: 1
49
- },
50
- {
51
- title: "最热",
52
- filter: 2
53
- },
54
- {
55
- title: "24小时榜",
56
- filter: 3
57
- },
58
- {
59
- title: "官方",
60
- filter: 4
61
- },
62
- {
63
- title: "精品",
64
- filter: 5
65
- },
66
- {
67
- title: "文章",
68
- filter: 6
69
- }
70
- ],
71
- subTab: 1,
72
- activities: [],
73
- posts: {}, // {1: [...], 2: [...], ...}
74
- page: {}, // {1: 1, 2: 1, ...}
75
- hasMore: {}, // {1: true, 2: false, ...}
76
- loading: {},
77
-
78
- ruleList: [],
79
- avatar: '',
80
- nickname: '',
81
-
82
- moreSheetVisible: false,
83
- moreSheetItem: {},
84
- isOwner: false, //当前cell是否是自己
85
-
86
- currentBanner: 0,
87
- bannerRect: null,
88
-
89
- currentPlayingVideoId: null, //当前播放视频帖子id
90
-
91
- },
92
-
93
- onPageScroll(e) {
94
-
95
- const scrollTop = e.scrollTop
96
- if (scrollTop >= 350 && this.data.gameInfo.landscape === 1) {
97
- this.pauseFirstVideo()
98
- }
99
- if (scrollTop >= 400 && this.data.gameInfo.landscape === 0) {
100
- this.pauseFirstVideo()
101
- }
102
- },
103
-
104
- // 发布按钮点击
105
- onPublish() {
106
- this.onPauseAllVideo()
107
- const token = wx.getStorageSync('token'); // 读取缓存里的 token
108
- const {
109
- gameId,
110
- gameInfo
111
- } = this.data; // 获取当前游戏信息
112
- if (token) {
113
- // 已登录,跳转到发布页面
114
- wx.navigateTo({
115
- url: `../post-editor/post-editor?gameId=${gameId}&gameName=${encodeURIComponent(gameInfo.name || '')}`,
116
- });
117
- } else {
118
- // 未登录,跳转登录页面
119
- wx.navigateTo({
120
- url: '../commonLogin/commonLogin',
121
- // url:'../login/login'
122
- });
123
- }
124
- },
125
- gotoUserDetail(e) {
126
- this.onPauseAllVideo()
127
- const userId = e.currentTarget.dataset.id;
128
- wx.navigateTo({
129
- url: `../user/user?id=${userId}`
130
- });
131
- },
132
- // 游戏详情页分享逻辑
133
- onShareAppMessage() {
134
- const {
135
- gameInfo,
136
- gameId
137
- } = this.data;
138
-
139
- // 使用游戏名称作为分享标题,如果没有则显示默认文案
140
- const title = gameInfo?.name || '查看游戏详情';
141
-
142
- return {
143
- title,
144
- // 分享路径携带 gameId 参数
145
- path: `../game/game?id=${gameId}`
146
- };
147
- },
148
-
149
-
150
- onLoad(options) {
151
- const gameId = options.id || sdk.gameId;
152
-
153
- if (!gameId) {
154
- wx.showToast({
155
- title: '缺少gameId参数',
156
- icon: 'none'
157
- });
158
- return;
159
- }
160
- this.setData({
161
- gameId,
162
-
163
- });
164
-
165
- this.getGameInfo();
166
- this.getGameIntroduce();
167
- this.getGameProtocol();
168
- this.getGameEmpiricValue();
169
- this.getGameWikiInfo()
170
-
171
- // 默认加载 最热
172
- this.loadPosts(2);
173
-
174
- this.setData({
175
- nickname: wx.getStorageSync('nickname'),
176
- avatar: wx.getStorageSync('avatar')
177
- })
178
-
179
-
180
- },
181
-
182
- changeSubTab(e) {
183
- const index = e.detail.index;
184
- const filter = this.data.postTabs[index].filter;
185
- this.setData({
186
- subTab: index
187
- });
188
-
189
- // 如果当前tab还没加载过数据,则加载
190
- if (!this.data.posts[filter]) {
191
- this.loadPosts(filter);
192
- }
193
- },
194
-
195
- /** 获取帖子列表(已改造 ✅) */
196
- /** 获取帖子列表(已改造 ✅) */
197
- async loadPosts(filter, append = false) {
198
- const {
199
- gameId,
200
- page,
201
- posts,
202
- loading
203
- } = this.data;
204
-
205
- if (loading[filter]) return;
206
-
207
- const nextPage = append ? (page[filter] || 1) + 1 : 1;
208
- this.setData({
209
- [`loading.${filter}`]: true
210
- });
211
-
212
- try {
213
- const res = await queryGamePosts(gameId, nextPage, filter);
214
- if (res?.code === 0 && Array.isArray(res.data)) {
215
- // 格式化帖子数据
216
- const list = res.data.map(item => {
217
- const p = item.post || {};
218
- const shared = item.shared;
219
-
220
- const user = item.user || {};
221
- const game = item.game || {};
222
- if (game.exp != null) {
223
- user.level = getLevelByExp(game?.exp);
224
- user.levelImg = getLevelImg(user.level)
225
- }
226
-
227
- return {
228
- ...item,
229
- post: {
230
- ...p,
231
- imageArray: p.images ? p.images.split(",") : [],
232
- formatTime: formatUTC(p.created_at)
233
- },
234
- shared: shared?.post ? {
235
- ...shared,
236
- post: {
237
- ...shared.post,
238
- imageArray: shared.post.images ? shared.post.images.split(",") : [],
239
- formatTime: formatUTC(shared.post.created_at)
240
- }
241
- } : shared
242
- };
243
- });
244
-
245
- const got = list.length > 0;
246
-
247
- if (append) {
248
- // ✅ 只追加新增数据,避免重渲染旧数据
249
- const currentLength = posts[filter]?.length || 0;
250
- let update = {};
251
- list.forEach((item, idx) => {
252
- update[`posts.${filter}[${currentLength + idx}]`] = item;
253
- });
254
-
255
- this.setData({
256
- ...update,
257
- [`page.${filter}`]: nextPage,
258
- [`hasMore.${filter}`]: got,
259
- [`loading.${filter}`]: false
260
- });
261
-
262
- } else {
263
- // 首次加载直接覆盖
264
- this.setData({
265
- [`posts.${filter}`]: list,
266
- [`page.${filter}`]: nextPage,
267
- [`hasMore.${filter}`]: got,
268
- [`loading.${filter}`]: false
269
- });
270
- }
271
-
272
- } else {
273
- this.setData({
274
- [`hasMore.${filter}`]: false,
275
- [`loading.${filter}`]: false
276
- });
277
- }
278
-
279
- } catch (e) {
280
- console.error("获取帖子失败", e);
281
- this.setData({
282
- [`loading.${filter}`]: false
283
- });
284
- }
285
- },
286
-
287
- /** 点击加载更多 */
288
- loadMore(e) {
289
- const filter = e.currentTarget.dataset.filter;
290
- this.loadPosts(filter, true);
291
- },
292
-
293
- toggleRule(e) {
294
- const index = e.currentTarget.dataset.index;
295
- const key = `ruleList[${index}].open`;
296
- this.setData({
297
- [key]: !this.data.ruleList[index].open
298
- });
299
- },
300
-
301
- async getGameInfo() {
302
- try {
303
- const res = await queryGameInfo(this.data.gameId, 1, 1);
304
- if (res.code === 0) {
305
- const info = res.data;
306
-
307
- // releaseTime
308
- if (info.download?.android?.release_at) {
309
- info.releaseTime = formatUTC(info.download.android.release_at);
310
- } else {
311
- info.releaseTime = "暂无";
312
- }
313
-
314
- // managers
315
- info.managers = Array.isArray(info.managers) ? info.managers : [];
316
- info.chiefManagers = info.managers.filter(m => m.role === 'chief')
317
- info.normalManagers = info.managers.filter(m => m.role !== 'chief')
318
- // activities
319
- info.activities = Array.isArray(info.activities) ? info.activities : [];
320
- // 分组:is_face_slap === 1 的单独存,最多取一个
321
- const faceSlapActivity = info.activities.find(a => a.is_face_slap === 1);
322
- info.faceSlapActivity = faceSlapActivity || null; // 单个对象或 null
323
-
324
- // 其余的(不含 is_face_slap === 1 的)还放回 activities
325
- info.activities = info.activities.filter(a => a.is_face_slap !== 1);
326
-
327
-
328
- let banners = Array.isArray(info.banners) ?
329
- info.banners.map(url => ({
330
- type: 'image',
331
- url
332
- })) : [];
333
-
334
- // 如果有视频封面,则插入视频 banner
335
- if (info.video_cover_url) {
336
- banners.unshift({
337
- type: 'video',
338
- poster: info.video_cover_url,
339
- videoUrl: '', // 点击播放时再获取
340
- needFetch: true
341
- });
342
- }
343
-
344
- info.banners = banners;
345
-
346
- // 生成 tabs 动态列表
347
- const baseTabs = ["简介", "帖子", "攻略", "版规", "我的"];
348
- if (info.activities.length > 0) {
349
- baseTabs.push('活动'); // 在帖子前插入活动
350
- }
351
-
352
-
353
-
354
- this.setData({
355
- gameInfo: info,
356
- tabs: baseTabs
357
- });
358
-
359
- wx.setNavigationBarTitle({
360
- title: info.name || '社区中心',
361
- })
362
- }
363
- } catch (e) {
364
- console.error("获取游戏信息失败", e);
365
- }
366
- },
367
-
368
-
369
- async getGameIntroduce() {
370
- try {
371
- const res = await queryGameInfo(this.data.gameId, 1, 2);
372
- if (res.code === 0) {
373
- this.setData({
374
- introduceInfo: res.data
375
- });
376
- }
377
- } catch (e) {
378
- console.error("获取研发商信息失败", e);
379
- }
380
- },
381
-
382
- async getGameWikiInfo() {
383
- try {
384
- const res = await queryGameWiki(this.data.gameId);
385
- if (res.code === 0) {
386
- if (res.data?.images && Array.isArray(res.data?.images)) {
387
- this.setData({
388
- images: res.data?.images
389
- })
390
- }
391
- if (res.data?.page) {
392
- try {
393
- const result = decompressBase64Gzip(res.data.page?.payload)
394
-
395
-
396
-
397
- // 递归将所有图片 url 中的 http:// 替换为 https://
398
- function replaceHttpToHttps(obj) {
399
- if (Array.isArray(obj)) {
400
- return obj.map(replaceHttpToHttps)
401
- } else if (obj !== null && typeof obj === 'object') {
402
- const newObj = {}
403
- Object.keys(obj).forEach(function (key) {
404
- const value = obj[key]
405
- if (key === 'url' && typeof value === 'string') {
406
- newObj[key] = value.replace(/^http:\/\//i, 'https://')
407
- } else {
408
- newObj[key] = replaceHttpToHttps(value)
409
- }
410
- })
411
- return newObj
412
- }
413
- return obj
414
- }
415
-
416
- let httpsResult = replaceHttpToHttps(result)
417
-
418
- if (res.data.stats) {
419
- httpsResult = httpsResult.map(item =>
420
- item.type === 6 ? {
421
- ...item,
422
- stats: res.data.stats
423
- } : item
424
- )
425
- }
426
-
427
- console.log('解压后的 JSON:', httpsResult)
428
-
429
- this.setData({
430
- wiki_created_at: formatUTCYear(res.data.page?.created_at),
431
- gameWikiJson: httpsResult
432
- })
433
-
434
- } catch (err) {
435
- console.error('解压失败', err)
436
- }
437
- } else {
438
- this.setData({
439
- gameWikiJson: null
440
- })
441
- }
442
- }
443
-
444
- const usersData = await queryGameWikiUsers(this.data.gameId);
445
- if (usersData.code === 0) {
446
- this.setData({
447
- wikiUsers: Array.isArray(usersData.data) ? usersData.data : []
448
- })
449
- }
450
- } catch (e) {
451
- console.error("获取研发商信息失败", e);
452
- }
453
- },
454
-
455
- async getGameProtocol() {
456
- try {
457
- const res = await queryGameInfo(this.data.gameId, 1, 3);
458
- if (res.code === 0) {
459
- // 处理接口返回的版规
460
- const apiRules = (Array.isArray(res.data?.rules) ? res.data?.rules : []).map(item => ({
461
- icon: item.level,
462
- title: item.content,
463
- desc: item.supplement || '',
464
- open: false
465
- }));
466
-
467
- // 默认版规
468
- const defaultRules = rulesData.rules.map(i => ({
469
- ...i,
470
- open: false
471
- }));
472
-
473
- // 合并并排序: 只按 icon 升序
474
- const mergedRules = [...apiRules, ...defaultRules].sort((a, b) => {
475
- return a.icon - b.icon;
476
- });
477
-
478
- this.setData({
479
- protocolInfo: res.data ?? {},
480
- ruleList: mergedRules
481
- });
482
- }
483
- } catch (e) {
484
- console.error("获取版规信息失败", e);
485
- }
486
- },
487
-
488
- async getGameEmpiricValue() {
489
- try {
490
- const res = await queryGameInfo(this.data.gameId, 1, 4);
491
- if (res.code === 0) {
492
- this.setData({
493
- empiricInfo: res.data
494
- });
495
- }
496
- } catch (e) {
497
- console.error("获取经验信息失败", e);
498
- }
499
- },
500
-
501
- changeTab(e) {
502
- const index = e.currentTarget.dataset.index;
503
- this.onPauseAllVideo()
504
- this.setData({
505
- currentTab: index
506
- });
507
- },
508
-
509
- toggleJoin(e) {
510
- if (!checkLogin()) return; // 🔥 登录校验
511
-
512
- const is_fans = this.data.gameInfo.is_fans;
513
- const gameInfo = e.currentTarget.dataset.gameinfo
514
- const nType = is_fans !== 1 ? 1 : 2
515
- addGame(gameInfo.id, nType).then(res => {
516
- wx.showToast({
517
- title: nType === 1 ? '加入游戏库成功' : '移出游戏库',
518
- })
519
- this.setData({
520
- "gameInfo.is_fans": is_fans === 1 ? 0 : 1
521
- });
522
- })
523
- },
524
- // 前往活动详情
525
- goActivityDetail(e) {
526
- this.onPauseAllVideo()
527
- const item = e.currentTarget.dataset.item;
528
- // h5活动直接跳官网
529
- if (item.activity_type === 2) {
530
- wx.navigateTo({
531
- url: `../copyOfficial/copyOfficial?url=${encodeURIComponent('https://www.southnote.cn')}`
532
- });
533
- }
534
- // 签到跳转
535
- if (item.activity_type === 1) {
536
- wx.navigateTo({
537
- url: `../sevenDaySignDetail/sevenDaySignDetail?activity_id=${item.activity_id}`
538
- });
539
- }
540
- // 大转盘跳转
541
- if (item.activity_type === 4) {
542
- if (!checkLogin()) return; // 🔥 登录校验
543
-
544
- wx.navigateTo({
545
- url: `../wheelActivivty/wheelActivivty?activity_id=${item.activity_id}`
546
- });
547
- }
548
- // 话题活动跳转话题
549
- if (item.activity_type === 3) {
550
- wx.navigateTo({
551
- url: `../topic/topic?id=${item.activity_topic}`
552
- });
553
- }
554
- },
555
-
556
- /** 页面触底事件(上拉加载更多) */
557
- /** 页面触底事件(上拉加载更多) */
558
- onReachBottom() {
559
- const {
560
- currentTab,
561
- subTab,
562
- postTabs,
563
- hasMore,
564
- loading
565
- } = this.data;
566
-
567
- // 只在「帖子」这个主 Tab 下才加载更多
568
- if (currentTab !== 1) return;
569
-
570
- const filter = postTabs[subTab].filter;
571
-
572
- // 如果当前过滤条件下还有更多且未在加载中,则加载下一页
573
- if (hasMore[filter] && !loading[filter]) {
574
- this.loadPosts(filter, true);
575
- }
576
- },
577
-
578
-
579
- // 底部弹窗
580
-
581
- onMoreTap(e) {
582
- const index = e.currentTarget.dataset.index; // 当前帖子在列表中的索引
583
-
584
- const item = e.detail.item;
585
- const currentUserId = wx.getStorageSync('appuid'); // 当前登录用户id
586
- const isOwner = item.user.id === currentUserId;
587
- this.setData({
588
- isOwner,
589
- moreSheetVisible: true,
590
- moreSheetItem: item,
591
- currentPostIndex: index
592
-
593
- });
594
- },
595
-
596
- onPinTap() {
597
- const post = this.data.moreSheetItem.post;
598
- const type = this.data.isPinned ? 2 : 1; // 1置顶,2取消置顶
599
-
600
- wx.showLoading({
601
- title: '处理中...'
602
- });
603
- setUserPostTop(post.id, type).then(res => {
604
- wx.hideLoading();
605
- if (res.code === 0) {
606
- wx.showToast({
607
- title: type === 1 ? '置顶成功' : '取消置顶成功',
608
- icon: 'success'
609
- });
610
-
611
- // 更新当前组件状态
612
- this.setData({
613
- 'item.post.is_user_top': type === 1 ? 1 : 0,
614
- isPinned: type === 1 ? 1 : 0
615
- });
616
-
617
- this.onCloseMoreSheet();
618
-
619
- // 如果置顶,则需要移动帖子到列表第一位,取消其他帖子置顶,并滚动到顶部
620
- if (type === 1) {
621
- const pages = getCurrentPages();
622
- const currentPage = pages[pages.length - 1];
623
-
624
- if (currentPage.route === 'pages/user/user') {
625
- let postsData = currentPage.data.posts;
626
-
627
- if (Array.isArray(postsData)) {
628
- // 先取消其他帖子置顶
629
- postsData = postsData.map(p => {
630
- if (p.post.id !== post.id && p.post.is_user_top === 1) {
631
- p.post.is_user_top = 0;
632
- }
633
- return p;
634
- });
635
-
636
- // 找到当前帖子在数组中的索引
637
- const currentIndex = postsData.findIndex(p => p.post.id === post.id);
638
- if (currentIndex > -1) {
639
- const [pinnedPost] = postsData.splice(currentIndex, 1);
640
- pinnedPost.post.is_user_top = 1
641
- // 插入到数组第一个位置
642
- postsData.unshift(pinnedPost);
643
- }
644
-
645
- currentPage.setData({
646
- posts: postsData
647
- });
648
-
649
- // 页面滚动到顶部
650
- wx.pageScrollTo({
651
- scrollTop: 0,
652
- duration: 300
653
- });
654
- } else if (postsData && typeof postsData === 'object') {
655
- const newPostsObj = {};
656
- Object.keys(postsData).forEach(key => {
657
- if (Array.isArray(postsData[key])) {
658
- // 取消其他帖子置顶
659
- let arr = postsData[key].map(p => {
660
- if (p.post.id !== post.id && p.post.is_user_top === 1) {
661
- p.post.is_user_top = 0;
662
- }
663
- return p;
664
- });
665
-
666
- // 将当前帖子移动到第一个
667
- const currentIndex = arr.findIndex(p => p.post.id === post.id);
668
- if (currentIndex > -1) {
669
- const [pinnedPost] = arr.splice(currentIndex, 1);
670
- pinnedPost.post.is_user_top = 1
671
- arr.unshift(pinnedPost);
672
- }
673
-
674
- newPostsObj[key] = arr;
675
- } else {
676
- newPostsObj[key] = postsData[key];
677
- }
678
- });
679
-
680
- currentPage.setData({
681
- posts: newPostsObj
682
- });
683
-
684
- wx.pageScrollTo({
685
- scrollTop: 0,
686
- duration: 300
687
- });
688
- }
689
- }
690
- }
691
- } else {
692
- wx.showToast({
693
- title: res.msg || '操作失败',
694
- icon: 'error'
695
- });
696
- }
697
- });
698
- },
699
- // 关闭弹窗
700
- onCloseMoreSheet() {
701
- this.setData({
702
- moreSheetVisible: false
703
- });
704
- },
705
-
706
- // 弹窗选项点击
707
- onDelete() {
708
- const postId = this.data.moreSheetItem.post.id;
709
- deleteContent(postId).then(res => {
710
- if (res.code === 0) {
711
- wx.showToast({
712
- title: '删除成功',
713
- icon: 'success'
714
- });
715
-
716
- // 删除父页面列表里的帖子(兼容数组和对象)
717
- const pages = getCurrentPages();
718
- const currentPage = pages[pages.length - 1]; // 当前页
719
-
720
- const postsData = currentPage.data.posts;
721
- if (Array.isArray(postsData)) {
722
- // posts 是数组
723
- currentPage.setData({
724
- posts: postsData.filter(p => p.post.id !== postId)
725
- });
726
- } else if (postsData && typeof postsData === 'object') {
727
- // posts 是对象,每个 value 都可能是帖子数组
728
- const newPosts = {};
729
- Object.keys(postsData).forEach(key => {
730
- if (Array.isArray(postsData[key])) {
731
- newPosts[key] = postsData[key].filter(p => p.post.id !== postId);
732
- } else {
733
- newPosts[key] = postsData[key]; // 保留原值
734
- }
735
- });
736
- currentPage.setData({
737
- posts: newPosts
738
- });
739
- }
740
-
741
-
742
- this.triggerEvent('deletePost', {
743
- post: this.data.moreSheetItem.post
744
- });
745
- this.onCloseMoreSheet();
746
- } else {
747
- wx.showToast({
748
- title: res.msg || '删除失败',
749
- icon: 'error'
750
- });
751
- }
752
- });
753
- },
754
-
755
- // 举报帖子
756
- onReport() {
757
- this.onPauseAllVideo()
758
- wx.navigateTo({
759
- url: `../report-category/report-category?postId=${this.data.moreSheetItem.post.id}`,
760
- })
761
-
762
- this.triggerEvent('reportPost', {
763
- post: this.data.moreSheetItem.post
764
- });
765
- this.onCloseMoreSheet();
766
- },
767
-
768
- // 收藏/取消收藏
769
- // 收藏/取消收藏(放在 Page({ ... }) 里)
770
- async onFavorite() {
771
- const post = this.data.moreSheetItem.post;
772
- const nType = post.is_collect === 1 ? 2 : 1; // 1收藏,2取消收藏
773
-
774
- // 可选:先显示 loading,防止重复点击
775
- wx.showLoading({
776
- title: nType === 1 ? '收藏中...' : '取消中...'
777
- });
778
-
779
- try {
780
- const res = await collectPost(post.id, nType);
781
- wx.hideLoading();
782
-
783
- if (res.code === 0) {
784
- wx.showToast({
785
- title: nType === 1 ? '已收藏' : '取消收藏',
786
- icon: 'success'
787
- });
788
-
789
- // 1) 更新当前页面的 moreSheetItem(弹窗)
790
- const updatedMoreSheetItem = {
791
- ...this.data.moreSheetItem,
792
- post: {
793
- ...this.data.moreSheetItem.post,
794
- is_collect: nType === 1 ? 1 : 0
795
- }
796
- };
797
-
798
- // 2) 更新当前页面的 posts(兼容两种结构:object map 或 数组)
799
- const {
800
- posts
801
- } = this.data;
802
- let newPosts;
803
-
804
- if (Array.isArray(posts)) {
805
- // posts 本身是数组
806
- newPosts = posts.map(p => {
807
- if (p.post && p.post.id === post.id) {
808
- return {
809
- ...p,
810
- post: {
811
- ...p.post,
812
- is_collect: nType === 1 ? 1 : 0
813
- }
814
- };
815
- }
816
- return p;
817
- });
818
- } else if (posts && typeof posts === 'object') {
819
- // posts 是按 filter 分组的对象 {1: [...], 2: [...], ...}
820
- newPosts = {};
821
- Object.keys(posts).forEach(key => {
822
- const arr = posts[key];
823
- if (Array.isArray(arr)) {
824
- newPosts[key] = arr.map(p => {
825
- if (p.post && p.post.id === post.id) {
826
- return {
827
- ...p,
828
- post: {
829
- ...p.post,
830
- is_collect: nType === 1 ? 1 : 0
831
- }
832
- };
833
- }
834
- return p;
835
- });
836
- } else {
837
- // 保持原样(防止意外结构)
838
- newPosts[key] = posts[key];
839
- }
840
- });
841
- } else {
842
- // posts 为空或未知结构,直接保持 undefined
843
- newPosts = posts;
844
- }
845
-
846
- // 3) 批量 setData 更新(保持 atomic)
847
- this.setData({
848
- moreSheetItem: updatedMoreSheetItem,
849
- posts: newPosts
850
- });
851
-
852
- // 4) 可选:同步更新其他页面(如果你项目里还有 userDetail / postDetail 也需要同步)
853
- // 这里做一个遍历所有页面并更新它们的 posts,如果存在的话
854
- const pages = getCurrentPages();
855
- pages.forEach(pg => {
856
- if (!pg || !pg.data) return;
857
- const pgPosts = pg.data.posts;
858
- if (!pgPosts) return;
859
-
860
- // 同上:支持 array 或 object
861
- if (Array.isArray(pgPosts)) {
862
- const updated = pgPosts.map(p => {
863
- if (p.post && p.post.id === post.id) {
864
- return {
865
- ...p,
866
- post: {
867
- ...p.post,
868
- is_collect: nType === 1 ? 1 : 0
869
- }
870
- };
871
- }
872
- return p;
873
- });
874
- pg.setData({
875
- posts: updated
876
- });
877
- } else if (pgPosts && typeof pgPosts === 'object') {
878
- const updatedObj = {};
879
- let needSet = false;
880
- Object.keys(pgPosts).forEach(k => {
881
- const arr = pgPosts[k];
882
- if (Array.isArray(arr)) {
883
- const newArr = arr.map(p => {
884
- if (p.post && p.post.id === post.id) {
885
- needSet = true;
886
- return {
887
- ...p,
888
- post: {
889
- ...p.post,
890
- is_collect: nType === 1 ? 1 : 0
891
- }
892
- };
893
- }
894
- return p;
895
- });
896
- updatedObj[k] = newArr;
897
- } else {
898
- updatedObj[k] = pgPosts[k];
899
- }
900
- });
901
- if (needSet) {
902
- pg.setData({
903
- posts: updatedObj
904
- });
905
- }
906
- }
907
- });
908
-
909
- // 5) 关闭弹窗(如果你希望操作后自动关闭)
910
- this.onCloseMoreSheet();
911
-
912
- } else {
913
- wx.showToast({
914
- title: res.msg || (nType === 1 ? '收藏失败' : '取消收藏失败'),
915
- icon: 'error'
916
- });
917
- }
918
-
919
- } catch (err) {
920
- wx.hideLoading();
921
- console.error('收藏接口失败', err);
922
- wx.showToast({
923
- title: '网络错误,请稍后重试',
924
- icon: 'error'
925
- });
926
- }
927
- },
928
-
929
- onFollowChanged(e) {
930
- const {
931
- userId,
932
- isFans
933
- } = e.detail;
934
-
935
- const {
936
- posts
937
- } = this.data;
938
- let updatedPosts;
939
-
940
- if (Array.isArray(posts)) {
941
- // posts 是数组
942
- updatedPosts = posts.map(p => {
943
- if (p.user.id === userId) {
944
- p.user.is_fans = isFans ? 1 : 0;
945
- }
946
- return p;
947
- });
948
- } else if (posts && typeof posts === 'object') {
949
- // posts 是按 filter 分组的对象 {1: [...], 2: [...], ...}
950
- updatedPosts = {};
951
- Object.keys(posts).forEach(key => {
952
- const arr = posts[key];
953
- if (Array.isArray(arr)) {
954
- updatedPosts[key] = arr.map(p => {
955
- if (p.user.id === userId) {
956
- p.user.is_fans = isFans ? 1 : 0;
957
- }
958
- return p;
959
- });
960
- } else {
961
- updatedPosts[key] = arr;
962
- }
963
- });
964
- } else {
965
- updatedPosts = posts;
966
- }
967
-
968
- this.setData({
969
- posts: updatedPosts
970
- });
971
-
972
- wx.showToast({
973
- title: isFans ? '关注成功' : '已取消关注',
974
- icon: 'success'
975
- });
976
- },
977
-
978
- // 下拉刷新
979
- async onPullDownRefresh() {
980
- const {
981
- currentTab,
982
- subTab,
983
- postTabs
984
- } = this.data;
985
-
986
- // ✅ 只在「帖子」tab 下刷新
987
- if (currentTab !== 1) {
988
- wx.stopPullDownRefresh();
989
- return;
990
- }
991
-
992
- const filter = postTabs[subTab].filter;
993
-
994
- try {
995
- // 1️⃣ 重置当前 filter 的状态
996
- this.setData({
997
- [`page.${filter}`]: 0,
998
- [`hasMore.${filter}`]: true,
999
- [`loading.${filter}`]: false
1000
- });
1001
-
1002
- // 2️⃣ 重新拉第一页(append = false)
1003
- await this.loadPosts(filter, false);
1004
-
1005
- } catch (e) {
1006
- console.error('下拉刷新失败', e);
1007
- } finally {
1008
- // 3️⃣ 结束下拉动画
1009
- wx.stopPullDownRefresh();
1010
- }
1011
- },
1012
- // 点击video内部按钮视频回调
1013
- handlePlayVideo() {
1014
-
1015
- this.pausePostVideo()
1016
- },
1017
- // 点击banner播放
1018
- async onBannerVideoPlay(e) {
1019
- const index = e.currentTarget.dataset.index;
1020
- const banners = this.data.gameInfo.banners;
1021
- const item = banners[index];
1022
-
1023
- if (item.videoUrl || item.loading) return;
1024
-
1025
-
1026
- // 暂停当前播放的帖子视频
1027
- this.pausePostVideo()
1028
-
1029
-
1030
- // 加载 banner 视频
1031
- item.loading = true;
1032
- this.setData({
1033
- 'gameInfo.banners': banners
1034
- });
1035
-
1036
- wx.showLoading({
1037
- title: '加载中...'
1038
- });
1039
-
1040
- try {
1041
- const res = await queryGameBannerVideo(this.data.gameId);
1042
-
1043
- if (res.code === 0 && res.data) {
1044
- item.videoUrl = res.data;
1045
- item.loading = false;
1046
-
1047
- this.setData({
1048
- 'gameInfo.banners': banners
1049
- }, () => {
1050
- // 自动播放
1051
- wx.createVideoContext(`bannerVideo-${index}`, this).play();
1052
- });
1053
- } else {
1054
- throw new Error('无视频地址');
1055
- }
1056
- } catch (err) {
1057
- item.loading = false;
1058
- this.setData({
1059
- 'gameInfo.banners': banners
1060
- });
1061
- wx.showToast({
1062
- title: '视频加载失败',
1063
- icon: 'none'
1064
- });
1065
- } finally {
1066
- wx.hideLoading();
1067
- }
1068
- },
1069
-
1070
- pausePostVideo() {
1071
- const prevId = this.data.currentPlayingVideoId;
1072
- if (prevId) {
1073
- const posts = this.data.posts;
1074
- for (const key in posts) {
1075
- const arr = posts[key];
1076
- if (Array.isArray(arr)) {
1077
- const idx = arr.findIndex(p => p.post.id === prevId);
1078
- if (idx !== -1) {
1079
- const prevComponent = this.selectComponent(`#postItem-${key}-${idx}`);
1080
- if (prevComponent && prevComponent.pauseVideo) {
1081
- prevComponent.pauseVideo();
1082
- }
1083
- break;
1084
- }
1085
- }
1086
- }
1087
- this.setData({
1088
- currentPlayingVideoId: null
1089
- });
1090
- }
1091
- },
1092
- onBannerChange(e) {
1093
- // 暂停第一个视频
1094
- const videoContext = wx.createVideoContext('bannerVideo-0', this);
1095
- videoContext.pause();
1096
-
1097
- // 记录的时间存下来,下次播放用
1098
- const time = this.data.videoCurrentTime;
1099
-
1100
- // seek 到记录时间
1101
- videoContext.seek(time);
1102
-
1103
- this.setData({
1104
- currentBanner: e.detail.current
1105
- })
1106
- },
1107
-
1108
- onVideoTimeUpdate(e) {
1109
- this.setData({
1110
- videoCurrentTime: e.detail.currentTime
1111
- });
1112
- },
1113
-
1114
-
1115
-
1116
-
1117
-
1118
- pauseFirstVideo() {
1119
- // video 可能还没加载
1120
- const ctx = wx.createVideoContext('bannerVideo-0', this)
1121
- ctx.pause()
1122
- },
1123
- onBannerScroll(e) {
1124
- const now = Date.now()
1125
- if (now - (this._lastScrollTime || 0) < 100) return
1126
- this._lastScrollTime = now
1127
-
1128
- const scrollLeft = e.detail.scrollLeft
1129
-
1130
- const bannerWidthPx = wx.getWindowInfo().windowWidth * 300 / 750
1131
- const threshold = bannerWidthPx * 0.8
1132
-
1133
- if (scrollLeft > threshold) {
1134
- this.pauseFirstVideo()
1135
- }
1136
- },
1137
-
1138
- prevBanner() {
1139
- const total = this.data.gameInfo.banners.length
1140
- let cur = this.data.currentBanner
1141
-
1142
- cur = cur === 0 ? total - 1 : cur - 1
1143
-
1144
- this.setData({
1145
- currentBanner: cur
1146
- })
1147
- },
1148
-
1149
- nextBanner() {
1150
- const total = this.data.gameInfo.banners.length
1151
- let cur = this.data.currentBanner
1152
-
1153
- cur = cur === total - 1 ? 0 : cur + 1
1154
-
1155
- this.setData({
1156
- currentBanner: cur
1157
- })
1158
- },
1159
-
1160
-
1161
- onVideoPlay(e) {
1162
- const postId = e.detail.id;
1163
- const prevId = this.data.currentPlayingVideoId;
1164
-
1165
- if (prevId && prevId !== postId) {
1166
-
1167
- let prevComponent = null;
1168
- const posts = this.data.posts;
1169
- for (const key in posts) {
1170
- const arr = posts[key];
1171
- const idx = arr.findIndex(p => p.post.id === prevId);
1172
-
1173
- if (idx !== -1) {
1174
- prevComponent = this.selectComponent(`#postItem-${key}-${idx}`);
1175
- break;
1176
- }
1177
- }
1178
-
1179
- if (prevComponent) prevComponent.pauseVideo();
1180
- }
1181
-
1182
- // 暂停 banner 视频
1183
- this.pauseFirstVideo()
1184
-
1185
- this.setData({
1186
- currentPlayingVideoId: postId
1187
- });
1188
- },
1189
-
1190
- /**
1191
- * 暂停当前页面所有正在播放的视频
1192
- * - 帖子视频
1193
- * - banner 视频
1194
- */
1195
- onPauseAllVideo() {
1196
- // 1️⃣ 暂停帖子视频
1197
- const prevId = this.data.currentPlayingVideoId;
1198
- if (prevId) {
1199
- const posts = this.data.posts;
1200
-
1201
- for (const key in posts) {
1202
- const arr = posts[key];
1203
- if (!Array.isArray(arr)) continue;
1204
-
1205
- const idx = arr.findIndex(p => p.post?.id === prevId);
1206
- if (idx !== -1) {
1207
- const comp = this.selectComponent(`#postItem-${key}-${idx}`);
1208
- if (comp && typeof comp.pauseVideo === 'function') {
1209
- comp.pauseVideo();
1210
- }
1211
- break;
1212
- }
1213
- }
1214
-
1215
- this.setData({
1216
- currentPlayingVideoId: null
1217
- });
1218
- }
1219
-
1220
- // 2️⃣ 暂停 banner 视频(可能还没渲染,try-catch 保命)
1221
- this.pauseFirstVideo()
1222
- },
1223
-
1224
- /**
1225
- * 复制QQ号到剪贴板
1226
- * @param {string} qqNumber
1227
- */
1228
- copyQQNumber() {
1229
- const qq = this.data.introduceInfo.qq
1230
-
1231
- if (!qq) {
1232
- wx.showToast({
1233
- title: '暂无QQ号',
1234
- icon: 'none'
1235
- })
1236
- return
1237
- }
1238
-
1239
- wx.setClipboardData({
1240
- data: qq,
1241
- success: () => {
1242
- wx.showToast({
1243
- title: 'QQ号已复制',
1244
- icon: 'success'
1245
- })
1246
- }
1247
- })
1248
- },
1249
- onShareTap(e) {
1250
- this.setData({
1251
- sheetMode: 'forward',
1252
- showSheet: true,
1253
- originPost: e.detail.item,
1254
- commentData: null
1255
- }, () => {
1256
- const sheet = this.selectComponent('#bottomSheet');
1257
- if (sheet) {
1258
- if (wx.getStorageSync('height') != 0) {
1259
- sheet.updateSheetPosition(wx.getStorageSync('height'));
1260
-
1261
- }
1262
- }
1263
- });
1264
- },
1265
- onCommentTap(e) {
1266
- debugger
1267
- // this.setData({
1268
- // sheetMode: 'comment',
1269
- // showSheet: true,
1270
- // originPost: e.detail.item
1271
- // })
1272
-
1273
- const postId = e.detail.item.post.id;
1274
- this.onPauseAllVideo()
1275
- wx.navigateTo({
1276
- url: `/pages/post/post?id=${postId}&isCommentIn=true`
1277
- });
1278
- },
1279
-
1280
-
1281
- onCloseSheet() {
1282
- this.setData({
1283
- showSheet: false
1284
- });
1285
- },
1286
-
1287
- onSubmitSheet() {
1288
- this.setData({
1289
- showSheet: false
1290
- });
1291
- },
1292
-
1293
- chooseTopic(e) {
1294
- this.onPauseAllVideo()
1295
- wx.navigateTo({
1296
- url: '../addSubject/addSubject',
1297
- });
1298
- },
1299
-
1300
-
1301
-
1302
-
1303
-
1304
-
1305
- });
1
+ const _0x4618ce=_0x3567;(function(_0x228ec3,_0x1baeed){const _0x21cd6d=_0x3567,_0xa0e4b0=_0x228ec3();while(!![]){try{const _0x1dbee3=-parseInt(_0x21cd6d(0x15b))/0x1+-parseInt(_0x21cd6d(0xe3))/0x2*(parseInt(_0x21cd6d(0xce))/0x3)+parseInt(_0x21cd6d(0xf2))/0x4+-parseInt(_0x21cd6d(0xa0))/0x5+parseInt(_0x21cd6d(0x175))/0x6*(parseInt(_0x21cd6d(0xe2))/0x7)+-parseInt(_0x21cd6d(0xee))/0x8*(-parseInt(_0x21cd6d(0xc1))/0x9)+parseInt(_0x21cd6d(0x125))/0xa*(-parseInt(_0x21cd6d(0x155))/0xb);if(_0x1dbee3===_0x1baeed)break;else _0xa0e4b0['push'](_0xa0e4b0['shift']());}catch(_0x14b293){_0xa0e4b0['push'](_0xa0e4b0['shift']());}}}(_0x31f3,0xe17aa));import{queryGameInfo,queryGameWiki,queryGameWikiUsers,queryGamePosts,addGame,deleteContent,collectPost,setUserPostTop,queryGameBannerVideo}from'../../services/home';import{decompressBase64Gzip,isEmptyObject}from'../../utils/base64';import{formatUTCYear}from'../../utils/formatPost';function _0x31f3(){const _0x1cf06a=['AxnqAw5Uzwq','zM9YrwfJAa','mJuWmJn3D3z3DhK','CgXHEq','CMvSzwfZzvrPBwu','zgv0ywLS','y1LPtKK','C2nYB2XStgvMDa','B01VExi','s3Dqzuy','BwfUywDLCNm','uNjOCNm','rg5hBxa','BhvwsKi','Aw1Hz2u','C3rHDhm','tePNEeu','yw5KCM9Pza','ChvZAa','y2HPzwznyw5Hz2vYCW','CMnzDeq','z2fTzq','n1L3t05VBW','otrfqvvyqwW','DhjPz2DLCKv2zw50','ENLTv0y','DMLKzw8','y3vYCMvUDfbSyxLPBMDwAwrLB0LK','rgriwgy','CMvWB3j0ug9ZDa','CKPLr1K','y3vYCMvUDejHBM5LCG','x2XHC3rty3jVBgXuAw1L','D1LqrNu','mtuYtgHTsK1Z','ywn0AxzPDhLFDhLWzq','lI4VlI4VyxnZzxrZl2zPBguVCNvSzxmUANm','yxbWDwLK','nZm0mJiWq29XEgjV','CgfNzq','Dw5ZAgLMDa','ugD6EKu','y29Kzq','z2fTzuLK','BM9YBwfStwfUywDLCNm','B25dBg9Zzu1VCMvtAgvLDa','y3vYCMvUDfrPBwu','ywn0AxzPDhLFAwq','CgfNzxmVDxnLCI91C2vY','thjdDLe','DMLKzw9Fy292zxjFDxjS','C3bSAxq','Cgf1C2vgAxjZDfzPzgvV','DxnLCG','ywHXwwm','yKXNueW','AgLKzuXVywrPBMC','ywzJCha','5Ps26jEp5O6L5y+J5AsX6lsL','DhLWzq','v1HgA0W','uePZsNy','Cgf5Bg9Hza','lI4VywrKu3vIAMvJDc9HzgrtDwjQzwn0','C3rYAw5N','BM9Uzq','5PQc5PEGuvhLJ7C','z2fTzuLUzM8','i2jVDhrVBvnOzwv0','y3jLyxrLzf9HDa','C29YDa','DfDnzMy','wuXtuvC','lI4VDxnLCI91C2vYp2LKpq','ENHkwuq','txbbCLa','Eg9sEMm','z2v0r2fTzuLUzM8','tKjRB3O','DuDpsNm','CM9Szq','veXrsfa','zMLUza','s2LZD3C','ufvPwKW','Cg9ZDfrHyNm','zfHOwfm','tujgugy','B3bLBG','ntKZmevIrgfvza','yMfUBMvYvMLKzw8Tma','572r57UC6zsz6k+V77Ym6k+356In5zco6yEn6k+v','y3vYCMvUDa','EK5iDgO','zxjYB3i','Cg9ZDa','yMfUBMvYvMLKzw8T','BgfUzhnJyxbL','Cgf1C2u','yMnywuK','AgvPz2H0','Aw1Hz2vZ','zM9YD2fYza','zgrLswm','zxHW','y1HhyMq','seLOCu0','y010z2e','B25qyxvZzufSBfzPzgvV','twrbD1K','5Pon5l2C5AsX6lsL','y2HPzwy','svzjAhi','A3DUqNe','v0HlCK4','5PEG6kEg6Akr5zYW5z2a','56E75yE65RI45OIp5BQt','BM93','C3vWCgXLBwvUDa','swTTr0e','v3vNC20','z2v0r2fTzuLUDhjVzhvJzq','5y+w5RAi5Ps26jEp','Bg9HzgLUzY4','C2v0rgf0yq','D2LUzg93v2LKDgG','6i635y+w54Mi6kEe5l+H5OgV5AsX6lsL','yw5XqLC','C2vLAW','CeL1CgG','CgXVBMu','ywDZAgu','Bg9HzgLUzW','Aw5KzxG','wuL1tw0','Cgf1C2vwAwrLBW','yNnwtwC','mta1mdvYsxbnzeC','5Ps26jEp5lITlI4U','ywn0AxzPDhLFDg9WAwm','DxbKyxrLu2HLzxrqB3nPDgLVBG','zMLSDgvY','AwfQtwu','mJC5mZq2DgvWAgfs','6i635y+w56cu5y+r5zwg5l+H5OgV5AsX6lsL','B1LNC2C','AwfACKG','y29UDgvUDa','AgfZtw9Yzs4','lI4VCg9ZDc1LzgL0B3iVCg9ZDc1LzgL0B3i/z2fTzuLKpq','lI4Vy29WEu9MzMLJAwfSl2nVChLpzMzPy2LHBd91CMW9','6kEJ5y6l5AsX6lsL','y3vYCMvUDfrHCMDLDa','AxnFDxnLCL90B3a','rMvJtuK','Cg9ZDhm','Bw9YzvnOzwv0sxrLBq','A2LNsvG','revXCNe','C3vJy2vZCW','AxnFy29SBgvJDa','AxnFzMfJzv9ZBgfW','C2nYB2XSvg9W','qxnuExO','i3bVC3rjDgvTlq','vxzJyuq','BMfTzq','C2HVD1rVyxn0','qLLdu3y','nty0odq0mNHpteXwwa','zMfJzvnSyxbby3rPDML0Eq','BwfW','5BEY5Ps26jEp','5Ase55cg5lITlI4U','C2v0tMf2AwDHDgLVBKjHCLrPDgXL','EhDHwKK','vfD6Duq','CMvSzwfZzv9HDa','DxjS','lI4VDg9WAwmVDg9WAwm/Awq9','tvzgBva','jMLZq29TBwvUDeLUpxrYDwu','EhrqweG','CK9sDuG','t0f0zKK','vgjwAgG','C2vSzwn0q29TCg9Uzw50','uvjhDKi','Ahr0Chm6lY93D3CUC291DgHUB3rLlMnU','sKT0qLO','s0nIs00','v1brD0e','AxnFzMfUCW','5yIG6zMK5AsX6lsL','AxrLBq','AK9fAhK','5yQG5ywL5RI45OIp5BQt5OIq5yQF','ve94rNO','qxzRDwK','vMv0Bha','A3zAyxG','yu1hwMq','jMDHBwvoyw1Lpq','Cgf1C2vqB3n0vMLKzw8','y0zjt3q','zgf0yxnLDa','Bg9HzfbVC3rZ','t1D4C1m','ywn0AxzPDgLLCW','lI4Vy29TBw9Utg9NAw4Vy29TBw9Utg9NAw4','B3j3qvq','B2TZA3C','lI4VD2HLzwXby3rPDML2DhKVD2HLzwXby3rPDML2DhK/ywn0AxzPDhLFAwq9','DgHLBG','uvhLJ7FLT7lLPi3LIly','CNvSzxm','CgfNzs4','AxnbCNjHEq','z2v0u3rVCMfNzvn5BMm','ENPeAhe','Bg9N','BMLJA25HBwu','mtiXndqZnvfoBfPuuq','C3bSAwnL','z2v0r2fTzvDPA2LjBMzV','lI4Vz2fTzs9Nyw1Lp2LKpq','z2v0v2LUzg93sw5MBW','y3jLyxrLvMLKzw9dB250zxH0','5yIG6zMK5OIq5yQF','Bgv2zwXjBwC','5yQG6l295lITlI4U','BMf2AwDHDgvuBW','l3bHz2vZl3bVC3qVCg9ZDd9Pzd0','6i635y+w5BIw5A2q5AsX6lsL','Bgv2zwW','BgvUz3rO','BLrbwhq','zxHNtxG','sLb2zLy','B2jQzwn0','wLDcz2G','vgjqAM8','BxnN','zgf0yq','Cg9ZDhmU','DuDXuKu','C2HVD0XVywrPBMC','xs5VCgvU','AwnVBG','runyz1C','Aujwq2S','5y+w5RAi5Ps26jEp5AsX6lsL','CNvSzuXPC3q','C2v0q2XPCgjVyxjKrgf0yq','A2v5CW','nJa1oti1DMzlANr6','Ahr0Chm6lY8','z2fTzwLUzM8','r29KBwG','yMfUBMvYCW','zMLUzeLUzgv4','Dfvbqvy','zg93BMXVywq','EgrkCvm','5P+L55Yl5RI45OIp6k+M5Oof','5lIl5OUj5yI35PAW5AsX6lsL'];_0x31f3=function(){return _0x1cf06a;};return _0x31f3();}import _0x43431f from'../../utils/formatPost';import{getLevelByExp,getLevelImg}from'../../utils/exp';function _0x3567(_0x362571,_0x25928f){_0x362571=_0x362571-0x9d;const _0x31f337=_0x31f3();let _0x3567b5=_0x31f337[_0x362571];if(_0x3567['ZtWtsC']===undefined){var _0x3e621d=function(_0x40cf60){const _0x329799='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x117042='',_0x5a6878='';for(let _0x3ce9c1=0x0,_0x3723cc,_0x2a772b,_0x531422=0x0;_0x2a772b=_0x40cf60['charAt'](_0x531422++);~_0x2a772b&&(_0x3723cc=_0x3ce9c1%0x4?_0x3723cc*0x40+_0x2a772b:_0x2a772b,_0x3ce9c1++%0x4)?_0x117042+=String['fromCharCode'](0xff&_0x3723cc>>(-0x2*_0x3ce9c1&0x6)):0x0){_0x2a772b=_0x329799['indexOf'](_0x2a772b);}for(let _0x42bed2=0x0,_0x85a205=_0x117042['length'];_0x42bed2<_0x85a205;_0x42bed2++){_0x5a6878+='%'+('00'+_0x117042['charCodeAt'](_0x42bed2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5a6878);};_0x3567['sDNUkK']=_0x3e621d,_0x3567['tPSlwi']={},_0x3567['ZtWtsC']=!![];}const _0xfc09e6=_0x31f337[0x0],_0x451860=_0x362571+_0xfc09e6,_0x5d014f=_0x3567['tPSlwi'][_0x451860];return!_0x5d014f?(_0x3567b5=_0x3567['sDNUkK'](_0x3567b5),_0x3567['tPSlwi'][_0x451860]=_0x3567b5):_0x3567b5=_0x5d014f,_0x3567b5;}import{checkLogin}from'../../utils/auth';import _0x2bebea from'../../index';const rulesData=require(_0x4618ce(0xf0));Page({'data':{'gameId':0x0,'gameInfo':{},'introduceInfo':{},'protocolInfo':{},'empiricInfo':{},'tabs':[],'currentTab':0x1,'gameWikiJson':[],'wikiUsers':[],'wiki_created_at':'','showSheet':![],'sheetMode':_0x4618ce(0x132),'originPost':{},'postTabs':[{'title':'最新','filter':0x1},{'title':'最热','filter':0x2},{'title':'24小时榜','filter':0x3},{'title':'官方','filter':0x4},{'title':'精品','filter':0x5},{'title':'文章','filter':0x6}],'subTab':0x1,'activities':[],'posts':{},'page':{},'hasMore':{},'loading':{},'ruleList':[],'avatar':'','nickname':'','moreSheetVisible':![],'moreSheetItem':{},'isOwner':![],'currentBanner':0x0,'bannerRect':null,'currentPlayingVideoId':null},'onPageScroll'(_0x256413){const _0x51635c=_0x4618ce,_0x5b7e4e={'oIbqn':function(_0x530207,_0x46d39d){return _0x530207>=_0x46d39d;},'LrCvQ':function(_0x2129f6,_0x83d4e0){return _0x2129f6>=_0x83d4e0;}},_0x33ee4b=_0x256413[_0x51635c(0x16e)];_0x5b7e4e['oIbqn'](_0x33ee4b,0x15e)&&this[_0x51635c(0xb5)][_0x51635c(0x10f)][_0x51635c(0x12d)]===0x1&&this['pauseFirstVideo'](),_0x5b7e4e[_0x51635c(0xfd)](_0x33ee4b,0x190)&&this[_0x51635c(0xb5)][_0x51635c(0x10f)]['landscape']===0x0&&this['pauseFirstVideo']();},'onPublish'(){const _0x2881ae=_0x4618ce,_0x32c18c={'anqBW':'token','Wugsm':_0x2881ae(0x19d)};this[_0x2881ae(0x138)]();const _0x127560=wx[_0x2881ae(0x1a6)](_0x32c18c[_0x2881ae(0x14b)]),{gameId:_0x354db6,gameInfo:_0x1d1272}=this['data'];_0x127560?wx[_0x2881ae(0xa9)]({'url':_0x2881ae(0x161)+_0x354db6+_0x2881ae(0x196)+encodeURIComponent(_0x1d1272[_0x2881ae(0x172)]||'')}):wx[_0x2881ae(0xa9)]({'url':_0x32c18c[_0x2881ae(0x144)]});},'gotoUserDetail'(_0x3cc637){const _0x3e85b3=_0x4618ce;this[_0x3e85b3(0x138)]();const _0xd12816=_0x3cc637[_0x3e85b3(0x164)][_0x3e85b3(0x199)]['id'];wx[_0x3e85b3(0xa9)]({'url':_0x3e85b3(0x115)+_0xd12816});},'onShareAppMessage'(){const _0x53cb72=_0x4618ce,{gameInfo:_0x2418bf,gameId:_0xcf29a2}=this[_0x53cb72(0xb5)],_0x11b5d3=_0x2418bf?.[_0x53cb72(0x172)]||_0x53cb72(0xca);return{'title':_0x11b5d3,'path':_0x53cb72(0xa3)+_0xcf29a2};},'onLoad'(_0x19a910){const _0xef1ee1=_0x4618ce,_0x41aa3d={'JPvfV':'缺少gameId参数','NzTPG':'avatar'},_0x260ee7=_0x19a910['id']||_0x2bebea['gameId'];if(!_0x260ee7){wx['showToast']({'title':_0x41aa3d[_0xef1ee1(0xb0)],'icon':'none'});return;}this[_0xef1ee1(0x148)]({'gameId':_0x260ee7}),this[_0xef1ee1(0x119)](),this[_0xef1ee1(0x145)](),this['getGameProtocol'](),this['getGameEmpiricValue'](),this[_0xef1ee1(0xa2)](),this[_0xef1ee1(0x19a)](0x2),this[_0xef1ee1(0x148)]({'nickname':wx[_0xef1ee1(0x1a6)](_0xef1ee1(0x9f)),'avatar':wx[_0xef1ee1(0x1a6)](_0x41aa3d['NzTPG'])});},'changeSubTab'(_0x2d86e1){const _0x4bad92=_0x4618ce,_0x34b47a=_0x2d86e1['detail']['index'],_0x160b63=this[_0x4bad92(0xb5)][_0x4bad92(0x121)][_0x34b47a][_0x4bad92(0x159)];this['setData']({'subTab':_0x34b47a}),!this['data'][_0x4bad92(0x167)][_0x160b63]&&this['loadPosts'](_0x160b63);},async 'loadPosts'(_0x497b66,_0x20db12=![]){const _0x211803=_0x4618ce,_0x188c37={'zymWF':function(_0x2714da,_0x4f938d){return _0x2714da!=_0x4f938d;},'bsVMg':function(_0x13a674,_0x5a656c){return _0x13a674(_0x5a656c);},'ECXgW':function(_0xbc6542,_0x1bd2e9){return _0xbc6542(_0x1bd2e9);},'rORuH':function(_0x17f032,_0x21501f){return _0x17f032+_0x21501f;},'znqRM':function(_0x3db0c9,_0x321402,_0x378582,_0x1a9972){return _0x3db0c9(_0x321402,_0x378582,_0x1a9972);},'rcYtD':function(_0x32048a,_0x547545){return _0x32048a>_0x547545;},'tUAAV':_0x211803(0xab)},{gameId:_0x5cf3f3,page:_0x5930ca,posts:_0x24f691,loading:_0x1fade7}=this[_0x211803(0xb5)];if(_0x1fade7[_0x497b66])return;const _0x2d22c9=_0x20db12?_0x188c37['rORuH'](_0x5930ca[_0x497b66]||0x1,0x1):0x1;this[_0x211803(0x148)]({['loading.'+_0x497b66]:!![]});try{const _0x1ae717=await _0x188c37['znqRM'](queryGamePosts,_0x5cf3f3,_0x2d22c9,_0x497b66);if(_0x1ae717?.[_0x211803(0xf6)]===0x0&&Array[_0x211803(0x1a5)](_0x1ae717['data'])){const _0x121cfa=_0x1ae717['data'][_0x211803(0x177)](_0x46d152=>{const _0x176931=_0x211803,_0x33696d=_0x46d152[_0x176931(0x12b)]||{},_0x594d27=_0x46d152['shared'],_0xe8f67f=_0x46d152[_0x176931(0x101)]||{},_0x5d7574=_0x46d152[_0x176931(0xe1)]||{};return _0x188c37[_0x176931(0xe5)](_0x5d7574[_0x176931(0x134)],null)&&(_0xe8f67f[_0x176931(0xac)]=_0x188c37[_0x176931(0x154)](getLevelByExp,_0x5d7574?.[_0x176931(0x134)]),_0xe8f67f[_0x176931(0xa7)]=_0x188c37[_0x176931(0xbb)](getLevelImg,_0xe8f67f[_0x176931(0xac)])),{..._0x46d152,'post':{..._0x33696d,'imageArray':_0x33696d[_0x176931(0x131)]?_0x33696d['images'][_0x176931(0xff)](','):[],'formatTime':_0x188c37[_0x176931(0x154)](_0x43431f,_0x33696d[_0x176931(0x111)])},'shared':_0x594d27?.[_0x176931(0x12b)]?{..._0x594d27,'post':{..._0x594d27['post'],'imageArray':_0x594d27[_0x176931(0x12b)][_0x176931(0x131)]?_0x594d27[_0x176931(0x12b)][_0x176931(0x131)][_0x176931(0xff)](','):[],'formatTime':_0x188c37[_0x176931(0x154)](_0x43431f,_0x594d27['post']['created_at'])}}:_0x594d27};}),_0x17a23c=_0x188c37[_0x211803(0xe0)](_0x121cfa[_0x211803(0xad)],0x0);if(_0x20db12){const _0x1a27f9=_0x24f691[_0x497b66]?.[_0x211803(0xad)]||0x0;let _0xdff88c={};_0x121cfa['forEach']((_0x50b341,_0x223d1c)=>{const _0x4cd1b6=_0x211803;_0xdff88c[_0x4cd1b6(0xb6)+_0x497b66+'['+_0x188c37[_0x4cd1b6(0x183)](_0x1a27f9,_0x223d1c)+']']=_0x50b341;}),this[_0x211803(0x148)]({..._0xdff88c,[_0x211803(0x1a4)+_0x497b66]:_0x2d22c9,['hasMore.'+_0x497b66]:_0x17a23c,[_0x211803(0x147)+_0x497b66]:![]});}else this['setData']({['posts.'+_0x497b66]:_0x121cfa,[_0x211803(0x1a4)+_0x497b66]:_0x2d22c9,['hasMore.'+_0x497b66]:_0x17a23c,['loading.'+_0x497b66]:![]});}else this[_0x211803(0x148)]({[_0x211803(0x160)+_0x497b66]:![],['loading.'+_0x497b66]:![]});}catch(_0x56e071){console[_0x211803(0x12a)](_0x188c37[_0x211803(0xc7)],_0x56e071),this[_0x211803(0x148)]({['loading.'+_0x497b66]:![]});}},'loadMore'(_0x4b883){const _0x3cfae5=_0x4618ce,_0x4746b8=_0x4b883['currentTarget'][_0x3cfae5(0x199)]['filter'];this[_0x3cfae5(0x19a)](_0x4746b8,!![]);},'toggleRule'(_0x36d8e0){const _0x4e98cf=_0x4618ce,_0x51d992=_0x36d8e0[_0x4e98cf(0x164)][_0x4e98cf(0x199)][_0x4e98cf(0x151)],_0x270cc5='ruleList['+_0x51d992+_0x4e98cf(0xb9);this[_0x4e98cf(0x148)]({[_0x270cc5]:!this[_0x4e98cf(0xb5)][_0x4e98cf(0xbe)][_0x51d992][_0x4e98cf(0x124)]});},async 'getGameInfo'(){const _0x429e5a=_0x4618ce,_0x52f8c8={'PUiZL':function(_0x536e0d,_0x116ed2){return _0x536e0d(_0x116ed2);},'zNHtj':function(_0x28e13b,_0x48d68d){return _0x28e13b||_0x48d68d;},'MAkcR':_0x429e5a(0xe6),'DdHXf':'获取游戏信息失败'};try{const _0x32a270=await queryGameInfo(this[_0x429e5a(0xb5)][_0x429e5a(0xf7)],0x1,0x1);if(_0x32a270[_0x429e5a(0xf6)]===0x0){const _0x9d129=_0x32a270[_0x429e5a(0xb5)];_0x9d129['download']?.[_0x429e5a(0xdd)]?.[_0x429e5a(0x17d)]?_0x9d129[_0x429e5a(0xd0)]=_0x52f8c8[_0x429e5a(0x120)](_0x43431f,_0x9d129[_0x429e5a(0xc8)][_0x429e5a(0xdd)][_0x429e5a(0x17d)]):_0x9d129['releaseTime']='暂无';_0x9d129['managers']=Array[_0x429e5a(0x1a5)](_0x9d129['managers'])?_0x9d129['managers']:[],_0x9d129[_0x429e5a(0xdf)]=_0x9d129[_0x429e5a(0xd6)][_0x429e5a(0x159)](_0x390d3f=>_0x390d3f[_0x429e5a(0x11c)]===_0x429e5a(0x13b)),_0x9d129[_0x429e5a(0xf8)]=_0x9d129[_0x429e5a(0xd6)][_0x429e5a(0x159)](_0x3700fd=>_0x3700fd[_0x429e5a(0x11c)]!==_0x429e5a(0x13b)),_0x9d129[_0x429e5a(0x19c)]=Array[_0x429e5a(0x1a5)](_0x9d129['activities'])?_0x9d129[_0x429e5a(0x19c)]:[];const _0x1fd3a6=_0x9d129[_0x429e5a(0x19c)][_0x429e5a(0x11e)](_0x31819a=>_0x31819a[_0x429e5a(0x16d)]===0x1);_0x9d129[_0x429e5a(0x176)]=_0x52f8c8[_0x429e5a(0x129)](_0x1fd3a6,null),_0x9d129[_0x429e5a(0x19c)]=_0x9d129[_0x429e5a(0x19c)]['filter'](_0x20d053=>_0x20d053['is_face_slap']!==0x1);let _0x2b6be3=Array[_0x429e5a(0x1a5)](_0x9d129[_0x429e5a(0xc5)])?_0x9d129[_0x429e5a(0xc5)][_0x429e5a(0x177)](_0x3f0af0=>({'type':_0x429e5a(0xda),'url':_0x3f0af0})):[];_0x9d129['video_cover_url']&&_0x2b6be3[_0x429e5a(0xf4)]({'type':_0x52f8c8['MAkcR'],'poster':_0x9d129[_0x429e5a(0xfe)],'videoUrl':'','needFetch':!![]});_0x9d129[_0x429e5a(0xc5)]=_0x2b6be3;const _0x310d34=['简介','帖子','攻略','版规','我的'];_0x9d129[_0x429e5a(0x19c)][_0x429e5a(0xad)]>0x0&&_0x310d34[_0x429e5a(0xde)]('活动'),this[_0x429e5a(0x148)]({'gameInfo':_0x9d129,'tabs':_0x310d34}),wx[_0x429e5a(0x17a)]({'title':_0x9d129[_0x429e5a(0x172)]||'社区中心'});}}catch(_0x2946b8){console[_0x429e5a(0x12a)](_0x52f8c8[_0x429e5a(0xe8)],_0x2946b8);}},async 'getGameIntroduce'(){const _0x38d722=_0x4618ce,_0x2d9008={'WPQwA':function(_0x232651,_0x42a2ea,_0x586c35,_0x352e38){return _0x232651(_0x42a2ea,_0x586c35,_0x352e38);},'Godmh':function(_0x49b8ef,_0x3154e2){return _0x49b8ef===_0x3154e2;},'wYPFu':'获取研发商信息失败'};try{const _0x2b7ae1=await _0x2d9008[_0x38d722(0x18b)](queryGameInfo,this[_0x38d722(0xb5)][_0x38d722(0xf7)],0x1,0x2);_0x2d9008[_0x38d722(0xc4)](_0x2b7ae1[_0x38d722(0xf6)],0x0)&&this['setData']({'introduceInfo':_0x2b7ae1[_0x38d722(0xb5)]});}catch(_0x284639){console[_0x38d722(0x12a)](_0x2d9008[_0x38d722(0xed)],_0x284639);}},async 'getGameWikiInfo'(){const _0x2b4916=_0x4618ce,_0x2ccc24={'UvcaD':function(_0x428bb3,_0x46971f){return _0x428bb3===_0x46971f;},'PJsJv':_0x2b4916(0x17e),'bupWu':function(_0x273f05,_0x2ed0f9){return _0x273f05===_0x2ed0f9;},'wpThA':_0x2b4916(0x10c),'Vetlp':_0x2b4916(0xc2),'BYCSv':function(_0x341380,_0xd17497){return _0x341380(_0xd17497);},'MBFPf':_0x2b4916(0xb1),'MpArP':function(_0x4dfb08,_0x1c8ad0){return _0x4dfb08(_0x1c8ad0);},'plone':function(_0x5b4d47,_0xf844c){return _0x5b4d47(_0xf844c);},'NBkoz':_0x2b4916(0x163),'nTAXt':function(_0x12eb6a,_0x189f3d){return _0x12eb6a(_0x189f3d);},'OWxsS':_0x2b4916(0x15c)};try{const _0x10fb0f=await queryGameWiki(this[_0x2b4916(0xb5)]['gameId']);if(_0x2ccc24['bupWu'](_0x10fb0f[_0x2b4916(0xf6)],0x0)){_0x10fb0f[_0x2b4916(0xb5)]?.[_0x2b4916(0x131)]&&Array[_0x2b4916(0x1a5)](_0x10fb0f[_0x2b4916(0xb5)]?.[_0x2b4916(0x131)])&&this[_0x2b4916(0x148)]({'images':_0x10fb0f['data']?.[_0x2b4916(0x131)]});if(_0x10fb0f[_0x2b4916(0xb5)]?.[_0x2b4916(0xf3)])try{const _0x10fd71=_0x2ccc24[_0x2b4916(0x117)](decompressBase64Gzip,_0x10fb0f['data']['page']?.[_0x2b4916(0x10a)]);function _0xb879f1(_0x2008a8){const _0x10de0d=_0x2b4916;if(Array['isArray'](_0x2008a8))return _0x2008a8[_0x10de0d(0x177)](_0xb879f1);else{if(_0x2008a8!==null&&typeof _0x2008a8===_0x2ccc24[_0x10de0d(0x123)]){const _0x204291={};return Object['keys'](_0x2008a8)['forEach'](function(_0x433f3a){const _0x4eece9=_0x10de0d,_0x56d776=_0x2008a8[_0x433f3a];_0x2ccc24[_0x4eece9(0x171)](_0x433f3a,_0x2ccc24[_0x4eece9(0x109)])&&_0x2ccc24['bupWu'](typeof _0x56d776,_0x2ccc24['wpThA'])?_0x204291[_0x433f3a]=_0x56d776['replace'](/^http:\/\//i,_0x2ccc24[_0x4eece9(0x193)]):_0x204291[_0x433f3a]=_0x2ccc24[_0x4eece9(0x174)](_0xb879f1,_0x56d776);}),_0x204291;}}return _0x2008a8;}let _0x4e21fa=_0x2ccc24[_0x2b4916(0x117)](_0xb879f1,_0x10fd71);_0x10fb0f[_0x2b4916(0xb5)][_0x2b4916(0xdb)]&&(_0x4e21fa=_0x4e21fa[_0x2b4916(0x177)](_0x5f5a23=>_0x5f5a23[_0x2b4916(0x107)]===0x6?{..._0x5f5a23,'stats':_0x10fb0f[_0x2b4916(0xb5)][_0x2b4916(0xdb)]}:_0x5f5a23)),console[_0x2b4916(0x9e)]('解压后的\x20JSON:',_0x4e21fa),this['setData']({'wiki_created_at':_0x2ccc24[_0x2b4916(0x14e)](formatUTCYear,_0x10fb0f[_0x2b4916(0xb5)]['page']?.[_0x2b4916(0x111)]),'gameWikiJson':_0x4e21fa});}catch(_0x12ae99){console[_0x2b4916(0x12a)](_0x2ccc24[_0x2b4916(0x11a)],_0x12ae99);}else this[_0x2b4916(0x148)]({'gameWikiJson':null});}const _0x367461=await _0x2ccc24[_0x2b4916(0xae)](queryGameWikiUsers,this['data'][_0x2b4916(0xf7)]);_0x367461[_0x2b4916(0xf6)]===0x0&&this[_0x2b4916(0x148)]({'wikiUsers':Array['isArray'](_0x367461[_0x2b4916(0xb5)])?_0x367461[_0x2b4916(0xb5)]:[]});}catch(_0x47ed48){console['error'](_0x2ccc24[_0x2b4916(0x19b)],_0x47ed48);}},async 'getGameProtocol'(){const _0x2c92c4=_0x4618ce,_0x155fea={'ESxxB':function(_0x54f2d7,_0x1f42c8){return _0x54f2d7-_0x1f42c8;},'RUNGI':function(_0x501586,_0x3094cf,_0x311065,_0x564063){return _0x501586(_0x3094cf,_0x311065,_0x564063);},'KCbKM':function(_0x127a48,_0x1ae6d0){return _0x127a48===_0x1ae6d0;},'KkAOZ':_0x2c92c4(0x14a)};try{const _0x3861e0=await _0x155fea['RUNGI'](queryGameInfo,this[_0x2c92c4(0xb5)][_0x2c92c4(0xf7)],0x1,0x3);if(_0x155fea[_0x2c92c4(0x18a)](_0x3861e0['code'],0x0)){const _0x3c19c2=(Array[_0x2c92c4(0x1a5)](_0x3861e0['data']?.[_0x2c92c4(0x1a3)])?_0x3861e0[_0x2c92c4(0xb5)]?.[_0x2c92c4(0x1a3)]:[])[_0x2c92c4(0x177)](_0x383bd2=>({'icon':_0x383bd2[_0x2c92c4(0xac)],'title':_0x383bd2[_0x2c92c4(0x15f)],'desc':_0x383bd2[_0x2c92c4(0x142)]||'','open':![]})),_0x1fd283=rulesData['rules'][_0x2c92c4(0x177)](_0x570d50=>({..._0x570d50,'open':![]})),_0x4c7025=[..._0x3c19c2,..._0x1fd283][_0x2c92c4(0x112)]((_0x243d60,_0x582dcd)=>{const _0x9a30a0=_0x2c92c4;return _0x155fea['ESxxB'](_0x243d60['icon'],_0x582dcd[_0x9a30a0(0xba)]);});this[_0x2c92c4(0x148)]({'protocolInfo':_0x3861e0[_0x2c92c4(0xb5)]??{},'ruleList':_0x4c7025});}}catch(_0x386500){console[_0x2c92c4(0x12a)](_0x155fea['KkAOZ'],_0x386500);}},async 'getGameEmpiricValue'(){const _0x15918b=_0x4618ce,_0xfa011={'Avkui':function(_0x3bbd98,_0x22ed10){return _0x3bbd98===_0x22ed10;},'IVIhr':'获取经验信息失败'};try{const _0x3655a0=await queryGameInfo(this[_0x15918b(0xb5)][_0x15918b(0xf7)],0x1,0x4);_0xfa011[_0x15918b(0x192)](_0x3655a0[_0x15918b(0xf6)],0x0)&&this['setData']({'empiricInfo':_0x3655a0[_0x15918b(0xb5)]});}catch(_0x367f66){console['error'](_0xfa011[_0x15918b(0x13c)],_0x367f66);}},'changeTab'(_0x359f7f){const _0x5380e5=_0x4618ce,_0x3695ee=_0x359f7f['currentTarget'][_0x5380e5(0x199)]['index'];this['onPauseAllVideo'](),this[_0x5380e5(0x148)]({'currentTab':_0x3695ee});},'toggleJoin'(_0x1866ed){const _0x494861=_0x4618ce,_0x39241a={'rJeGY':function(_0x59291f,_0x1e2b95){return _0x59291f===_0x1e2b95;},'luVJB':function(_0x679c2e){return _0x679c2e();},'LJgxE':function(_0x38836a,_0x13333f){return _0x38836a!==_0x13333f;}};if(!_0x39241a[_0x494861(0xd9)](checkLogin))return;const _0x1e64d7=this['data'][_0x494861(0x10f)]['is_fans'],_0x138103=_0x1866ed['currentTarget'][_0x494861(0x199)][_0x494861(0xc3)],_0x13dbb1=_0x39241a[_0x494861(0xdc)](_0x1e64d7,0x1)?0x1:0x2;addGame(_0x138103['id'],_0x13dbb1)[_0x494861(0x1a1)](_0x4f040c=>{const _0x139df3=_0x494861;wx['showToast']({'title':_0x39241a[_0x139df3(0xea)](_0x13dbb1,0x1)?_0x139df3(0x190):_0x139df3(0x140)}),this['setData']({'gameInfo.is_fans':_0x39241a[_0x139df3(0xea)](_0x1e64d7,0x1)?0x0:0x1});});},'goActivityDetail'(_0x23fb64){const _0x3b92d4=_0x4618ce,_0x312ec5={'KUsYr':_0x3b92d4(0x188),'bLgPL':function(_0x25cabd,_0x2c2f0e){return _0x25cabd===_0x2c2f0e;},'HIhqM':function(_0x222af0,_0x12e862){return _0x222af0===_0x12e862;},'okskw':function(_0x846117){return _0x846117();}};this[_0x3b92d4(0x138)]();const _0x5130b0=_0x23fb64[_0x3b92d4(0x164)]['dataset'][_0x3b92d4(0x18e)];_0x5130b0[_0x3b92d4(0xef)]===0x2&&wx[_0x3b92d4(0xa9)]({'url':_0x3b92d4(0x162)+encodeURIComponent(_0x312ec5['KUsYr'])});_0x312ec5[_0x3b92d4(0x103)](_0x5130b0[_0x3b92d4(0xef)],0x1)&&wx[_0x3b92d4(0xa9)]({'url':'../sevenDaySignDetail/sevenDaySignDetail?activity_id='+_0x5130b0['activity_id']});if(_0x312ec5['HIhqM'](_0x5130b0[_0x3b92d4(0xef)],0x4)){if(!_0x312ec5[_0x3b92d4(0x19f)](checkLogin))return;wx['navigateTo']({'url':_0x3b92d4(0x1a0)+_0x5130b0[_0x3b92d4(0xfb)]});}_0x312ec5[_0x3b92d4(0x136)](_0x5130b0[_0x3b92d4(0xef)],0x3)&&wx[_0x3b92d4(0xa9)]({'url':_0x3b92d4(0x17f)+_0x5130b0[_0x3b92d4(0x157)]});},'onReachBottom'(){const _0x3159d0=_0x4618ce,{currentTab:_0x38debe,subTab:_0x410872,postTabs:_0x45ed8d,hasMore:_0x7c4160,loading:_0x40aa6d}=this[_0x3159d0(0xb5)];if(_0x38debe!==0x1)return;const _0x2dba4d=_0x45ed8d[_0x410872][_0x3159d0(0x159)];_0x7c4160[_0x2dba4d]&&!_0x40aa6d[_0x2dba4d]&&this[_0x3159d0(0x19a)](_0x2dba4d,!![]);},'onMoreTap'(_0x2b1c00){const _0x16f651=_0x4618ce,_0x13d34d={'DEqrq':_0x16f651(0xf1),'pIuph':function(_0x866ab7,_0x390b22){return _0x866ab7===_0x390b22;}},_0x16b229=_0x2b1c00[_0x16f651(0x164)][_0x16f651(0x199)]['index'],_0x217a9e=_0x2b1c00[_0x16f651(0xd1)][_0x16f651(0x18e)],_0x31904c=wx[_0x16f651(0x1a6)](_0x13d34d[_0x16f651(0x16a)]),_0x40464b=_0x13d34d[_0x16f651(0x14d)](_0x217a9e[_0x16f651(0x101)]['id'],_0x31904c);this[_0x16f651(0x148)]({'isOwner':_0x40464b,'moreSheetVisible':!![],'moreSheetItem':_0x217a9e,'currentPostIndex':_0x16b229});},'onPinTap'(){const _0x20d193=_0x4618ce,_0x37653e={'zzDhq':function(_0x5ef924,_0x1bc1d6){return _0x5ef924!==_0x1bc1d6;},'hcrWR':function(_0x4dd7d8,_0x5d6818){return _0x4dd7d8===_0x5d6818;},'dXhXS':function(_0x3c0b1d,_0x5afd4b){return _0x3c0b1d===_0x5afd4b;},'yKmtd':function(_0x5b4b82,_0x11bd91){return _0x5b4b82===_0x11bd91;},'iajMe':'置顶成功','CRPlu':function(_0x4a6066,_0x34f331){return _0x4a6066===_0x34f331;},'cYiNI':function(_0x4cef0a){return _0x4cef0a();},'Rrhrs':function(_0xe2ba43,_0x3a1593){return _0xe2ba43-_0x3a1593;},'IWpEx':_0x20d193(0xfc),'afcpp':function(_0x39fd9b,_0x3803c5){return _0x39fd9b===_0x3803c5;},'tWMff':_0x20d193(0xb1),'iBVCk':'error','oYgsg':_0x20d193(0x179),'ddeIc':function(_0x68d576,_0x39022d,_0x5c7487){return _0x68d576(_0x39022d,_0x5c7487);}},_0x30702d=this[_0x20d193(0xb5)][_0x20d193(0x168)][_0x20d193(0x12b)],_0x5c6635=this[_0x20d193(0xb5)][_0x20d193(0xcc)]?0x2:0x1;wx['showLoading']({'title':_0x37653e[_0x20d193(0x15d)]}),_0x37653e[_0x20d193(0x133)](setUserPostTop,_0x30702d['id'],_0x5c6635)[_0x20d193(0x1a1)](_0x3153f=>{const _0x1dc8d9=_0x20d193,_0x8531c9={'JKtBZ':function(_0x43f157,_0x2f2eb4){const _0xc63e4b=_0x3567;return _0x37653e[_0xc63e4b(0x9d)](_0x43f157,_0x2f2eb4);},'AsTyz':function(_0x413973,_0x5259bd){const _0x19dbbf=_0x3567;return _0x37653e[_0x19dbbf(0x122)](_0x413973,_0x5259bd);}};wx[_0x1dc8d9(0x104)]();if(_0x37653e['yKmtd'](_0x3153f[_0x1dc8d9(0xf6)],0x0)){wx[_0x1dc8d9(0x173)]({'title':_0x37653e['yKmtd'](_0x5c6635,0x1)?_0x37653e[_0x1dc8d9(0x15a)]:'取消置顶成功','icon':_0x1dc8d9(0x16b)}),this['setData']({'item.post.is_user_top':_0x37653e[_0x1dc8d9(0x122)](_0x5c6635,0x1)?0x1:0x0,'isPinned':_0x37653e['CRPlu'](_0x5c6635,0x1)?0x1:0x0}),this['onCloseMoreSheet']();if(_0x5c6635===0x1){const _0x5ea7bd=_0x37653e[_0x1dc8d9(0xd2)](getCurrentPages),_0x466fb6=_0x5ea7bd[_0x37653e[_0x1dc8d9(0xd7)](_0x5ea7bd[_0x1dc8d9(0xad)],0x1)];if(_0x466fb6['route']===_0x37653e['IWpEx']){let _0x1bb122=_0x466fb6[_0x1dc8d9(0xb5)]['posts'];if(Array[_0x1dc8d9(0x1a5)](_0x1bb122)){_0x1bb122=_0x1bb122[_0x1dc8d9(0x177)](_0x52d1fc=>{const _0x4e2646=_0x1dc8d9;return _0x37653e[_0x4e2646(0x9d)](_0x52d1fc[_0x4e2646(0x12b)]['id'],_0x30702d['id'])&&_0x37653e['hcrWR'](_0x52d1fc[_0x4e2646(0x12b)][_0x4e2646(0x165)],0x1)&&(_0x52d1fc['post'][_0x4e2646(0x165)]=0x0),_0x52d1fc;});const _0x17aa48=_0x1bb122['findIndex'](_0x1ac7ed=>_0x1ac7ed[_0x1dc8d9(0x12b)]['id']===_0x30702d['id']);if(_0x17aa48>-0x1){const [_0x2a5c59]=_0x1bb122[_0x1dc8d9(0xa1)](_0x17aa48,0x1);_0x2a5c59[_0x1dc8d9(0x12b)][_0x1dc8d9(0x165)]=0x1,_0x1bb122[_0x1dc8d9(0xf4)](_0x2a5c59);}_0x466fb6[_0x1dc8d9(0x148)]({'posts':_0x1bb122}),wx['pageScrollTo']({'scrollTop':0x0,'duration':0x12c});}else{if(_0x1bb122&&_0x37653e[_0x1dc8d9(0x105)](typeof _0x1bb122,_0x37653e[_0x1dc8d9(0x113)])){const _0xf8e07={};Object[_0x1dc8d9(0xc0)](_0x1bb122)[_0x1dc8d9(0xcd)](_0x5979de=>{const _0x1d4386=_0x1dc8d9;if(Array[_0x1d4386(0x1a5)](_0x1bb122[_0x5979de])){let _0x340664=_0x1bb122[_0x5979de][_0x1d4386(0x177)](_0x1d3946=>{const _0xb3cd6f=_0x1d4386;return _0x8531c9[_0xb3cd6f(0x189)](_0x1d3946[_0xb3cd6f(0x12b)]['id'],_0x30702d['id'])&&_0x8531c9[_0xb3cd6f(0x16f)](_0x1d3946[_0xb3cd6f(0x12b)][_0xb3cd6f(0x165)],0x1)&&(_0x1d3946['post'][_0xb3cd6f(0x165)]=0x0),_0x1d3946;});const _0x211d06=_0x340664[_0x1d4386(0xc6)](_0x4416a9=>_0x4416a9[_0x1d4386(0x12b)]['id']===_0x30702d['id']);if(_0x211d06>-0x1){const [_0x7c4e3]=_0x340664[_0x1d4386(0xa1)](_0x211d06,0x1);_0x7c4e3[_0x1d4386(0x12b)][_0x1d4386(0x165)]=0x1,_0x340664[_0x1d4386(0xf4)](_0x7c4e3);}_0xf8e07[_0x5979de]=_0x340664;}else _0xf8e07[_0x5979de]=_0x1bb122[_0x5979de];}),_0x466fb6[_0x1dc8d9(0x148)]({'posts':_0xf8e07}),wx['pageScrollTo']({'scrollTop':0x0,'duration':0x12c});}}}}}else wx[_0x1dc8d9(0x173)]({'title':_0x3153f[_0x1dc8d9(0xb4)]||_0x1dc8d9(0x13a),'icon':_0x37653e[_0x1dc8d9(0xbc)]});});},'onCloseMoreSheet'(){const _0x24223e=_0x4618ce;this[_0x24223e(0x148)]({'moreSheetVisible':![]});},'onDelete'(){const _0x17b7fa=_0x4618ce,_0x414fab={'avjys':function(_0x51c95a,_0x2ce7c2){return _0x51c95a===_0x2ce7c2;},'oSAga':_0x17b7fa(0xa6),'TbVhh':function(_0x48cad9,_0x1089bd){return _0x48cad9===_0x1089bd;},'oKnIl':'object','aMGZd':'deletePost','QRGvB':_0x17b7fa(0x12a),'DfoqZ':function(_0x53f809,_0x3546d6){return _0x53f809(_0x3546d6);}},_0x5b5399=this['data']['moreSheetItem'][_0x17b7fa(0x12b)]['id'];_0x414fab['DfoqZ'](deleteContent,_0x5b5399)['then'](_0x54ecc4=>{const _0x14acc2=_0x17b7fa;if(_0x414fab['avjys'](_0x54ecc4[_0x14acc2(0xf6)],0x0)){wx[_0x14acc2(0x173)]({'title':_0x414fab['oSAga'],'icon':'success'});const _0x4d85be=getCurrentPages(),_0x36edfd=_0x4d85be[_0x4d85be['length']-0x1],_0x5533be=_0x36edfd[_0x14acc2(0xb5)][_0x14acc2(0x167)];if(Array[_0x14acc2(0x1a5)](_0x5533be))_0x36edfd[_0x14acc2(0x148)]({'posts':_0x5533be[_0x14acc2(0x159)](_0x46a80e=>_0x46a80e['post']['id']!==_0x5b5399)});else{if(_0x5533be&&_0x414fab[_0x14acc2(0x185)](typeof _0x5533be,_0x414fab['oKnIl'])){const _0x5734f3={};Object['keys'](_0x5533be)['forEach'](_0x25e075=>{const _0x6bad55=_0x14acc2;Array['isArray'](_0x5533be[_0x25e075])?_0x5734f3[_0x25e075]=_0x5533be[_0x25e075][_0x6bad55(0x159)](_0x4f1ac7=>_0x4f1ac7['post']['id']!==_0x5b5399):_0x5734f3[_0x25e075]=_0x5533be[_0x25e075];}),_0x36edfd[_0x14acc2(0x148)]({'posts':_0x5734f3});}}this[_0x14acc2(0xe4)](_0x414fab[_0x14acc2(0x195)],{'post':this[_0x14acc2(0xb5)][_0x14acc2(0x168)][_0x14acc2(0x12b)]}),this[_0x14acc2(0xf9)]();}else wx[_0x14acc2(0x173)]({'title':_0x54ecc4[_0x14acc2(0xb4)]||_0x14acc2(0x18d),'icon':_0x414fab[_0x14acc2(0x187)]});});},'onReport'(){const _0x26fc6c=_0x4618ce;this[_0x26fc6c(0x138)](),wx[_0x26fc6c(0xa9)]({'url':'../report-category/report-category?postId='+this[_0x26fc6c(0xb5)][_0x26fc6c(0x168)][_0x26fc6c(0x12b)]['id']}),this[_0x26fc6c(0xe4)](_0x26fc6c(0xe9),{'post':this[_0x26fc6c(0xb5)][_0x26fc6c(0x168)][_0x26fc6c(0x12b)]}),this['onCloseMoreSheet']();},async 'onFavorite'(){const _0x565c71=_0x4618ce,_0x29d2b8={'TLQHP':function(_0x190fe1,_0x356ef3){return _0x190fe1===_0x356ef3;},'agshe':function(_0x1b9b9c,_0x153dd2){return _0x1b9b9c===_0x153dd2;},'sFHwc':function(_0xf87160,_0x566b30){return _0xf87160===_0x566b30;},'KwPeF':function(_0x2d598a,_0x2bdf36){return _0x2d598a===_0x2bdf36;},'WXFkL':_0x565c71(0xb1),'MVFmP':function(_0xc24f38,_0x44a171){return _0xc24f38===_0x44a171;},'xwaZI':_0x565c71(0x178),'cXGbd':_0x565c71(0x146),'cFIOt':function(_0x21458f,_0x127fd9){return _0x21458f===_0x127fd9;},'kvZax':function(_0x2740ab,_0x5e83df){return _0x2740ab===_0x5e83df;},'YIuMm':function(_0x466348){return _0x466348();},'iDFuC':'收藏失败','bcXYI':_0x565c71(0xbd),'TOxFz':_0x565c71(0x12a),'jOEhy':_0x565c71(0x106),'mqASD':_0x565c71(0x127)},_0x22c45d=this[_0x565c71(0xb5)][_0x565c71(0x168)][_0x565c71(0x12b)],_0xf83275=_0x22c45d[_0x565c71(0x16c)]===0x1?0x2:0x1;wx[_0x565c71(0xb8)]({'title':_0x29d2b8[_0x565c71(0x180)](_0xf83275,0x1)?_0x565c71(0x156):'取消中...'});try{const _0x4c19dc=await collectPost(_0x22c45d['id'],_0xf83275);wx['hideLoading']();if(_0x29d2b8[_0x565c71(0xd5)](_0x4c19dc[_0x565c71(0xf6)],0x0)){wx[_0x565c71(0x173)]({'title':_0xf83275===0x1?_0x29d2b8[_0x565c71(0x17b)]:_0x29d2b8[_0x565c71(0x135)],'icon':'success'});const _0x218e80={...this['data'][_0x565c71(0x168)],'post':{...this[_0x565c71(0xb5)]['moreSheetItem'][_0x565c71(0x12b)],'is_collect':_0x29d2b8[_0x565c71(0x198)](_0xf83275,0x1)?0x1:0x0}},{posts:_0x4dfbd0}=this['data'];let _0x1674e3;if(Array['isArray'](_0x4dfbd0))_0x1674e3=_0x4dfbd0['map'](_0x2ea1d2=>{const _0x2749a0=_0x565c71;if(_0x2ea1d2[_0x2749a0(0x12b)]&&_0x29d2b8[_0x2749a0(0x11d)](_0x2ea1d2['post']['id'],_0x22c45d['id']))return{..._0x2ea1d2,'post':{..._0x2ea1d2[_0x2749a0(0x12b)],'is_collect':_0xf83275===0x1?0x1:0x0}};return _0x2ea1d2;});else _0x4dfbd0&&_0x29d2b8[_0x565c71(0x194)](typeof _0x4dfbd0,_0x29d2b8[_0x565c71(0x108)])?(_0x1674e3={},Object[_0x565c71(0xc0)](_0x4dfbd0)[_0x565c71(0xcd)](_0x2f24ed=>{const _0x3d5ce4=_0x565c71,_0x63dbb4=_0x4dfbd0[_0x2f24ed];Array[_0x3d5ce4(0x1a5)](_0x63dbb4)?_0x1674e3[_0x2f24ed]=_0x63dbb4[_0x3d5ce4(0x177)](_0x293724=>{const _0x538a58=_0x3d5ce4;if(_0x293724['post']&&_0x29d2b8['agshe'](_0x293724[_0x538a58(0x12b)]['id'],_0x22c45d['id']))return{..._0x293724,'post':{..._0x293724['post'],'is_collect':_0x29d2b8[_0x538a58(0x14f)](_0xf83275,0x1)?0x1:0x0}};return _0x293724;}):_0x1674e3[_0x2f24ed]=_0x4dfbd0[_0x2f24ed];})):_0x1674e3=_0x4dfbd0;this[_0x565c71(0x148)]({'moreSheetItem':_0x218e80,'posts':_0x1674e3});const _0x446c37=_0x29d2b8[_0x565c71(0x152)](getCurrentPages);_0x446c37['forEach'](_0x24185c=>{const _0x5d2d9a=_0x565c71,_0x3bf6d8={'oMoyr':function(_0x7caeda,_0x2537cf){const _0x127cb0=_0x3567;return _0x29d2b8[_0x127cb0(0xd5)](_0x7caeda,_0x2537cf);}};if(!_0x24185c||!_0x24185c[_0x5d2d9a(0xb5)])return;const _0x59e598=_0x24185c[_0x5d2d9a(0xb5)][_0x5d2d9a(0x167)];if(!_0x59e598)return;if(Array[_0x5d2d9a(0x1a5)](_0x59e598)){const _0x3ad33f=_0x59e598[_0x5d2d9a(0x177)](_0x44b8fb=>{const _0x514605=_0x5d2d9a;if(_0x44b8fb[_0x514605(0x12b)]&&_0x3bf6d8[_0x514605(0xd4)](_0x44b8fb[_0x514605(0x12b)]['id'],_0x22c45d['id']))return{..._0x44b8fb,'post':{..._0x44b8fb[_0x514605(0x12b)],'is_collect':_0x3bf6d8[_0x514605(0xd4)](_0xf83275,0x1)?0x1:0x0}};return _0x44b8fb;});_0x24185c[_0x5d2d9a(0x148)]({'posts':_0x3ad33f});}else{if(_0x59e598&&typeof _0x59e598===_0x29d2b8[_0x5d2d9a(0x108)]){const _0x6ece0={};let _0xc99989=![];Object['keys'](_0x59e598)[_0x5d2d9a(0xcd)](_0x3b56dd=>{const _0x107632=_0x5d2d9a,_0x37f9dd={'exgMx':function(_0xf9ccd6,_0x2dc619){return _0x29d2b8['sFHwc'](_0xf9ccd6,_0x2dc619);}},_0x4bd808=_0x59e598[_0x3b56dd];if(Array[_0x107632(0x1a5)](_0x4bd808)){const _0x50e562=_0x4bd808[_0x107632(0x177)](_0x45c434=>{const _0x3281af=_0x107632;if(_0x45c434[_0x3281af(0x12b)]&&_0x37f9dd[_0x3281af(0xaf)](_0x45c434[_0x3281af(0x12b)]['id'],_0x22c45d['id']))return _0xc99989=!![],{..._0x45c434,'post':{..._0x45c434[_0x3281af(0x12b)],'is_collect':_0x37f9dd[_0x3281af(0xaf)](_0xf83275,0x1)?0x1:0x0}};return _0x45c434;});_0x6ece0[_0x3b56dd]=_0x50e562;}else _0x6ece0[_0x3b56dd]=_0x59e598[_0x3b56dd];}),_0xc99989&&_0x24185c[_0x5d2d9a(0x148)]({'posts':_0x6ece0});}}}),this[_0x565c71(0xf9)]();}else wx['showToast']({'title':_0x4c19dc['msg']||(_0x29d2b8[_0x565c71(0x14f)](_0xf83275,0x1)?_0x29d2b8['iDFuC']:_0x29d2b8[_0x565c71(0x12f)]),'icon':_0x29d2b8[_0x565c71(0x191)]});}catch(_0x2e835d){wx[_0x565c71(0x104)](),console[_0x565c71(0x12a)](_0x29d2b8[_0x565c71(0x18f)],_0x2e835d),wx['showToast']({'title':_0x29d2b8['mqASD'],'icon':_0x29d2b8[_0x565c71(0x191)]});}},'onFollowChanged'(_0x34ac98){const _0xceabc6=_0x4618ce,_0x59d44e={'xdJqS':function(_0x546467,_0x339572){return _0x546467===_0x339572;},'bGEWE':function(_0x549f89,_0xc37b82){return _0x549f89===_0xc37b82;},'ZWBgh':'object','zxJYD':'已取消关注','gUFVm':_0xceabc6(0x16b)},{userId:_0x3a1756,isFans:_0x2c26c2}=_0x34ac98[_0xceabc6(0xd1)],{posts:_0xbc4418}=this[_0xceabc6(0xb5)];let _0x55c5a9;if(Array[_0xceabc6(0x1a5)](_0xbc4418))_0x55c5a9=_0xbc4418['map'](_0x14960e=>{const _0x377b4e=_0xceabc6;return _0x59d44e[_0x377b4e(0xc9)](_0x14960e[_0x377b4e(0x101)]['id'],_0x3a1756)&&(_0x14960e['user'][_0x377b4e(0x18c)]=_0x2c26c2?0x1:0x0),_0x14960e;});else _0xbc4418&&_0x59d44e['bGEWE'](typeof _0xbc4418,_0x59d44e[_0xceabc6(0xb2)])?(_0x55c5a9={},Object[_0xceabc6(0xc0)](_0xbc4418)[_0xceabc6(0xcd)](_0x349731=>{const _0x5ebc90=_0xceabc6,_0xe54e5e={'uGqRE':function(_0x39d98e,_0x309414){return _0x39d98e===_0x309414;}},_0x477774=_0xbc4418[_0x349731];Array[_0x5ebc90(0x1a5)](_0x477774)?_0x55c5a9[_0x349731]=_0x477774[_0x5ebc90(0x177)](_0x3808bd=>{const _0x4d9a25=_0x5ebc90;return _0xe54e5e[_0x4d9a25(0xb7)](_0x3808bd[_0x4d9a25(0x101)]['id'],_0x3a1756)&&(_0x3808bd[_0x4d9a25(0x101)][_0x4d9a25(0x18c)]=_0x2c26c2?0x1:0x0),_0x3808bd;}):_0x55c5a9[_0x349731]=_0x477774;})):_0x55c5a9=_0xbc4418;this['setData']({'posts':_0x55c5a9}),wx[_0xceabc6(0x173)]({'title':_0x2c26c2?'关注成功':_0x59d44e[_0xceabc6(0x116)],'icon':_0x59d44e['gUFVm']});},async 'onPullDownRefresh'(){const _0x104a78=_0x4618ce,_0x78684={'zeVcN':function(_0x28b1bd,_0x257645){return _0x28b1bd!==_0x257645;},'orwAT':_0x104a78(0xcb)},{currentTab:_0x44e0c7,subTab:_0x223821,postTabs:_0x1a8b09}=this['data'];if(_0x78684['zeVcN'](_0x44e0c7,0x1)){wx['stopPullDownRefresh']();return;}const _0x192a77=_0x1a8b09[_0x223821][_0x104a78(0x159)];try{this['setData']({[_0x104a78(0x1a4)+_0x192a77]:0x0,['hasMore.'+_0x192a77]:!![],[_0x104a78(0x147)+_0x192a77]:![]}),await this[_0x104a78(0x19a)](_0x192a77,![]);}catch(_0x1c085b){console['error'](_0x78684[_0x104a78(0x19e)],_0x1c085b);}finally{wx['stopPullDownRefresh']();}},'handlePlayVideo'(){const _0x21a99b=_0x4618ce;this[_0x21a99b(0x197)]();},async 'onBannerVideoPlay'(_0x46baa4){const _0x565e0e=_0x4618ce,_0x12fb64={'fzQOG':_0x565e0e(0xa8),'qFPkv':function(_0x5e02d4,_0xe7b422){return _0x5e02d4(_0xe7b422);},'IkmGA':'视频加载失败'},_0x259be6=_0x46baa4[_0x565e0e(0x164)]['dataset'][_0x565e0e(0x151)],_0x2be38e=this[_0x565e0e(0xb5)][_0x565e0e(0x10f)][_0x565e0e(0xc5)],_0x53968b=_0x2be38e[_0x259be6];if(_0x53968b['videoUrl']||_0x53968b[_0x565e0e(0x150)])return;this['pausePostVideo'](),_0x53968b[_0x565e0e(0x150)]=!![],this[_0x565e0e(0x148)]({'gameInfo.banners':_0x2be38e}),wx[_0x565e0e(0xb8)]({'title':_0x12fb64['fzQOG']});try{const _0x4ba239=await _0x12fb64['qFPkv'](queryGameBannerVideo,this[_0x565e0e(0xb5)]['gameId']);if(_0x4ba239['code']===0x0&&_0x4ba239[_0x565e0e(0xb5)])_0x53968b['videoUrl']=_0x4ba239[_0x565e0e(0xb5)],_0x53968b['loading']=![],this[_0x565e0e(0x148)]({'gameInfo.banners':_0x2be38e},()=>{const _0x397f3e=_0x565e0e;wx[_0x397f3e(0xa5)](_0x397f3e(0x12c)+_0x259be6,this)[_0x397f3e(0xcf)]();});else throw new Error(_0x565e0e(0x13f));}catch(_0x574fed){_0x53968b[_0x565e0e(0x150)]=![],this[_0x565e0e(0x148)]({'gameInfo.banners':_0x2be38e}),wx[_0x565e0e(0x173)]({'title':_0x12fb64[_0x565e0e(0x143)],'icon':_0x565e0e(0x10d)});}finally{wx[_0x565e0e(0x104)]();}},'pausePostVideo'(){const _0x3eb4b1=_0x4618ce,_0x510025={'xtPXH':function(_0x2d2aee,_0x485976){return _0x2d2aee!==_0x485976;}},_0x37ff6b=this[_0x3eb4b1(0xb5)][_0x3eb4b1(0xe7)];if(_0x37ff6b){const _0x5d7aa2=this[_0x3eb4b1(0xb5)]['posts'];for(const _0x2be72a in _0x5d7aa2){const _0x933515=_0x5d7aa2[_0x2be72a];if(Array[_0x3eb4b1(0x1a5)](_0x933515)){const _0x2cca5e=_0x933515['findIndex'](_0x137cc0=>_0x137cc0[_0x3eb4b1(0x12b)]['id']===_0x37ff6b);if(_0x510025[_0x3eb4b1(0x182)](_0x2cca5e,-0x1)){const _0x42d752=this[_0x3eb4b1(0x186)](_0x3eb4b1(0x170)+_0x2be72a+'-'+_0x2cca5e);_0x42d752&&_0x42d752['pauseVideo']&&_0x42d752[_0x3eb4b1(0x153)]();break;}}}this['setData']({'currentPlayingVideoId':null});}},'onBannerChange'(_0x58a6f9){const _0x1a7313=_0x4618ce,_0x41c790={'DlnsI':_0x1a7313(0x126)},_0x1ac181=wx[_0x1a7313(0xa5)](_0x41c790['DlnsI'],this);_0x1ac181[_0x1a7313(0x12e)]();const _0x49b58f=this[_0x1a7313(0xb5)]['videoCurrentTime'];_0x1ac181[_0x1a7313(0x14c)](_0x49b58f),this[_0x1a7313(0x148)]({'currentBanner':_0x58a6f9['detail'][_0x1a7313(0x128)]});},'onVideoTimeUpdate'(_0x19717f){const _0x3592e6=_0x4618ce;this[_0x3592e6(0x148)]({'videoCurrentTime':_0x19717f['detail'][_0x3592e6(0xfa)]});},'pauseFirstVideo'(){const _0x1e047f=_0x4618ce,_0x3a8381=wx[_0x1e047f(0xa5)](_0x1e047f(0x126),this);_0x3a8381[_0x1e047f(0x12e)]();},'onBannerScroll'(_0x2936ec){const _0x41b3d7=_0x4618ce,_0x5514f4={'FecMI':function(_0x1a47a2,_0x15f847){return _0x1a47a2<_0x15f847;},'OAtfI':function(_0xefbae1,_0x24bc42){return _0xefbae1*_0x24bc42;},'kigIX':function(_0x5c641c,_0x54585b){return _0x5c641c*_0x54585b;},'JsfYF':function(_0x1d0c48,_0x2c5993){return _0x1d0c48>_0x2c5993;}},_0x22e217=Date[_0x41b3d7(0x141)]();if(_0x5514f4[_0x41b3d7(0x166)](_0x22e217-(this[_0x41b3d7(0xec)]||0x0),0x64))return;this[_0x41b3d7(0xec)]=_0x22e217;const _0x1fd03c=_0x2936ec['detail'][_0x41b3d7(0xd3)],_0x27452c=_0x5514f4[_0x41b3d7(0x184)](wx[_0x41b3d7(0xa4)]()[_0x41b3d7(0x149)],0x12c)/0x2ee,_0x32d5fb=_0x5514f4[_0x41b3d7(0x169)](_0x27452c,0.8);_0x5514f4['JsfYF'](_0x1fd03c,_0x32d5fb)&&this[_0x41b3d7(0x100)]();},'prevBanner'(){const _0x4b4415=_0x4618ce,_0xa21133={'xoRzc':function(_0x1fa2f4,_0x542494){return _0x1fa2f4===_0x542494;},'WHKrN':function(_0x326b66,_0x360573){return _0x326b66-_0x360573;}},_0xa855a8=this['data'][_0x4b4415(0x10f)]['banners'][_0x4b4415(0xad)];let _0x5149d6=this['data'][_0x4b4415(0xeb)];_0x5149d6=_0xa21133[_0x4b4415(0x118)](_0x5149d6,0x0)?_0xa21133[_0x4b4415(0x13e)](_0xa855a8,0x1):_0xa21133[_0x4b4415(0x13e)](_0x5149d6,0x1),this[_0x4b4415(0x148)]({'currentBanner':_0x5149d6});},'nextBanner'(){const _0x5a6bb7=_0x4618ce,_0x479bf5={'TWzuD':function(_0x469cad,_0x196382){return _0x469cad===_0x196382;},'Kisww':function(_0x2b430e,_0x1cb1d9){return _0x2b430e-_0x1cb1d9;},'kwnBq':function(_0x53387c,_0x337d0d){return _0x53387c+_0x337d0d;}},_0x2b78f1=this['data'][_0x5a6bb7(0x10f)]['banners'][_0x5a6bb7(0xad)];let _0x541e3a=this[_0x5a6bb7(0xb5)][_0x5a6bb7(0xeb)];_0x541e3a=_0x479bf5[_0x5a6bb7(0x17c)](_0x541e3a,_0x479bf5[_0x5a6bb7(0x11f)](_0x2b78f1,0x1))?0x0:_0x479bf5[_0x5a6bb7(0x13d)](_0x541e3a,0x1),this[_0x5a6bb7(0x148)]({'currentBanner':_0x541e3a});},'onVideoPlay'(_0x1bb664){const _0x14ff75=_0x4618ce,_0x38d04e={'cMtga':function(_0x5363ec,_0x1fc806){return _0x5363ec!==_0x1fc806;},'ahqYc':function(_0x1d087a,_0x33bf00){return _0x1d087a!==_0x33bf00;}},_0x29a84e=_0x1bb664[_0x14ff75(0xd1)]['id'],_0xe20fba=this['data'][_0x14ff75(0xe7)];if(_0xe20fba&&_0x38d04e[_0x14ff75(0x137)](_0xe20fba,_0x29a84e)){let _0x248851=null;const _0x375b9e=this['data'][_0x14ff75(0x167)];for(const _0xc59a6d in _0x375b9e){const _0x591f74=_0x375b9e[_0xc59a6d],_0x33aeaa=_0x591f74[_0x14ff75(0xc6)](_0x16b337=>_0x16b337[_0x14ff75(0x12b)]['id']===_0xe20fba);if(_0x38d04e[_0x14ff75(0x102)](_0x33aeaa,-0x1)){_0x248851=this[_0x14ff75(0x186)](_0x14ff75(0x170)+_0xc59a6d+'-'+_0x33aeaa);break;}}if(_0x248851)_0x248851['pauseVideo']();}this[_0x14ff75(0x100)](),this[_0x14ff75(0x148)]({'currentPlayingVideoId':_0x29a84e});},'onPauseAllVideo'(){const _0x55064d=_0x4618ce,_0x22b26d={'MdAwY':function(_0x4d5309,_0x5851fd){return _0x4d5309===_0x5851fd;},'vDXqy':'function'},_0x5008b3=this[_0x55064d(0xb5)]['currentPlayingVideoId'];if(_0x5008b3){const _0x7325aa=this[_0x55064d(0xb5)][_0x55064d(0x167)];for(const _0x58daf9 in _0x7325aa){const _0xa8f8a3=_0x7325aa[_0x58daf9];if(!Array[_0x55064d(0x1a5)](_0xa8f8a3))continue;const _0x1b73ce=_0xa8f8a3[_0x55064d(0xc6)](_0x358d4=>_0x358d4[_0x55064d(0x12b)]?.['id']===_0x5008b3);if(_0x1b73ce!==-0x1){const _0x897361=this[_0x55064d(0x186)](_0x55064d(0x170)+_0x58daf9+'-'+_0x1b73ce);_0x897361&&_0x22b26d[_0x55064d(0x139)](typeof _0x897361[_0x55064d(0x153)],_0x22b26d['vDXqy'])&&_0x897361[_0x55064d(0x153)]();break;}}this[_0x55064d(0x148)]({'currentPlayingVideoId':null});}this[_0x55064d(0x100)]();},'copyQQNumber'(){const _0xe5c1e3=_0x4618ce,_0x35db29={'PjTbC':_0xe5c1e3(0x1a2),'YLSQW':_0xe5c1e3(0x10e),'zjcaj':_0xe5c1e3(0x10d)},_0x2d0602=this[_0xe5c1e3(0xb5)]['introduceInfo']['qq'];if(!_0x2d0602){wx[_0xe5c1e3(0x173)]({'title':_0x35db29[_0xe5c1e3(0x114)],'icon':_0x35db29['zjcaj']});return;}wx[_0xe5c1e3(0xbf)]({'data':_0x2d0602,'success':()=>{const _0x410759=_0xe5c1e3;wx[_0x410759(0x173)]({'title':_0x35db29['PjTbC'],'icon':_0x410759(0x16b)});}});},'onShareTap'(_0x13639a){const _0x36aaad=_0x4618ce,_0x31dd2b={'TbPjo':_0x36aaad(0x110),'iaZrH':function(_0x20e22b,_0xc237f8){return _0x20e22b!=_0xc237f8;},'DnGmp':_0x36aaad(0x130),'PgzzE':_0x36aaad(0x132)};this[_0x36aaad(0x148)]({'sheetMode':_0x31dd2b[_0x36aaad(0xf5)],'showSheet':!![],'originPost':_0x13639a['detail'][_0x36aaad(0x18e)],'commentData':null},()=>{const _0x6784f9=_0x36aaad,_0x421e7c=this['selectComponent'](_0x31dd2b[_0x6784f9(0xb3)]);_0x421e7c&&(_0x31dd2b[_0x6784f9(0x15e)](wx['getStorageSync'](_0x31dd2b[_0x6784f9(0xd8)]),0x0)&&_0x421e7c[_0x6784f9(0x158)](wx[_0x6784f9(0x1a6)](_0x31dd2b['DnGmp'])));});},'onCommentTap'(_0x12bda8){const _0x23b61d=_0x4618ce;debugger;const _0x15d461=_0x12bda8[_0x23b61d(0xd1)][_0x23b61d(0x18e)][_0x23b61d(0x12b)]['id'];this['onPauseAllVideo'](),wx[_0x23b61d(0xa9)]({'url':_0x23b61d(0xaa)+_0x15d461+_0x23b61d(0x181)});},'onCloseSheet'(){this['setData']({'showSheet':![]});},'onSubmitSheet'(){const _0x10549e=_0x4618ce;this[_0x10549e(0x148)]({'showSheet':![]});},'chooseTopic'(_0xee5ce6){const _0xed4709=_0x4618ce,_0x3c850d={'uGOJs':_0xed4709(0x10b)};this['onPauseAllVideo'](),wx[_0xed4709(0xa9)]({'url':_0x3c850d[_0xed4709(0x11b)]});}});