Added more info to link analyzer

This commit is contained in:
RemixDev 2021-10-05 12:14:59 +02:00
parent 9c80d4b28c
commit 78d9b2decd
4 changed files with 49 additions and 9 deletions

View File

@ -27,6 +27,13 @@ import { isValidURL } from '@/utils/utils'
import { sendAddToQueue } from '@/utils/downloads'
import { SPOTIFY_STATUS } from '@/constants'
/* ===== Random utils ===== */
/* eslint-disable no-extend-native */
String.prototype.capitalize = function () {
return this.charAt(0).toUpperCase() + this.slice(1)
}
/* ===== App initialization ===== */
async function startApp() {
new Vue({

View File

@ -118,12 +118,24 @@
<td>{{ $t('linkAnalyzer.table.genres') }}</td>
<td>{{ data.genres.data.map(x => x.name).join('; ') }}</td>
</tr>
<tr v-if="data.readable !== undefined">
<td>{{ $t('linkAnalyzer.table.readable') }}</td>
<td>{{ $t( data.readable ? 'globals.yes' : 'globals.no').capitalize() }}</td>
</tr>
<tr v-if="countries.length">
<td>{{ $t('linkAnalyzer.table.countries') }}</td>
<td v-for="(country, i) in countries" :key="i">{{ country[0] }} - {{ country[1] }}</td>
<td>{{ $t('linkAnalyzer.table.available') }}</td>
<td>{{ $t( available_countries.includes(user.country.toLowerCase()) ? 'globals.yes' : 'globals.no').capitalize() }}</td>
</tr>
</table>
<template v-if="countries.length">
<h3>{{ $t('linkAnalyzer.countries') }}</h3>
<p v-for="(country, i) in countries" :key="i">{{ country[0] }} - {{ country[1] }}</p>
</template>
<template v-else>
<h3>{{ $t('linkAnalyzer.noCountries') }}</h3>
</template>
<div v-if="type === 'album'">
<router-link tag="button" class="btn btn-primary" name="button" :to="{ name: 'Album', params: { id } }">
{{ $t('linkAnalyzer.table.tracklist') }}
@ -135,6 +147,7 @@
<script>
/* eslint-disable camelcase */
import { mapGetters } from 'vuex'
import { socket } from '@/utils/socket'
import { convertDuration } from '@/utils/utils'
import { COUNTRIES } from '@/utils/countries'
@ -151,9 +164,15 @@ export default {
data: {},
type: '',
id: '0',
countries: []
countries: [],
available_countries: []
}
},
computed: {
...mapGetters({
user: 'getUser'
})
},
mounted() {
EventBus.$on('analyze_track', this.showTrack)
EventBus.$on('analyze_album', this.showAlbum)
@ -169,6 +188,7 @@ export default {
this.type = ''
this.link = ''
this.countries = []
this.available_countries = []
},
showTrack(data) {
this.reset()
@ -193,6 +213,7 @@ export default {
temp.push(String.fromCodePoint(...chars))
temp.push(COUNTRIES[cc])
this.countries.push(temp)
this.available_countries.push(cc.toLowerCase())
})
this.data = data

View File

@ -41,7 +41,9 @@ const en = {
albumN: '0 albums | {n} album | {n} albums',
artistN: '0 artists | {n} artist | {n} artists',
playlistN: '0 playlists | {n} playlist | {n} playlists'
}
},
yes: 'yes',
no: 'no'
},
about: {
appStatus: {
@ -166,8 +168,12 @@ const en = {
label: 'Label',
recordType: 'Record Type',
genres: 'Genres',
tracklist: 'Tracklist'
}
tracklist: 'Tracklist',
readable: 'Readable',
available: 'Available'
},
countries: 'Countries',
noCountries: 'This track is not available in any country.'
},
search: {
startSearching: 'Start searching!',

View File

@ -41,7 +41,9 @@ const it = {
albumN: '{n} album',
artistN: '0 artisti | {n} artista | {n} artisti',
playlistN: '{n} playlist'
}
},
yes: 'sì',
no: 'no'
},
about: {
appStatus: {
@ -166,8 +168,12 @@ const it = {
label: 'Etichetta',
recordType: 'Tipologia di registrazione',
genres: 'Generi',
tracklist: 'Lista tracce'
}
tracklist: 'Lista tracce',
readable: 'Leggibile',
available: 'Disponibile'
},
countries: 'Paesi',
noCountries: 'Questo brano non è disponibile in nessun paese.'
},
search: {
startSearching: 'Inizia a cercare!',