mirror of
https://github.com/owntone/owntone-server.git
synced 2024-12-28 08:05:56 -05:00
[web] Use named route for genre pages.
Switching to named routes in order to reduce future maintenance.
This commit is contained in:
parent
b821fdf01f
commit
fee215a25c
@ -57,7 +57,7 @@ export default {
|
|||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
open_genre(genre) {
|
open_genre(genre) {
|
||||||
this.$router.push({ name: 'music-genre', params: { genre: genre.name } })
|
this.$router.push({ name: 'music-genre', params: { name: genre.name } })
|
||||||
},
|
},
|
||||||
|
|
||||||
open_dialog(genre) {
|
open_dialog(genre) {
|
||||||
|
@ -92,7 +92,7 @@ export default {
|
|||||||
this.$emit('close')
|
this.$emit('close')
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: 'music-genre',
|
name: 'music-genre',
|
||||||
params: { genre: this.genre.name }
|
params: { name: this.genre.name }
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -236,7 +236,7 @@ export default {
|
|||||||
open_genre() {
|
open_genre() {
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: 'music-genre',
|
name: 'music-genre',
|
||||||
params: { genre: this.item.genre }
|
params: { name: this.item.genre }
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -271,7 +271,7 @@ export default {
|
|||||||
open_genre() {
|
open_genre() {
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: 'music-genre',
|
name: 'music-genre',
|
||||||
params: { genre: this.track.genre }
|
params: { name: this.track.genre }
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -46,17 +46,17 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import ContentWithHeading from '@/templates/ContentWithHeading.vue'
|
import ContentWithHeading from '@/templates/ContentWithHeading.vue'
|
||||||
|
import { GroupByList, byName } from '@/lib/GroupByList'
|
||||||
import IndexButtonList from '@/components/IndexButtonList.vue'
|
import IndexButtonList from '@/components/IndexButtonList.vue'
|
||||||
import ListAlbums from '@/components/ListAlbums.vue'
|
import ListAlbums from '@/components/ListAlbums.vue'
|
||||||
import ModalDialogGenre from '@/components/ModalDialogGenre.vue'
|
import ModalDialogGenre from '@/components/ModalDialogGenre.vue'
|
||||||
import webapi from '@/webapi'
|
import webapi from '@/webapi'
|
||||||
import { GroupByList, byName } from '@/lib/GroupByList'
|
|
||||||
|
|
||||||
const dataObject = {
|
const dataObject = {
|
||||||
load(to) {
|
load(to) {
|
||||||
return Promise.all([
|
return Promise.all([
|
||||||
webapi.library_genre(to.params.genre),
|
webapi.library_genre(to.params.name),
|
||||||
webapi.library_genre_albums(to.params.genre)
|
webapi.library_genre_albums(to.params.name)
|
||||||
])
|
])
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -68,7 +68,7 @@ const dataObject = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'PageGenre',
|
name: 'PageGenreAlbum',
|
||||||
components: {
|
components: {
|
||||||
ContentWithHeading,
|
ContentWithHeading,
|
||||||
IndexButtonList,
|
IndexButtonList,
|
||||||
@ -107,7 +107,7 @@ export default {
|
|||||||
this.show_details_modal = false
|
this.show_details_modal = false
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: 'music-genre-tracks',
|
name: 'music-genre-tracks',
|
||||||
params: { genre: this.genre.name }
|
params: { name: this.genre.name }
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
@ -66,8 +66,8 @@ import webapi from '@/webapi'
|
|||||||
const dataObject = {
|
const dataObject = {
|
||||||
load(to) {
|
load(to) {
|
||||||
return Promise.all([
|
return Promise.all([
|
||||||
webapi.library_genre(to.params.genre),
|
webapi.library_genre(to.params.name),
|
||||||
webapi.library_genre_tracks(to.params.genre)
|
webapi.library_genre_tracks(to.params.name)
|
||||||
])
|
])
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -148,7 +148,7 @@ export default {
|
|||||||
this.show_details_modal = false
|
this.show_details_modal = false
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: 'music-genre',
|
name: 'music-genre',
|
||||||
params: { genre: this.genre.name }
|
params: { name: this.genre.name }
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ import PageComposerAlbums from '@/pages/PageComposerAlbums.vue'
|
|||||||
import PageComposerTracks from '@/pages/PageComposerTracks.vue'
|
import PageComposerTracks from '@/pages/PageComposerTracks.vue'
|
||||||
import PageComposers from '@/pages/PageComposers.vue'
|
import PageComposers from '@/pages/PageComposers.vue'
|
||||||
import PageFiles from '@/pages/PageFiles.vue'
|
import PageFiles from '@/pages/PageFiles.vue'
|
||||||
import PageGenre from '@/pages/PageGenre.vue'
|
import PageGenreAlbum from '@/pages/PageGenreAlbum.vue'
|
||||||
import PageGenreTracks from '@/pages/PageGenreTracks.vue'
|
import PageGenreTracks from '@/pages/PageGenreTracks.vue'
|
||||||
import PageGenres from '@/pages/PageGenres.vue'
|
import PageGenres from '@/pages/PageGenres.vue'
|
||||||
import PagePlaylist from '@/pages/PagePlaylist.vue'
|
import PagePlaylist from '@/pages/PagePlaylist.vue'
|
||||||
@ -118,12 +118,12 @@ export const router = createRouter({
|
|||||||
{
|
{
|
||||||
name: 'audiobooks',
|
name: 'audiobooks',
|
||||||
path: '/audiobooks',
|
path: '/audiobooks',
|
||||||
redirect: '/audiobooks/artists'
|
redirect: { name: 'audiobooks-artists' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'music',
|
name: 'music',
|
||||||
path: '/music',
|
path: '/music',
|
||||||
redirect: '/music/browse'
|
redirect: { name: 'music-browse' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
component: PageBrowse,
|
component: PageBrowse,
|
||||||
@ -186,16 +186,16 @@ export const router = createRouter({
|
|||||||
path: '/files'
|
path: '/files'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
component: PageGenre,
|
component: PageGenreAlbum,
|
||||||
meta: { has_index: true, show_progress: true },
|
meta: { has_index: true, show_progress: true },
|
||||||
path: '/music/genres/:genre',
|
path: '/music/genres/:name/albums',
|
||||||
name: 'music-genre'
|
name: 'music-genre'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/music/genres/:genre/tracks',
|
|
||||||
name: 'music-genre-tracks',
|
|
||||||
component: PageGenreTracks,
|
component: PageGenreTracks,
|
||||||
meta: { show_progress: true, has_index: true }
|
meta: { has_index: true, show_progress: true },
|
||||||
|
name: 'music-genre-tracks',
|
||||||
|
path: '/music/genres/:name/tracks'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
component: PageGenres,
|
component: PageGenres,
|
||||||
|
Loading…
Reference in New Issue
Block a user