diff --git a/src/utils/Utils.js b/src/utils/Utils.js index 3633edc..bd9f4d9 100644 --- a/src/utils/Utils.js +++ b/src/utils/Utils.js @@ -70,7 +70,8 @@ export const constructAvatarUrl = (hash, size) => { export const sortObjectValue = (obj, direction = 'asc') => { const sortable = [] for (let key in obj) { - sortable.push([key, obj[key]])} + sortable.push([key, obj[key]]) + } if (direction === 'asc') { sortable.sort((a, b) => { @@ -101,3 +102,12 @@ export const scrollToPos = (pos = 0) => { behavior: 'smooth' }) } + +export const StripControlCodes = (str = '') => { + const regexpControl = /\p{C}/gu; + return str.replace(regexpControl, '') +} + +export const ProcessName = (str = '') => { + return StripControlCodes(str).trim() +} diff --git a/src/utils/index.js b/src/utils/index.js index 904d865..0c59a0c 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -32,7 +32,9 @@ import { setTitle, sortObjectValue, truncate, - scrollToPos + scrollToPos, + StripControlCodes, + ProcessName } from "./Utils"; export { @@ -68,5 +70,7 @@ export { CreatePlayersArray, GetMatches, LoadMoreMatchesExplore, - scrollToPos + scrollToPos, + StripControlCodes, + ProcessName } diff --git a/src/views/Match.vue b/src/views/Match.vue index 64f5e86..b95f39b 100644 --- a/src/views/Match.vue +++ b/src/views/Match.vue @@ -134,7 +134,7 @@ import { FormatFullDate, GetMatchDetails, GoToLink, - LoadImage + LoadImage, ProcessName } from "../utils"; import {useStore} from "vuex"; import {useRoute} from 'vue-router' @@ -173,6 +173,11 @@ export default { }) data.matchDetails = store.state.matchDetails + + data.matchDetails.stats.forEach(p => { + p.player.name = ProcessName(p.player.name) + }) + data.stats = data.matchDetails.stats data.score = data.matchDetails.score diff --git a/src/views/Player.vue b/src/views/Player.vue index b33e262..5bf99be 100644 --- a/src/views/Player.vue +++ b/src/views/Player.vue @@ -157,7 +157,8 @@ import { SaveLastVisitedToLocalStorage, scrollToPos, setTitle, - TrackMe + TrackMe, + ProcessName } from "../utils"; import {FOOTER_HEIGHT, NAV_HEIGHT} from "@/constants"; import MatchesTable from "@/components/MatchesTable"; @@ -189,7 +190,7 @@ export default { tie: 0, total: 0 }, - playerMeta: {} + playerMeta: {}, }) onBeforeMount(() => { @@ -249,6 +250,8 @@ export default { if (res === 200 && resData) { if (resData.steamid64 !== store.state.playerDetails.steamid64 || reset) { + resData.name = ProcessName(resData.name) + store.commit('resetPlayerDetails') store.commit({ type: 'changePlayerDetails',