twikoo-vercel 1.7.7 → 1.7.9
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.
- package/api/index.js +42 -1
- package/package.json +2 -2
package/api/index.js
CHANGED
|
@@ -30,6 +30,7 @@ const {
|
|
|
30
30
|
isQQ,
|
|
31
31
|
addQQMailSuffix,
|
|
32
32
|
getQQAvatar,
|
|
33
|
+
getQQNick,
|
|
33
34
|
getPasswordStatus,
|
|
34
35
|
preCheckSpam,
|
|
35
36
|
checkTurnstileCaptcha,
|
|
@@ -37,7 +38,8 @@ const {
|
|
|
37
38
|
checkCapCaptcha,
|
|
38
39
|
getConfig,
|
|
39
40
|
getConfigForAdmin,
|
|
40
|
-
validate
|
|
41
|
+
validate,
|
|
42
|
+
checkCommentOwnership
|
|
41
43
|
} = require('twikoo-func/utils')
|
|
42
44
|
const {
|
|
43
45
|
jsonParse,
|
|
@@ -100,6 +102,9 @@ module.exports = async (request, response) => {
|
|
|
100
102
|
case 'COMMENT_DELETE_FOR_ADMIN':
|
|
101
103
|
res = await commentDeleteForAdmin(event)
|
|
102
104
|
break
|
|
105
|
+
case 'COMMENT_DELETE_FOR_USER':
|
|
106
|
+
res = await commentDeleteForUser(event)
|
|
107
|
+
break
|
|
103
108
|
case 'COMMENT_IMPORT_FOR_ADMIN':
|
|
104
109
|
res = await commentImportForAdmin(event)
|
|
105
110
|
break
|
|
@@ -145,6 +150,9 @@ module.exports = async (request, response) => {
|
|
|
145
150
|
case 'UPLOAD_IMAGE': // >= 1.5.0
|
|
146
151
|
res = await uploadImage(event, config)
|
|
147
152
|
break
|
|
153
|
+
case 'GET_QQ_NICK': // >= 1.7.0
|
|
154
|
+
res = await qqNickGet(event)
|
|
155
|
+
break
|
|
148
156
|
case 'COMMENT_EXPORT_FOR_ADMIN': // >= 1.6.13
|
|
149
157
|
res = await commentExportForAdmin(event)
|
|
150
158
|
break
|
|
@@ -466,6 +474,24 @@ async function commentDeleteForAdmin (event) {
|
|
|
466
474
|
return res
|
|
467
475
|
}
|
|
468
476
|
|
|
477
|
+
// 用户删除自己的评论
|
|
478
|
+
async function commentDeleteForUser (event) {
|
|
479
|
+
const res = {}
|
|
480
|
+
try {
|
|
481
|
+
const uid = getUid()
|
|
482
|
+
await checkCommentOwnership(event.id, uid, async (id) => {
|
|
483
|
+
return db.collection('comment').findOne({ _id: id })
|
|
484
|
+
})
|
|
485
|
+
const data = await db.collection('comment').deleteOne({ _id: event.id })
|
|
486
|
+
res.code = RES_CODE.SUCCESS
|
|
487
|
+
res.deleted = data.deletedCount
|
|
488
|
+
} catch (e) {
|
|
489
|
+
res.code = RES_CODE.FAIL
|
|
490
|
+
res.message = e.message
|
|
491
|
+
}
|
|
492
|
+
return res
|
|
493
|
+
}
|
|
494
|
+
|
|
469
495
|
// 管理员导入评论
|
|
470
496
|
async function commentImportForAdmin (event) {
|
|
471
497
|
const res = {}
|
|
@@ -931,6 +957,21 @@ async function getRecentComments (event) {
|
|
|
931
957
|
return res
|
|
932
958
|
}
|
|
933
959
|
|
|
960
|
+
// 获取 QQ 昵称
|
|
961
|
+
async function qqNickGet (event) {
|
|
962
|
+
const res = {}
|
|
963
|
+
try {
|
|
964
|
+
validate(event, ['qq'])
|
|
965
|
+
const nick = await getQQNick(event.qq, config.QQ_API_KEY)
|
|
966
|
+
res.code = RES_CODE.SUCCESS
|
|
967
|
+
res.nick = nick
|
|
968
|
+
} catch (e) {
|
|
969
|
+
res.code = RES_CODE.FAIL
|
|
970
|
+
res.message = e.message
|
|
971
|
+
}
|
|
972
|
+
return res
|
|
973
|
+
}
|
|
974
|
+
|
|
934
975
|
// 修改配置
|
|
935
976
|
async function setConfig (event) {
|
|
936
977
|
const isAdminUser = isAdmin()
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "twikoo-vercel",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.9",
|
|
4
4
|
"description": "A simple comment system.",
|
|
5
5
|
"author": "imaegoo <hello@imaegoo.com> (https://github.com/imaegoo)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"get-user-ip": "^1.0.1",
|
|
15
15
|
"mongodb": "^6.3.0",
|
|
16
|
-
"twikoo-func": "1.7.
|
|
16
|
+
"twikoo-func": "1.7.9",
|
|
17
17
|
"uuid": "^8.3.2"
|
|
18
18
|
}
|
|
19
19
|
}
|