minor edit on breadcrumb

This commit is contained in:
Nikolaos Laskaris 2017-11-22 12:55:40 +02:00
parent b48a4b6264
commit ae461a4362
1 changed files with 14 additions and 4 deletions

View File

@ -32,8 +32,8 @@ export class BreadcrumbComponent implements OnInit {
//this.breadcrumbData.length = 0; //this.breadcrumbData.length = 0;
this.route.children.forEach( child => { this.route.children.forEach( child => {
let menuItem : MenuItem = this.guessMenuItemFromActivatedRoute(child, event); let guessed = this.guessMenuItemFromActivatedRoute(child, event);
this.adaptBreadcrumbByMenuItem(menuItem); this.adaptBreadcrumbByMenuItem(guessed.menuItem, guessed.isBaseComponent);
}) })
} }
@ -45,6 +45,8 @@ export class BreadcrumbComponent implements OnInit {
guessMenuItemFromActivatedRoute(activatedRoute : any, event : NavigationEnd) { //it's important to leave it as "any" guessMenuItemFromActivatedRoute(activatedRoute : any, event : NavigationEnd) { //it's important to leave it as "any"
let menuItem : MenuItem = null; let menuItem : MenuItem = null;
let isBaseComponent : boolean = false;
let componentName = activatedRoute.component.name; let componentName = activatedRoute.component.name;
let params = activatedRoute.queryParams.getValue(); let params = activatedRoute.queryParams.getValue();
@ -53,21 +55,26 @@ export class BreadcrumbComponent implements OnInit {
if(componentName == "ProjectsComponent") { if(componentName == "ProjectsComponent") {
label = "Projects"; label = "Projects";
isBaseComponent = true;
} }
if(componentName == "DmpComponent"){ if(componentName == "DmpComponent"){
label = "My Data Management Plans"; label = "My Data Management Plans";
isBaseComponent = true;
} }
if(componentName == "DatasetsComponent"){ if(componentName == "DatasetsComponent"){
label = "Datasets of DMP '"+params["label"]+"'"; label = "Datasets of DMP '"+params["label"]+"'";
isBaseComponent = false;
} }
if(componentName == "DynamicFormComponent"){ if(componentName == "DynamicFormComponent"){
label = "Form of dataset '"+params["label"]+"'"; label = "Form of dataset '"+params["label"]+"'";
isBaseComponent = false;
} }
if(componentName == "DmpDetailedComponent"){ if(componentName == "DmpDetailedComponent"){
label = "Details of DMP '"+params["label"]+"'"; label = "Details of DMP '"+params["label"]+"'";
isBaseComponent = false;
} }
@ -76,16 +83,19 @@ export class BreadcrumbComponent implements OnInit {
console.log("COMPONENT NAME="+componentName); console.log("COMPONENT NAME="+componentName);
return menuItem; return {"menuItem": menuItem, "isBaseComponent": isBaseComponent};
} }
adaptBreadcrumbByMenuItem(menuItem : MenuItem){ adaptBreadcrumbByMenuItem(menuItem : MenuItem, isBaseComponent : boolean){
if(menuItem==null){ if(menuItem==null){
this.breadcrumbData.length = 0; this.breadcrumbData.length = 0;
return; return;
} }
if(isBaseComponent){
this.breadcrumbData.length = 0;
}
let breadcrumbDataNew: MenuItem[] = new Array<MenuItem>(); let breadcrumbDataNew: MenuItem[] = new Array<MenuItem>();
for(var i=0; i<this.breadcrumbData.length;i++){ for(var i=0; i<this.breadcrumbData.length;i++){