From cb7779098c51922d0d7f26568475d350a9f1fad0 Mon Sep 17 00:00:00 2001 From: inleft <inleft@qq.com> Date: Fri, 29 Jul 2022 19:08:22 +0800 Subject: [PATCH] 添加马甲认证,添加小红点更新 --- src/components/mini/box13-reply.vue | 108 +++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 82 insertions(+), 26 deletions(-) diff --git a/src/components/mini/box13-reply.vue b/src/components/mini/box13-reply.vue index 17a3f63..4b2c896 100644 --- a/src/components/mini/box13-reply.vue +++ b/src/components/mini/box13-reply.vue @@ -8,14 +8,20 @@ </a-input> </a-form-model-item> <a-form-model-item label="邮箱" prop="eMail"> - <a-input v-model="form.eMail" placeholder="保密项(非必填)"> + <a-input v-model="form.eMail" placeholder="保密项(选填)"> </a-input> </a-form-model-item> <a-form-model-item label="主页" prop="homePage"> <a-input v-model="form.homePage" placeholder="https:// or http://"> </a-input> </a-form-model-item> - + <a-form-model-item label="马甲认证" + v-show="form.nickName=='inleft'||form.nickName=='笔墨'||form.nickName=='阿墨'"> + <a-input-password v-model="form.authCode" autocomplete='new-password' type="password" + placeholder="我的授权码"> + <a-icon slot="prefix" type="lock" style="color:rgba(0,0,0,.25)" /> + </a-input-password> + </a-form-model-item> </a-form-model> </div> <div class="replyMsgInfo" v-if="showReplyMsgInfo"> @@ -31,23 +37,23 @@ <a-textarea :rows="4" v-model="form.visitorContent" :placeholder="replyHolder" /> </a-form-item> <div> - <a-button html-type="submit" type="primary" @click="send()" v-if="!showReplyMsgInfo" - :disabled="isSending || $attrs.isAllowedComment==0"> - 高低整两句 - </a-button> - <a-button html-type="submit" type="primary" v-else @click="send()" - :disabled="isSending || $attrs.isAllowedComment==0"> - 回复Ta - </a-button> - <span class="myTip" v-if="$attrs.isAllowedComment==0">很遗憾,评论已关闭</span> + <a-button html-type="submit" type="primary" @click="send()" v-if="!showReplyMsgInfo" + :disabled="isSending || $attrs.isAllowedComment==0"> + 高低整两句 + </a-button> + <a-button html-type="submit" type="primary" v-else @click="send()" + :disabled="isSending || $attrs.isAllowedComment==0"> + 回复Ta + </a-button> + <span class="myTip" v-if="$attrs.isAllowedComment==0">很遗憾,评论已关闭</span> </div> <div> - <a-checkbox style=" margin-left: 8px;" v-if="!showReplyMsgInfo" v-model="form.isSecretMsg"> - 悄悄说..<span class="myTip">(仅登录后可查看)</span> - </a-checkbox> <a-checkbox v-model="form.isReceiveMail"> 接收邮件回复通知 + </a-checkbox> + <a-checkbox style=" margin-left: 8px;" v-if="!showReplyMsgInfo" v-model="form.isSecretMsg"> + 悄悄说..<span class="myTip">(仅登录后可查看)</span> </a-checkbox> </div> </div> @@ -59,6 +65,9 @@ import { blogCommentAdd } from '../../api/blogArticleComment.js' + import md5 from 'js-md5'; + + const VisitorDataKey = "visitorData.inleft.com" export default { methods: { @@ -78,6 +87,11 @@ return } + if (this.form.isReceiveMail && this.form.eMail == "") { + this.$message.info("如果是想接收通知的话,你可能需要填上一个邮箱..") + return + } + var res; this.$refs.myForm.validate(valid => { if (valid) { @@ -88,14 +102,38 @@ res = false; } }); + + if (this.form.nickName == 'inleft' || this.form.nickName == '笔墨' || this.form.nickName == '阿墨') { + if (this.form.authCode == null || this.form.authCode == "") { + this.$message.info("不要成为我,你就是真的自己..") + return + } + } + + var articleId = this.$attrs.articleId; let commentType = (articleId == null || articleId == undefined) ? 1 : 2; - this.isSending = true; + //记录最新访客信息 + if (this.form.visitorId == 1) { + var today = new Date(); + var year = today.getFullYear() + ""; + var month = today.getMonth() + 1 + ""; + var date = today.getDate() + ""; + var num = ""; + for (var i = 0; i < 4; i++) { + num = num + Math.floor(Math.random() * 9) + ""; + } + this.form.visitorId = year + (month > 10 ? month : '0' + month) + date + num + } + + localStorage.setItem(VisitorDataKey, JSON.stringify(this.form)) + + this.isSending = true; blogCommentAdd({ parentId: this.msgInfo.parentId, replyId: this.msgInfo.replyId, - "visitorId": "1", + "visitorId": this.form.visitorId, "articleId": articleId, "commentType": commentType, "authStatus": this.form.isSecretMsg ? 2 : 1, @@ -104,6 +142,8 @@ "visitorHomePage": this.form.homePage, "visitorNickName": this.form.nickName, "commentContent": this.form.visitorContent, + "authCode": this.form.authCode != null && this.form.authCode != "" ? md5(this.form.authCode) : + '' }).then((res) => { this.isSending = false; if (res.code == 200) { @@ -129,6 +169,31 @@ }, data() { + let tempVisitorData = localStorage.getItem(VisitorDataKey); + let vistorData = { + nickName: "", + eMail: "", + homePage: "", + isReceiveMail: true, + isSecretMsg: false, + visitorContent: "", + parentId: 0, + replyId: 0, + visitorId: 1, + authCode: '' + }; + + if (tempVisitorData != null && tempVisitorData != undefined) { + tempVisitorData = JSON.parse(tempVisitorData); + vistorData.nickName = tempVisitorData.nickName; + vistorData.eMail = tempVisitorData.eMail; + vistorData.homePage = tempVisitorData.homePage; + vistorData.isReceiveMail = tempVisitorData.isReceiveMail; + vistorData.isSecretMsg = tempVisitorData.isSecretMsg; + vistorData.visitorId = tempVisitorData.visitorId; + vistorData.authCode = tempVisitorData.authCode; + } + return { isSending: false, replyHolder: "", @@ -147,16 +212,7 @@ span: 15, offset: 0 }, - form: { - nickName: "", - eMail: "", - homePage: "", - isReceiveMail: false, - isSecretMsg: false, - visitorContent: "", - parentId: 0, - replyId: 0 - }, + form: vistorData, rules: { "nickName": [{ message: '怎么称呼?', -- Gitblit v1.9.1