修复谷歌按钮登录失效问题

This commit is contained in:
X1627315083
2025-02-03 16:07:17 +08:00
parent 2c7d953f1b
commit e1d03323d2
25 changed files with 127 additions and 72 deletions

View File

@@ -190,7 +190,10 @@ export default defineComponent({
})
onBeforeUnmount(()=>{
var existingScript = document.querySelector(`script[src="${data.scriptSrc}"]`);
if(existingScript)existingScript.remove()
if(existingScript){
existingScript.remove()
window.isAddGmail = false
}
})
return{
...toRefs(accountHomeData),

View File

@@ -48,10 +48,10 @@
></a-select>
</div>
<div class="admin_state_item">
<span>payerTotal:</span>
<span>Payment Amount:</span>
<input
v-model="payerTotal"
placeholder="Please enter payer total"
placeholder="Please enter payment amount"
@keydown.enter="gettrialList"
type="text"
style="width: 250px"
@@ -289,7 +289,7 @@ export default defineComponent({
width:150,
ellipsis:true,
},{
title: "Payer Total",
title: "Payment Amount",
align: "center",
dataIndex: "payerTotal",
key: "payerTotal",
@@ -422,6 +422,8 @@ export default defineComponent({
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1] + " " + "23:59:59"
: "";
console.log(startDate);
let data = {
order: filterData.order,
orderBy: filterData.orderBy,
@@ -493,10 +495,12 @@ export default defineComponent({
} else if (str == "week") {
thirtyDaysAgoTimestamp = currentTimestamp - 7 * 24 * 60 * 60;
}
filterData.rangePickerValue[0] = formatTime(
thirtyDaysAgoTimestamp,
"YYYY-MM-DD"
);
// filterData.rangePickerValue[0] = formatTime(
// thirtyDaysAgoTimestamp,
// "YYYY-MM-DD"
// );
filterData.rangePickerValue = [formatTime(thirtyDaysAgoTimestamp,'YYYY-MM-DD'),formatTime(currentTimestamp,'YYYY-MM-DD')]
gettrialList();
};
let filterOption = (input: any, option: any) => {

View File

@@ -257,7 +257,7 @@ export default defineComponent({
? this.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = this.rangePickerValue?.[1]
? this.rangePickerValue[1]+' '+'00:00:00'
? this.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
page: this.currentPage,

View File

@@ -186,7 +186,7 @@ export default defineComponent({
? itemAffiliateDetail.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = itemAffiliateDetail.rangePickerValue?.[1]
? itemAffiliateDetail.rangePickerValue[1]+' '+'00:00:00'
? itemAffiliateDetail.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
affiliateId:itemAffiliateDetail.itemId,

View File

@@ -88,7 +88,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -259,7 +259,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -71,7 +71,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -285,7 +285,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -97,7 +97,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -218,7 +218,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -88,7 +88,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -106,7 +106,7 @@ export default defineComponent({
? filterData.rangePickerValue[0]+' '+'00:00:00'
: "";
let endDate: any = filterData.rangePickerValue?.[1]
? filterData.rangePickerValue[1]+' '+'00:00:00'
? filterData.rangePickerValue[1]+' '+'23:59:59'
: "";
let data = {
endTime:endDate,

View File

@@ -35,7 +35,7 @@
</ul>
</div>
</div>
<div class="subitOkPreviewBtn" @click="imgClear">{{ $t('LibraryPage.Reset') }}</div>
<div class="subitOkPreviewBtn" @click="imgClear" style="margin-bottom: 0rem;">{{ $t('LibraryPage.Reset') }}</div>
<div @click="setPreviewData" class="subitOkPreviewBtn">OK</div>
</div>
<div class="designOpenrtion_imgMask_open" @click.stop="deleteBorder"></div>
@@ -746,7 +746,8 @@ export default defineComponent({
}
.subitOkPreviewBtn{
z-index: 2;
margin-bottom: calc(1rem*1.2);
// margin-bottom: calc(1rem*1.2);
margin-bottom: 4rem;
width: calc(10rem*1.2);
text-align: center;
bottom: 0;

View File

@@ -78,21 +78,19 @@ export default defineComponent({
setup() {
const store = useStore();
let designItemDetail :any = computed(()=>{
return store.state.DesignDetailModule.designItemDetail
})
const userDetail = computed(()=>{
return store.state.UserHabit.userDetail
})
const detailData = reactive({
designDetail:null,
designDetail:store.state.DesignDetailCopy.designDetail,
designDetailShow:false,
loadingShow:false,
})
provide('designDetailData',detailData)
const closeModal = ()=>{
detailData.designDetailShow = false
}
const showDesignDetailModal = (data:any,str:any)=>{
// this.moible = isMoible()
// this.designItemId = data.design.designItemId
@@ -118,9 +116,8 @@ export default defineComponent({
}
});
})
detailData.designDetail = rv
detailData.designDetailShow = true
// this.store.commit('setDesignItemDetail',rv)
store.commit('designDeatailCopy/setDesignDetail',rv)
// this.deleteShow = false
setRevocation(rv,'')

View File

@@ -39,7 +39,7 @@ export default defineComponent({
total:0,
pageSize:10,
currentPage:1,
designDetailData:inject('designDetailData') as any//父组件传过来的数据
designDetail:store.state.DesignDetailCopy.designDetail,
})
const getDetailListDom = reactive({
libraryList:null as any,

View File

@@ -39,16 +39,13 @@ export default defineComponent({
back:{},
body:{},
},
designDetailData:inject('designDetailData') as any//父组件传过来的数据
frontBackc:store.state.DesignDetailModule.designItemDetail,
designDetail:store.state.DesignDetailCopy.designDetail,
})
const getDetailListDom = reactive({
libraryList:null as any,
})
watch(detailData.designDetailData.designDetail,(newValue,oldValue)=>{
console.log(123123);
})
//设置尺寸
const itemSizeMousedown = (direction:any,event:any)=>{

View File

@@ -813,7 +813,7 @@ export default defineComponent({
if(paste.length == 0)this.sketchboardList.push(file);
this.sketchboardList = this.sketchboardList.filter((v: any) => v.status === "done");
nextTick().then(()=>{
if(this.driver__.driver){
if(this.driver__.driver && this.type_.type2 == 'Printboard'){
driverObj__.moveNext()
}
})

View File

@@ -29,8 +29,8 @@
<div class="modal_title_text_intro"></div>
</div>
<div class="productImg_content_bottom">
<div class="productImg_left">
<div class="Guide_1_32">
<div class="productImg_left Guide_1_32">
<div class="">
<div class="productImg_content_item_title productImg_content_item_title_menu">
<!-- <span>{{$t('ProductImg.MagicTools')}}</span> -->
<generalMenu class="productImg_content_item_title_menubtn" :class="{hideEvents:driver__.driver}" :dataList="productimgMenuList" @setprintModel="setproduct" :item="productimgMenu"></generalMenu>
@@ -187,8 +187,8 @@
</div>
<div v-show="item.resultType != 'Relight'" class="productImg_right_item_menu Guide_1_34" :style="[(driver__.index == 46 || driver__.index == 47 || driver__.index == 48)?'display: flex;':'']" @click.stop="setMenuShow(item)">
<i class="fi fi-rr-circle-ellipsis"></i>
<ul v-show="item.menuShow" class="Guide_1_35">
<li v-for="menuItem,index in productimgMenuList" v-show="index != 0" @click.stop="setMenu(menuItem,item)" :key="menuItem.value">{{ menuItem.label }}</li>
<ul class="Guide_1_35" v-show="item.menuShow || (driver__.index == 48 && index == 0)">
<li v-for="menuItem,index in productimgMenuList" :class="[driver__.driver?'showEvents':'']" v-show="index != 0" @click.stop="setMenu(menuItem,item)" :key="menuItem.value">{{ menuItem.label }}</li>
</ul>
</div>
</div>
@@ -432,6 +432,8 @@ export default defineComponent({
item.isChecked = !item.isChecked
if(item.isChecked){
if(driver__.value.driver){
let dom:any = document.querySelectorAll('.Guide_1_32')[0]
dom.scrollTop = dom.scrollHeight;
nextTick(()=>{
driverObj__.moveNext();
})
@@ -696,6 +698,8 @@ export default defineComponent({
generalIsMenuShow.menuShow = false
if(driver__.value.driver){
nextTick(()=>{
let dom:any = document.querySelectorAll('.Guide_1_32')[0]
dom.scrollTop = dom.scrollHeight;
driverObj__.moveNext();
})
}
@@ -912,6 +916,7 @@ methods: {
margin-bottom: 0;
}
.productImg_left{
overflow-y: auto !important;
width: 25%;
position: relative;
display: flex;

View File

@@ -26,6 +26,7 @@
// 获取回调响应的凭证数据 然后拿这个凭证给后台后台jwt进行解析获取登录信息
let code = response.credential
emit('googelLogin',code)
window.isAddGmail = false
}
let data = reactive({
// scriptSrc:'https://apis.google.com/js/platform.js',
@@ -71,7 +72,10 @@
}
onBeforeUnmount(()=>{
var existingScript = document.querySelector(`script[src="${data.scriptSrc}"]`);
if(existingScript)existingScript.remove()
if(existingScript){
existingScript.remove()
window.isAddGmail = false
}
})
createGmailLogin()
return {

View File

@@ -40,7 +40,7 @@
<input name="Stripe" type="radio" value="stripe" v-model="modeOfPayment">
<img src="../../assets/images/homePage/stripe.svg" alt="">
<!-- <span>{{ $t('upgradePlan.CreditCard') }}</span> -->
<span>Stripe</span>
<span>Stripe (Credit Card)</span>
</label>
<label class="payMethod_item" v-show="$props.type == 'credits'">
<input name="payAffirm" type="radio" value="alipay" v-model="modeOfPayment">

View File

@@ -2,7 +2,7 @@
<div class="signUp">
<div class="selectSignUp" v-show="!isSelectSignUp">
<div class="title">Our Advantages</div>
<div class="introduce"><span @click="()=>isSelectSignUp=true">LEARN MORE ALL OUR PRODUCT FEATURES</span></div>
<!-- <div class="introduce"><span @click="()=>isSelectSignUp=true">LEARN MORE ALL OUR PRODUCT FEATURES</span></div> -->
<div class="gallery_list product_list">
<div class="gallery_item" v-for="item in productList" :key="item">
<div class="product_signUp_box">
@@ -66,33 +66,34 @@
'Support monthly/annual payment options',
'Suitable for individual creators and freelance designers to use'
]
},{
title:"Education Edition",
info:"/",
detail:"Multi user management system for universities",
highlight:"",
detailList:[
'Multi user management system for universities',
'Credit limits are shared across the entire school',
'AI assisted design teaching function',
'Support sketch creativity and design inspiration teaching',
'Basic 3D design functions',
]
},{
title:"Enterprise Edition",
info:"/",
detail:"Enterprise level multi person collaboration system",
highlight:"",
detailList:[
'Enterprise level multi person collaboration system',
'Internal Credit Sharing within Enterprises',
'Brand DNA management system, customizable brand Exclusive design preferences',
'Cloud based design generation and management',
'Complete 3D design function, supporting high-definition printing output, professional plate making, and 3D rendering of renderings',
'Enterprise level data security assurance',
'Suitable for fashion design teams and brands to use',
]
},
// {
// title:"Education Edition",
// info:"/",
// detail:"Multi user management system for universities",
// highlight:"",
// detailList:[
// 'Multi user management system for universities',
// 'Credit limits are shared across the entire school',
// 'AI assisted design teaching function',
// 'Support sketch creativity and design inspiration teaching',
// 'Basic 3D design functions',
// ]
// },{
// title:"Enterprise Edition",
// info:"/",
// detail:"Enterprise level multi person collaboration system",
// highlight:"",
// detailList:[
// 'Enterprise level multi person collaboration system',
// 'Internal Credit Sharing within Enterprises',
// 'Brand DNA management system, customizable brand Exclusive design preferences',
// 'Cloud based design generation and management',
// 'Complete 3D design function, supporting high-definition printing output, professional plate making, and 3D rendering of renderings',
// 'Enterprise level data security assurance',
// 'Suitable for fashion design teams and brands to use',
// ]
// },
],
introductList:[
{
@@ -166,7 +167,8 @@
}
.gallery_list{
display: flex;
justify-content: space-between;
// justify-content: space-between;
justify-content: center;
flex-wrap: wrap;
.gallery_item{
width: calc(33.333% - 3rem);

View File

@@ -0,0 +1,40 @@
import {Module} from 'vuex'
import {RootState} from '../index'
interface DesignDetailCopy{
designDetail:any,
designPreviewData:any,
frontBack:any,
}
const DesignDetailCopy : Module<DesignDetailCopy,RootState> = {
namespaced: true,
state:{
designDetail:null,
designPreviewData:{},
frontBack:{},
},
mutations:{
setDesignDetail(state,files){
state.designDetail = files
},
setDesignColthes(state,data){
state.designDetail.clothes[data.index] = data.clothes
},
setDesignOthers(state,data){
state.designDetail.others[data.index] = data.others
},
setFrontBack(state,files){
state.frontBack = files
}
// setDesignItemOthers(state,data){
// state.designDetail.others[data.index] = data.others
// },
},
actions:{
}
}
export default DesignDetailCopy

View File

@@ -1,6 +1,7 @@
import { createStore } from 'vuex'
import UploadFilesModule from './uploadFile/uploadFile'
import DesignDetailModule from './Detail/designDetail'
import DesignDetailCopy from './Detail/designDetailCopy'
import HomeStoreModule from './homeStore/homeStore'
import UserHabit from './userHabit/userHabit'
import Workspace from './workspace/workspace'
@@ -22,6 +23,7 @@ export default createStore<RootState>({
modules: {
UploadFilesModule,
DesignDetailModule,
DesignDetailCopy,
HomeStoreModule,
UserHabit,
Workspace,

View File

@@ -103,7 +103,7 @@
</span>
</div>
</div>
<div class="right_content_img_block scroll_style Guide_1_17 active" :class="[driver__.driver?'showEvents':'']">
<div class="right_content_img_block scroll_style active">
<div class="right_content_img_item" ref="likeItemDom" designType="like" :index="0">
<div class="content_img_block content_img_GetWidth active" :style="likeStyle"
@@ -142,7 +142,7 @@
</span>
</div>
</div>
<div class="right_content_img_block scroll_style">
<div class="right_content_img_block scroll_style Guide_1_17" :class="[driver__.driver?'showEvents':'']">
<div class="right_content_img_item" ref="collItemDom" designType="dislike" :index="0">
<!-- <div class="content_img_block" v-for="(
design, index
@@ -734,7 +734,7 @@ export default defineComponent({
let text = {
}
if(this.userDetail.email == '-------------')return
if(this.store.state.UserHabit.bindEmail.isBindEmail)return
if(!isModalOne){//判断是否是试用用户
// if(!isTest && !isModalOne){//判断是否是试用用户
await new Promise(async (resolve) => {

View File

@@ -1,6 +1,6 @@
<template>
<div class="affiliateRegister">
<div class="title">AiDA 3.0 Questionnaire</div>
<div class="title">AiDA Affiliate Request Page</div>
<div class="info">Why do you want to become an affiliate user?</div>
<div class="textarea_box">
<div class="text"></div>