|
@@ -66,6 +66,17 @@
|
|
<img v-if="state.done.retweet" :src="require('@/assets/svg/icon-true.svg')" alt />
|
|
<img v-if="state.done.retweet" :src="require('@/assets/svg/icon-true.svg')" alt />
|
|
<div v-else class="btn" @click="clickRetweetBtn">Retweet</div>
|
|
<div v-else class="btn" @click="clickRetweetBtn">Retweet</div>
|
|
</template>
|
|
</template>
|
|
|
|
+ <!-- Comment、艾特 friends -->
|
|
|
|
+ <template v-if="item.type == 9">
|
|
|
|
+ <img :src="require('@/assets/svg/icon-task-twitter.svg')" alt />
|
|
|
|
+ <div class="item-content">
|
|
|
|
+ <div class="item-title">Comment and tag 3 friends</div>
|
|
|
|
+ </div>
|
|
|
|
+ <img :src="require('@/assets/gif/red-right.gif')" alt class="red-right"
|
|
|
|
+ v-show="!state.done.reply && state.done.reply_red" />
|
|
|
|
+ <img v-if="state.done.reply" :src="require('@/assets/svg/icon-true.svg')" alt />
|
|
|
|
+ <div v-else class="btn" @click="clickReply(item)">Comment</div>
|
|
|
|
+ </template>
|
|
<!-- repost feacebook -->
|
|
<!-- repost feacebook -->
|
|
<template v-if="item.type == 8">
|
|
<template v-if="item.type == 8">
|
|
<img :src="require('@/assets/svg/icon-task-facebook.svg')" alt />
|
|
<img :src="require('@/assets/svg/icon-task-facebook.svg')" alt />
|
|
@@ -350,6 +361,7 @@ let state = reactive({
|
|
retweet: false,
|
|
retweet: false,
|
|
join_discord: false,
|
|
join_discord: false,
|
|
repost_facebook: false,
|
|
repost_facebook: false,
|
|
|
|
+ reply: false
|
|
}
|
|
}
|
|
})
|
|
})
|
|
function clickRetry() {
|
|
function clickRetry() {
|
|
@@ -464,6 +476,19 @@ async function clickRetweetBtn() {
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+async function clickReply(params) {
|
|
|
|
+ let _userInfo = await checkIsLogin()
|
|
|
|
+ if (!_userInfo) {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ window.parent.postMessage({ actionType: "IFRAME_RED_PACKET_REPLY_CLICK", data: {
|
|
|
|
+ postId: state.postId,
|
|
|
|
+ type: params.type,
|
|
|
|
+ taskLuckdropId: state.detail.taskLuckdropId
|
|
|
|
+ }}, "*");
|
|
|
|
+}
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 点击repost facebook
|
|
* 点击repost facebook
|
|
*/
|
|
*/
|
|
@@ -803,6 +828,7 @@ function setFrontConfig() {
|
|
function init() {
|
|
function init() {
|
|
onRuntimeMsg();
|
|
onRuntimeMsg();
|
|
onPageVisbile();
|
|
onPageVisbile();
|
|
|
|
+ onWindowMessage();
|
|
setFrontConfig();
|
|
setFrontConfig();
|
|
getPostDetail({
|
|
getPostDetail({
|
|
params: {
|
|
params: {
|
|
@@ -1002,6 +1028,17 @@ function handleFinishRedPacket() {
|
|
state.done.retweet = false
|
|
state.done.retweet = false
|
|
}
|
|
}
|
|
break
|
|
break
|
|
|
|
+ case '7':
|
|
|
|
+ //join discord
|
|
|
|
+ discordAuthorizeRequired = _data[i].discordAuthorizeRequired;
|
|
|
|
+ if (_data[i].finished) {
|
|
|
|
+ state.done.join_discord = true
|
|
|
|
+ state.done.join_discord_red = false
|
|
|
|
+ } else {
|
|
|
|
+ state.done.join_discord = false;
|
|
|
|
+ state.done.join_discord_red = true
|
|
|
|
+ }
|
|
|
|
+ break
|
|
case '8':
|
|
case '8':
|
|
//repost feacebook
|
|
//repost feacebook
|
|
if (_data[i].finished) {
|
|
if (_data[i].finished) {
|
|
@@ -1011,15 +1048,15 @@ function handleFinishRedPacket() {
|
|
state.done.repost_facebook = false;
|
|
state.done.repost_facebook = false;
|
|
state.done.repost_facebook_red = true
|
|
state.done.repost_facebook_red = true
|
|
}
|
|
}
|
|
- case '7':
|
|
|
|
- //join discord
|
|
|
|
- discordAuthorizeRequired = _data[i].discordAuthorizeRequired;
|
|
|
|
|
|
+ break
|
|
|
|
+ case '9':
|
|
|
|
+ //reply
|
|
if (_data[i].finished) {
|
|
if (_data[i].finished) {
|
|
- state.done.join_discord = true
|
|
|
|
- state.done.join_discord_red = false
|
|
|
|
|
|
+ state.done.reply = true
|
|
|
|
+ state.done.reply_red = false
|
|
} else {
|
|
} else {
|
|
- state.done.join_discord = false;
|
|
|
|
- state.done.join_discord_red = true
|
|
|
|
|
|
+ state.done.reply = false;
|
|
|
|
+ state.done.reply_red = true
|
|
}
|
|
}
|
|
break
|
|
break
|
|
}
|
|
}
|
|
@@ -1198,6 +1235,18 @@ function handleErrorCode(res) {
|
|
// businessType: Report.businessType.pageView
|
|
// businessType: Report.businessType.pageView
|
|
// });
|
|
// });
|
|
// }
|
|
// }
|
|
|
|
+function onWindowMessage() {
|
|
|
|
+ window.addEventListener("message", function (event) {
|
|
|
|
+ if (event.data) {
|
|
|
|
+ switch(event.data.actionType) {
|
|
|
|
+ case 'CONTENT_RED_PACKET_REPLY_RASK_FINSH':
|
|
|
|
+ state.done.reply = true;
|
|
|
|
+ state.done.reply_red = false;
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+}
|
|
|
|
|
|
function onPageVisbile() {
|
|
function onPageVisbile() {
|
|
document.addEventListener('visibilitychange', function () {
|
|
document.addEventListener('visibilitychange', function () {
|