[CST-4880] Add ServerCheckGuard in order to show internal server error page when rest server is not available

This commit is contained in:
Giuseppe Digilio
2022-01-24 22:04:02 +01:00
parent 4fdd3b84cb
commit 4cfff33301
15 changed files with 290 additions and 21 deletions

View File

@@ -1,5 +1,5 @@
import { map } from 'rxjs/operators';
import { Component, Inject, OnInit, Input } from '@angular/core';
import { Component, Inject, Input, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { combineLatest as combineLatestObservable, Observable, of } from 'rxjs';
@@ -19,6 +19,7 @@ import { ThemeConfig } from '../../config/theme.model';
import { Angulartics2DSpace } from '../statistics/angulartics/dspace-provider';
import { environment } from '../../environments/environment';
import { slideSidebarPadding } from '../shared/animations/slide';
import { getPageInternalServerErrorRoute } from '../app-routing-paths';
@Component({
selector: 'ds-root',
@@ -68,9 +69,13 @@ export class RootComponent implements OnInit {
this.totalSidebarWidth = this.cssService.getVariable('totalSidebarWidth');
const sidebarCollapsed = this.menuService.isMenuCollapsed(MenuID.ADMIN);
this.slideSidebarOver = combineLatestObservable(sidebarCollapsed, this.windowService.isXsOrSm())
this.slideSidebarOver = combineLatestObservable([sidebarCollapsed, this.windowService.isXsOrSm()])
.pipe(
map(([collapsed, mobile]) => collapsed || mobile)
);
if (this.router.url === getPageInternalServerErrorRoute()) {
this.shouldShowRouteLoader = false;
}
}
}