blob: dc4fc1de00dd4b06d811ce80cde5d790cf1b05f8 [file] [log] [blame]
import {IModelStoreService} from '../../datasources/stores/model.store';
import {IXosAuthService} from '../../datasources/rest/auth.rest';
class DashboardController {
static $inject = ['$state', 'ModelStore', 'AuthService'];
public nodes: number;
public slices: number;
public instances: number;
constructor(
private $state: ng.ui.IStateService,
private store: IModelStoreService,
private auth: IXosAuthService
) {
if (!this.auth.isAuthenticated()) {
this.$state.go('login');
}
else {
this.store.query('node')
.subscribe((event) => this.nodes = event.length);
this.store.query('slice')
.subscribe((event) => this.slices = event.length);
this.store.query('instance')
.subscribe((event) => this.instances = event.length);
this.instances = 0;
this.nodes = 0;
this.slices = 0;
}
}
}
export const xosDashboard: angular.IComponentOptions = {
template: require('./dashboard.html'),
controllerAs: 'vm',
controller: DashboardController
};