X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Fapp%2Flayouts%2Fbreadcrumb%2FBreadcrumbComponent.ts;h=e273cdaf0a8e251c335e200dfbdfaae26721bb78;hb=29b97ba0b93fcad7441ede202e941e8efd55a6e3;hp=ccb9588c12565815268ed0a127123730220772dc;hpb=f2ae5462f9c1d6b7a649eb389c5a4c990501b5c4;p=osm%2FNG-UI.git diff --git a/src/app/layouts/breadcrumb/BreadcrumbComponent.ts b/src/app/layouts/breadcrumb/BreadcrumbComponent.ts index ccb9588..e273cda 100644 --- a/src/app/layouts/breadcrumb/BreadcrumbComponent.ts +++ b/src/app/layouts/breadcrumb/BreadcrumbComponent.ts @@ -19,6 +19,7 @@ * @file Bread Crumb component. */ import { Component, Injector, OnInit } from '@angular/core'; +import { Title } from '@angular/platform-browser'; import { ActivatedRoute, NavigationEnd, Router, RouterEvent, UrlSegment } from '@angular/router'; import { TranslateService } from '@ngx-translate/core'; import { BREADCRUMBITEM } from 'CommonModel'; @@ -58,11 +59,15 @@ export class BreadcrumbComponent implements OnInit { /** handle translate service @private */ private translateService: TranslateService; + /** Title Service in create ticket page */ + private titleService: Title; + constructor(injector: Injector) { this.injector = injector; this.router = this.injector.get(Router); this.activatedRoute = this.injector.get(ActivatedRoute); this.translateService = this.injector.get(TranslateService); + this.titleService = this.injector.get(Title); } /** Lifecyle Hooks the trigger before component is instantiate @public */ public ngOnInit(): void { @@ -70,7 +75,10 @@ export class BreadcrumbComponent implements OnInit { .pipe(filter((event: RouterEvent) => event instanceof NavigationEnd), startWith(undefined)) .subscribe(() => this.menuItems = this.createBreadcrumbs(this.activatedRoute.root)); } - + /** To set the title if the page @private */ + public setTitle(newTitle: string): void { + this.titleService.setTitle(newTitle); + } /** Generate breadcrumbs from data given the module routes @private */ private createBreadcrumbs(route: ActivatedRoute, url: string = '', breadcrumbs: BREADCRUMBITEM[] = []): BREADCRUMBITEM[] { @@ -99,9 +107,18 @@ export class BreadcrumbComponent implements OnInit { breadcrumbs.push(item); }); } + this.setTitleforApplication(breadcrumbs); return this.createBreadcrumbs(child, url, breadcrumbs); } } + /** Generate title from data given the module routes @private */ + private setTitleforApplication(breadcrumbs: BREADCRUMBITEM[]): void { + let addTitle: string = 'Open Source MANO'; + breadcrumbs.forEach((data: BREADCRUMBITEM): void => { + addTitle += ' | ' + this.translateService.instant(data.title); + }); + this.setTitle(addTitle); + } /** Check and update title based on type of operations @private */ private checkTitle(breadcrumbItem: BREADCRUMBITEM, opertionType: string): string { if (!isNullOrUndefined(breadcrumbItem.url)) {