diff --git a/app/app.js b/app/app.js index 53c8332..69e1ec7 100644 --- a/app/app.js +++ b/app/app.js @@ -7,6 +7,7 @@ angular.element(document).ready(function () { angular.module('adagios.config').config(['readConfigProvider', function (readConfigProvider) { readConfigProvider.setDashboardConfig(data.dashboardConfig); readConfigProvider.setHostsConfig(data.hostsConfig); + readConfigProvider.setServicesConfig(data.servicesConfig); }]); angular.bootstrap(document, ['adagios']); @@ -22,7 +23,8 @@ angular.module('adagios', [ 'adagios.table', 'adagios.filters', 'adagios.config', - 'adagios.view.hosts' + 'adagios.view.hosts', + 'adagios.view.services' ]) .config(['$routeProvider', function ($routeProvider) { diff --git a/app/components/config/config.js b/app/components/config/config.js index b5a753f..ddaea3c 100644 --- a/app/components/config/config.js +++ b/app/components/config/config.js @@ -1,9 +1,10 @@ 'use strict'; -function AdagiosConfig(dashboardConfig, hostsConfig) { +function AdagiosConfig(dashboardConfig, hostsConfig, servicesConfig) { this.dashboardConfig = dashboardConfig; this.hostsConfig = hostsConfig; + this.servicesConfig = servicesConfig; } angular.module('adagios.config', []) @@ -11,7 +12,8 @@ angular.module('adagios.config', []) .provider('readConfig', function ReadConfigProvider() { var dashboardConfig = {}, - hostsConfig = {}; + hostsConfig = {}, + servicesConfig = {}; this.setDashboardConfig = function (value) { dashboardConfig = value; @@ -21,7 +23,11 @@ angular.module('adagios.config', []) hostsConfig = value; }; + this.setServicesConfig = function (value) { + servicesConfig = value; + }; + this.$get = [function getConfigFactory() { - return new AdagiosConfig(dashboardConfig, hostsConfig); + return new AdagiosConfig(dashboardConfig, hostsConfig, servicesConfig); }]; }); diff --git a/app/components/config/config.json b/app/components/config/config.json index 54aa364..20c5595 100644 --- a/app/components/config/config.json +++ b/app/components/config/config.json @@ -8,5 +8,10 @@ "cells": ["hosts_host", "host_address", "duration", "last_check", "host_status"], "apiName": "hosts", "filters": {} + }, + "servicesConfig": { + "cells": ["host", "service_check", "duration", "last_check"], + "apiName": "services", + "filters": {} } } diff --git a/app/components/sidebar/sidebar.html b/app/components/sidebar/sidebar.html index c397797..6baebbb 100644 --- a/app/components/sidebar/sidebar.html +++ b/app/components/sidebar/sidebar.html @@ -8,7 +8,7 @@ diff --git a/app/index.html b/app/index.html index fb38076..4735ec4 100644 --- a/app/index.html +++ b/app/index.html @@ -54,6 +54,7 @@ + diff --git a/app/services/services.html b/app/services/services.html new file mode 100644 index 0000000..5c1b734 --- /dev/null +++ b/app/services/services.html @@ -0,0 +1,7 @@ +
+ +

Services

+ + + +
diff --git a/app/services/services.js b/app/services/services.js new file mode 100644 index 0000000..a5a5f90 --- /dev/null +++ b/app/services/services.js @@ -0,0 +1,26 @@ +'use strict'; + +angular.module('adagios.view.services', ['ngRoute', + 'adagios.table' + ]) + + .value('servicesConfig', {}) + + .config(['$routeProvider', function ($routeProvider) { + $routeProvider.when('/services', { + templateUrl: 'services/services.html', + controller: 'ServicesCtrl' + }); + }]) + + .controller('ServicesCtrl', ['$scope', 'servicesConfig', function ($scope, servicesConfig) { + $scope.servicesCells = servicesConfig.cells.join(); + $scope.servicesApiName = servicesConfig.apiName; + $scope.servicesFilters = servicesConfig.filters; + }]) + + .run(['readConfig', 'servicesConfig', function (readConfig, servicesConfig) { + servicesConfig.cells = readConfig.servicesConfig.cells; + servicesConfig.apiName = readConfig.servicesConfig.apiName; + servicesConfig.filters = readConfig.servicesConfig.filters; + }]);