[Feature] Add trending pages for music, gaming & movies (#1483)

* Add other trending pages

* Add better formatting

* fixed trending cache

* Fix Trending page title

Changes in PR #1321 make this necessary

* update locale files

* add accessibility improvements

accessibility improvements

* focus tab on reload

Co-authored-by: Preston <freetubeapp@protonmail.com>
This commit is contained in:
ChunkyProgrammer 2021-08-21 17:08:38 -04:00 committed by GitHub
parent 703a8da427
commit 011ee17711
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
62 changed files with 280 additions and 67 deletions

View File

@ -34,7 +34,7 @@
fixed-width fixed-width
/> />
<p class="navLabel"> <p class="navLabel">
{{ $t("Trending") }} {{ $t("Trending.Trending") }}
</p> </p>
</div> </div>
<div <div

View File

@ -63,7 +63,7 @@ const router = new Router({
{ {
path: '/trending', path: '/trending',
meta: { meta: {
title: 'Trending', title: 'Trending.Trending',
icon: 'fa-home' icon: 'fa-home'
}, },
component: Trending component: Trending

View File

@ -5,7 +5,12 @@ const state = {
isSideNavOpen: false, isSideNavOpen: false,
sessionSearchHistory: [], sessionSearchHistory: [],
popularCache: null, popularCache: null,
trendingCache: null, trendingCache: {
default: null,
music: null,
gaming: null,
movies: null
},
showProgressBar: false, showProgressBar: false,
progressBarPercentage: 0, progressBarPercentage: 0,
regionNames: [], regionNames: [],
@ -823,8 +828,8 @@ const mutations = {
state.popularCache = value state.popularCache = value
}, },
setTrendingCache (state, value) { setTrendingCache (state, value, page) {
state.trendingCache = value state.trendingCache[page] = value
}, },
setSearchSortBy (state, value) { setSearchSortBy (state, value) {

View File

@ -73,7 +73,6 @@
padding: 15px; padding: 15px;
font-size: 15px; font-size: 15px;
cursor: pointer; cursor: pointer;
text-decoration: underline;
align-self: flex-end; align-self: flex-end;
-webkit-transition: background 0.2s ease-out; -webkit-transition: background 0.2s ease-out;
-moz-transition: background 0.2s ease-out; -moz-transition: background 0.2s ease-out;
@ -81,6 +80,10 @@
transition: background 0.2s ease-out; transition: background 0.2s ease-out;
} }
.selectedTab {
text-decoration: underline;
}
.tab:hover { .tab:hover {
background-color: var(--side-nav-hover-color); background-color: var(--side-nav-hover-color);
-moz-transition: background 0.2s ease-in; -moz-transition: background 0.2s ease-in;

View File

@ -65,18 +65,21 @@
> >
<div <div
class="tab" class="tab"
:class="(currentTab==='videos')?'selectedTab':''"
@click="changeTab('videos')" @click="changeTab('videos')"
> >
{{ $t("Channel.Videos.Videos").toUpperCase() }} {{ $t("Channel.Videos.Videos").toUpperCase() }}
</div> </div>
<div <div
class="tab" class="tab"
:class="(currentTab==='playlists')?'selectedTab':''"
@click="changeTab('playlists')" @click="changeTab('playlists')"
> >
{{ $t("Channel.Playlists.Playlists").toUpperCase() }} {{ $t("Channel.Playlists.Playlists").toUpperCase() }}
</div> </div>
<div <div
class="tab" class="tab"
:class="(currentTab==='about')?'selectedTab':''"
@click="changeTab('about')" @click="changeTab('about')"
> >
{{ $t("Channel.About.About").toUpperCase() }} {{ $t("Channel.About.About").toUpperCase() }}

View File

@ -10,6 +10,35 @@
right: 10px; right: 10px;
} }
.trendingInfoTabs {
width: 100%;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
}
.selectedTab {
text-decoration: underline;
}
.tab {
text-align: center;
padding: 15px;
font-size: 15px;
cursor: pointer;
align-self: flex-end;
-webkit-transition: background 0.2s ease-out;
-moz-transition: background 0.2s ease-out;
-o-transition: background 0.2s ease-out;
transition: background 0.2s ease-out;
}
.tab:hover, .tab:focus {
background-color: var(--side-nav-hover-color);
-moz-transition: background 0.2s ease-in;
-o-transition: background 0.2s ease-in;
transition: background 0.2s ease-in;
}
@media only screen and (max-width: 350px) { @media only screen and (max-width: 350px) {
.floatingTopButton { .floatingTopButton {
position: absolute position: absolute

View File

@ -4,7 +4,9 @@ import FtCard from '../../components/ft-card/ft-card.vue'
import FtLoader from '../../components/ft-loader/ft-loader.vue' import FtLoader from '../../components/ft-loader/ft-loader.vue'
import FtElementList from '../../components/ft-element-list/ft-element-list.vue' import FtElementList from '../../components/ft-element-list/ft-element-list.vue'
import FtIconButton from '../../components/ft-icon-button/ft-icon-button.vue' import FtIconButton from '../../components/ft-icon-button/ft-icon-button.vue'
import FtFlexBox from '../../components/ft-flex-box/ft-flex-box.vue'
import $ from 'jquery'
import ytrend from 'yt-trending-scraper' import ytrend from 'yt-trending-scraper'
export default Vue.extend({ export default Vue.extend({
@ -13,12 +15,20 @@ export default Vue.extend({
'ft-card': FtCard, 'ft-card': FtCard,
'ft-loader': FtLoader, 'ft-loader': FtLoader,
'ft-element-list': FtElementList, 'ft-element-list': FtElementList,
'ft-icon-button': FtIconButton 'ft-icon-button': FtIconButton,
'ft-flex-box': FtFlexBox
}, },
data: function () { data: function () {
return { return {
isLoading: false, isLoading: false,
shownResults: [] shownResults: [],
currentTab: 'default',
tabInfoValues: [
'default',
'music',
'gaming',
'movies'
]
} }
}, },
computed: { computed: {
@ -42,13 +52,49 @@ export default Vue.extend({
} }
}, },
mounted: function () { mounted: function () {
if (this.trendingCache && this.trendingCache.length > 0) { if (this.trendingCache[this.currentTab] && this.trendingCache[this.currentTab].length > 0) {
this.shownResults = this.trendingCache this.shownResults = this.trendingCache
} else { } else {
this.getTrendingInfo() this.getTrendingInfo()
} }
}, },
methods: { methods: {
changeTab: function (tab, event) {
if (event instanceof KeyboardEvent) {
if (event.key === 'Tab') {
return
} else if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {
// navigate trending tabs with arrow keys
const index = this.tabInfoValues.indexOf(tab)
// tabs wrap around from leftmost to rightmost, and vice versa
tab = (event.key === 'ArrowLeft')
? this.tabInfoValues[(index > 0 ? index : this.tabInfoValues.length) - 1]
: this.tabInfoValues[(index + 1) % this.tabInfoValues.length]
const tabNode = $(`#${tab}Tab`)
event.target.setAttribute('tabindex', '-1')
tabNode.attr('tabindex', '0')
tabNode[0].focus()
}
event.preventDefault()
if (event.key !== 'Enter' && event.key !== ' ') {
return
}
}
const currentTabNode = $('.trendingInfoTabs > .tab[aria-selected="true"]')
const newTabNode = $(`#${tab}Tab`)
// switch selectability from currently focused tab to new tab
$('.trendingInfoTabs > .tab[tabindex="0"]').attr('tabindex', '-1')
newTabNode.attr('tabindex', '0')
currentTabNode.attr('aria-selected', 'false')
newTabNode.attr('aria-selected', 'true')
this.currentTab = tab
this.getTrendingInfo()
},
getTrendingInfo () { getTrendingInfo () {
if (!this.usingElectron) { if (!this.usingElectron) {
this.getVideoInformationInvidious() this.getVideoInformationInvidious()
@ -70,7 +116,7 @@ export default Vue.extend({
console.log('getting local trending') console.log('getting local trending')
const param = { const param = {
parseCreatorOnRise: false, parseCreatorOnRise: false,
page: 'default', page: this.currentTab,
geoLocation: this.region geoLocation: this.region
} }
@ -81,7 +127,9 @@ export default Vue.extend({
this.shownResults = returnData this.shownResults = returnData
this.isLoading = false this.isLoading = false
this.$store.commit('setTrendingCache', this.shownResults) this.$store.commit('setTrendingCache', this.shownResults, this.currentTab)
}).then(() => {
document.querySelector(`#${this.currentTab}Tab`).focus()
}).catch((err) => { }).catch((err) => {
console.log(err) console.log(err)
const errorMessage = this.$t('Local API Error (Click to copy)') const errorMessage = this.$t('Local API Error (Click to copy)')
@ -112,6 +160,10 @@ export default Vue.extend({
params: { region: this.region } params: { region: this.region }
} }
if (this.currentTab !== 'default') {
trendingPayload.params.type = this.currentTab.charAt(0).toUpperCase() + this.currentTab.slice(1)
}
this.invidiousAPICall(trendingPayload).then((result) => { this.invidiousAPICall(trendingPayload).then((result) => {
if (!result) { if (!result) {
return return
@ -125,7 +177,9 @@ export default Vue.extend({
this.shownResults = returnData this.shownResults = returnData
this.isLoading = false this.isLoading = false
this.$store.commit('setTrendingCache', this.shownResults) this.$store.commit('setTrendingCache', this.shownResults, this.trendingCache)
}).then(() => {
document.querySelector(`#${this.currentTab}Tab`).focus()
}).catch((err) => { }).catch((err) => {
console.log(err) console.log(err)
const errorMessage = this.$t('Invidious API Error (Click to copy)') const errorMessage = this.$t('Invidious API Error (Click to copy)')

View File

@ -8,8 +8,68 @@
v-else v-else
class="card" class="card"
> >
<h3>{{ $t("Trending") }}</h3> <h3>{{ $t("Trending.Trending") }}</h3>
<ft-flex-box
class="trendingInfoTabs"
role="tablist"
:aria-label="$t('Trending.Trending Tabs')"
>
<div
id="defaultTab"
class="tab"
role="tab"
aria-selected="true"
aria-controls="trendingPanel"
tabindex="0"
:class="(currentTab=='default')?'selectedTab':''"
@click="changeTab('default')"
@keydown="changeTab('default', $event)"
>
{{ $t("Trending.Default").toUpperCase() }}
</div>
<div
id="musicTab"
class="tab"
role="tab"
aria-selected="false"
aria-controls="trendingPanel"
tabindex="-1"
:class="(currentTab=='music')?'selectedTab':''"
@click="changeTab('music')"
@keydown="changeTab('music', $event)"
>
{{ $t("Trending.Music").toUpperCase() }}
</div>
<div
id="gamingTab"
class="tab"
role="tab"
aria-selected="false"
aria-controls="trendingPanel"
tabindex="-1"
:class="(currentTab=='gaming')?'selectedTab':''"
@click="changeTab('gaming')"
@keydown="changeTab('gaming', $event)"
>
{{ $t("Trending.Gaming").toUpperCase() }}
</div>
<div
id="moviesTab"
class="tab"
role="tab"
aria-selected="false"
aria-controls="trendingPanel"
tabindex="-1"
:class="(currentTab=='movies')?'selectedTab':''"
@click="changeTab('movies')"
@keydown="changeTab('movies', $event)"
>
{{ $t("Trending.Movies").toUpperCase() }}
</div>
</ft-flex-box>
<ft-element-list <ft-element-list
id="trendingPanel"
role="tabpanel"
:data="shownResults" :data="shownResults"
/> />
</ft-card> </ft-card>

View File

@ -76,7 +76,8 @@ Subscriptions:
Load More Videos: حمّل المزيد من الفيديوهات Load More Videos: حمّل المزيد من الفيديوهات
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: لدى This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: لدى
هذا الملف الشخصي عدد كبير من الاشتراكات. يتم فرض وضع RSS لتجنب تقييد الوصول للاشتراكات هذا الملف الشخصي عدد كبير من الاشتراكات. يتم فرض وضع RSS لتجنب تقييد الوصول للاشتراكات
Trending: 'المحتوى الرائج' Trending:
Trending: 'المحتوى الرائج'
Most Popular: 'الأكثر شعبية' Most Popular: 'الأكثر شعبية'
Playlists: 'قوائم التشغيل' Playlists: 'قوائم التشغيل'
User Playlists: User Playlists:

View File

@ -67,7 +67,8 @@ Subscriptions:
Latest Subscriptions: '' Latest Subscriptions: ''
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': '' 'Your Subscription list is currently empty. Start adding subscriptions to see them here.': ''
'Getting Subscriptions. Please wait.': '' 'Getting Subscriptions. Please wait.': ''
Trending: '' Trending:
Trending: ''
Most Popular: '' Most Popular: ''
Playlists: '' Playlists: ''
User Playlists: User Playlists:

View File

@ -84,7 +84,8 @@ Subscriptions:
профил има голям брой абонаменти. Принудително използване на RSS за заобикаляне профил има голям брой абонаменти. Принудително използване на RSS за заобикаляне
на ограниченията на ограниченията
Load More Videos: Зареждане на още видеа Load More Videos: Зареждане на още видеа
Trending: 'Набиращи популярност' Trending:
Trending: 'Набиращи популярност'
Most Popular: 'Най-популярни' Most Popular: 'Най-популярни'
Playlists: 'Плейлисти' Playlists: 'Плейлисти'
User Playlists: User Playlists:

View File

@ -80,7 +80,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': '' 'Getting Subscriptions. Please wait.': ''
Refresh Subscriptions: '' Refresh Subscriptions: ''
Load More Videos: '' Load More Videos: ''
Trending: 'চলছে' Trending:
Trending: 'চলছে'
Most Popular: '' Most Popular: ''
Playlists: '' Playlists: ''
User Playlists: User Playlists:

View File

@ -83,7 +83,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Preuzimanje pretplata. Molimo sačekajte.' 'Getting Subscriptions. Please wait.': 'Preuzimanje pretplata. Molimo sačekajte.'
Refresh Subscriptions: 'Osvježi pretplate' Refresh Subscriptions: 'Osvježi pretplate'
Load More Videos: 'Očitaj više videozapisa' Load More Videos: 'Očitaj više videozapisa'
Trending: 'U trendu' Trending:
Trending: 'U trendu'
Most Popular: 'Naj popularnije' Most Popular: 'Naj popularnije'
Playlists: 'playliste' Playlists: 'playliste'
User Playlists: User Playlists:

View File

@ -85,7 +85,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Aquest This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Aquest
perfil té un gran nombre de subscripcions. Forçant RSS per evitar la limitació perfil té un gran nombre de subscripcions. Forçant RSS per evitar la limitació
fixada fixada
Trending: 'Tendencies' Trending:
Trending: 'Tendencies'
Most Popular: 'Més populars' Most Popular: 'Més populars'
Playlists: 'Llistes de reproducció' Playlists: 'Llistes de reproducció'
User Playlists: User Playlists:

View File

@ -83,7 +83,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Získávám odběry. Prosím čekejte.' 'Getting Subscriptions. Please wait.': 'Získávám odběry. Prosím čekejte.'
Refresh Subscriptions: 'Obnovit odběry' Refresh Subscriptions: 'Obnovit odběry'
Load More Videos: 'Načíst více videí' Load More Videos: 'Načíst více videí'
Trending: 'Trendy' Trending:
Trending: 'Trendy'
Most Popular: 'Nejpopulárnější' Most Popular: 'Nejpopulárnější'
Playlists: 'Playlisty' Playlists: 'Playlisty'
User Playlists: User Playlists:

View File

@ -84,7 +84,8 @@ Subscriptions:
Load More Videos: Indlæs Flere Videoer Load More Videos: Indlæs Flere Videoer
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Denne This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Denne
profil har et stort antal abonnementer. Tving RSS for at undgå adgangsbegrænsning profil har et stort antal abonnementer. Tving RSS for at undgå adgangsbegrænsning
Trending: 'På Mode' Trending:
Trending: 'På Mode'
Most Popular: 'Mest Populære' Most Popular: 'Mest Populære'
Playlists: 'Spillelister' Playlists: 'Spillelister'
User Playlists: User Playlists:

View File

@ -79,7 +79,8 @@ Subscriptions:
Profil hat eine große Anzahl von Abonnements. RSS zur Vermeidung von Geschwindigkeitsbeschränkungen Profil hat eine große Anzahl von Abonnements. RSS zur Vermeidung von Geschwindigkeitsbeschränkungen
erzwingen erzwingen
Load More Videos: Lade mehr Videos Load More Videos: Lade mehr Videos
Trending: Trends Trending:
Trending: Trends
Most Popular: Am beliebtesten Most Popular: Am beliebtesten
Playlists: Wiedergabelisten Playlists: Wiedergabelisten
User Playlists: User Playlists:

View File

@ -80,7 +80,8 @@ Subscriptions:
το προφίλ διαθέτει ήδη ένα μεγάλο αριθμό Εγγραφών. Εξαναγκασμένη εναλλαγή σε λειτουργία το προφίλ διαθέτει ήδη ένα μεγάλο αριθμό Εγγραφών. Εξαναγκασμένη εναλλαγή σε λειτουργία
RSS για αποφυγή περιορισμού των κλήσεων RSS για αποφυγή περιορισμού των κλήσεων
Load More Videos: Φόρτωση περισσότερων Βίντεο Load More Videos: Φόρτωση περισσότερων Βίντεο
Trending: 'Τάσεις' Trending:
Trending: 'Τάσεις'
Most Popular: 'Πιο δημοφιλή' Most Popular: 'Πιο δημοφιλή'
Playlists: 'Λίστες αναπαραγωγής' Playlists: 'Λίστες αναπαραγωγής'
User Playlists: User Playlists:

View File

@ -84,7 +84,13 @@ Subscriptions:
Refresh Subscriptions: Refresh Subscriptions Refresh Subscriptions: Refresh Subscriptions
Load More Videos: Load More Videos Load More Videos: Load More Videos
More: More More: More
Trending: Trending Trending:
Trending: Trending
Default: Default
Music: Music
Gaming: Gaming
Movies: Movies
Trending Tabs: Trending Tabs
Most Popular: Most Popular Most Popular: Most Popular
Playlists: Playlists Playlists: Playlists
User Playlists: User Playlists:

View File

@ -82,7 +82,8 @@ Subscriptions:
Load More Videos: Load More Videos Load More Videos: Load More Videos
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: This This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: This
profile has a large number of subscriptions. Forcing RSS to avoid rate limiting profile has a large number of subscriptions. Forcing RSS to avoid rate limiting
Trending: 'Trending' Trending:
Trending: 'Trending'
Most Popular: 'Most Popular' Most Popular: 'Most Popular'
Playlists: 'Playlists' Playlists: 'Playlists'
User Playlists: User Playlists:

View File

@ -74,7 +74,8 @@ Subscriptions:
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': '' 'Your Subscription list is currently empty. Start adding subscriptions to see them here.': ''
'Getting Subscriptions. Please wait.': '' 'Getting Subscriptions. Please wait.': ''
Refresh Subscriptions: '' Refresh Subscriptions: ''
Trending: '' Trending:
Trending: ''
Most Popular: '' Most Popular: ''
Playlists: '' Playlists: ''
User Playlists: User Playlists:

View File

@ -72,7 +72,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Obteniendo Suscripciones. Por favor espere.' 'Getting Subscriptions. Please wait.': 'Obteniendo Suscripciones. Por favor espere.'
Refresh Subscriptions: Actulizar Suscripciones Refresh Subscriptions: Actulizar Suscripciones
Getting Subscriptions. Please wait.: Obteniendo Suscripciones. Por favor espere. Getting Subscriptions. Please wait.: Obteniendo Suscripciones. Por favor espere.
Trending: 'Tendencias' Trending:
Trending: 'Tendencias'
Most Popular: 'Más Popular' Most Popular: 'Más Popular'
Playlists: 'Listas de Reproducción' Playlists: 'Listas de Reproducción'
User Playlists: User Playlists:

View File

@ -76,7 +76,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Este This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Este
perfil tiene muchas suscripciones. Para eludir este límite, usaremos RSS. perfil tiene muchas suscripciones. Para eludir este límite, usaremos RSS.
Load More Videos: Ver más Load More Videos: Ver más
Trending: 'Tendencias' Trending:
Trending: 'Tendencias'
Most Popular: 'Más populares' Most Popular: 'Más populares'
Playlists: 'Playlists' Playlists: 'Playlists'
User Playlists: User Playlists:

View File

@ -78,7 +78,8 @@ Subscriptions:
Load More Videos: Cargar más videos Load More Videos: Cargar más videos
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Este This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Este
perfil tiene un gran número de suscriptores. Forzando RSS para evitar límites perfil tiene un gran número de suscriptores. Forzando RSS para evitar límites
Trending: 'Tendencias' Trending:
Trending: 'Tendencias'
Most Popular: 'Más popular' Most Popular: 'Más popular'
Playlists: 'Listas de reproducción' Playlists: 'Listas de reproducción'
User Playlists: User Playlists:

View File

@ -83,7 +83,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Sellel This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Sellel
profiilil on väga palju tellimusi. Vältimaks serveripoolseid piiranguid teen RSS-voo profiilil on väga palju tellimusi. Vältimaks serveripoolseid piiranguid teen RSS-voo
päringud harvemini päringud harvemini
Trending: 'Populaarsed videod' Trending:
Trending: 'Populaarsed videod'
Most Popular: 'Populaarseimad' Most Popular: 'Populaarseimad'
Playlists: 'Esitusloendid' Playlists: 'Esitusloendid'
User Playlists: User Playlists:

View File

@ -79,7 +79,8 @@ Subscriptions:
Refresh Subscriptions: '' Refresh Subscriptions: ''
Load More Videos: '' Load More Videos: ''
More: '' More: ''
Trending: '' Trending:
Trending: ''
Most Popular: '' Most Popular: ''
Playlists: '' Playlists: ''
User Playlists: User Playlists:

View File

@ -75,7 +75,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Tällä This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Tällä
profiililla on paljon tilauksia. Pakotetaan RSS nopeuden rajoittamisen välttämiseksi profiililla on paljon tilauksia. Pakotetaan RSS nopeuden rajoittamisen välttämiseksi
Load More Videos: Lataa lisää videoita Load More Videos: Lataa lisää videoita
Trending: 'Nousussa' Trending:
Trending: 'Nousussa'
Most Popular: 'Suosituimmat' Most Popular: 'Suosituimmat'
Playlists: 'Soittolistat' Playlists: 'Soittolistat'
User Playlists: User Playlists:

View File

@ -75,7 +75,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Kinukuha ang mga suskripsyon. Maghintay 'Getting Subscriptions. Please wait.': 'Kinukuha ang mga suskripsyon. Maghintay
lang po.' lang po.'
Refresh Subscriptions: 'I-refresh ang mga Suskripsyon' Refresh Subscriptions: 'I-refresh ang mga Suskripsyon'
Trending: 'Nagte-trend' Trending:
Trending: 'Nagte-trend'
Most Popular: 'Pinakasikat' Most Popular: 'Pinakasikat'
Playlists: '' Playlists: ''
User Playlists: User Playlists:

View File

@ -80,7 +80,8 @@ Subscriptions:
profil comporte un grand nombre d'abonnements. Le flux RSS outrepassera la limite profil comporte un grand nombre d'abonnements. Le flux RSS outrepassera la limite
fixée fixée
Load More Videos: Charger plus de vidéos Load More Videos: Charger plus de vidéos
Trending: 'Tendance' Trending:
Trending: 'Tendance'
Most Popular: 'Les plus populaires' Most Popular: 'Les plus populaires'
Playlists: 'Listes de lecture' Playlists: 'Listes de lecture'
User Playlists: User Playlists:

View File

@ -83,7 +83,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Obtendo subscricións. Por favor, agarda.' 'Getting Subscriptions. Please wait.': 'Obtendo subscricións. Por favor, agarda.'
Refresh Subscriptions: 'Actualizar subscricións' Refresh Subscriptions: 'Actualizar subscricións'
Load More Videos: 'Cargar máis vídeos' Load More Videos: 'Cargar máis vídeos'
Trending: 'Tendencias' Trending:
Trending: 'Tendencias'
Most Popular: 'Máis populares' Most Popular: 'Máis populares'
Playlists: 'Listaxes de reprodución' Playlists: 'Listaxes de reprodución'
User Playlists: User Playlists:

View File

@ -82,7 +82,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: לפרופיל This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: לפרופיל
זה יש מספר רב של מנויים. עובר לעדכונים בעזרת RSS על מנת להימנע מהגבלות רוחב פס זה יש מספר רב של מנויים. עובר לעדכונים בעזרת RSS על מנת להימנע מהגבלות רוחב פס
Load More Videos: לטעון סרטונים נוספים Load More Videos: לטעון סרטונים נוספים
Trending: 'הסרטונים החמים' Trending:
Trending: 'הסרטונים החמים'
Most Popular: 'הכי פופולרי' Most Popular: 'הכי פופולרי'
Playlists: 'פלייליסטים' Playlists: 'פלייליסטים'
User Playlists: User Playlists:

View File

@ -85,7 +85,8 @@ Subscriptions:
कृपया रुके।' कृपया रुके।'
Refresh Subscriptions: 'सब्सक्रिप्शने Refresh करे' Refresh Subscriptions: 'सब्सक्रिप्शने Refresh करे'
Load More Videos: 'ज़्यादा विडीओए लोड करे' Load More Videos: 'ज़्यादा विडीओए लोड करे'
Trending: 'ट्रेनडिंग' Trending:
Trending: 'ट्रेनडिंग'
Most Popular: 'सबसे ज़्यादा देखा हुआ' Most Popular: 'सबसे ज़्यादा देखा हुआ'
Playlists: 'प्लेलिस्टे (playlists)' Playlists: 'प्लेलिस्टे (playlists)'
User Playlists: User Playlists:

View File

@ -78,7 +78,8 @@ Subscriptions:
profil sadrži velik broj pretplata. Za izbjegavanje ograničenja stope koristit profil sadrži velik broj pretplata. Za izbjegavanje ograničenja stope koristit
će se RSS će se RSS
Load More Videos: Učitaj još videa Load More Videos: Učitaj još videa
Trending: 'U trendu' Trending:
Trending: 'U trendu'
Most Popular: 'Najpopularniji' Most Popular: 'Najpopularniji'
Playlists: 'Zbirke' Playlists: 'Zbirke'
User Playlists: User Playlists:

View File

@ -86,7 +86,8 @@ Subscriptions:
a profil nagyszámú feliratkozást tartalmaz. RSS kényszerítése a sebességkorlátozás a profil nagyszámú feliratkozást tartalmaz. RSS kényszerítése a sebességkorlátozás
elkerülésére elkerülésére
Load More Videos: További videók betöltése Load More Videos: További videók betöltése
Trending: 'Népszerű' Trending:
Trending: 'Népszerű'
Most Popular: 'Legnépszerűbbek' Most Popular: 'Legnépszerűbbek'
Playlists: 'Lejátszási listák' Playlists: 'Lejátszási listák'
User Playlists: User Playlists:

View File

@ -85,7 +85,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Profil This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Profil
ini berlangganan ke banyak kanal. Beralih ke RSS untuk menghindari pembatasan ini berlangganan ke banyak kanal. Beralih ke RSS untuk menghindari pembatasan
akses akses
Trending: 'Sedang Tren' Trending:
Trending: 'Sedang Tren'
Most Popular: 'Paling Populer' Most Popular: 'Paling Populer'
Playlists: 'Daftar Putar' Playlists: 'Daftar Putar'
User Playlists: User Playlists:

View File

@ -87,7 +87,8 @@ Subscriptions:
Refresh Subscriptions: 'Endurlesa áskriftir' Refresh Subscriptions: 'Endurlesa áskriftir'
Load More Videos: 'Hlaða inn fleiri myndskeiðum' Load More Videos: 'Hlaða inn fleiri myndskeiðum'
More: 'Meira' More: 'Meira'
Trending: 'Í umræðunni' Trending:
Trending: 'Í umræðunni'
Most Popular: 'Vinsælast' Most Popular: 'Vinsælast'
Playlists: 'Spilunarlistar' Playlists: 'Spilunarlistar'
User Playlists: User Playlists:

View File

@ -80,7 +80,8 @@ Subscriptions:
Load More Videos: Carica più video Load More Videos: Carica più video
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Questo This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Questo
profilo ha un grande numero di iscrizioni. Utilizzo RSS per evitare limitazioni profilo ha un grande numero di iscrizioni. Utilizzo RSS per evitare limitazioni
Trending: 'Tendenze' Trending:
Trending: 'Tendenze'
Most Popular: 'Più popolari' Most Popular: 'Più popolari'
Playlists: 'Playlist' Playlists: 'Playlist'
User Playlists: User Playlists:

View File

@ -74,7 +74,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: このプロファイルは登録チャンネルが多くなっています。接続制限を回避するため This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: このプロファイルは登録チャンネルが多くなっています。接続制限を回避するため
RSS を使用します RSS を使用します
Load More Videos: もっと見る Load More Videos: もっと見る
Trending: '急上昇' Trending:
Trending: '急上昇'
Most Popular: '人気' Most Popular: '人気'
Playlists: '再生リスト' Playlists: '再生リスト'
User Playlists: User Playlists:

View File

@ -81,7 +81,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': '구독 목록을 가져오는 중입니다. 잠시만 기다려 주세요.' 'Getting Subscriptions. Please wait.': '구독 목록을 가져오는 중입니다. 잠시만 기다려 주세요.'
Refresh Subscriptions: '구독 피드 새로 고침' Refresh Subscriptions: '구독 피드 새로 고침'
Load More Videos: '더 많은 동영상 불러오기' Load More Videos: '더 많은 동영상 불러오기'
Trending: '트렌딩' Trending:
Trending: '트렌딩'
Most Popular: '인기 동영상' Most Popular: '인기 동영상'
Playlists: '재생 목록' Playlists: '재생 목록'
User Playlists: User Playlists:

View File

@ -84,7 +84,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: .ئەم This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: .ئەم
پرۆفایلە ژمارەیەکی زۆری هەیە لە سەبسکریپشن. بۆ دورکەوتنەوە لە سنوور دانان (رسس) پرۆفایلە ژمارەیەکی زۆری هەیە لە سەبسکریپشن. بۆ دورکەوتنەوە لە سنوور دانان (رسس)
بەکاردەهێندرێت بەکاردەهێندرێت
Trending: 'زۆر باسکراو' Trending:
Trending: 'زۆر باسکراو'
Most Popular: 'بەناوبانگترین' Most Popular: 'بەناوبانگترین'
Playlists: 'پلەیلیست' Playlists: 'پلەیلیست'
User Playlists: User Playlists:

View File

@ -82,7 +82,8 @@ Subscriptions:
Load More Videos: Voce plus Movens Imaginibus Load More Videos: Voce plus Movens Imaginibus
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Haec This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Haec
profile copia subscriptioni habet. Impono RSS ut impedio restrictionis per celeritatis profile copia subscriptioni habet. Impono RSS ut impedio restrictionis per celeritatis
Trending: 'Inclinant' Trending:
Trending: 'Inclinant'
Most Popular: 'Maxime Popular' Most Popular: 'Maxime Popular'
Playlists: 'Album ludere' Playlists: 'Album ludere'
User Playlists: User Playlists:

View File

@ -85,7 +85,8 @@ Subscriptions:
Refresh Subscriptions: 'Atnaujinti prenumeratas' Refresh Subscriptions: 'Atnaujinti prenumeratas'
Load More Videos: 'Pakrauti daugiau vaizdo įrašų' Load More Videos: 'Pakrauti daugiau vaizdo įrašų'
More: 'Daugiau' More: 'Daugiau'
Trending: 'Dabar populiaru' Trending:
Trending: 'Dabar populiaru'
Most Popular: 'Populiariausia' Most Popular: 'Populiariausia'
Playlists: 'Grojaraščiai' Playlists: 'Grojaraščiai'
User Playlists: User Playlists:

View File

@ -77,7 +77,8 @@ Subscriptions:
Load More Videos: Last flere videoer Load More Videos: Last flere videoer
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Denne This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Denne
profilen har mange abonnementer. Påtvinger RSS for å unngå adgangsbegrensning profilen har mange abonnementer. Påtvinger RSS for å unngå adgangsbegrensning
Trending: 'På vei opp' Trending:
Trending: 'På vei opp'
Most Popular: 'Mest populært' Most Popular: 'Mest populært'
Playlists: 'Spillelister' Playlists: 'Spillelister'
User Playlists: User Playlists:

View File

@ -80,7 +80,8 @@ Subscriptions:
profiel heeft een groot aantal abonnementen. RSS wordt geforceerd om tariefbeperkingen profiel heeft een groot aantal abonnementen. RSS wordt geforceerd om tariefbeperkingen
te vermijden te vermijden
Load More Videos: Meer Video's Laden Load More Videos: Meer Video's Laden
Trending: 'Trending' Trending:
Trending: 'Trending'
Most Popular: 'Populair' Most Popular: 'Populair'
Playlists: 'Afspeellijsten' Playlists: 'Afspeellijsten'
User Playlists: User Playlists:

View File

@ -85,7 +85,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Henter abonnement. Ver venleg og vent.' 'Getting Subscriptions. Please wait.': 'Henter abonnement. Ver venleg og vent.'
Refresh Subscriptions: 'Oppdater abonnement' Refresh Subscriptions: 'Oppdater abonnement'
Load More Videos: 'Last inn fleire videoar' Load More Videos: 'Last inn fleire videoar'
Trending: 'På veg opp' Trending:
Trending: 'På veg opp'
Most Popular: 'Mest populært' Most Popular: 'Mest populært'
Playlists: 'Spelelister' Playlists: 'Spelelister'
User Playlists: User Playlists:

View File

@ -78,7 +78,8 @@ Subscriptions:
profil posiada dużą liczbę subskrypcji. Wymuszenie RSS w celu uniknięcia ograniczenia profil posiada dużą liczbę subskrypcji. Wymuszenie RSS w celu uniknięcia ograniczenia
dostępu dostępu
Load More Videos: Załaduj więcej filmów Load More Videos: Załaduj więcej filmów
Trending: 'Na czasie' Trending:
Trending: 'Na czasie'
Most Popular: 'Popularne' Most Popular: 'Popularne'
Playlists: 'Playlisty' Playlists: 'Playlisty'
User Playlists: User Playlists:

View File

@ -77,7 +77,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Este This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Este
perfil tem um grande número de inscrições. Forçando RSS para evitar limitação perfil tem um grande número de inscrições. Forçando RSS para evitar limitação
de banda de banda
Trending: 'Em alta' Trending:
Trending: 'Em alta'
Most Popular: 'Mais populares' Most Popular: 'Mais populares'
Playlists: 'Listas' Playlists: 'Listas'
User Playlists: User Playlists:

View File

@ -83,7 +83,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': A carregar subscrições. Por favor aguarde. 'Getting Subscriptions. Please wait.': A carregar subscrições. Por favor aguarde.
Refresh Subscriptions: Actualizar Subscrições Refresh Subscriptions: Actualizar Subscrições
Load More Videos: Carregar Mais Vídeos Load More Videos: Carregar Mais Vídeos
Trending: Tendências Trending:
Trending: Tendências
Most Popular: Mais Populares Most Popular: Mais Populares
Playlists: Listas de Reprodução Playlists: Listas de Reprodução
User Playlists: User Playlists:

View File

@ -77,7 +77,8 @@ Subscriptions:
sua lista de subscrições está vazia. Adicione algumas para as ver aqui.' sua lista de subscrições está vazia. Adicione algumas para as ver aqui.'
'Getting Subscriptions. Please wait.': 'A carregar subscrições. Por favor aguarde.' 'Getting Subscriptions. Please wait.': 'A carregar subscrições. Por favor aguarde.'
Refresh Subscriptions: 'Atualizar Subscrições' Refresh Subscriptions: 'Atualizar Subscrições'
Trending: 'Tendências' Trending:
Trending: 'Tendências'
Most Popular: 'Mais Populares' Most Popular: 'Mais Populares'
Playlists: 'Listas de Reprodução' Playlists: 'Listas de Reprodução'
User Playlists: User Playlists:

View File

@ -83,7 +83,8 @@ Subscriptions:
Load More Videos: Incarca mai multe videouri Load More Videos: Incarca mai multe videouri
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Acest This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Acest
profil are foarte multi urmaritori. Foloseste RSS pentru a evita limita fixata. profil are foarte multi urmaritori. Foloseste RSS pentru a evita limita fixata.
Trending: 'Trend' Trending:
Trending: 'Trend'
Most Popular: 'Cel mai Popular' Most Popular: 'Cel mai Popular'
Playlists: 'Liste de videoclipuri' Playlists: 'Liste de videoclipuri'
User Playlists: User Playlists:

View File

@ -77,7 +77,8 @@ Subscriptions:
профиль имеет большое количество подписок. Используйте RSS, чтобы избежать ограничения профиль имеет большое количество подписок. Используйте RSS, чтобы избежать ограничения
скорости скорости
Load More Videos: Загрузить больше видео Load More Videos: Загрузить больше видео
Trending: 'Тренды' Trending:
Trending: 'Тренды'
Most Popular: 'Самые популярные' Most Popular: 'Самые популярные'
Playlists: 'Плейлисты' Playlists: 'Плейлисты'
User Playlists: User Playlists:

View File

@ -77,7 +77,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': '' 'Getting Subscriptions. Please wait.': ''
Refresh Subscriptions: '' Refresh Subscriptions: ''
Load More Videos: '' Load More Videos: ''
Trending: '' Trending:
Trending: ''
Most Popular: '' Most Popular: ''
Playlists: '' Playlists: ''
User Playlists: User Playlists:

View File

@ -79,7 +79,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': '' 'Getting Subscriptions. Please wait.': ''
Refresh Subscriptions: '' Refresh Subscriptions: ''
Load More Videos: තව දෘශ්‍යක පූරනය කරන්න Load More Videos: තව දෘශ්‍යක පූරනය කරන්න
Trending: '' Trending:
Trending: ''
Most Popular: '' Most Popular: ''
Playlists: '' Playlists: ''
User Playlists: User Playlists:

View File

@ -77,7 +77,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': Nahrávam odbery, prosím počkajte. 'Getting Subscriptions. Please wait.': Nahrávam odbery, prosím počkajte.
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Tento This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Tento
profil má mnoho odberateľov. Vždy použite RSS, aby ste obišli limit profil má mnoho odberateľov. Vždy použite RSS, aby ste obišli limit
Trending: 'Trendy' Trending:
Trending: 'Trendy'
Most Popular: 'Najpopulárnejšie' Most Popular: 'Najpopulárnejšie'
Playlists: 'Zoznamy' Playlists: 'Zoznamy'
User Playlists: User Playlists:

View File

@ -85,7 +85,8 @@ Subscriptions:
profil ima veliko količino naročnin.· Da bi se izognili omejitvi hitrosti, bo profil ima veliko količino naročnin.· Da bi se izognili omejitvi hitrosti, bo
uporabljen RSS uporabljen RSS
Load More Videos: Naloži več videoposnetkov Load More Videos: Naloži več videoposnetkov
Trending: 'Priljubljeno' Trending:
Trending: 'Priljubljeno'
Most Popular: 'Najbolj popularno' Most Popular: 'Najbolj popularno'
Playlists: 'Seznami predvajanja' Playlists: 'Seznami predvajanja'
User Playlists: User Playlists:

View File

@ -84,7 +84,8 @@ Subscriptions:
Refresh Subscriptions: 'Освежи праћења' Refresh Subscriptions: 'Освежи праћења'
Load More Videos: 'Учитај више видео записа' Load More Videos: 'Учитај више видео записа'
More: 'Још' More: 'Још'
Trending: 'Тренда' Trending:
Trending: 'Тренда'
Most Popular: 'Нај популарније' Most Popular: 'Нај популарније'
Playlists: 'Плејлисте' Playlists: 'Плејлисте'
User Playlists: User Playlists:

View File

@ -84,7 +84,8 @@ Subscriptions:
här profilen har ett stort antal prenumerationer. Tvinga RSS för att undvika här profilen har ett stort antal prenumerationer. Tvinga RSS för att undvika
ränta begränsa ränta begränsa
Load More Videos: Se mer Load More Videos: Se mer
Trending: 'Trender' Trending:
Trending: 'Trender'
Most Popular: 'Mest populära' Most Popular: 'Mest populära'
Playlists: 'Spellistor' Playlists: 'Spellistor'
User Playlists: User Playlists:

View File

@ -82,7 +82,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Bu This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Bu
profilin çok sayıda abonesi var. Hız sınırlamalarından kaçınmak için RSS zorlanıyor profilin çok sayıda abonesi var. Hız sınırlamalarından kaçınmak için RSS zorlanıyor
Load More Videos: Daha Fazla Video Yükle Load More Videos: Daha Fazla Video Yükle
Trending: 'Trendler' Trending:
Trending: 'Trendler'
Most Popular: 'Popüler Olanlar' Most Popular: 'Popüler Olanlar'
Playlists: 'Oynatma Listeleri' Playlists: 'Oynatma Listeleri'
User Playlists: User Playlists:

View File

@ -83,7 +83,8 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Отримання Підписок. Будь ласка, зачекайте.' 'Getting Subscriptions. Please wait.': 'Отримання Підписок. Будь ласка, зачекайте.'
Refresh Subscriptions: 'Оновити Підписки' Refresh Subscriptions: 'Оновити Підписки'
Load More Videos: 'Завантажити більше відео' Load More Videos: 'Завантажити більше відео'
Trending: 'Популярне' Trending:
Trending: 'Популярне'
Most Popular: 'Найпопулярніші' Most Popular: 'Найпопулярніші'
Playlists: 'Добірки' Playlists: 'Добірки'
User Playlists: User Playlists:

View File

@ -75,7 +75,8 @@ Subscriptions:
Refresh Subscriptions: Refresh đăng ký Refresh Subscriptions: Refresh đăng ký
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Kênh This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Kênh
này có nhiều người đăng ký. Buộc RSS để tránh bị giới hạn này có nhiều người đăng ký. Buộc RSS để tránh bị giới hạn
Trending: 'Xu hướng' Trending:
Trending: 'Xu hướng'
Most Popular: 'Phổ biến nhất' Most Popular: 'Phổ biến nhất'
Playlists: 'Danh sách phát' Playlists: 'Danh sách phát'
User Playlists: User Playlists:

View File

@ -74,7 +74,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 这个配置文件有大量订阅。 This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 这个配置文件有大量订阅。
强制RSS已防止速率限制 强制RSS已防止速率限制
Load More Videos: 加载更多视频 Load More Videos: 加载更多视频
Trending: '热门' Trending:
Trending: '热门'
Most Popular: '最流行' Most Popular: '最流行'
Playlists: '播放列表' Playlists: '播放列表'
User Playlists: User Playlists:

View File

@ -74,7 +74,8 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 這個設定檔有大量訂閱。 This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 這個設定檔有大量訂閱。
強制RSS已防止速率限制 強制RSS已防止速率限制
Load More Videos: 載入更多影片 Load More Videos: 載入更多影片
Trending: '發燒影片' Trending:
Trending: '發燒影片'
Most Popular: '最受歡迎' Most Popular: '最受歡迎'
Playlists: '播放清單' Playlists: '播放清單'
User Playlists: User Playlists: