private serverService: ServerService
) {
// The config is first loaded from the cache so try to get the default route
- const tmpConfig = this.serverService.getTmpConfig()
- if (tmpConfig?.instance?.defaultClientRoute) {
- this.defaultRoute = tmpConfig.instance.defaultClientRoute
+ const config = this.serverService.getHTMLConfig()
+ if (config?.instance?.defaultClientRoute) {
+ this.defaultRoute = config.instance.defaultClientRoute
}
- if (tmpConfig?.trending?.videos?.algorithms?.default) {
- this.defaultTrendingAlgorithm = tmpConfig.trending.videos.algorithms.default
+ if (config?.trending?.videos?.algorithms?.default) {
+ this.defaultTrendingAlgorithm = config.trending.videos.algorithms.default
}
- // Load default route
- this.serverService.getConfig()
- .subscribe(config => {
- const defaultRouteConfig = config.instance.defaultClientRoute
- const defaultTrendingConfig = config.trending.videos.algorithms.default
-
- if (defaultRouteConfig) this.defaultRoute = defaultRouteConfig
- if (defaultTrendingConfig) this.defaultTrendingAlgorithm = defaultTrendingConfig
- })
-
// Track previous url
this.currentUrl = this.router.url
router.events.subscribe(event => {
return this.defaultTrendingAlgorithm
}
- redirectToPreviousRoute () {
+ getPreviousUrl () {
+ return this.previousUrl
+ }
+
+ redirectToPreviousRoute (fallbackRoute?: string) {
const exceptions = [
'/verify-account',
'/reset-password'
]
- if (this.previousUrl) {
+ if (this.previousUrl && this.previousUrl !== '/') {
const isException = exceptions.find(e => this.previousUrl.startsWith(e))
if (!isException) return this.router.navigateByUrl(this.previousUrl)
}
+ if (fallbackRoute) {
+ return this.router.navigateByUrl(fallbackRoute)
+ }
+
return this.redirectToHomepage()
}