summaryrefslogtreecommitdiffstats
path: root/catalog-ui/src/app/view-models/admin-dashboard/admin-dashboard-view-model.ts
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-ui/src/app/view-models/admin-dashboard/admin-dashboard-view-model.ts')
-rw-r--r--catalog-ui/src/app/view-models/admin-dashboard/admin-dashboard-view-model.ts61
1 files changed, 61 insertions, 0 deletions
diff --git a/catalog-ui/src/app/view-models/admin-dashboard/admin-dashboard-view-model.ts b/catalog-ui/src/app/view-models/admin-dashboard/admin-dashboard-view-model.ts
new file mode 100644
index 0000000000..c8503bce42
--- /dev/null
+++ b/catalog-ui/src/app/view-models/admin-dashboard/admin-dashboard-view-model.ts
@@ -0,0 +1,61 @@
+'use strict';
+import {CacheService} from "app/services";
+import {IAppConfigurtaion} from "app/models";
+
+interface IAdminDashboardViewModelScope extends ng.IScope {
+ version:string;
+ sdcConfig:IAppConfigurtaion;
+ isLoading:boolean;
+ currentTab:string;
+ templateUrl:string;
+ monitorUrl:string;
+ moveToTab(tab:string):void;
+ isSelected(tab:string):boolean;
+}
+
+
+export class AdminDashboardViewModel {
+ static '$inject' = [
+ '$scope',
+ '$templateCache',
+ 'Sdc.Services.CacheService',
+ 'sdcConfig'
+ ];
+
+ constructor(private $scope:IAdminDashboardViewModelScope,
+ private $templateCache:ng.ITemplateCacheService,
+ private cacheService:CacheService,
+ private sdcConfig:IAppConfigurtaion) {
+
+ this.initScope();
+ }
+
+ private initScope = ():void => {
+
+ this.$scope.version = this.cacheService.get('version');
+ this.$scope.sdcConfig = this.sdcConfig;
+ this.$scope.monitorUrl = this.$scope.sdcConfig.api.kibana;
+ this.$scope.isSelected = (tab:string):boolean => {
+ return tab === this.$scope.currentTab;
+ }
+
+ this.$scope.moveToTab = (tab:string):void => {
+ if (tab === this.$scope.currentTab) {
+ return;
+ }
+ else if (tab === 'USER_MANAGEMENT') {
+ this.$scope.templateUrl="user-management-view.html";
+ this.$templateCache.put("user-management-view.html", require('app/view-models/admin-dashboard/user-management/user-management-view.html'));
+ }
+ else if (tab === 'CATEGORY_MANAGEMENT') {
+ this.$scope.templateUrl="category-management-view.html";
+ this.$templateCache.put("category-management-view.html", require('app/view-models/admin-dashboard/category-management/category-management-view.html'));
+ }
+ this.$scope.currentTab = tab;
+ };
+
+ this.$scope.moveToTab('USER_MANAGEMENT');
+
+
+ }
+}