diff --git a/src/localization/en.json b/src/localization/en.json index 29d36e71..b70d2ef4 100644 --- a/src/localization/en.json +++ b/src/localization/en.json @@ -276,6 +276,9 @@ }, "badge": { "earned": "Badge Earned" + }, + "vrcplus": { + "gift": "VRC+ Gift" } } }, diff --git a/src/stores/user.js b/src/stores/user.js index 94a89730..750d4765 100644 --- a/src/stores/user.js +++ b/src/stores/user.js @@ -759,7 +759,11 @@ export const useUserStore = defineStore('User', () => { * @param {string} userId */ function showUserDialog(userId) { - if (!userId || typeof userId !== 'string') { + if ( + !userId || + typeof userId !== 'string' || + userId === 'usr_00000000-0000-0000-0000-000000000000' + ) { return; } const D = userDialog.value; diff --git a/src/stores/vrcx.js b/src/stores/vrcx.js index 1bd7d6e0..68f5bb15 100644 --- a/src/stores/vrcx.js +++ b/src/stores/vrcx.js @@ -355,12 +355,25 @@ export const useVrcxStore = defineStore('Vrcx', () => { displayName: user.displayName }); } - newPath = await AppApi.AddScreenshotMetadata( - path, - JSON.stringify(metadata), - location.worldId, - advancedSettingsStore.screenshotHelperModifyFilename - ); + try { + newPath = await AppApi.AddScreenshotMetadata( + path, + JSON.stringify(metadata), + location.worldId, + advancedSettingsStore.screenshotHelperModifyFilename + ); + } catch (e) { + console.error('Failed to add screenshot metadata', e); + if (e.message.includes('UnauthorizedAccessException')) { + ElMessage({ + message: + 'Failed to add screenshot metadata, access denied. Make sure VRCX has permission to access the screenshot folder.', + type: 'error', + duration: 10000 + }); + } + return; + } if (!newPath) { console.error('Failed to add screenshot metadata', path); return; diff --git a/src/views/Tools/dialogs/ExportDiscordNamesDialog.vue b/src/views/Tools/dialogs/ExportDiscordNamesDialog.vue index a36fad96..431e2083 100644 --- a/src/views/Tools/dialogs/ExportDiscordNamesDialog.vue +++ b/src/views/Tools/dialogs/ExportDiscordNamesDialog.vue @@ -66,11 +66,12 @@ return str; }; for (const userId of friends) { - const { ref } = props.friends.get(userId); let discord = ''; - if (typeof ref === 'undefined') { + const friend = props.friends.get(userId); + if (typeof friend?.ref === 'undefined') { continue; } + const ref = friend.ref; const name = ref.displayName; if (ref.statusDescription) { const statusRegex = /(?:discord|dc|dis)(?: |=|:|ΛΈ|;)(.*)/gi.exec(ref.statusDescription);