feat(sidemenu): add limit for shown organizations

This commit is contained in:
Othyus 2016-06-28 08:11:37 +02:00
parent e204c308bf
commit 31317abbeb
2 changed files with 7 additions and 3 deletions

View File

@ -22,7 +22,10 @@
{{::menuItem.text}}
</a>
</li>
<li><input ng-model="::ctrl.orgFilter" type="text" ng-change="::ctrl.loadOrgsItems();" class="gf-form-input" placeholder="Filter"></li>
<li ng-show="ctrl.orgs.length > ctrl.maxShownOrgs">
<input ng-model="::ctrl.orgFilter" type="text" ng-change="::ctrl.loadOrgsItems();" class="gf-input-small" placeholder="Filter">
<span class="sidemenu-item-text">Max shown : {{::ctrl.maxShownOrgs}}</span>
</li>
<li ng-repeat="orgItem in ctrl.orgItems" ng-class="::orgItem.cssClass">
<a href="{{::orgItem.url}}" ng-show="::orgItem.url" target="{{::orgItem.target}}">
<i class="{{::orgItem.icon}}" ng-show="::orgItem.icon"></i>

View File

@ -15,6 +15,7 @@ export class SideMenuCtrl {
orgFilter: string;
orgItems: any;
orgs: any;
maxShownOrgs: number;
/** @ngInject */
constructor(private $scope, private $location, private contextSrv, private backendSrv, private $element) {
@ -22,7 +23,7 @@ export class SideMenuCtrl {
this.user = contextSrv.user;
this.appSubUrl = config.appSubUrl;
this.showSignout = this.contextSrv.isSignedIn && !config['authProxyEnabled'];
this.maxShownOrgs = 10;
this.mainLinks = config.bootData.mainNavLinks;
this.openUserDropdown();
@ -79,7 +80,7 @@ export class SideMenuCtrl {
return;
}
if (this.orgFilter === '' || org.name.indexOf(this.orgFilter) !== -1){
if (this.orgItems.length < this.maxShownOrgs && (this.orgFilter === '' || org.name.indexOf(this.orgFilter) !== -1)){
this.orgItems.push({
text: "Switch to " + org.name,
icon: "fa fa-fw fa-random",