Progress on getting the menu menu items - dev only

This commit is contained in:
Alex Martzios 2021-12-23 16:12:51 +02:00
parent 660c5955f7
commit ce37ca54f7
2 changed files with 23 additions and 9 deletions

View File

@ -4,10 +4,10 @@
<div *ngIf="!showLoading" class="uk-grid" uk-grid> <div *ngIf="!showLoading" class="uk-grid" uk-grid>
<div class="uk-width-1-1"> <div class="uk-width-1-1">
<ul *ngIf="!isPortalAdministrator" class="uk-subnav uk-subnav-pill uk-flex uk-flex-middle"> <ul *ngIf="!isPortalAdministrator" class="uk-subnav uk-subnav-pill uk-flex uk-flex-middle">
<li [class.uk-active]="filterForm.get('status').value === 'resources'" class="uk-visible-toggle uk-position-relative uk-padding-remove-horizontal"> <li *ngFor="let item of rootMenuItems; let i=index" [class.uk-active]="activeRootMenu==item['_id']" class="uk-visible-toggle uk-position-relative uk-padding-remove-horizontal">
<span> <span>
<a (click)="filterForm.get('status').setValue('resources')"> <a (click)="filterForm.get('status').setValue('resources'); activeRootMenu=item['_id']">
<span class="title">Resourses</span> <span class="title">{{item.title}}</span>
</a> </a>
<span class="uk-invisible-hover uk-position-center-right color"> <span class="uk-invisible-hover uk-position-center-right color">
<span class="clickable" uk-icon="more-vertical"></span> <span class="clickable" uk-icon="more-vertical"></span>
@ -84,8 +84,8 @@
<loading></loading> <loading></loading>
</div> </div>
<div *ngIf="!showLoading"> <div *ngIf="!showLoading">
<ul class="uk-list submenu-items"> <ul *ngIf='activeRootMenu' class="uk-list submenu-items">
<li class="uk-card uk-card-default uk-margin-bottom"> <li *ngFor="let child of getActiveRootItem(activeRootMenu).items" class="uk-card uk-card-default uk-margin-bottom">
<div class="uk-grid uk-grid-divider uk-padding" uk-grid> <div class="uk-grid uk-grid-divider uk-padding" uk-grid>
<div class="uk-width-4-5"> <div class="uk-width-4-5">
<div class="uk-grid uk-flex uk-flex-middle"> <div class="uk-grid uk-flex uk-flex-middle">
@ -93,7 +93,7 @@
<input type="checkbox" id="" class="checkBox" name="" value=""> <input type="checkbox" id="" class="checkBox" name="" value="">
</div> </div>
<div class="uk-width-expand uk-margin-medium-bottom"> <div class="uk-width-expand uk-margin-medium-bottom">
Name and info {{child.title}}
</div> </div>
<div class="uk-grid uk-width-1-1 uk-margin-left"> <div class="uk-grid uk-width-1-1 uk-margin-left">
Additional info Additional info

View File

@ -27,10 +27,15 @@ export class MenuComponent implements OnInit {
public checkboxes: CheckMenuItem[] = []; public checkboxes: CheckMenuItem[] = [];
public menuItems: MenuItem[] = []; // public menuItems: MenuItem[] = [];
// public rootMenuForm: FormGroup; // public rootMenuForm: FormGroup;
public activeRootMenu: string;
public menuItemForm: FormGroup; public menuItemForm: FormGroup;
public rootMenuItems = [];
public menuItems = [];
public allPages = []; public allPages = [];
public keyword = ''; public keyword = '';
@ -93,12 +98,21 @@ export class MenuComponent implements OnInit {
this._helpContentService.getMenuItems(this.portal).subscribe( this._helpContentService.getMenuItems(this.portal).subscribe(
data => { data => {
console.log(data); console.log(data);
this.rootMenuItems = data;
if(data && data.length > 0) {
this.activeRootMenu = data[0]['_id'];
console.log(this.activeRootMenu);
}
}, },
err => console.error("Server error fetching menu items: ", err) err => console.error("Server error fetching menu items: ", err)
) )
); );
} }
getActiveRootItem(id: string): MenuItem {
return this.rootMenuItems.find(element => element['_id'] == id);
}
getPages() { getPages() {
this.subscriptions.push( this.subscriptions.push(
this._helpContentService.getAllPages(this.properties.adminToolsAPIURL,this.portal).subscribe( this._helpContentService.getAllPages(this.properties.adminToolsAPIURL,this.portal).subscribe(
@ -120,10 +134,10 @@ export class MenuComponent implements OnInit {
this.menuItemForm = this._fb.group({ this.menuItemForm = this._fb.group({
id: this._fb.control(""), id: this._fb.control(""),
title: this._fb.control("",Validators.required), title: this._fb.control("",Validators.required),
type: this._fb.control("",Validators.required), type: this._fb.control(""),
route: this._fb.control(""), route: this._fb.control(""),
url: this._fb.control(""), url: this._fb.control(""),
isEnabled: this._fb.control("",Validators.required), isEnabled: this._fb.control(""),
}); });
this.menuItemsModalOpen('Create Root Menu', 'Save Changes'); this.menuItemsModalOpen('Create Root Menu', 'Save Changes');
} }