6 Commits
1.0.6 ... 1.0.7

Author SHA1 Message Date
0ccb76345e added new map screenshots
All checks were successful
CSGOWTF/csgowtf/pipeline/pr-master This commit looks good
CSGOWTF/csgowtf/pipeline/head This commit looks good
2022-02-22 12:22:38 +01:00
33c11dd391 version 1.0.7
All checks were successful
CSGOWTF/csgowtf/pipeline/head This commit looks good
CSGOWTF/csgowtf/pipeline/pr-master This commit looks good
2022-02-22 12:06:16 +01:00
420f4b141e new map icons
All checks were successful
CSGOWTF/csgowtf/pipeline/head This commit looks good
2022-02-22 12:05:30 +01:00
9c7834f443 set expiredate for cookies to infinity
All checks were successful
CSGOWTF/csgowtf/pipeline/head This commit looks good
2022-02-21 05:29:42 +01:00
800e45fe96 updated readme and added new badges 2022-02-21 05:23:13 +01:00
3963f6decf fixed #69
All checks were successful
CSGOWTF/csgowtf/pipeline/head This commit looks good
2022-02-13 01:33:43 +01:00
19 changed files with 12457 additions and 75 deletions

View File

@@ -1,7 +1,16 @@
# CSGOW.TF
[![](https://img.shields.io/badge/license-GPL3-blue)](https://git.harting.dev/CSGOWTF/csgowtf/src/branch/master/LICENSE) [![](https://img.shields.io/liberapay/patrons/CSGOWTF.svg?logo=liberapay)](https://liberapay.com/CSGOWTF/)
Statistics for CS:GO matchmaking matches.
[![Vue3](https://img.shields.io/badge/created%20with-Vue3-%2342b883?style=flat-square)](https://vuejs.org/)
[![Go](https://img.shields.io/badge/created%20with-Go-%2379d4fd?style=flat-square)](https://go.dev/)
[![GPL3](https://img.shields.io/badge/licence-GPL3-%23007ec6?style=flat-square)](https://git.harting.dev/CSGOWTF/csgowtf/src/branch/master/LICENSE)
[![Liberapay](https://img.shields.io/badge/donate%20on-LiberaPay-%23f6c915?style=flat-square)](https://liberapay.com/CSGOWTF/)
[![Liberapay patrons](https://img.shields.io/liberapay/patrons/csgowtf?style=flat-square)](https://liberapay.com/CSGOWTF/)
[![Website](https://img.shields.io/website?down_message=down&label=csgow.tf&style=flat-square&up_message=up&url=https%3A%2F%2Fcsgow.tf)](https://csgow.tf/)
<!--[![Typescript](https://img.shields.io/badge/created%20with-typescript-%233178c6?style=flat-square)](https://www.typescriptlang.org/)-->
### Statistics for CS:GO matchmaking matches.
---
## Backend
This is the frontend to the [csgowtfd](https://git.harting.dev/CSGOWTF/csgowtfd) backend.

View File

@@ -1,6 +1,6 @@
{
"name": "csgowtf",
"version": "1.0.6",
"version": "1.0.7",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 212 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 212 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 212 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 212 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 213 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 503 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 458 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 259 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 904 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 753 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

@@ -39,7 +39,7 @@ export default {
const handleConsent = () => {
window._paq.push(['rememberCookieConsentGiven'])
cookies.set('consent', 'given')
cookies.set('consent', 'given', Infinity)
if (tracking.value){
window._paq.push(['rememberConsentGiven'])

View File

@@ -7,7 +7,7 @@
@translated="handleTranslatedText"
/>
<div v-if="data.chat.length > 0" class="chat-history mt-2">
<table class="table table-borderless">
<table id="chat" :style="`max-width: ${data.clientWidth}px; width: ${data.clientWidth}px`" class="table table-borderless">
<tbody>
<tr v-for="(m, id) in data.chat" :key="id">
<td class="td-time">
@@ -79,23 +79,20 @@ export default {
const data = reactive({
chat: [],
translatedText: [],
originalChat: []
originalChat: [],
clientWidth: 0
})
const handleTranslatedText = async (e) => {
const res = await e
const [res, toggle] = await e
if (res === 'original' && data.originalChat.length > 0) {
data.chat = data.originalChat
return
}
if (res === 'already translated' && data.translatedText.length > 0) {
data.chat = data.translatedText
return
}
if (res !== null) {
data.translatedText = await setPlayer(sortChatHistory(res, true))
data.chat = data.translatedText
if (toggle === 'translated') {
data.translatedText = await setPlayer(sortChatHistory(res, true))
data.chat = data.translatedText
} else if (toggle === 'original') {
data.chat = data.originalChat
}
}
}
@@ -158,8 +155,21 @@ export default {
return arr
}
const sizeTable = () => {
if (document.documentElement.clientWidth <= 768) {
data.clientWidth = document.documentElement.clientWidth - 32
} else {
data.clientWidth = 700
}
}
window.onresize = () => {
sizeTable()
}
onMounted(() => {
getChatHistory()
sizeTable()
})
return {
@@ -188,69 +198,77 @@ export default {
margin-top: .5rem;
}
table {
width: 700px;
max-width: 700px;
td {
padding: .5rem;
}
td {
padding: .5rem;
}
.td-time {
width: 80px;
}
.td-time {
width: 80px;
}
.td-avatar {
width: 30px;
.avatar {
width: 20px;
height: 20px;
border-radius: 50%;
}
}
.td-avatar {
width: 30px;
.td-name {
width: 250px;
max-width: 250px;
cursor: pointer;
text-align: left;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
.tracked {
font-size: .8rem;
margin-right: .2rem;
}
.ban-shadow {
color: red;
text-shadow: 0 0 1rem orangered;
}
}
.td-icon {
.avatar {
width: 20px;
height: 20px;
border-radius: 50%;
}
}
.fa-caret-right {
font-size: 1rem;
}
.td-name {
width: 200px;
max-width: 200px;
cursor: pointer;
text-align: left;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
.tracked {
font-size: .8rem;
margin-right: .2rem;
}
.ban-shadow {
color: red;
text-shadow: 0 0 1rem orangered;
}
}
.td-icon {
width: 20px;
.fa-caret-right {
font-size: 1rem;
}
}
.td-message {
width: 400px !important;
}
@media screen and (max-width: 768px) {
.container {
justify-content: flex-start;
align-items: flex-start;
margin-left: 1rem;
}
.td-name {
width: 120px !important;
max-width: 120px !important;
}
.td-message {
width: 320px;
width: auto !important;
}
}
@media screen and (max-width: 576px) {
.container {
margin-left: 0;
}
.td-avatar {
display: none;
}
.td-name {
width: 120px;
max-width: 120px;
}
.td-message {
width: auto;
}
}
</style>

View File

@@ -33,7 +33,7 @@ export default {
required: true
}
},
setup(props) {
setup() {
const store = useStore()
const data = reactive({
@@ -67,18 +67,12 @@ export default {
toggleShow()
if (!props.translated && toggle.value === 'translated') {
response = await GetChatHistoryTranslated(store, store.state.matchDetails.match_id)
}
if (props.translated && toggle.value === 'translated')
response = 'already translated'
if (toggle.value === 'original')
response = 'original'
response = await GetChatHistoryTranslated(store, store.state.matchDetails.match_id)
if (refreshButton.classList.contains('show'))
refreshButton.classList.remove('show')
return response
return [response, toggle.value]
}
const toggleShow = () => {
@@ -108,6 +102,7 @@ export default {
.toggle-btn {
margin: 0 auto;
cursor: pointer;
width: 100%;
.fa {
display: none;