From b1a9448eb6525b02f3ea8eb91d9b1294e5849d2a Mon Sep 17 00:00:00 2001 From: cnachtigall1991 <40701475+cnachtigall1991@users.noreply.github.com> Date: Fri, 15 Oct 2021 04:55:46 +0200 Subject: [PATCH] even more refactoring :sparkles: --- src/utils/ApiRequests.js | 59 ++++++++++++++++++++++++++++++++-------- src/utils/GoTo.js | 6 ++-- src/utils/Utils.js | 43 ++--------------------------- src/utils/index.js | 8 +++--- src/views/Home.vue | 4 +-- src/views/Player.vue | 16 +++++++---- 6 files changed, 70 insertions(+), 66 deletions(-) diff --git a/src/utils/ApiRequests.js b/src/utils/ApiRequests.js index f06fc6b..4366ab8 100644 --- a/src/utils/ApiRequests.js +++ b/src/utils/ApiRequests.js @@ -1,19 +1,56 @@ import axios from "axios"; +const API_URL = process.env.VUE_APP_API_URL + + export const GetUser = async (id) => { try { - const res = await axios.get(`${process.env.VUE_APP_API_URL}/player/${id}`) + const res = await axios.get(`${API_URL}/player/${id}`) - if (res.status === 200) { - return [200, res.data] - } + if (res.status === 200) + return [res.status, res.data] } catch (err) { - if (err.response) { - if (err.response.status === 404) { - return [404, 'Player not found'] - } - } else { - console.log(err.response) - } + if (err.response.status === 404) + return [err.response.status, err.response.statusText] } } + +export const TrackMe = async (id64, authcode, sharecode) => { + let statusError = '' + let status = 202 + + const shareCodeRegex = /^CSGO(?:-?[ABCDEFGHJKLMNOPQRSTUVWXYZabcdefhijkmnopqrstuvwxyz23456789]{5}){5}$/ + const authCodeRegex = /^[ABCDEFGHJKLMNOPQRSTUVWXYZ23456789]{4}-[ABCDEFGHJKLMNOPQRSTUVWXYZ23456789]{5}-[ABCDEFGHJKLMNOPQRSTUVWXYZ23456789]{4}$/ + + if (sharecode && !shareCodeRegex.test(sharecode)) { + statusError = 'Is not a valid sharecode' + status = 418 + return [status, statusError] + } + if (authcode === '' || !authCodeRegex.test(authcode)) { + statusError = 'Is not a valid authcode' + status = 418 + return [status, statusError] + } + + try { + const res = await axios + .post(`${process.env.VUE_APP_API_URL}/player/trackme`, `id=${id64}&authcode=${authcode}&sharecode=${sharecode}`) + + if (res.status === 202) { + status = res.status + } + } catch (err) { + if (err.response.status === 401) { + statusError = 'Data does not match player' + status = err.response.status + } else if (err.response.status === 400) { + statusError = 'Userinput was wrong' + status = err.response.status + } else { + console.log(`${err.response.status}: ${err.response.statusText}`) + } + } + + return [status, statusError] +} diff --git a/src/utils/GoTo.js b/src/utils/GoTo.js index 0fc982b..cde2754 100644 --- a/src/utils/GoTo.js +++ b/src/utils/GoTo.js @@ -1,13 +1,13 @@ import router from "../router"; export const GoToMatch = (id) => { - router.push({name: 'Match', params: {match_id: id}}) + router.push({name: 'Match', params: {match_id: id}}) } export const GoToPlayer = (id) => { - router.push({name: 'Player', params: {id: id}}) + router.push({name: 'Player', params: {id: id}}) } export const GoToLink = (link) => { - router.push(`${link}`) + router.push(link) } diff --git a/src/utils/Utils.js b/src/utils/Utils.js index fcdfb0c..cf79c15 100644 --- a/src/utils/Utils.js +++ b/src/utils/Utils.js @@ -1,4 +1,6 @@ -import axios from "axios"; +export const setTitle = (title) => { + document.title = `${title} | csgoWTF` +} export const GetWinLoss = (matchResult, teamId) => { if (matchResult === teamId) { @@ -43,42 +45,3 @@ export const getPlayerArr = (stats, team) => { return arr } -export const TrackMe = async (id64, authcode, sharecode) => { - let statusError = '' - let status = 200 - - const shareCodeRegex = /^CSGO(?:-?[ABCDEFGHJKLMNOPQRSTUVWXYZabcdefhijkmnopqrstuvwxyz23456789]{5}){5}$/ - const authCodeRegex = /^[ABCDEFGHJKLMNOPQRSTUVWXYZ23456789]{4}-[ABCDEFGHJKLMNOPQRSTUVWXYZ23456789]{5}-[ABCDEFGHJKLMNOPQRSTUVWXYZ23456789]{4}$/ - - if (sharecode && !shareCodeRegex.test(sharecode)) { - statusError = 'Is not a valid sharecode' - status = 418 - return [status, statusError] - } - if (authcode === '' || !authCodeRegex.test(authcode)) { - statusError = 'Is not a valid authcode' - status = 418 - return [status, statusError] - } - - try { - const res = await axios - .post(`${process.env.VUE_APP_API_URL}/player/trackme`, `id=${id64}&authcode=${authcode}&sharecode=${sharecode}`) - - if (res.status === 202) { - status = res.status - } - } catch (err) { - if (err.response.status === 401) { - statusError = 'Data does not match player' - status = err.response.status - } else if (err.response.status === 400) { - statusError = 'Userinput was wrong' - status = err.response.status - } else { - console.log(`${err.response.status}: ${err.response.statusText}`) - } - } - - return [status, statusError] -} diff --git a/src/utils/index.js b/src/utils/index.js index badf30d..102d56a 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -3,8 +3,8 @@ import {GoToLink, GoToMatch, GoToPlayer} from "./GoTo"; import {SaveLastVisitedToLocalStorage} from "./LocalStorage"; import {GetHLTV_1} from "./HLTV"; import {DisplayRank, LoadImage} from "./Display"; -import {GetUser} from "./ApiRequests"; -import {GetWinLoss, TrackMe, truncate, checkStatEmpty, getPlayerArr} from "./Utils"; +import {GetUser, TrackMe} from "./ApiRequests"; +import {setTitle, GetWinLoss, truncate, checkStatEmpty, getPlayerArr} from "./Utils"; export { FormatDate, FormatFullDuration, FormatFullDate, FormatDuration, @@ -12,6 +12,6 @@ export { SaveLastVisitedToLocalStorage, GetHLTV_1, DisplayRank, LoadImage, - GetUser, - GetWinLoss, TrackMe, truncate, checkStatEmpty, getPlayerArr + GetUser, TrackMe, + setTitle, GetWinLoss, truncate, checkStatEmpty, getPlayerArr } diff --git a/src/views/Home.vue b/src/views/Home.vue index 07a6dd6..01a44fc 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -41,13 +41,13 @@