-<div class="sub-menu" [ngClass]="{ 'no-scroll': isModalOpened }">
+<div class="sub-menu" [ngClass]="{ 'sub-menu-fixed': !isBroadcastMessageDisplayed, 'no-scroll': isModalOpened }">
<ng-container *ngFor="let menuEntry of menuEntries; index as id">
- <a *ngIf="menuEntry.routerLink" [routerLink]="menuEntry.routerLink" routerLinkActive="active" class="title-page title-page-settings">{{ menuEntry.label }}</a>
+ <a *ngIf="menuEntry.routerLink && isDisplayed(menuEntry)" [routerLink]="menuEntry.routerLink" routerLinkActive="active" class="title-page title-page-settings" #routerLink (click)="onActiveLinkScrollToTop(routerLink)">{{ menuEntry.label }}</a>
- <div *ngIf="!menuEntry.routerLink" ngbDropdown class="parent-entry"
- #dropdown="ngbDropdown" (mouseleave)="closeDropdownIfHovered(dropdown)">
+ <div *ngIf="!menuEntry.routerLink && isDisplayed(menuEntry)" ngbDropdown class="parent-entry"
+ #dropdown="ngbDropdown" autoClose="true" container="body">
<span
*ngIf="isInSmallView"
+ tabindex=0
[ngClass]="{ active: !!suffixLabels[menuEntry.label] }"
- (click)="openModal(id)" role="button" class="title-page title-page-settings">
+ (click)="openModal(id)" (keydown.enter)="openModal(id)"
+ role="button" class="title-page title-page-settings">
<ng-container i18n>{{ menuEntry.label }}</ng-container>
- <ng-container *ngIf="!!suffixLabels[menuEntry.label]"> - {{ suffixLabels[menuEntry.label] }}</ng-container>
</span>
<span
*ngIf="!isInSmallView"
- (mouseenter)="openDropdownOnHover(dropdown)" [ngClass]="{ active: !!suffixLabels[menuEntry.label] }" ngbDropdownAnchor
- (click)="dropdownAnchorClicked(dropdown)" role="button" class="title-page title-page-settings"
+ tabindex=0
+ [ngClass]="{ active: !!suffixLabels[menuEntry.label] }" ngbDropdownAnchor
+ (click)="dropdownAnchorClicked(dropdown)" (keydown.enter)="dropdownAnchorClicked(dropdown)"
+ role="button" class="title-page title-page-settings"
>
<ng-container i18n>{{ menuEntry.label }}</ng-container>
- <ng-container *ngIf="!!suffixLabels[menuEntry.label]"> - {{ suffixLabels[menuEntry.label] }}</ng-container>
</span>
<div ngbDropdownMenu>
- <a *ngFor="let menuChild of menuEntry.children" class="dropdown-item" [ngClass]="{ icon: hasIcons }" [routerLink]="menuChild.routerLink">
- <my-global-icon *ngIf="menuChild.iconName" [iconName]="menuChild.iconName" aria-hidden="true"></my-global-icon>
+ <ng-container *ngFor="let menuChild of menuEntry.children">
+ <a *ngIf="isDisplayed(menuChild)" class="dropdown-item"
+ [ngClass]="{ icon: hasIcons }"
+ [routerLink]="menuChild.routerLink"
+ #routerLink (click)="onActiveLinkScrollToTop(routerLink)">
+ <my-global-icon *ngIf="menuChild.iconName" [iconName]="menuChild.iconName" aria-hidden="true"></my-global-icon>
- {{ menuChild.label }}
- </a>
+ {{ menuChild.label }}
+ </a>
+ </ng-container>
</div>
</div>
</ng-container>
<div class="modal-body">
<ng-container *ngFor="let menuEntry of menuEntries; index as id">
<div [ngClass]="{ hidden: id !== currentMenuEntryIndex }">
- <a *ngFor="let menuChild of menuEntry.children"
- [ngClass]="{ icon: hasIcons }"
- [routerLink]="menuChild.routerLink" routerLinkActive="active" (click)="dismissOtherModals()">
- <my-global-icon *ngIf="menuChild.iconName" [iconName]="menuChild.iconName" aria-hidden="true"></my-global-icon>
+ <ng-container *ngFor="let menuChild of menuEntry.children">
+ <a *ngIf="isDisplayed(menuChild)"
+ [ngClass]="{ icon: hasIcons }"
+ [routerLink]="menuChild.routerLink" routerLinkActive="active"
+ #routerLink (click)="dismissOtherModals(); onActiveLinkScrollToTop(routerLink)">
+ <my-global-icon *ngIf="menuChild.iconName" [iconName]="menuChild.iconName" aria-hidden="true"></my-global-icon>
- {{ menuChild.label }}
- </a>
+ {{ menuChild.label }}
+ </a>
+ </ng-container>
</div>
</ng-container>
</div>