diff --git a/html/src/index.pug b/html/src/index.pug
index 2d006239..cad457aa 100644
--- a/html/src/index.pug
+++ b/html/src/index.pug
@@ -2400,17 +2400,17 @@ html
el-button(v-else style="display:block;width:100%;margin:10px 0" @click="addLocalWorldFavorite(favoriteDialog.objectId, group)") {{ group }} ({{ getLocalWorldFavoriteGroupLength(group) }})
//- dialog: invite
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="inviteDialog" :visible.sync="inviteDialog.visible" title="Invite" width="450px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="inviteDialog" :visible.sync="inviteDialog.visible" :title="$t('dialog.invite.header')" width="450px")
div(v-if="inviteDialog.visible" v-loading="inviteDialog.loading")
location(:location="inviteDialog.worldId" :link="false")
- el-select(v-model="inviteDialog.userIds" multiple clearable placeholder="Choose Friends" filterable :disabled="inviteDialog.loading" style="width:100%;margin-top:15px")
- el-option-group(v-if="API.currentUser" label="ME")
+ el-select(v-model="inviteDialog.userIds" multiple clearable :placeholder="$t('dialog.invite.select_placeholder')" filterable :disabled="inviteDialog.loading" style="width:100%;margin-top:15px")
+ el-option-group(v-if="API.currentUser" :label="$t('side_panel.me')")
el-option.x-friend-item(:label="API.currentUser.displayName" :value="API.currentUser.id" style="height:auto")
.avatar(:class="userStatusClass(API.currentUser)")
img(v-lazy="userImage(API.currentUser)")
.detail
span.name(v-text="API.currentUser.displayName")
- el-option-group(v-if="friendsGroup0.length" label="VIP")
+ el-option-group(v-if="friendsGroup0.length" :label="$t('side_panel.favorite')")
el-option.x-friend-item(v-for="friend in friendsGroup0" :key="friend.id" :label="friend.name" :value="friend.id" style="height:auto")
template(v-if="friend.ref")
.avatar(:class="userStatusClass(friend.ref)")
@@ -2418,7 +2418,7 @@ html
.detail
span.name(v-text="friend.ref.displayName" :style="{'color':friend.ref.$userColour}")
span(v-else v-text="friend.id")
- el-option-group(v-if="friendsGroup1.length" label="ONLINE")
+ el-option-group(v-if="friendsGroup1.length" :label="$t('side_panel.online')")
el-option.x-friend-item(v-for="friend in friendsGroup1" :key="friend.id" :label="friend.name" :value="friend.id" style="height:auto")
template(v-if="friend.ref")
.avatar(:class="userStatusClass(friend.ref)")
@@ -2426,7 +2426,7 @@ html
.detail
span.name(v-text="friend.ref.displayName" :style="{'color':friend.ref.$userColour}")
span(v-else v-text="friend.id")
- el-option-group(v-if="friendsGroup2.length" label="ACTIVE")
+ el-option-group(v-if="friendsGroup2.length" :label="$t('side_panel.active')")
el-option.x-friend-item(v-for="friend in friendsGroup2" :key="friend.id" :label="friend.name" :value="friend.id" style="height:auto")
template(v-if="friend.ref")
.avatar
@@ -2435,8 +2435,8 @@ html
span.name(v-text="friend.ref.displayName" :style="{'color':friend.ref.$userColour}")
span(v-else v-text="friend.id")
template(#footer)
- el-button(size="small" :disabled="inviteDialog.loading || !inviteDialog.userIds.length" @click="showSendInviteDialog()") Invite With Message
- el-button(type="primary" size="small" :disabled="inviteDialog.loading || !inviteDialog.userIds.length" @click="sendInvite()") Invite
+ el-button(size="small" :disabled="inviteDialog.loading || !inviteDialog.userIds.length" @click="showSendInviteDialog()") {{ $t('dialog.invite.invite_with_message') }}
+ el-button(type="primary" size="small" :disabled="inviteDialog.loading || !inviteDialog.userIds.length" @click="sendInvite()") {{ $t('dialog.invite.invite') }}
//- dialog: social status
el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="socialStatusDialog" :visible.sync="socialStatusDialog.visible" :title="$t('dialog.social_status.header')" width="400px")
@@ -2582,31 +2582,31 @@ html
el-button(type="primary" size="small" :disabled="launchOptionsDialog.loading" @click="updateLaunchOptions" style="margin-left:auto") {{ $t('dialog.launch_options.save') }}
//- dialog: VRChat Config JSON
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="VRChatConfigDialog" :visible.sync="VRChatConfigDialog.visible" title="VRChat Config JSON" width="420px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="VRChatConfigDialog" :visible.sync="VRChatConfigDialog.visible" :title="$t('dialog.config_json.header')" width="420px")
div(style='font-size:12px;word-break:keep-all')
- | These options are for advanced users only. #[br]
- | Leave field empty to set as default, game restart required to apply settings.
+ | {{ $t('dialog.config_json.description1') }} #[br]
+ | {{ $t('dialog.config_json.description2') }}
br
- span Cache Size:
+ span {{ $t('dialog.config_json.cache_size') }}
span(v-text="VRChatUsedCacheSize")
span /
span(v-text="VRChatTotalCacheSize")
span GB
- el-tooltip(placement="top" content="Refresh" :disabled="hideTooltips")
+ el-tooltip(placement="top" :content="$t('dialog.config_json.refresh')" :disabled="hideTooltips")
el-button(type="default" :loading="VRChatCacheSizeLoading" @click="getVRChatCacheSize" size="small" icon="el-icon-refresh" circle style="margin-left:5px")
br
- span Delete all cache
- el-button(size="small" style="margin-left:5px" icon="el-icon-delete" @click="showDeleteAllVRChatCacheConfirm()") Delete Cache
+ span {{ $t('dialog.config_json.delete_all_cache') }}
+ el-button(size="small" style="margin-left:5px" icon="el-icon-delete" @click="showDeleteAllVRChatCacheConfirm()") {{ $t('dialog.config_json.delete_cache') }}
br
- span Delete old versions from cache
- el-button(size="small" style="margin-left:5px" icon="el-icon-folder-delete" @click="sweepVRChatCache()") Sweep Cache
+ span {{ $t('dialog.config_json.delete_old_cache') }}
+ el-button(size="small" style="margin-left:5px" icon="el-icon-folder-delete" @click="sweepVRChatCache()") {{ $t('dialog.config_json.sweep_cache') }}
br
div(style="display:inline-block;margin-top:10px" v-for="(item, value) in VRChatConfigList" :key="value")
span(v-text="item.name" style="word-break:keep-all")
|:
el-input(v-model="VRChatConfigFile[value]" :placeholder="item.default" size="mini" :type="item.type?item.type:'text'" :min="item.min" :max="item.max")
div(style="display:inline-block;margin-top:10px")
- span Camera Resolution
+ span {{ $t('dialog.config_json.camera_resolution') }}
br
el-dropdown(@command="(command) => setVRChatCameraResolution(command)" size="small" trigger="click" style="margin-top:5px")
el-button(size="small")
@@ -2614,18 +2614,18 @@ html
el-dropdown-menu(#default="dropdown")
el-dropdown-item(v-for="row in VRChatResolutions" :key="row.index" v-text="row.name" :command="row")
div(style="display:inline-block;margin-top:10px;margin-left:10px")
- span Screenshot Resolution
+ span {{ $t('dialog.config_json.screenshot_resolution') }}
br
el-dropdown(@command="(command) => setVRChatScreenshotResolution(command)" size="small" trigger="click" style="margin-top:5px")
el-button(size="small")
span #[span(v-text="getVRChatScreenshotResolution()")] #[i.el-icon-arrow-down.el-icon--right]
el-dropdown-menu(#default="dropdown")
el-dropdown-item(v-for="row in VRChatResolutions" :key="row.index" v-text="row.name" :command="row")
- el-checkbox(v-model="VRChatConfigFile.disableRichPresence" style="margin-top:5px;display:block") Disable Discord Rich Presence
+ el-checkbox(v-model="VRChatConfigFile.disableRichPresence" style="margin-top:5px;display:block") {{ $t('dialog.config_json.disable_discord_presence') }}
template(#footer)
- el-button(size="small" @click="openExternalLink('https://docs.vrchat.com/docs/configuration-file')") VRChat Docs
- el-button(size="small" @click="VRChatConfigDialog.visible = false") Cancel
- el-button(type="primary" size="small" :disabled="VRChatConfigDialog.loading" @click="saveVRChatConfigFile") Save
+ el-button(size="small" @click="openExternalLink('https://docs.vrchat.com/docs/configuration-file')") {{ $t('dialog.config_json.vrchat_docs') }}
+ el-button(size="small" @click="VRChatConfigDialog.visible = false") {{ $t('dialog.config_json.cancel') }}
+ el-button(type="primary" size="small" :disabled="VRChatConfigDialog.loading" @click="saveVRChatConfigFile") {{ $t('dialog.config_json.save') }}
//- dialog: YouTube Api Dialog
el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="youTubeApiDialog" :visible.sync="youTubeApiDialog.visible" :title="$t('dialog.youtube_api.header')" width="400px")
@@ -2638,44 +2638,44 @@ html
el-button(type="primary" size="small" @click="testYouTubeApiKey" style="margin-left:auto") {{ $t('dialog.youtube_api.save') }}
//- dialog: Set World Tags
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="setWorldTagsDialog" :visible.sync="setWorldTagsDialog.visible" title="Set World Tags" width="400px")
- el-checkbox(v-model="setWorldTagsDialog.debugAllowed") Enable world debugging for others
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="setWorldTagsDialog" :visible.sync="setWorldTagsDialog.visible" :title="$t('dialog.set_world_tags.header')" width="400px")
+ el-checkbox(v-model="setWorldTagsDialog.debugAllowed") {{ $t('dialog.set_world_tags.enable_debugging') }}
div(style='font-size:12px;margin-top:10px')
- | Enter tags comma separated #[br]
+ | {{ $t('dialog.set_world_tags.seprator') }} #[br]
el-input(type="textarea" v-model="setWorldTagsDialog.tags" size="mini" show-word-limit :autosize="{ minRows:2, maxRows:5 }" placeholder="" style="margin-top:10px")
template(#footer)
div(style="display:flex")
- el-button(size="small" @click="setWorldTagsDialog.visible = false") Cancel
- el-button(type="primary" size="small" @click="saveSetWorldTagsDialog") Save
+ el-button(size="small" @click="setWorldTagsDialog.visible = false") {{ $t('dialog.set_world_tags.cancel') }}
+ el-button(type="primary" size="small" @click="saveSetWorldTagsDialog") {{ $t('dialog.set_world_tags.save') }}
//- dialog: Cache Download
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="downloadDialog" :visible.sync="downloadDialog.visible" title="Download History" width="770px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="downloadDialog" :visible.sync="downloadDialog.visible" :title="$t('dialog.download_history.header')" width="770px")
template(v-if="downloadDialog.visible")
div(v-if="downloadInProgress && downloadCurrent.ref")
span(v-text="downloadCurrent.ref.name")
el-button(type="text" icon="el-icon-close" size="mini" @click="cancelDownload(downloadCurrent.id)" style="margin-left:5px")
el-progress(:percentage="downloadProgress" :format="downloadProgressText")
template(v-if="downloadQueueTable.data.length >= 1")
- span(style="margin-top:15px") Queue:
+ span(style="margin-top:15px") {{ $t('dialog.download_history.queue') }}
data-tables(v-bind="downloadQueueTable" style="margin-top:10px")
- el-table-column(label="Name" prop="name")
- el-table-column(label="Type" prop="type" width="70")
- el-table-column(label="Cancel" width="60" align="right")
+ el-table-column(:label="$t('table.download_history.name')" prop="name")
+ el-table-column(:label="$t('table.download_history.type')" prop="type" width="70")
+ el-table-column(:label="$t('table.download_history.cancel')" width="60" align="right")
template(v-once #default="scope")
el-button(type="text" icon="el-icon-close" size="mini" @click="cancelDownload(scope.row.ref.id)")
- span(style="margin-top:15px") History:
+ span(style="margin-top:15px") {{ $t('dialog.download_history.history') }}
data-tables(v-bind="downloadHistoryTable" style="margin-top:10px")
- el-table-column(label="Time" prop="date" width="90")
+ el-table-column(:label="$t('table.download_history.time')" prop="date" width="90")
template(v-once #default="scope")
timer(:epoch="scope.row.date")
- el-table-column(label="Name" prop="name")
+ el-table-column(:label="$t('table.download_history.name')" prop="name")
template(v-once #default="scope")
span(v-text="scope.row.ref.name")
- el-table-column(label="Type" prop="type" width="70")
- el-table-column(label="Status" prop="status" width="80")
+ el-table-column(:label="$t('table.download_history.type')" prop="type" width="70")
+ el-table-column(:label="$t('table.download_history.status')" prop="status" width="80")
template(#footer)
- el-button(v-if="downloadQueue.size >= 1" size="small" @click="cancelAllDownloads") Cancel All
- el-button(size="small" @click="downloadDialog.visible = false") Close
+ el-button(v-if="downloadQueue.size >= 1" size="small" @click="cancelAllDownloads") {{ $t('dialog.download_history.cancel_all') }}
+ el-button(size="small" @click="downloadDialog.visible = false") {{ $t('dialog.download_history.close') }}
//- dialog: update VRCX
el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="VRCXUpdateDialog" :visible.sync="VRCXUpdateDialog.visible" :title="$t('dialog.vrcx_updater.header')" width="400px")
@@ -2732,10 +2732,10 @@ html
el-input(type="textarea" v-if="discordNamesDialogVisible" v-model="discordNamesContent" size="mini" rows="15" resize="none" readonly style="margin-top:15px")
//- dialog: Notification position
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="notificationPositionDialog" :visible.sync="notificationPositionDialog.visible" title="Notification Position" width="400px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="notificationPositionDialog" :visible.sync="notificationPositionDialog.visible" :title="$t('dialog.notification_position.header')" width="400px")
div(style='font-size:12px;')
- | Choose a notification position.
- .notification-position.svg(version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 300 200" style="margin-top:15px;" xml:space="preserve")
+ | {{ $t('dialog.notification_position.description') }}
+ svg.notification-position(version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 300 200" style="margin-top:15px;" xml:space="preserve")
path(style="fill:black;" d="M291.89,5A3.11,3.11,0,0,1,295,8.11V160.64a3.11,3.11,0,0,1-3.11,3.11H8.11A3.11,3.11,0,0,1,5,160.64V8.11A3.11,3.11,0,0,1,8.11,5H291.89m0-5H8.11A8.11,8.11,0,0,0,0,8.11V160.64a8.11,8.11,0,0,0,8.11,8.11H291.89a8.11,8.11,0,0,0,8.11-8.11V8.11A8.11,8.11,0,0,0,291.89,0Z")
rect(style="fill:#c4c4c4;" x="5" y="5" width="290" height="158.75" rx="2.5")
el-radio-group(v-model="notificationPosition" size="mini" @change="changeNotificationPosition")
@@ -2750,173 +2750,173 @@ html
el-radio(label="bottomRight" v-model="notificationPosition" style="margin:0;position:absolute;right:25px;top:280px;")
template(#footer)
div(style="display:flex")
- el-button(type="primary" size="small" style="margin-left:auto" @click="notificationPositionDialog.visible = false") OK
+ el-button(type="primary" size="small" style="margin-left:auto" @click="notificationPositionDialog.visible = false") {{ $t('dialog.notification_position.ok') }}
//- dialog: Noty feed filters
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="notyFeedFiltersDialog" :visible.sync="notyFeedFiltersDialog.visible" title="Notification Filters" width="550px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="notyFeedFiltersDialog" :visible.sync="notyFeedFiltersDialog.visible" :title="$t('dialog.shared_feed_filters.notification')" width="550px")
.toggle-list
.toggle-item
span.toggle-name OnPlayerJoining
el-radio-group(v-model="sharedFeedFilters.noty.OnPlayerJoining" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name OnPlayerJoined
el-radio-group(v-model="sharedFeedFilters.noty.OnPlayerJoined" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name OnPlayerLeft
el-radio-group(v-model="sharedFeedFilters.noty.OnPlayerLeft" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Online
el-radio-group(v-model="sharedFeedFilters.noty.Online" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Offline
el-radio-group(v-model="sharedFeedFilters.noty.Offline" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name GPS
el-radio-group(v-model="sharedFeedFilters.noty.GPS" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Status
el-radio-group(v-model="sharedFeedFilters.noty.Status" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Invite
el-radio-group(v-model="sharedFeedFilters.noty.invite" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Request Invite
el-radio-group(v-model="sharedFeedFilters.noty.requestInvite" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Invite Response
el-radio-group(v-model="sharedFeedFilters.noty.inviteResponse" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Request Invite Response
el-radio-group(v-model="sharedFeedFilters.noty.requestInviteResponse" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Friend Request
el-radio-group(v-model="sharedFeedFilters.noty.friendRequest" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name New Friend
el-radio-group(v-model="sharedFeedFilters.noty.Friend" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Unfriend
el-radio-group(v-model="sharedFeedFilters.noty.Unfriend" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Display Name
el-radio-group(v-model="sharedFeedFilters.noty.DisplayName" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Trust Level
el-radio-group(v-model="sharedFeedFilters.noty.TrustLevel" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Group Announcement
el-radio-group(v-model="sharedFeedFilters.noty['group.announcement']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Group Join/Leave
el-radio-group(v-model="sharedFeedFilters.noty['group.informative']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Group Invite
el-radio-group(v-model="sharedFeedFilters.noty['group.invite']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Group Join Request
el-radio-group(v-model="sharedFeedFilters.noty['group.joinRequest']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Portal Spawn
el-radio-group(v-model="sharedFeedFilters.noty.PortalSpawn" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Video Play
el-tooltip(placement="top" style="margin-left:5px" content="Requires VRCX YouTube API option enabled")
i.el-icon-warning
el-radio-group(v-model="sharedFeedFilters.noty.VideoPlay" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Events
el-radio-group(v-model="sharedFeedFilters.noty.Event" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Blocked Player Joins
el-radio-group(v-model="sharedFeedFilters.noty.BlockedOnPlayerJoined" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Blocked Player Leaves
el-radio-group(v-model="sharedFeedFilters.noty.BlockedOnPlayerLeft" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Muted Player Joins
el-radio-group(v-model="sharedFeedFilters.noty.MutedOnPlayerJoined" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Muted Player Leaves
el-radio-group(v-model="sharedFeedFilters.noty.MutedOnPlayerLeft" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
template(v-if="photonLoggingEnabled")
br
.toggle-item
@@ -2924,211 +2924,211 @@ html
.toggle-item
span.toggle-name Lobby Avatar Change
el-radio-group(v-model="sharedFeedFilters.noty.AvatarChange" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Lobby ChatBox Message
el-radio-group(v-model="sharedFeedFilters.noty.ChatBoxMessage" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Blocked
el-radio-group(v-model="sharedFeedFilters.noty.Blocked" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Unblocked
el-radio-group(v-model="sharedFeedFilters.noty.Unblocked" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Muted
el-radio-group(v-model="sharedFeedFilters.noty.Muted" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Unmuted
el-radio-group(v-model="sharedFeedFilters.noty.Unmuted" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
template(#footer)
- el-button(type="small" @click="cancelSharedFeedFilters") Cancel
- el-button(type="primary" size="small" style="margin-left:10px" @click="saveSharedFeedFilters") Save
+ el-button(type="small" @click="cancelSharedFeedFilters") {{ $t('dialog.shared_feed_filters.cancel') }}
+ el-button(type="primary" size="small" style="margin-left:10px" @click="saveSharedFeedFilters") {{ $t('dialog.shared_feed_filters.save') }}
//- dialog: wrist feed filters
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="wristFeedFiltersDialog" :visible.sync="wristFeedFiltersDialog.visible" title="Wrist Feed Filters" width="550px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="wristFeedFiltersDialog" :visible.sync="wristFeedFiltersDialog.visible" :title="$t('dialog.shared_feed_filters.wrist')" width="550px")
.toggle-list
.toggle-item
span.toggle-name Self Location
el-radio-group(v-model="sharedFeedFilters.wrist.Location" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name OnPlayerJoining
el-radio-group(v-model="sharedFeedFilters.wrist.OnPlayerJoining" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name OnPlayerJoined
el-radio-group(v-model="sharedFeedFilters.wrist.OnPlayerJoined" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name OnPlayerLeft
el-radio-group(v-model="sharedFeedFilters.wrist.OnPlayerLeft" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Online
el-radio-group(v-model="sharedFeedFilters.wrist.Online" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Offline
el-radio-group(v-model="sharedFeedFilters.wrist.Offline" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name GPS
el-radio-group(v-model="sharedFeedFilters.wrist.GPS" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Status
el-radio-group(v-model="sharedFeedFilters.wrist.Status" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Invite
el-radio-group(v-model="sharedFeedFilters.wrist.invite" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Request Invite
el-radio-group(v-model="sharedFeedFilters.wrist.requestInvite" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Invite Response
el-radio-group(v-model="sharedFeedFilters.wrist.inviteResponse" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Request Invite Response
el-radio-group(v-model="sharedFeedFilters.wrist.requestInviteResponse" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Friend Request
el-radio-group(v-model="sharedFeedFilters.wrist.friendRequest" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name New Friend
el-radio-group(v-model="sharedFeedFilters.wrist.Friend" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Unfriend
el-radio-group(v-model="sharedFeedFilters.wrist.Unfriend" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Display Name
el-radio-group(v-model="sharedFeedFilters.wrist.DisplayName" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Trust Level
el-radio-group(v-model="sharedFeedFilters.wrist.TrustLevel" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
.toggle-item
span.toggle-name Group Announcement
el-radio-group(v-model="sharedFeedFilters.wrist['group.announcement']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Group Join/Leave
el-radio-group(v-model="sharedFeedFilters.wrist['group.informative']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Group Invite
el-radio-group(v-model="sharedFeedFilters.wrist['group.invite']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Group Join Request
el-radio-group(v-model="sharedFeedFilters.wrist['group.joinRequest']" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Portal Spawn
el-radio-group(v-model="sharedFeedFilters.wrist.PortalSpawn" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Video Play
el-tooltip(placement="top" style="margin-left:5px" content="Requires VRCX YouTube API option enabled")
i.el-icon-warning
el-radio-group(v-model="sharedFeedFilters.wrist.VideoPlay" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Events
el-radio-group(v-model="sharedFeedFilters.wrist.Event" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Blocked Player Joins
el-radio-group(v-model="sharedFeedFilters.wrist.BlockedOnPlayerJoined" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Blocked Player Leaves
el-radio-group(v-model="sharedFeedFilters.wrist.BlockedOnPlayerLeft" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Muted Player Joins
el-radio-group(v-model="sharedFeedFilters.wrist.MutedOnPlayerJoined" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Muted Player Leaves
el-radio-group(v-model="sharedFeedFilters.wrist.MutedOnPlayerLeft" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
template(v-if="photonLoggingEnabled")
br
.toggle-item
@@ -3136,40 +3136,40 @@ html
.toggle-item
span.toggle-name Lobby Avatar Change
el-radio-group(v-model="sharedFeedFilters.wrist.AvatarChange" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Lobby ChatBox Message
el-radio-group(v-model="sharedFeedFilters.wrist.ChatBoxMessage" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="VIP")
- el-radio-button(label="Friends")
- el-radio-button(label="Everyone")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="VIP") {{ $t('dialog.shared_feed_filters.favorite') }}
+ el-radio-button(label="Friends") {{ $t('dialog.shared_feed_filters.friends') }}
+ el-radio-button(label="Everyone") {{ $t('dialog.shared_feed_filters.everyone') }}
.toggle-item
span.toggle-name Blocked
el-radio-group(v-model="sharedFeedFilters.wrist.Blocked" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Unblocked
el-radio-group(v-model="sharedFeedFilters.wrist.Unblocked" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Muted
el-radio-group(v-model="sharedFeedFilters.wrist.Muted" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
.toggle-item
span.toggle-name Unmuted
el-radio-group(v-model="sharedFeedFilters.wrist.Unmuted" size="mini")
- el-radio-button(label="Off")
- el-radio-button(label="On")
+ el-radio-button(label="Off") {{ $t('dialog.shared_feed_filters.off') }}
+ el-radio-button(label="On") {{ $t('dialog.shared_feed_filters.on') }}
template(#footer)
- el-button(type="small" @click="cancelSharedFeedFilters") Cancel
- el-button(type="primary" size="small" @click="saveSharedFeedFilters") Save
+ el-button(type="small" @click="cancelSharedFeedFilters") {{ $t('dialog.shared_feed_filters.cancel') }}
+ el-button(type="primary" size="small" @click="saveSharedFeedFilters") {{ $t('dialog.shared_feed_filters.save') }}
//- dialog: Edit Invite Message
el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="editInviteMessageDialog" :visible.sync="editInviteMessageDialog.visible" :title="$t('dialog.edit_invite_message.header')" width="400px")
@@ -3283,14 +3283,14 @@ html
el-button(type="primary" size="small" @click="saveEditAndSendInvite") {{ $t('dialog.edit_send_invite_message.send') }}
//- dialog: Change avatar image
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="changeAvatarImageDialog" :visible.sync="changeAvatarImageDialogVisible" title="Change Avatar Image" width="800px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="changeAvatarImageDialog" :visible.sync="changeAvatarImageDialogVisible" :title="$t('dialog.change_content_image.avatar')" width="800px")
div(v-if="changeAvatarImageDialogVisible" v-loading="changeAvatarImageDialogLoading")
input(type="file" accept="image/*" @change="onFileChangeAvatarImage" id="AvatarImageUploadButton" style="display:none")
- span Recommended image size 1200x900px (4:3)
+ span {{ $t('dialog.change_content_image.description') }}
br
el-button-group(style="padding-bottom:10px;padding-top:10px")
- el-button(type="default" size="small" @click="displayPreviousImages('Avatar', 'Change')" icon="el-icon-refresh") Refresh
- el-button(type="default" size="small" @click="uploadAvatarImage" icon="el-icon-upload2") Upload Image
+ el-button(type="default" size="small" @click="displayPreviousImages('Avatar', 'Change')" icon="el-icon-refresh") {{ $t('dialog.change_content_image.refresh') }}
+ el-button(type="default" size="small" @click="uploadAvatarImage" icon="el-icon-upload2") {{ $t('dialog.change_content_image.upload') }}
//- el-button(type="default" size="small" @click="deleteAvatarImage" icon="el-icon-delete") Delete Latest Image
br
div(style="display:inline-block" v-for="image in previousImagesTable" :key="image.version" v-if="image.file")
@@ -3298,14 +3298,14 @@ html
img.image(v-lazy="image.file.url")
//- dialog: Change world image
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="changeWorldImageDialog" :visible.sync="changeWorldImageDialogVisible" title="Change World Image" width="800px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="changeWorldImageDialog" :visible.sync="changeWorldImageDialogVisible" :title="$t('dialog.change_content_image.world')" width="800px")
div(v-if="changeWorldImageDialogVisible" v-loading="changeWorldImageDialogLoading")
input(type="file" accept="image/*" @change="onFileChangeWorldImage" id="WorldImageUploadButton" style="display:none")
- span Recommended image size 1200x900px (4:3)
+ span {{ $t('dialog.change_content_image.description') }}
br
el-button-group(style="padding-bottom:10px;padding-top:10px")
- el-button(type="default" size="small" @click="displayPreviousImages('World', 'Change')" icon="el-icon-refresh") Refresh
- el-button(type="default" size="small" @click="uploadWorldImage" icon="el-icon-upload2") Upload Image
+ el-button(type="default" size="small" @click="displayPreviousImages('World', 'Change')" icon="el-icon-refresh") {{ $t('dialog.change_content_image.refresh') }}
+ el-button(type="default" size="small" @click="uploadWorldImage" icon="el-icon-upload2") {{ $t('dialog.change_content_image.upload') }}
//- el-button(type="default" size="small" @click="deleteWorldImage" icon="el-icon-delete") Delete Latest Image
br
div(style="display:inline-block" v-for="image in previousImagesTable" :key="image.version" v-if="image.file")
@@ -3313,7 +3313,7 @@ html
img.image(v-lazy="image.file.url")
//- dialog: Display previous avatar/world images
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousImagesDialog" :visible.sync="previousImagesDialogVisible" title="Previous Images" width="800px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousImagesDialog" :visible.sync="previousImagesDialogVisible" :title="$t('dialog.previous_images.header')" width="800px")
div(v-if="previousImagesDialogVisible")
div(style="display:inline-block" v-for="image in previousImagesTable" :key="image.version" v-if="image.file")
el-popover.x-change-image-item(placement="right" width="500px" trigger="click")
@@ -3321,17 +3321,17 @@ html
img.x-link(v-lazy="image.file.url" style="width:500px;height:375px" @click="downloadAndSaveImage(image.file.url)")
//- dialog: Gallery/VRCPlusIcons
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="galleryDialog" :visible.sync="galleryDialogVisible" title="Gallery and Icons" width="100%")
- span(style="padding-bottom:10px") Recommended image size 1200x900px (4:3)
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="galleryDialog" :visible.sync="galleryDialogVisible" :title="$t('dialog.gallery_icons.header')" width="100%")
+ span(style="padding-bottom:10px") {{ $t('dialog.gallery_icons.description') }} (4:3)
el-tabs(type="card")
el-tab-pane(v-if="galleryDialogVisible" v-loading="galleryDialogGalleryLoading")
- span(slot="label") Gallery
+ span(slot="label") {{ $t('dialog.gallery_icons.gallery') }}
span(style="color:#909399;font-size:12px;margin-left:5px") {{ galleryTable.length }}/64
input(type="file" accept="image/*" @change="onFileChangeGallery" id="GalleryUploadButton" style="display:none")
el-button-group
- el-button(type="default" size="small" @click="refreshGalleryTable" icon="el-icon-refresh") Refresh
- el-button(type="default" size="small" @click="displayGalleryUpload" icon="el-icon-upload2" :disabled="!API.currentUser.$isVRCPlus") Upload
- el-button(type="default" size="small" @click="setProfilePicOverride('')" icon="el-icon-close" :disabled="!API.currentUser.profilePicOverride") Clear
+ el-button(type="default" size="small" @click="refreshGalleryTable" icon="el-icon-refresh") {{ $t('dialog.gallery_icons.refresh') }}
+ el-button(type="default" size="small" @click="displayGalleryUpload" icon="el-icon-upload2" :disabled="!API.currentUser.$isVRCPlus") {{ $t('dialog.gallery_icons.upload') }}
+ el-button(type="default" size="small" @click="setProfilePicOverride('')" icon="el-icon-close" :disabled="!API.currentUser.profilePicOverride") {{ $t('dialog.gallery_icons.clear') }}
br
.x-friend-item(v-if="image.versions && image.versions.length > 0" v-for="image in galleryTable" :key="image.id" style="display:inline-block;margin-top:10px;width:unset;cursor:default")
.vrcplus-icon(v-if="image.versions[image.versions.length - 1].file.url" @click="setProfilePicOverride(image.id)" :class="{ 'current-vrcplus-icon': compareCurrentProfilePic(image.id) }")
@@ -3340,13 +3340,13 @@ html
el-button(type="default" @click="downloadAndSaveImage(image.versions[image.versions.length - 1].file.url)" size="mini" icon="el-icon-download" circle)
el-button(type="default" @click="deleteGalleryImage(image.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
el-tab-pane(v-if="galleryDialogVisible" v-loading="galleryDialogIconsLoading")
- span(slot="label") Icons
+ span(slot="label") {{ $t('dialog.gallery_icons.icons') }}
span(style="color:#909399;font-size:12px;margin-left:5px") {{ VRCPlusIconsTable.length }}/64
input(type="file" accept="image/*" @change="onFileChangeVRCPlusIcon" id="VRCPlusIconUploadButton" style="display:none")
el-button-group
- el-button(type="default" size="small" @click="refreshVRCPlusIconsTable" icon="el-icon-refresh") Refresh
- el-button(type="default" size="small" @click="displayVRCPlusIconUpload" icon="el-icon-upload2" :disabled="!API.currentUser.$isVRCPlus") Upload
- el-button(type="default" size="small" @click="setVRCPlusIcon('')" icon="el-icon-close" :disabled="!API.currentUser.userIcon") Clear
+ el-button(type="default" size="small" @click="refreshVRCPlusIconsTable" icon="el-icon-refresh") {{ $t('dialog.gallery_icons.refresh') }}
+ el-button(type="default" size="small" @click="displayVRCPlusIconUpload" icon="el-icon-upload2" :disabled="!API.currentUser.$isVRCPlus") {{ $t('dialog.gallery_icons.upload') }}
+ el-button(type="default" size="small" @click="setVRCPlusIcon('')" icon="el-icon-close" :disabled="!API.currentUser.userIcon") {{ $t('dialog.gallery_icons.clear') }}
br
.x-friend-item(v-if="image.versions && image.versions.length > 0" v-for="image in VRCPlusIconsTable" :key="image.id" style="display:inline-block;margin-top:10px;width:unset;cursor:default")
.vrcplus-icon(v-if="image.versions[image.versions.length - 1].file.url" @click="setVRCPlusIcon(image.id)" :class="{ 'current-vrcplus-icon': compareCurrentVRCPlusIcon(image.id) }")
@@ -3356,74 +3356,74 @@ html
el-button(type="default" @click="deleteVRCPlusIcon(image.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
//- dialog Table: Previous Instances User
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousInstancesUserDialog" :visible.sync="previousInstancesUserDialog.visible" title="Previous Instances" width="800px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousInstancesUserDialog" :visible.sync="previousInstancesUserDialog.visible" :title="$t('dialog.previous_instances.header')" width="800px")
span(v-text="previousInstancesUserDialog.userRef.displayName" style="font-size:14px")
- el-input(v-model="previousInstancesUserDialogTable.filters[0].value" placeholder="Search" style="display:block;width:150px;margin-top:15px")
+ el-input(v-model="previousInstancesUserDialogTable.filters[0].value" :placeholder="$t('dialog.previous_instances.search_placeholder')" style="display:block;width:150px;margin-top:15px")
data-tables(v-if="previousInstancesUserDialog.visible" v-bind="previousInstancesUserDialogTable" v-loading="previousInstancesUserDialog.loading" style="margin-top:10px")
- el-table-column(label="Date" prop="created_at" sortable width="120")
+ el-table-column(:label="$t('table.previous_instances.date')" prop="created_at" sortable width="120")
template(v-once #default="scope")
el-tooltip(placement="left")
template(#content)
span {{ scope.row.created_at | formatDate('long') }}
span {{ scope.row.created_at | formatDate('short') }}
- el-table-column(label="World" prop="name" sortable)
+ el-table-column(:label="$t('table.previous_instances.world')" prop="name" sortable)
template(v-once #default="scope")
location(:location="scope.row.location" :hint="scope.row.worldName" :grouphint="scope.row.groupName")
- el-table-column(label="Instance Creator" prop="location" width="160")
+ el-table-column(:label="$t('table.previous_instances.instance_creator')" prop="location" width="160")
template(v-once #default="scope")
display-name(:userid="scope.row.$location.userId" :location="scope.row.$location.tag" :key="previousInstancesUserDialog.forceUpdate")
- el-table-column(label="Time" prop="time" width="90" sortable)
+ el-table-column(:label="$t('table.previous_instances.time')" prop="time" width="90" sortable)
template(v-once #default="scope")
span(v-text="scope.row.timer")
- el-table-column(label="Action" width="90" align="right")
+ el-table-column(:label="$t('table.previous_instances.action')" width="90" align="right")
template(v-once #default="scope")
el-button(type="text" icon="el-icon-info" size="mini" @click="showLaunchDialog(scope.row.location)")
el-button(type="text" icon="el-icon-tickets" size="mini" @click="showPreviousInstanceInfoDialog(scope.row.location)")
el-button(type="text" icon="el-icon-close" size="mini" @click="confirmDeleteGameLogUserInstance(scope.row)")
//- dialog Table: Previous Instances World
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousInstancesWorldDialog" :visible.sync="previousInstancesWorldDialog.visible" title="Previous Instances" width="800px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousInstancesWorldDialog" :visible.sync="previousInstancesWorldDialog.visible" :title="$t('dialog.previous_instances.header')" width="800px")
span(v-text="previousInstancesWorldDialog.worldRef.name" style="font-size:14px")
- el-input(v-model="previousInstancesWorldDialogTable.filters[0].value" placeholder="Search" style="display:block;width:150px;margin-top:15px")
+ el-input(v-model="previousInstancesWorldDialogTable.filters[0].value" :placeholder="$t('dialog.previous_instances.search_placeholder')" style="display:block;width:150px;margin-top:15px")
data-tables(v-if="previousInstancesWorldDialog.visible" v-bind="previousInstancesWorldDialogTable" v-loading="previousInstancesWorldDialog.loading" style="margin-top:10px")
- el-table-column(label="Date" prop="created_at" sortable width="120")
+ el-table-column(:label="$t('table.previous_instances.date')" prop="created_at" sortable width="120")
template(v-once #default="scope")
el-tooltip(placement="left")
template(#content)
span {{ scope.row.created_at | formatDate('long') }}
span {{ scope.row.created_at | formatDate('short') }}
- el-table-column(label="Instance Name" prop="name")
+ el-table-column(:label="$t('table.previous_instances.instance_name')" prop="name")
template(v-once #default="scope")
location-world(:locationobject="scope.row.$location" :grouphint="scope.row.groupName" :currentuserid="API.currentUser.id")
- el-table-column(label="Instance Creator" prop="location")
+ el-table-column(:label="$t('table.previous_instances.instance_creator')" prop="location")
template(v-once #default="scope")
display-name(:userid="scope.row.$location.userId" :location="scope.row.$location.tag" :key="previousInstancesWorldDialog.forceUpdate")
- el-table-column(label="Time" prop="time" width="90" sortable)
+ el-table-column(:label="$t('table.previous_instances.time')" prop="time" width="90" sortable)
template(v-once #default="scope")
span(v-text="scope.row.timer")
- el-table-column(label="Action" width="90" align="right")
+ el-table-column(:label="$t('table.previous_instances.action')" width="90" align="right")
template(v-once #default="scope")
el-button(type="text" icon="el-icon-tickets" size="mini" @click="showPreviousInstanceInfoDialog(scope.row.location)")
el-button(type="text" icon="el-icon-close" size="mini" @click="confirmDeleteGameLogWorldInstance(scope.row)")
//- dialog Table: Previous Instance Info
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousInstanceInfoDialog" :visible.sync="previousInstanceInfoDialog.visible" title="Previous Instance Info" width="800px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="previousInstanceInfoDialog" :visible.sync="previousInstanceInfoDialog.visible" :title="$t('dialog.previous_instances.info')" width="800px")
location(:location="previousInstanceInfoDialog.$location.tag" style="font-size:14px")
el-input(v-model="previousInstanceInfoDialogTable.filters[0].value" placeholder="Search" style="display:block;width:150px;margin-top:15px")
data-tables(v-if="previousInstanceInfoDialog.visible" v-bind="previousInstanceInfoDialogTable" v-loading="previousInstanceInfoDialog.loading" style="margin-top:10px")
- el-table-column(label="Date" prop="created_at" sortable width="120")
+ el-table-column(:label="$t('table.previous_instances.date')" prop="created_at" sortable width="120")
template(v-once #default="scope")
el-tooltip(placement="left")
template(#content)
span {{ scope.row.created_at | formatDate('long') }}
span {{ scope.row.created_at | formatDate('short') }}
- el-table-column(label="Display Name" prop="displayName" sortable)
+ el-table-column(:label="$t('table.previous_instances.display_name')" prop="displayName" sortable)
template(v-once #default="scope")
span.x-link(v-text="scope.row.displayName" @click="lookupUser(scope.row)")
- el-table-column(label="Time" prop="time" width="90" sortable)
+ el-table-column(:label="$t('table.previous_instances.time')" prop="time" width="90" sortable)
template(v-once #default="scope")
span(v-text="scope.row.timer")
- el-table-column(label="Count" prop="count" width="90" sortable)
+ el-table-column(:label="$t('table.previous_instances.count')" prop="count" width="90" sortable)
template(v-once #default="scope")
span(v-text="scope.row.count")
@@ -3654,14 +3654,14 @@ html
el-button(@click="avatarRemoteDatabaseProviderList.push('')" size="mini" style="margin-top:5px") {{ $t('dialog.avatar_database_provider.add_provider') }}
//- dialog: chatbox blacklist
- el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="chatboxBlacklistDialog" :visible.sync="chatboxBlacklistDialog.visible" title="Chatbox Blacklist" width="600px")
+ el-dialog.x-dialog(:before-close="beforeDialogClose" @mousedown.native="dialogMouseDown" @mouseup.native="dialogMouseUp" ref="chatboxBlacklistDialog" :visible.sync="chatboxBlacklistDialog.visible" :title="$t('dialog.chatbox_blacklist.header')" width="600px")
div(v-loading="chatboxBlacklistDialog.loading" v-if="chatboxBlacklistDialog.visible")
- h2 Keyword Blacklist
+ h2 {{ $t('dialog.chatbox_blacklist.keyword_blacklist') }}
el-input(v-for="(item, index) in chatboxBlacklist" :key="index" :value="item" v-model="chatboxBlacklist[index]" size="small" style="margin-top:5px" @change="saveChatboxBlacklist")
el-button(slot="append" icon="el-icon-delete" @click="chatboxBlacklist.splice(index, 1); saveChatboxBlacklist()")
- el-button(@click="chatboxBlacklist.push('')" size="mini" style="margin-top:5px") Add Item
+ el-button(@click="chatboxBlacklist.push('')" size="mini" style="margin-top:5px") {{ $t('dialog.chatbox_blacklist.add_item') }}
br
- h2 User Blacklist
+ h2 {{ $t('dialog.chatbox_blacklist.user_blacklist') }}
el-tag(v-for="user in chatboxUserBlacklist" type="info" disable-transitions="true" :key="user[0]" style="margin-right:5px;margin-top:5px" closable @close="deleteChatboxUserBlacklist(user[0])")
span {{user[1]}}
diff --git a/html/src/localization/strings/en.json b/html/src/localization/strings/en.json
index 229b26cd..857f46ad 100644
--- a/html/src/localization/strings/en.json
+++ b/html/src/localization/strings/en.json
@@ -39,9 +39,6 @@
"search_placeholder": "Search"
},
"player_list": {
- "capacity": "Capacoty",
- "last_updated": "Last Updated",
- "created_at": "Created At",
"photon": {
"current": "Current",
"previous": "Previous",
@@ -735,6 +732,12 @@
"vrchat_favorites": "VRChat Favorites",
"local_favorites": "Local Favorites"
},
+ "invite": {
+ "header": "傳送邀請",
+ "select_placeholder": "選擇好友",
+ "invite_with_message": "訊息邀請",
+ "invite": "邀請"
+ },
"social_status": {
"header": "Social Status",
"history": "History",
@@ -790,6 +793,23 @@
"unity_manual": "Unity Manual",
"save": "Save"
},
+ "config_json": {
+ "header": "VRChat Config JSON",
+ "description1": "These options are for advanced users only.",
+ "description2": "Leave field empty to set as default, game restart required to apply settings.",
+ "cache_size": "Cache Size:",
+ "refresh": "Refresh",
+ "delete_all_cache": "Delete all cache",
+ "delete_cache": "Delete Cache",
+ "delete_old_cache": "Delete old versions from cache",
+ "sweep_cache": "Sweep Cache",
+ "camera_resolution": "Camera Resolution",
+ "screenshot_resolution": "Screenshot Resolution",
+ "disable_discord_presence": "Disable Discord Rich Presence",
+ "vrchat_docs": "VRChat Docs",
+ "cancel": "Cancel",
+ "save": "Save"
+ },
"youtube_api": {
"header": "YouTube API",
"description": "Enter your YouTube API Key (optional)",
@@ -797,6 +817,20 @@
"guide": "Guide",
"save": "Save"
},
+ "set_world_tags": {
+ "header": "Set World Tags",
+ "enable_debugging": "Enable world debugging for others",
+ "seprator": "Enter tags comma separated",
+ "cancel": "Cancel",
+ "save": "Save"
+ },
+ "download_history": {
+ "header": "Download History",
+ "queue": "Queue:",
+ "history": "History:",
+ "cancel_all": "Cancel All",
+ "close": "Close"
+ },
"vrcx_updater": {
"header": "VRCX Updater",
"latest_version": "VRCX is up to date.",
@@ -826,6 +860,22 @@
"header": "Discord Names",
"description": "Click load missing entries in the Friends List tab to search entire friends list"
},
+ "notification_position": {
+ "header": "Notification Position",
+ "description": "Choose a notification position.",
+ "ok": "OK"
+ },
+ "shared_feed_filters": {
+ "notification": "Notification Filters",
+ "wrist": "Wrist Feed Filters",
+ "on": "On",
+ "off": "Off",
+ "favorite": "VIP",
+ "friends": "Friends",
+ "everyone": "Everyone",
+ "cancel": "Cancel",
+ "save": "Save"
+ },
"world_export": {
"header": "World Favorites Export"
},
@@ -879,6 +929,12 @@
"header": "Avatar Database Provider",
"add_provider": "Add Provider"
},
+ "chatbox_blacklist": {
+ "header": "Chatbox Blacklist",
+ "keyword_blacklist": "Keyword Blacklist",
+ "user_blacklist": "User Blacklist",
+ "add_item": "Add Item"
+ },
"invite_to_group": {
"header": "Invite To Group",
"description": "Don't spam invite users, inviting too many users to a group is known to cause a ban.",
@@ -946,6 +1002,30 @@
"cancel": "Cancel",
"send": "Send"
},
+ "gallery_icons": {
+ "header": "Gallery and Icons",
+ "description": "Recommended image size 1200x900px",
+ "gallery": "Gallery",
+ "icons": "Icons",
+ "refresh": "Refresh",
+ "upload": "Upload",
+ "clear": "Clear"
+ },
+ "change_content_image": {
+ "avatar": "Change Avatar Image",
+ "world": "Change World Image",
+ "description": "Recommended image size: 1200x900px (4:3)",
+ "refresh": "Refresh",
+ "upload": "Upload Image"
+ },
+ "previous_images": {
+ "header": "Previous Images"
+ },
+ "previous_instances": {
+ "header": "Previous Instances",
+ "info": "Previous Instance Info",
+ "search_placeholder": "Search"
+ },
"open_source": {
"header": "Open Source Software Notice",
"description": "VRCX is based on open source software. It was possible because of their contribution."
@@ -1039,6 +1119,13 @@
"no": "No.",
"status": "Status"
},
+ "download_history": {
+ "time": "Time",
+ "name": "Name",
+ "type": "Type",
+ "status": "Status",
+ "cancel": "Cancel"
+ },
"import": {
"image": "Image",
"name": "Name",
@@ -1047,6 +1134,16 @@
"note": "Note",
"skip_export": "Skip Export",
"action": "Action"
+ },
+ "previous_instances": {
+ "date": "Date",
+ "display_name": "Display Name",
+ "world": "World",
+ "instance_name": "Instance Name",
+ "instance_creator": "Instance Creator",
+ "time": "Time",
+ "count": "Count",
+ "action": "Action"
}
}
}
diff --git a/html/src/localization/strings/zh_TW.json b/html/src/localization/strings/zh_TW.json
index 1891956a..96f5de60 100644
--- a/html/src/localization/strings/zh_TW.json
+++ b/html/src/localization/strings/zh_TW.json
@@ -732,6 +732,12 @@
"vrchat_favorites": "VRChat 收藏",
"local_favorites": "本地收藏"
},
+ "invite": {
+ "header": "Invite",
+ "select_placeholder": "Choose Friends",
+ "invite_with_message": "Invite With Message",
+ "invite": "Invite"
+ },
"social_status": {
"header": "社交狀態",
"history": "過去的社交狀態",
@@ -787,6 +793,23 @@
"unity_manual": "Unity 手冊",
"save": "儲存"
},
+ "config_json": {
+ "header": "VRChat JSON 設定檔",
+ "description1": "這些選項僅適用於高級玩家。",
+ "description2": "將輸入框留白來設為預設值,設定需要重新啟動遊戲才會套用。",
+ "cache_size": "快取大小:",
+ "refresh": "重新整理",
+ "delete_all_cache": "刪除所有快取",
+ "delete_cache": "刪除快取",
+ "delete_old_cache": "從快取中刪除舊版本",
+ "sweep_cache": "清理快取",
+ "camera_resolution": "相機解析度",
+ "screenshot_resolution": "螢幕截圖解析度",
+ "disable_discord_presence": "停用 Discord 遊戲狀態",
+ "vrchat_docs": "VRChat 文檔",
+ "cancel": "取消",
+ "save": "儲存"
+ },
"youtube_api": {
"header": "YouTube API",
"description": "輸入你的 YouTube API 金鑰(選擇性)",
@@ -794,6 +817,13 @@
"guide": "教學",
"save": "儲存"
},
+ "set_world_tags": {
+ "header": "設定世界標籤",
+ "enable_debugging": "為其他人啟用世界偵錯",
+ "seprator": "使用逗號來分隔每個標籤",
+ "cancel": "取消",
+ "save": "儲存"
+ },
"vrcx_updater": {
"header": "VRCX 更新器",
"latest_version": "VRCX 已是最新版本。",
@@ -823,6 +853,22 @@
"header": "Discord 名稱",
"description": "點擊好友列表中的「讀取缺失的項目」來搜尋整個好友列表"
},
+ "notification_position": {
+ "header": "通知位置",
+ "description": "選擇通知位置",
+ "ok": "OK"
+ },
+ "shared_feed_filters": {
+ "notification": "通知篩選器",
+ "wrist": "手腕動態篩選器",
+ "on": "開啟",
+ "off": "關閉",
+ "favorite": "收藏",
+ "friends": "好友",
+ "everyone": "所有人",
+ "cancel": "取消",
+ "save": "儲存"
+ },
"world_export": {
"header": "世界收藏匯出"
},
@@ -876,6 +922,12 @@
"header": "角色資料庫提供方",
"add_provider": "新增提供方"
},
+ "chatbox_blacklist": {
+ "header": "聊天框黑名單",
+ "keyword_blacklist": "關鍵字黑名單",
+ "user_blacklist": "玩家黑名單",
+ "add_item": "新增項目"
+ },
"invite_to_group": {
"header": "邀請到群組",
"description": "請不要濫用群組邀請,邀請太多玩家加入群組會導致你被停權。",
@@ -884,6 +936,13 @@
"choose_friends_placeholder": "選擇好友",
"selected_users": "已選擇的玩家"
},
+ "download_history": {
+ "header": "下載紀錄",
+ "queue": "下載佇列:",
+ "history": "歷史紀錄:",
+ "cancel_all": "取消全部",
+ "close": "關閉"
+ },
"note_export": {
"header": "備註匯出",
"description1": "這個過程將匯出你所有的 VRCX 備忘錄並將它們匯入到 VRChat 備註中。",
@@ -943,6 +1002,30 @@
"cancel": "取消",
"send": "傳送"
},
+ "gallery_icons": {
+ "header": "相簿和圖示",
+ "description": "推薦圖片尺寸:1200 像素 x 900 像素",
+ "gallery": "相簿",
+ "icons": "圖示",
+ "refresh": "重新整理",
+ "upload": "上傳",
+ "clear": "清除"
+ },
+ "change_content_image": {
+ "avatar": "變更角色圖片",
+ "world": "變更世界圖片",
+ "description": "推薦圖片尺寸:1200 像素 x 900 像素 (4:3)",
+ "refresh": "重新整理",
+ "upload": "上傳圖片"
+ },
+ "previous_images": {
+ "header": "過去的圖片"
+ },
+ "previous_instances": {
+ "header": "過去的房間",
+ "info": "過去的房間資訊",
+ "search_placeholder": "搜尋"
+ },
"open_source": {
"header": "開放原始碼軟體授權條款",
"description": "VRCX 是基於開放原始碼軟體上開發的。沒有他們的貢獻的話,這個程式是不可能開發出來的。"
@@ -1036,6 +1119,13 @@
"no": "No.",
"status": "狀蓋"
},
+ "download_history": {
+ "time": "時間",
+ "name": "名稱",
+ "type": "種類",
+ "status": "狀態",
+ "cancel": "取消"
+ },
"import": {
"image": "圖片",
"name": "名稱",
@@ -1044,6 +1134,16 @@
"note": "備註",
"skip_export": "跳過匯出",
"action": "動作"
+ },
+ "previous_instances": {
+ "date": "日期",
+ "display_name": "顯示名稱",
+ "world": "世界",
+ "instance_name": "房間名稱",
+ "instance_creator": "房間創建者",
+ "time": "時間",
+ "count": "次數",
+ "action": "動作"
}
}
}