| 
					
				 | 
			
			
				@@ -163,9 +163,9 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <img v-if="item.simpleUserInfoVO.avatarUrl" :src="item.simpleUserInfoVO.avatarUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         @click="openTwitterDetail(item)" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <img v-else :src="require('@/assets/svg/icon-twitter.svg')" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i==0" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i==1" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i==2" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i == 0" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i == 1" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i == 2" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="luck-content"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         <div class="luck-title" v-if="item.simpleUserInfoVO.nickName">{{ item.simpleUserInfoVO.nickName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         }}</div> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -210,7 +210,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="mark-area"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="time"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         <img :src="require('@/assets/svg/icon-time.svg')" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <span>{{ moment(state.detail.endTimestamp).format('HH:mm:ss') }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <span>{{ state.count_down_time }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="win"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         <img :src="require('@/assets/svg/icon-win.svg')" /> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -247,9 +247,9 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <img v-if="item.simpleUserInfoVO.avatarUrl" :src="item.simpleUserInfoVO.avatarUrl" alt 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         @click="openTwitterDetail(item)" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <img v-else :src="require('@/assets/svg/icon-twitter.svg')" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i==0" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i==1" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i==2" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i == 0" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i == 1" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i == 2" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="luck-content"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         <div class="luck-title" v-if="item.simpleUserInfoVO.nickName">{{ item.simpleUserInfoVO.nickName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         }}</div> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -314,7 +314,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <p>Announcement Winner</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="time"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <img :src="require('@/assets/svg/icon-win-time.svg')" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <span>{{ moment(state.detail.endTimestamp).format('HH:mm:ss') || '' }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <span>{{ state.count_down_time || '' }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <get-more :style_type="2"></get-more> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="notification_switch"> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -345,9 +345,9 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <img v-if="item.simpleUserInfoVO.avatarUrl" :src="item.simpleUserInfoVO.avatarUrl" alt 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         @click="openTwitterDetail(item)" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <img v-else :src="require('@/assets/svg/icon-twitter.svg')" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i==0" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i==1" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i==2" alt/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i == 0" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i == 1" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i == 2" alt /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="luck-content"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         <div class="luck-title" v-if="item.simpleUserInfoVO.nickName">{{ item.simpleUserInfoVO.nickName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         }}</div> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -424,6 +424,7 @@ import { getSetting, putSetting } from '@/http/user' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { getFrontConfig } from "@/http/account"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { getInviteGuildInfo } from "@/http/discordApi"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import GlobalTip from '@/view/components/global-tip.vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { formItemValidateStates } from "element-plus"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var moment = require('moment'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let discordAuthorizeRequired = false; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -468,7 +469,8 @@ let state = reactive({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         reply: false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     notification_switch: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    open_timer_status: false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    open_timer_status: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    count_down_time: '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let fullName = ''; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -822,6 +824,39 @@ function getValidity() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+let stop_open_conut_down_time_type = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function openConutDownTime(end_time_ms, type = '未打开', callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let now_time_ms, now_time, end_time 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let _time, _h, _m, _s, _time_str 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let timer = setInterval(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        now_time_ms = new Date().getTime() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        _time = end_time_ms - now_time_ms 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (_time > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            now_time = moment(now_time_ms) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            end_time = moment(end_time_ms) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            _h = moment.duration(end_time.diff(now_time)).hours() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            _m = moment.duration(end_time.diff(now_time)).minutes() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            _s = moment.duration(end_time.diff(now_time)).seconds() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (_h < 10) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                _h = '0' + _h 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (_m < 10) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                _m = '0' + _m 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (_s < 10) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                _s = '0' + _s 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            _time_str = `${_h}:${_m}:${_s}` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            _time_str = `00:00:00` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (stop_open_conut_down_time_type == type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            clearInterval(timer) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        callback(_time_str) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const openFollowTabs = (arr_name) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     let array_finish = arr_name.filter((item) => { return !item.finished }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // let array_finish = state.detail.taskCondition[0].relatedUsers.filter((item) => { return item.finished == false }) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1032,8 +1067,15 @@ const showSuccessPage = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         isOldDiscordFans: reportParams.done.join_discord 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const showNotOpenPage = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     state.status = 'not-open' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    openConutDownTime(state.detail.endTimestamp, '未打开', (time_str) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        state.count_down_time = time_str 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (time_str == '00:00:00') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            stop_open_conut_down_time_type = '未打开' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     Report.reportLog({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pageSource: Report.pageSource.pending_page, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         businessType: Report.businessType.pageView, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1363,23 +1405,16 @@ const open_timer = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     open_timer_flag = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let new_time 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let open_time 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let timer = setInterval(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        open_time = state.detail.endTimestamp || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (!open_time || state.close_status == '没有抽中') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        new_time = new Date().getTime() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 到时间了 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (new_time >= open_time) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            // 调用detail 查看结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    openConutDownTime(state.detail.endTimestamp,'等待结果', (time_str) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        state.count_down_time = time_str 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (time_str == '00:00:00') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             init() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (state.open_timer_status == true) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                clearInterval(timer) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                stop_open_conut_down_time_type = '等待结果' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const showLoadResult = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     state.status = 'close' 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2089,6 +2124,7 @@ body { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     margin-left: 3px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     left: 100% !important; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 .content { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     width: 375px; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2386,13 +2422,15 @@ body { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 border-bottom: 1px solid #F2F2F2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                .win{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .win { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    left:28px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    left: 28px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     bottom: 7px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     width: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     height: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 img:first-child { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     border-radius: 50%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 |