mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-04-19 14:53:50 +02:00
fix: instanceJoinHistory not updating correctly (#1478)
This commit is contained in:
@@ -342,42 +342,44 @@
|
|||||||
<template
|
<template
|
||||||
v-if="isAgeGatedInstancesVisible || !(room.ageGate || room.location?.includes('~ageGate'))">
|
v-if="isAgeGatedInstancesVisible || !(room.ageGate || room.location?.includes('~ageGate'))">
|
||||||
<div style="margin: 5px 0">
|
<div style="margin: 5px 0">
|
||||||
<LocationWorld
|
<div class="flex-align-center">
|
||||||
:locationobject="room.$location"
|
<LocationWorld
|
||||||
:currentuserid="currentUser.id"
|
:locationobject="room.$location"
|
||||||
:worlddialogshortname="worldDialog.$location.shortName" />
|
:currentuserid="currentUser.id"
|
||||||
<Launch :location="room.tag" style="margin-left: 5px" />
|
:worlddialogshortname="worldDialog.$location.shortName" />
|
||||||
<InviteYourself
|
<Launch :location="room.tag" style="margin-left: 5px" />
|
||||||
:location="room.$location.tag"
|
<InviteYourself
|
||||||
:shortname="room.$location.shortName"
|
:location="room.$location.tag"
|
||||||
style="margin-left: 5px" />
|
:shortname="room.$location.shortName"
|
||||||
<el-tooltip
|
style="margin-left: 5px" />
|
||||||
placement="top"
|
<el-tooltip
|
||||||
:content="t('dialog.world.instances.refresh_instance_info')">
|
placement="top"
|
||||||
<el-button
|
:content="t('dialog.world.instances.refresh_instance_info')">
|
||||||
size="small"
|
<el-button
|
||||||
:icon="Refresh"
|
size="small"
|
||||||
style="margin-left: 5px"
|
:icon="Refresh"
|
||||||
circle
|
style="margin-left: 5px"
|
||||||
@click="refreshInstancePlayerCount(room.tag)" />
|
circle
|
||||||
</el-tooltip>
|
@click="refreshInstancePlayerCount(room.tag)" />
|
||||||
<el-tooltip
|
</el-tooltip>
|
||||||
v-if="instanceJoinHistory.get(room.$location.tag)"
|
<el-tooltip
|
||||||
placement="top"
|
v-if="instanceJoinHistory.get(room.$location.tag)"
|
||||||
:content="t('dialog.previous_instances.info')">
|
placement="top"
|
||||||
<el-button
|
:content="t('dialog.previous_instances.info')">
|
||||||
size="small"
|
<el-button
|
||||||
:icon="DataLine"
|
size="small"
|
||||||
style="margin-left: 5px"
|
:icon="DataLine"
|
||||||
plain
|
style="margin-left: 5px"
|
||||||
circle
|
plain
|
||||||
@click="showPreviousInstancesInfoDialog(room.location)" />
|
circle
|
||||||
</el-tooltip>
|
@click="showPreviousInstancesInfoDialog(room.location)" />
|
||||||
<LastJoin :location="room.$location.tag" :currentlocation="lastLocation.location" />
|
</el-tooltip>
|
||||||
<InstanceInfo
|
<LastJoin :location="room.$location.tag" :currentlocation="lastLocation.location" />
|
||||||
:location="room.tag"
|
<InstanceInfo
|
||||||
:instance="room.ref"
|
:location="room.tag"
|
||||||
:friendcount="room.friendCount" />
|
:instance="room.ref"
|
||||||
|
:friendcount="room.friendCount" />
|
||||||
|
</div>
|
||||||
<div
|
<div
|
||||||
v-if="room.$location.userId || room.users.length"
|
v-if="room.$location.userId || room.users.length"
|
||||||
class="x-friend-list"
|
class="x-friend-list"
|
||||||
@@ -1400,3 +1402,10 @@
|
|||||||
D.visible = true;
|
D.visible = true;
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.flex-align-center {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
@@ -16,7 +16,8 @@ import {
|
|||||||
hasGroupPermission,
|
hasGroupPermission,
|
||||||
isRealInstance,
|
isRealInstance,
|
||||||
parseLocation,
|
parseLocation,
|
||||||
replaceBioSymbols
|
replaceBioSymbols,
|
||||||
|
replaceReactiveObject
|
||||||
} from '../shared/utils';
|
} from '../shared/utils';
|
||||||
import { instanceRequest, userRequest, worldRequest } from '../api';
|
import { instanceRequest, userRequest, worldRequest } from '../api';
|
||||||
import { database } from '../service/database';
|
import { database } from '../service/database';
|
||||||
@@ -79,7 +80,7 @@ export const useInstanceStore = defineStore('Instance', () => {
|
|||||||
|
|
||||||
const previousInstancesInfoDialogInstanceId = ref('');
|
const previousInstancesInfoDialogInstanceId = ref('');
|
||||||
|
|
||||||
let instanceJoinHistory = reactive(new Map());
|
const instanceJoinHistory = reactive(new Map());
|
||||||
|
|
||||||
const currentInstanceUsersData = ref([]);
|
const currentInstanceUsersData = ref([]);
|
||||||
const currentInstanceUsersTable = computed(() => {
|
const currentInstanceUsersTable = computed(() => {
|
||||||
@@ -116,9 +117,8 @@ export const useInstanceStore = defineStore('Instance', () => {
|
|||||||
|
|
||||||
async function getInstanceJoinHistory() {
|
async function getInstanceJoinHistory() {
|
||||||
try {
|
try {
|
||||||
instanceJoinHistory = reactive(
|
const data = await database.getInstanceJoinHistory();
|
||||||
await database.getInstanceJoinHistory()
|
replaceReactiveObject(instanceJoinHistory, data);
|
||||||
);
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Failed to get instance join history:', error);
|
console.error('Failed to get instance join history:', error);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user