Translate window titles (#1321)
* Update Titles to change based on locale * Update Title on Forward/Backwards navigation * Revert "Update Title on Forward/Backwards navigation" This reverts commit 0a57825e920911275dcabfbb36d44712a452da15. * Translate Window Titles -Updated en-US & en_GB localization files to include 'Playlist" and "Profile Settings" - Updated app to dynamically change titles + translate (App.js sets title instead of router now) - Channel & Video get title based on Channel Name & Video name (changing those titles are in their respective views) * Revert "Update Titles to change based on locale" This reverts commit 9e8081606710c2a63655dc33594c542af7826df8. * Re-add update title to channel view * fix playlist title * Fix 'Edit Profile' title
This commit is contained in:
parent
6522521b88
commit
93a48ffe24
|
@ -71,6 +71,20 @@ export default Vue.extend({
|
|||
profileList: function () {
|
||||
return this.$store.getters.getProfileList
|
||||
},
|
||||
windowTitle: function () {
|
||||
if (this.$route.meta.title !== 'Channel' && this.$route.meta.title !== 'Watch') {
|
||||
let title =
|
||||
this.$route.meta.path === '/home'
|
||||
? process.env.PRODUCT_NAME
|
||||
: `${this.$t(this.$route.meta.title)} - ${process.env.PRODUCT_NAME}`
|
||||
if (!title) {
|
||||
title = process.env.PRODUCT_NAME
|
||||
}
|
||||
return title
|
||||
} else {
|
||||
return null
|
||||
}
|
||||
},
|
||||
activeProfile: function () {
|
||||
return this.$store.getters.getActiveProfile
|
||||
},
|
||||
|
@ -84,6 +98,12 @@ export default Vue.extend({
|
|||
return this.$store.getters.getDefaultInvidiousInstance
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
windowTitle: 'setWindowTitle'
|
||||
},
|
||||
created () {
|
||||
this.setWindowTitle()
|
||||
},
|
||||
mounted: function () {
|
||||
this.grabUserSettings().then(async () => {
|
||||
await this.fetchInvidiousInstances()
|
||||
|
@ -383,6 +403,11 @@ export default Vue.extend({
|
|||
'setInvidiousInstancesList'
|
||||
]),
|
||||
|
||||
setWindowTitle: function() {
|
||||
if (this.windowTitle !== null) {
|
||||
document.title = this.windowTitle
|
||||
}
|
||||
},
|
||||
...mapActions([
|
||||
'showToast',
|
||||
'openExternalLink',
|
||||
|
|
|
@ -21,7 +21,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/',
|
||||
meta: {
|
||||
title: 'Subscriptions',
|
||||
title: 'Subscriptions.Subscriptions',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: Subscriptions
|
||||
|
@ -29,7 +29,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/subscriptions',
|
||||
meta: {
|
||||
title: 'Subscriptions',
|
||||
title: 'Subscriptions.Subscriptions',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: Subscriptions
|
||||
|
@ -37,7 +37,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/settings/profile',
|
||||
meta: {
|
||||
title: 'Profile Settings',
|
||||
title: 'Profile.Profile Settings',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: ProfileSettings
|
||||
|
@ -46,7 +46,7 @@ const router = new Router({
|
|||
path: '/settings/profile/new',
|
||||
name: 'newProfile',
|
||||
meta: {
|
||||
title: 'New Profile',
|
||||
title: 'Profile.Create New Profile',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: ProfileEdit
|
||||
|
@ -55,7 +55,7 @@ const router = new Router({
|
|||
path: '/settings/profile/edit/:id',
|
||||
name: 'editProfile',
|
||||
meta: {
|
||||
title: 'Edit Profile',
|
||||
title: 'Profile.Edit Profile',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: ProfileEdit
|
||||
|
@ -79,7 +79,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/userplaylists',
|
||||
meta: {
|
||||
title: 'User Playlists',
|
||||
title: 'User Playlists.Your Playlists',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: UserPlaylists
|
||||
|
@ -88,7 +88,7 @@ const router = new Router({
|
|||
path: '/history',
|
||||
name: 'history',
|
||||
meta: {
|
||||
title: 'History',
|
||||
title: 'History.History',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: History
|
||||
|
@ -96,7 +96,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/settings',
|
||||
meta: {
|
||||
title: 'Settings',
|
||||
title: 'Settings.Settings',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: Settings
|
||||
|
@ -104,7 +104,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/about',
|
||||
meta: {
|
||||
title: 'About',
|
||||
title: 'About.About',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: About
|
||||
|
@ -112,7 +112,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/search/:query',
|
||||
meta: {
|
||||
title: 'Search',
|
||||
title: 'Search Filters.Search Results',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: Search
|
||||
|
@ -120,7 +120,7 @@ const router = new Router({
|
|||
{
|
||||
path: '/playlist/:id',
|
||||
meta: {
|
||||
title: 'Playlist',
|
||||
title: 'Playlist.Playlist',
|
||||
icon: 'fa-home'
|
||||
},
|
||||
component: Playlist
|
||||
|
@ -155,18 +155,4 @@ const router = new Router({
|
|||
}
|
||||
})
|
||||
|
||||
// dynamically set application title to current view
|
||||
router.afterEach(to => {
|
||||
let title =
|
||||
to.path === '/home'
|
||||
? process.env.PRODUCT_NAME
|
||||
: `${to.meta.title} - ${process.env.PRODUCT_NAME}`
|
||||
|
||||
if (!title) {
|
||||
title = 'Home'
|
||||
}
|
||||
|
||||
document.title = title
|
||||
})
|
||||
|
||||
export default router
|
||||
|
|
|
@ -250,6 +250,7 @@ export default Vue.extend({
|
|||
ytch.getChannelInfo(this.id).then((response) => {
|
||||
this.id = response.authorId
|
||||
this.channelName = response.author
|
||||
document.title = `${this.channelName} - ${process.env.PRODUCT_NAME}`
|
||||
if (this.hideChannelSubscriptions || response.subscriberCount === 0) {
|
||||
this.subCount = null
|
||||
} else {
|
||||
|
@ -344,6 +345,7 @@ export default Vue.extend({
|
|||
this.invidiousGetChannelInfo(this.id).then((response) => {
|
||||
console.log(response)
|
||||
this.channelName = response.author
|
||||
document.title = `${this.channelName} - ${process.env.PRODUCT_NAME}`
|
||||
this.id = response.authorId
|
||||
if (this.hideChannelSubscriptions) {
|
||||
this.subCount = null
|
||||
|
|
|
@ -327,6 +327,7 @@ About:
|
|||
Donate: Donate
|
||||
|
||||
Profile:
|
||||
Profile Settings: Profile Settings
|
||||
Profile Select: Profile Select
|
||||
Profile Filter: Profile Filter
|
||||
All Channels: All Channels
|
||||
|
@ -525,6 +526,7 @@ Videos:
|
|||
#& Playlists
|
||||
Playlist:
|
||||
#& About
|
||||
Playlist: Playlist
|
||||
View Full Playlist: View Full Playlist
|
||||
Videos: Videos
|
||||
View: View
|
||||
|
|
|
@ -372,6 +372,7 @@ About:
|
|||
Licensed under the AGPLv3: Licensed under the AGPLv3
|
||||
Source code: Source code
|
||||
Profile:
|
||||
Profile Settings: Profile Settings
|
||||
Profile Select: 'Profile Select'
|
||||
All Channels: 'All Channels'
|
||||
Profile Manager: 'Profile Manager'
|
||||
|
@ -572,6 +573,7 @@ Videos:
|
|||
#& Playlists
|
||||
Playlist:
|
||||
#& About
|
||||
Playlist: Playlist
|
||||
View Full Playlist: 'View Full Playlist'
|
||||
Videos: 'Videos'
|
||||
View: 'View'
|
||||
|
|
Loading…
Reference in New Issue