X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Bvideos%2Fvideos-routing.module.ts;h=8c777fbb6a5fe40ad49b6d362239e9e251dd9ca7;hb=25fd0b59f6026a4bc1f05599ed2fd733e359d9a6;hp=e0e877fc673eba0c3781ccfa6f7ba9e01af5d5f7;hpb=1942f11d5ee6926ad93dc1b79fae18325ba5de18;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+videos/videos-routing.module.ts b/client/src/app/+videos/videos-routing.module.ts index e0e877fc6..8c777fbb6 100644 --- a/client/src/app/+videos/videos-routing.module.ts +++ b/client/src/app/+videos/videos-routing.module.ts @@ -1,118 +1,65 @@ import { NgModule } from '@angular/core' -import { RouterModule, Routes } from '@angular/router' -import { MetaGuard } from '@ngx-meta/core' +import { RouterModule, Routes, UrlSegment } from '@angular/router' +import { LoginGuard } from '@app/core' +import { VideosListCommonPageComponent } from './video-list' import { VideoOverviewComponent } from './video-list/overview/video-overview.component' -import { VideoLocalComponent } from './video-list/video-local.component' -import { VideoMostLikedComponent } from './video-list/video-most-liked.component' -import { VideoRecentlyAddedComponent } from './video-list/video-recently-added.component' -import { VideoTrendingComponent } from './video-list/video-trending.component' import { VideoUserSubscriptionsComponent } from './video-list/video-user-subscriptions.component' -import { VideosComponent } from './videos.component' const videosRoutes: Routes = [ { path: '', - component: VideosComponent, - canActivateChild: [ MetaGuard ], children: [ { path: 'overview', component: VideoOverviewComponent, data: { meta: { - title: 'Discover videos' - } - } - }, - { - path: 'trending', - component: VideoTrendingComponent, - data: { - meta: { - title: 'Trending videos' - }, - reuse: { - enabled: true, - key: 'trending-videos-list' + title: $localize`Discover videos` } } }, + { + // Old URL redirection path: 'most-liked', - component: VideoMostLikedComponent, - data: { - meta: { - title: 'Most liked videos' - }, - reuse: { - enabled: true, - key: 'most-liked-videos-list' - } - } + redirectTo: 'trending?sort=most-liked' }, { - path: 'recently-added', - component: VideoRecentlyAddedComponent, + matcher: (url: UrlSegment[]) => { + if (url.length === 1 && [ 'recently-added', 'trending', 'local' ].includes(url[0].path)) { + return { + consumed: url, + posParams: { + page: new UrlSegment(url[0].path, {}) + } + } + } + + return null + }, + + component: VideosListCommonPageComponent, data: { - meta: { - title: 'Recently added videos' - }, reuse: { enabled: true, - key: 'recently-added-videos-list' + key: 'videos-list' } } }, + { path: 'subscriptions', + canActivate: [ LoginGuard ], component: VideoUserSubscriptionsComponent, data: { meta: { - title: 'Subscriptions' + title: $localize`Subscriptions` }, reuse: { enabled: true, key: 'subscription-videos-list' } } - }, - { - path: 'local', - component: VideoLocalComponent, - data: { - meta: { - title: 'Local videos' - }, - reuse: { - enabled: true, - key: 'local-videos-list' - } - } - }, - { - path: 'upload', - loadChildren: () => import('@app/+videos/+video-edit/video-add.module').then(m => m.VideoAddModule), - data: { - meta: { - title: 'Upload a video' - } - } - }, - { - path: 'update/:uuid', - loadChildren: () => import('@app/+videos/+video-edit/video-update.module').then(m => m.VideoUpdateModule), - data: { - meta: { - title: 'Edit a video' - } - } - }, - { - path: 'watch', - loadChildren: () => import('@app/+videos/+video-watch/video-watch.module').then(m => m.VideoWatchModule), - data: { - preload: 3000 - } } ] }