mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-04-25 01:33:51 +02:00
Fix invite response, small fixes
This commit is contained in:
@@ -568,8 +568,8 @@
|
||||
</el-tabs>
|
||||
</div>
|
||||
<template v-if="avatarDialog.visible">
|
||||
<SetAvatarTagsDialog :set-avatar-tags-dialog="setAvatarTagsDialog" />
|
||||
<SetAvatarStylesDialog :set-avatar-styles-dialog="setAvatarStylesDialog" />
|
||||
<SetAvatarTagsDialog v-model:setAvatarTagsDialog="setAvatarTagsDialog" />
|
||||
<SetAvatarStylesDialog v-model:setAvatarStylesDialog="setAvatarStylesDialog" />
|
||||
<ChangeAvatarImageDialog
|
||||
v-model:changeAvatarImageDialogVisible="changeAvatarImageDialogVisible"
|
||||
v-model:previousImageUrl="previousImageUrl" />
|
||||
@@ -649,7 +649,7 @@
|
||||
const treeData = ref([]);
|
||||
const timeSpent = ref(0);
|
||||
const memo = ref('');
|
||||
const setAvatarTagsDialog = reactive({
|
||||
const setAvatarTagsDialog = ref({
|
||||
visible: false,
|
||||
loading: false,
|
||||
ownAvatars: [],
|
||||
@@ -663,7 +663,7 @@
|
||||
contentAdult: false,
|
||||
contentSex: false
|
||||
});
|
||||
const setAvatarStylesDialog = reactive({
|
||||
const setAvatarStylesDialog = ref({
|
||||
visible: false,
|
||||
loading: false,
|
||||
avatarId: '',
|
||||
@@ -1063,7 +1063,7 @@
|
||||
}
|
||||
|
||||
function showSetAvatarTagsDialog(avatarId) {
|
||||
const D = setAvatarTagsDialog;
|
||||
const D = setAvatarTagsDialog.value;
|
||||
D.visible = true;
|
||||
D.loading = true;
|
||||
D.ownAvatars = [];
|
||||
@@ -1130,7 +1130,7 @@
|
||||
}
|
||||
|
||||
function showSetAvatarStylesDialog() {
|
||||
const D = setAvatarStylesDialog;
|
||||
const D = setAvatarStylesDialog.value;
|
||||
D.visible = true;
|
||||
D.loading = true;
|
||||
D.avatarId = avatarDialog.value.id;
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
<el-dialog
|
||||
ref="setAvatarStylesDialog"
|
||||
class="x-dialog"
|
||||
v-model="setAvatarStylesDialog.visible"
|
||||
:model-value="setAvatarStylesDialog.visible"
|
||||
@close="closeSetAvatarStylesDialog"
|
||||
:title="t('dialog.set_avatar_styles.header')"
|
||||
width="400px"
|
||||
append-to-body>
|
||||
@@ -50,10 +51,8 @@
|
||||
style="margin-top: 10px"></el-input>
|
||||
</template>
|
||||
<template #footer>
|
||||
<el-button size="small" @click="setAvatarStylesDialog.visible = false">{{
|
||||
t('dialog.set_avatar_styles.cancel')
|
||||
}}</el-button>
|
||||
<el-button type="primary" size="small" @click="saveSetAvatarStylesDialog">{{
|
||||
<el-button @click="closeSetAvatarStylesDialog">{{ t('dialog.set_avatar_styles.cancel') }}</el-button>
|
||||
<el-button type="primary" @click="saveSetAvatarStylesDialog">{{
|
||||
t('dialog.set_avatar_styles.save')
|
||||
}}</el-button>
|
||||
</template>
|
||||
@@ -61,12 +60,13 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { watch } from 'vue';
|
||||
import { watch, defineEmits } from 'vue';
|
||||
|
||||
import { useI18n } from 'vue-i18n';
|
||||
import { arraysMatch } from '../../../shared/utils';
|
||||
import { avatarRequest } from '../../../api';
|
||||
import { useAvatarStore } from '../../../stores';
|
||||
import { ElMessage } from 'element-plus';
|
||||
|
||||
const { t } = useI18n();
|
||||
const { applyAvatar } = useAvatarStore();
|
||||
@@ -78,6 +78,8 @@
|
||||
}
|
||||
});
|
||||
|
||||
const emit = defineEmits(['update:setAvatarStylesDialog']);
|
||||
|
||||
watch(
|
||||
() => props.setAvatarStylesDialog.visible,
|
||||
(newVal) => {
|
||||
@@ -99,6 +101,13 @@
|
||||
props.setAvatarStylesDialog.availableAvatarStylesMap = stylesMap;
|
||||
}
|
||||
|
||||
function closeSetAvatarStylesDialog() {
|
||||
emit('update:setAvatarStylesDialog', {
|
||||
...props.setAvatarStylesDialog,
|
||||
visible: false
|
||||
});
|
||||
}
|
||||
|
||||
function saveSetAvatarStylesDialog() {
|
||||
const primaryStyleId =
|
||||
props.setAvatarStylesDialog.availableAvatarStylesMap.get(props.setAvatarStylesDialog.primaryStyle) || '';
|
||||
@@ -127,7 +136,7 @@
|
||||
props.setAvatarStylesDialog.initialSecondaryStyle === props.setAvatarStylesDialog.secondaryStyle &&
|
||||
arraysMatch(props.setAvatarStylesDialog.initialTags, tags)
|
||||
) {
|
||||
props.setAvatarStylesDialog.visible = false;
|
||||
closeSetAvatarStylesDialog();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -141,11 +150,11 @@
|
||||
.saveAvatar(params)
|
||||
.then((args) => {
|
||||
applyAvatar(args.json);
|
||||
$message.success(t('dialog.set_avatar_styles.save_success'));
|
||||
props.setAvatarStylesDialog.visible = false;
|
||||
ElMessage({ message: t('dialog.set_avatar_styles.save_success'), type: 'success' });
|
||||
closeSetAvatarStylesDialog();
|
||||
})
|
||||
.catch((error) => {
|
||||
$message.error(t('dialog.set_avatar_styles.save_failed'));
|
||||
ElMessage({ message: t('dialog.set_avatar_styles.save_failed'), type: 'error' });
|
||||
console.error('Error saving avatar styles:', error);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
<el-dialog
|
||||
ref="setAvatarTagsDialog"
|
||||
class="x-dialog"
|
||||
v-model="setAvatarTagsDialog.visible"
|
||||
:model-value="setAvatarTagsDialog.visible"
|
||||
@close="closeSetAvatarTagsDialog"
|
||||
:title="t('dialog.set_avatar_tags.header')"
|
||||
width="770px"
|
||||
append-to-body>
|
||||
@@ -82,10 +83,8 @@
|
||||
</div>
|
||||
</template>
|
||||
<template #footer>
|
||||
<el-button size="small" @click="setAvatarTagsDialog.visible = false">{{
|
||||
t('dialog.set_avatar_tags.cancel')
|
||||
}}</el-button>
|
||||
<el-button type="primary" size="small" @click="saveSetAvatarTagsDialog">{{
|
||||
<el-button @click="closeSetAvatarTagsDialog">{{ t('dialog.set_avatar_tags.cancel') }}</el-button>
|
||||
<el-button type="primary" @click="saveSetAvatarTagsDialog">{{
|
||||
t('dialog.set_avatar_tags.save')
|
||||
}}</el-button>
|
||||
</template>
|
||||
@@ -96,7 +95,7 @@
|
||||
import { Loading } from '@element-plus/icons-vue';
|
||||
import { ElMessage } from 'element-plus';
|
||||
|
||||
import { watch } from 'vue';
|
||||
import { watch, defineEmits } from 'vue';
|
||||
import { useI18n } from 'vue-i18n';
|
||||
import { avatarRequest } from '../../../api';
|
||||
import { useAvatarStore } from '../../../stores';
|
||||
@@ -111,6 +110,8 @@
|
||||
}
|
||||
});
|
||||
|
||||
const emit = defineEmits(['update:setAvatarTagsDialog']);
|
||||
|
||||
watch(
|
||||
() => props.setAvatarTagsDialog.visible,
|
||||
(newVal) => {
|
||||
@@ -122,6 +123,13 @@
|
||||
}
|
||||
);
|
||||
|
||||
function closeSetAvatarTagsDialog() {
|
||||
emit('update:setAvatarTagsDialog', {
|
||||
...props.setAvatarTagsDialog,
|
||||
visible: false
|
||||
});
|
||||
}
|
||||
|
||||
function updateSelectedAvatarTags() {
|
||||
const D = props.setAvatarTagsDialog;
|
||||
if (D.contentHorror) {
|
||||
@@ -186,7 +194,6 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
// props.setAvatarTagsDialog.forceUpdate++;
|
||||
}
|
||||
|
||||
function setAvatarTagsSelectToggle() {
|
||||
|
||||
@@ -726,7 +726,7 @@
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="Posts" :label="t('dialog.group.posts.header')" lazy>
|
||||
<template v-if="groupDialog.visible">
|
||||
<span style="margin-right: 10px"
|
||||
<span style="margin-right: 10px; vertical-align: top"
|
||||
>{{ t('dialog.group.posts.posts_count') }} {{ groupDialog.posts.length }}</span
|
||||
>
|
||||
<el-input
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
class="x-dialog"
|
||||
v-model="inviteDialog.visible"
|
||||
:model-value="inviteDialog.visible"
|
||||
:title="t('dialog.invite.header')"
|
||||
width="500px"
|
||||
append-to-body>
|
||||
@@ -163,8 +163,8 @@
|
||||
>
|
||||
</template>
|
||||
<SendInviteDialog
|
||||
:send-invite-dialog-visible="sendInviteDialogVisible"
|
||||
:send-invite-dialog="sendInviteDialog"
|
||||
v-model:sendInviteDialogVisible="sendInviteDialogVisible"
|
||||
v-model:sendInviteDialog="sendInviteDialog"
|
||||
:invite-dialog="inviteDialog"
|
||||
@closeInviteDialog="closeInviteDialog" />
|
||||
</el-dialog>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
class="x-dialog"
|
||||
:model-value="visible"
|
||||
:model-value="isSendInviteConfirmDialogVisible"
|
||||
:title="t('dialog.invite_message.header')"
|
||||
width="400px"
|
||||
append-to-body
|
||||
@@ -11,10 +11,10 @@
|
||||
</div>
|
||||
|
||||
<template #footer>
|
||||
<el-button type="small" @click="cancelInviteConfirm">
|
||||
<el-button type="default" @click="cancelInviteConfirm">
|
||||
{{ t('dialog.invite_message.cancel') }}
|
||||
</el-button>
|
||||
<el-button type="primary" size="small" @click="sendInviteConfirm">
|
||||
<el-button type="primary" @click="sendInviteConfirm">
|
||||
{{ t('dialog.invite_message.confirm') }}
|
||||
</el-button>
|
||||
</template>
|
||||
@@ -36,7 +36,7 @@
|
||||
const { currentUser } = storeToRefs(useUserStore());
|
||||
|
||||
const props = defineProps({
|
||||
visible: {
|
||||
isSendInviteConfirmDialogVisible: {
|
||||
type: Boolean,
|
||||
required: true
|
||||
},
|
||||
@@ -51,10 +51,10 @@
|
||||
}
|
||||
});
|
||||
|
||||
const emit = defineEmits(['update:model-value', 'closeInviteDialog']);
|
||||
const emit = defineEmits(['update:isSendInviteConfirmDialogVisible', 'closeInviteDialog']);
|
||||
|
||||
function cancelInviteConfirm() {
|
||||
emit('update:model-value', false);
|
||||
emit('update:isSendInviteConfirmDialogVisible', false);
|
||||
}
|
||||
|
||||
function sendInviteConfirm() {
|
||||
@@ -110,7 +110,8 @@
|
||||
}
|
||||
};
|
||||
inviteLoop();
|
||||
} else if (messageType === 'invite') {
|
||||
} else if (messageType === 'message') {
|
||||
// invite message
|
||||
D.params.messageSlot = slot;
|
||||
if (uploadImage.value) {
|
||||
notificationRequest
|
||||
|
||||
@@ -75,13 +75,15 @@
|
||||
</el-button>
|
||||
</template>
|
||||
<SendInviteConfirmDialog
|
||||
v-model="isSendInviteConfirmDialogVisible"
|
||||
:send-invite-dialog="sendInviteDialog"
|
||||
v-model:isSendInviteConfirmDialogVisible="isSendInviteConfirmDialogVisible"
|
||||
:sendInviteDialog="sendInviteDialog"
|
||||
@update:sendInviteDialog="emit('update:sendInviteDialog', $event)"
|
||||
:invite-dialog="inviteDialog"
|
||||
@closeInviteDialog="closeInviteDialog" />
|
||||
<EditAndSendInviteDialog
|
||||
:edit-and-send-invite-dialog="editAndSendInviteDialog"
|
||||
:send-invite-dialog="sendInviteDialog"
|
||||
:sendInviteDialog="sendInviteDialog"
|
||||
@update:sendInviteDialog="emit('update:sendInviteDialog', $event)"
|
||||
:invite-dialog="inviteDialog"
|
||||
@closeInviteDialog="closeInviteDialog" />
|
||||
</el-dialog>
|
||||
@@ -120,7 +122,7 @@
|
||||
}
|
||||
});
|
||||
|
||||
const emit = defineEmits(['closeInviteDialog', 'update:sendInviteDialogVisible']);
|
||||
const emit = defineEmits(['closeInviteDialog', 'update:sendInviteDialogVisible', 'update:sendInviteDialog']);
|
||||
|
||||
const isSendInviteConfirmDialogVisible = ref(false);
|
||||
|
||||
@@ -130,12 +132,12 @@
|
||||
});
|
||||
|
||||
function showSendInviteConfirmDialog(row) {
|
||||
props.sendInviteDialog.messageSlot = row;
|
||||
emit('update:sendInviteDialog', { ...props.sendInviteDialog, messageSlot: row });
|
||||
isSendInviteConfirmDialogVisible.value = true;
|
||||
}
|
||||
|
||||
function showEditAndSendInviteDialog(row) {
|
||||
props.sendInviteDialog.messageSlot = row;
|
||||
emit('update:sendInviteDialog', { ...props.sendInviteDialog, messageSlot: row });
|
||||
editAndSendInviteDialog.value = {
|
||||
newMessage: row.message,
|
||||
visible: true
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
<el-dialog
|
||||
class="x-dialog"
|
||||
:model-value="sendInviteRequestDialogVisible"
|
||||
@update:model-value="$emit('update:sendInviteRequestDialogVisible', $event)"
|
||||
:title="t('dialog.invite_request_message.header')"
|
||||
width="800px"
|
||||
append-to-body
|
||||
@@ -49,13 +48,15 @@
|
||||
}}</el-button>
|
||||
</template>
|
||||
<SendInviteConfirmDialog
|
||||
v-model="isSendInviteConfirmDialogVisible"
|
||||
:send-invite-dialog="sendInviteDialog"
|
||||
v-model:isSendInviteConfirmDialogVisible="isSendInviteConfirmDialogVisible"
|
||||
:sendInviteDialog="sendInviteDialog"
|
||||
@update:sendInviteDialog="emit('update:sendInviteDialog', $event)"
|
||||
:invite-dialog="inviteDialog"
|
||||
@closeInviteDialog="closeInviteDialog" />
|
||||
<EditAndSendInviteDialog
|
||||
:edit-and-send-invite-dialog="editAndSendInviteDialog"
|
||||
:send-invite-dialog="sendInviteDialog"
|
||||
:sendInviteDialog="sendInviteDialog"
|
||||
@update:sendInviteDialog="emit('update:sendInviteDialog', $event)"
|
||||
:invite-dialog="inviteDialog"
|
||||
@closeInviteDialog="closeInviteDialog" />
|
||||
</el-dialog>
|
||||
@@ -96,7 +97,7 @@
|
||||
}
|
||||
});
|
||||
|
||||
const emit = defineEmits(['update:sendInviteRequestDialogVisible', 'closeInviteDialog']);
|
||||
const emit = defineEmits(['update:sendInviteRequestDialogVisible', 'closeInviteDialog', 'update:sendInviteDialog']);
|
||||
|
||||
const isSendInviteConfirmDialogVisible = ref(false);
|
||||
|
||||
@@ -106,12 +107,12 @@
|
||||
});
|
||||
|
||||
function showSendInviteConfirmDialog(row) {
|
||||
props.sendInviteDialog.messageSlot = row;
|
||||
emit('update:sendInviteDialog', { ...props.sendInviteDialog, messageSlot: row });
|
||||
isSendInviteConfirmDialogVisible.value = true;
|
||||
}
|
||||
|
||||
function showEditAndSendInviteDialog(row) {
|
||||
props.sendInviteDialog.messageSlot = row;
|
||||
emit('update:sendInviteDialog', { ...props.sendInviteDialog, messageSlot: row });
|
||||
editAndSendInviteDialog.value = {
|
||||
newMessage: row.message,
|
||||
visible: true
|
||||
|
||||
@@ -1727,12 +1727,12 @@
|
||||
</el-tabs>
|
||||
</div>
|
||||
<SendInviteDialog
|
||||
:send-invite-dialog-visible="sendInviteDialogVisible"
|
||||
:send-invite-dialog="sendInviteDialog"
|
||||
v-model:sendInviteDialogVisible="sendInviteDialogVisible"
|
||||
v-model:sendInviteDialog="sendInviteDialog"
|
||||
@closeInviteDialog="closeInviteDialog" />
|
||||
<SendInviteRequestDialog
|
||||
:send-invite-request-dialog-visible="sendInviteRequestDialogVisible"
|
||||
:send-invite-dialog="sendInviteDialog"
|
||||
v-model:sendInviteRequestDialogVisible="sendInviteRequestDialogVisible"
|
||||
v-model:sendInviteDialog="sendInviteDialog"
|
||||
@closeInviteDialog="closeInviteDialog" />
|
||||
<template v-if="userDialog.visible">
|
||||
<PreviousInstancesUserDialog v-model:previous-instances-user-dialog="previousInstancesUserDialog" />
|
||||
|
||||
Reference in New Issue
Block a user