sidebar logic updates and fixes

This commit is contained in:
nixa 2016-05-19 13:11:31 +03:00
parent 2c2e93f355
commit 69acf25d43
2 changed files with 16 additions and 4 deletions

View file

@ -16,7 +16,7 @@ export class BaSidebar {
public menuItems:Array<any>; public menuItems:Array<any>;
public menuHeight:number; public menuHeight:number;
public isMenuCollapsed:boolean; public isMenuCollapsed:boolean = false;
public showHoverElem:boolean; public showHoverElem:boolean;
public hoverElemHeight:number; public hoverElemHeight:number;
@ -33,6 +33,7 @@ export class BaSidebar {
this.menuItems = this._sidebarService.getMenuItems(); this.menuItems = this._sidebarService.getMenuItems();
this._router.root.subscribe((path) => this._selectMenuItem(path)); this._router.root.subscribe((path) => this._selectMenuItem(path));
this._state.subscribe('menu.isCollapsed', (isCollapsed) => { this.isMenuCollapsed = isCollapsed; });
} }
public ngOnInit():void { public ngOnInit():void {
@ -65,7 +66,7 @@ export class BaSidebar {
this.menuCollapseStateChange(true); this.menuCollapseStateChange(true);
} }
public menuCollapseStateChange(isCollapsed):void { public menuCollapseStateChange(isCollapsed:boolean):void {
this.isMenuCollapsed = isCollapsed; this.isMenuCollapsed = isCollapsed;
this._state.notifyDataChanged('menu.isCollapsed', this.isMenuCollapsed); this._state.notifyDataChanged('menu.isCollapsed', this.isMenuCollapsed);
} }
@ -88,13 +89,13 @@ export class BaSidebar {
if (this.isMenuCollapsed) { if (this.isMenuCollapsed) {
this.menuExpand(); this.menuExpand();
if (!item.expanded) { if (!item.expanded) {
item.expanded = !item.expanded; item.expanded = true;
submenu.slideToggle();
} }
} else { } else {
item.expanded = !item.expanded; item.expanded = !item.expanded;
submenu.slideToggle(); submenu.slideToggle();
} }
return false; return false;
} }
@ -106,5 +107,9 @@ export class BaSidebar {
let currentMenu = this._sidebarService.setRouter(this._router).selectMenuItem(this.menuItems, currentPath); let currentMenu = this._sidebarService.setRouter(this._router).selectMenuItem(this.menuItems, currentPath);
this._state.notifyDataChanged('menu.activeLink', currentMenu); this._state.notifyDataChanged('menu.activeLink', currentMenu);
// hide menu after natigation on mobile devises
if (this._shouldMenuCollapse()) {
this.menuCollapse();
}
} }
} }

View file

@ -49,6 +49,13 @@ $angle-right: "\f101";
} }
} }
.ba-sidebar-item-expanded {
> ul.al-sidebar-sublist {
display: block!important;
}
}
.al-sidebar-list-item, .ba-sidebar-sublist-item { .al-sidebar-list-item, .ba-sidebar-sublist-item {
&.ba-sidebar-item-expanded { &.ba-sidebar-item-expanded {
> .al-sidebar-list-link { > .al-sidebar-list-link {