mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-05-05 06:16:05 +02:00
113 lines
6.9 KiB
Plaintext
113 lines
6.9 KiB
Plaintext
mixin gameLogTab
|
|
.x-container(v-show='$refs.menu && $refs.menu.activeIndex === \'gameLog\'')
|
|
data-tables(v-bind='gameLogTable' v-loading='gameLogTable.loading')
|
|
template(#tool)
|
|
div(style='margin: 0 0 10px; display: flex; align-items: center')
|
|
div(style='flex: none; margin-right: 10px; display: flex; align-items: center')
|
|
el-tooltip(
|
|
placement='bottom'
|
|
:content='$t("view.feed.favorites_only_tooltip")'
|
|
:disabled='hideTooltips')
|
|
el-switch(v-model='gameLogTable.vip' @change='gameLogTableLookup' active-color='#13ce66')
|
|
el-select(
|
|
v-model='gameLogTable.filter'
|
|
@change='gameLogTableLookup'
|
|
multiple
|
|
clearable
|
|
style='flex: 1'
|
|
:placeholder='$t("view.game_log.filter_placeholder")')
|
|
el-option(
|
|
v-for='type in ["Location", "OnPlayerJoined", "OnPlayerLeft", "PortalSpawn", "VideoPlay", "Event", "External", "StringLoad", "ImageLoad"]'
|
|
:key='type'
|
|
:label='$t("view.game_log.filters." + type)'
|
|
:value='type')
|
|
el-input(
|
|
v-model='gameLogTable.search'
|
|
:placeholder='$t("view.game_log.search_placeholder")'
|
|
@keyup.native.13='gameLogTableLookup'
|
|
@change='gameLogTableLookup'
|
|
clearable
|
|
style='flex: none; width: 150px; margin: 0 10px')
|
|
el-table-column(:label='$t("table.gameLog.date")' prop='created_at' sortable='custom' width='120')
|
|
template(#default='scope')
|
|
el-tooltip(placement='right')
|
|
template(#content)
|
|
span {{ scope.row.created_at | formatDate('long') }}
|
|
span {{ scope.row.created_at | formatDate('short') }}
|
|
el-table-column(:label='$t("table.gameLog.type")' prop='type' width='120')
|
|
template(#default='scope')
|
|
span.x-link(
|
|
v-if='scope.row.location && scope.row.type !== "Location"'
|
|
v-text='$t("view.game_log.filters." + scope.row.type)'
|
|
@click='showWorldDialog(scope.row.location)')
|
|
span(v-else v-text='$t("view.game_log.filters." + scope.row.type)')
|
|
el-table-column(:label='$t("table.gameLog.icon")' prop='isFriend' width='70' align='center')
|
|
template(#default='scope')
|
|
template(v-if='gameLogIsFriend(scope.row)')
|
|
el-tooltip(v-if='gameLogIsFavorite(scope.row)' placement='top' content='Favorite')
|
|
span ⭐
|
|
el-tooltip(v-else placement='top' content='Friend')
|
|
span 💚
|
|
el-table-column(:label='$t("table.gameLog.user")' prop='displayName' width='180')
|
|
template(#default='scope')
|
|
span.x-link(
|
|
v-if='scope.row.displayName'
|
|
v-text='scope.row.displayName'
|
|
@click='lookupUser(scope.row)'
|
|
style='padding-right: 10px')
|
|
el-table-column(:label='$t("table.gameLog.detail")' prop='data')
|
|
template(#default='scope')
|
|
location(
|
|
v-if='scope.row.type === "Location"'
|
|
:location='scope.row.location'
|
|
:hint='scope.row.worldName'
|
|
:grouphint='scope.row.groupName')
|
|
location(
|
|
v-else-if='scope.row.type === "PortalSpawn"'
|
|
:location='scope.row.instanceId'
|
|
:hint='scope.row.worldName'
|
|
:grouphint='scope.row.groupName')
|
|
template(v-else-if='scope.row.type === "Event"')
|
|
span(v-text='scope.row.data')
|
|
template(v-else-if='scope.row.type === "External"')
|
|
span(v-text='scope.row.message')
|
|
template(v-else-if='scope.row.type === "VideoPlay"')
|
|
span(v-if='scope.row.videoId' style='margin-right: 5px') {{ scope.row.videoId }}:
|
|
span(v-if='scope.row.videoId === "LSMedia"' v-text='scope.row.videoName')
|
|
span.x-link(
|
|
v-else-if='scope.row.videoName'
|
|
@click='openExternalLink(scope.row.videoUrl)'
|
|
v-text='scope.row.videoName')
|
|
span.x-link(v-else @click='openExternalLink(scope.row.videoUrl)' v-text='scope.row.videoUrl')
|
|
template(v-else-if='scope.row.type === "ImageLoad"')
|
|
span.x-link(@click='openExternalLink(scope.row.resourceUrl)' v-text='scope.row.resourceUrl')
|
|
template(v-else-if='scope.row.type === "StringLoad"')
|
|
span.x-link(@click='openExternalLink(scope.row.resourceUrl)' v-text='scope.row.resourceUrl')
|
|
template(
|
|
v-else-if='scope.row.type === "Notification" || scope.row.type === "OnPlayerJoined" || scope.row.type === "OnPlayerLeft"')
|
|
span.x-link(v-else v-text='scope.row.data')
|
|
el-table-column(:label='$t("table.gameLog.action")' width='80' align='right')
|
|
template(#default='scope')
|
|
template(
|
|
v-if='scope.row.type !== "OnPlayerJoined" && scope.row.type !== "OnPlayerLeft" && scope.row.type !== "Location" && scope.row.type !== "PortalSpawn"')
|
|
el-button(
|
|
v-if='shiftHeld'
|
|
style='color: #f56c6c'
|
|
type='text'
|
|
icon='el-icon-close'
|
|
size='mini'
|
|
@click='deleteGameLogEntry(scope.row)')
|
|
el-button(
|
|
v-else
|
|
type='text'
|
|
icon='el-icon-delete'
|
|
size='mini'
|
|
@click='deleteGameLogEntryPrompt(scope.row)')
|
|
el-tooltip(placement='top' content='Open Instance Info' :disabled='hideTooltips')
|
|
el-button(
|
|
v-if='scope.row.type === "Location"'
|
|
type='text'
|
|
icon='el-icon-tickets'
|
|
size='mini'
|
|
@click='showPreviousInstanceInfoDialog(scope.row.location)')
|