diff options
author | Yaron Yogev <yaronyogev@gmail.com> | 2017-10-03 10:14:14 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2017-10-03 10:14:14 +0000 |
commit | 9e9c95952ca2a7efeafd316fff107b95fdd0f0b5 (patch) | |
tree | 6ad620ebc1f9adf6bf9fc671d88ea0adf8e7fe07 /ui/imports/ui/components/dashboard/dashboard.js | |
parent | 929a33a1cf8854e06d13e5ef352a48759c9ba2d5 (diff) | |
parent | 1fff14f0a5e25adaa851537c71c7bd8381c1bbb1 (diff) |
Merge "ui move to docker" into stable/euphrates
Diffstat (limited to 'ui/imports/ui/components/dashboard/dashboard.js')
-rw-r--r-- | ui/imports/ui/components/dashboard/dashboard.js | 273 |
1 files changed, 0 insertions, 273 deletions
diff --git a/ui/imports/ui/components/dashboard/dashboard.js b/ui/imports/ui/components/dashboard/dashboard.js deleted file mode 100644 index 625f8ee..0000000 --- a/ui/imports/ui/components/dashboard/dashboard.js +++ /dev/null @@ -1,273 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////////////// -// Copyright (c) 2017 Koren Lev (Cisco Systems), Yaron Yogev (Cisco Systems) and others / -// / -// All rights reserved. This program and the accompanying materials / -// are made available under the terms of the Apache License, Version 2.0 / -// which accompanies this distribution, and is available at / -// http://www.apache.org/licenses/LICENSE-2.0 / -///////////////////////////////////////////////////////////////////////////////////////// -/* - * Template Component: Dashboard - */ - -//import * as R from 'ramda'; -import * as _ from 'lodash'; -import { Environments } from '/imports/api/environments/environments'; -import { //Messages, - calcIconForMessageLevel, lastMessageTimestamp, calcColorClassForMessagesInfoBox -} from '/imports/api/messages/messages'; -import { Template } from 'meteor/templating'; -import { Inventory } from '/imports/api/inventories/inventories'; -import { Counts } from 'meteor/tmeasday:publish-counts'; -//import { Counter } from 'meteor/natestrauser:publish-performant-counts'; -//import { Messages } from '/imports/api/messages/messages'; -import { store } from '/imports/ui/store/store'; -import { setMainAppSelectedEnvironment } from '/imports/ui/actions/main-app.actions'; -import { UserSettings } from '/imports/api/user-settings/user-settings'; - -import '/imports/ui/components/messages-info-box/messages-info-box'; -import '/imports/ui/components/environment-box/environment-box'; - -import './dashboard.html'; - -/* - * Lifecycle methods - */ - -Template.Dashboard.onCreated(function () { - var instance = this; - - instance.state = new ReactiveDict(); - instance.state.setDefault({ - msgsViewBackDelta: 1 - }); - - instance.autorun(function () { - instance.subscribe('environments_config'); - - instance.subscribe('messages/count?level', 'info'); - instance.subscribe('messages/count?level', 'warning'); - instance.subscribe('messages/count?level', 'error'); - - Environments.find({}).forEach(function (envItem) { - instance.subscribe('inventory?env+type', envItem.name, 'instance'); - instance.subscribe('inventory?env+type', envItem.name, 'vservice'); - instance.subscribe('inventory?env+type', envItem.name, 'host'); - instance.subscribe('inventory?env+type', envItem.name, 'vconnector'); - instance.subscribe('inventory?env+type', envItem.name, 'project'); - instance.subscribe('inventory?env+type', envItem.name, 'region'); - }); - - store.dispatch(setMainAppSelectedEnvironment(null)); - }); - - instance.autorun(function () { - instance.subscribe('user_settings?user'); - UserSettings.find({user_id: Meteor.userId()}).forEach((userSettings) => { - instance.state.set('msgsViewBackDelta', userSettings.messages_view_backward_delta); - }); - }); - - instance.autorun(function () { - let msgsViewBackDelta = instance.state.get('msgsViewBackDelta'); - - instance.subscribe('messages/count?backDelta&level', msgsViewBackDelta, 'info'); - instance.subscribe('messages/count?backDelta&level', msgsViewBackDelta, 'warning'); - instance.subscribe('messages/count?backDelta&level', msgsViewBackDelta, 'error'); - }); -}); - -Template.Dashboard.rendered = function(){ - - /* - $.getScript('https://www.gstatic.com/charts/loader.js', function() { - google.charts.load('current', {'packages':['gauge', 'line']}); - google.charts.setOnLoadCallback(drawLine); - - - function drawLine() { - var data = new google.visualization.DataTable(); - data.addColumn('number', 'Traffic Webex'); - data.addColumn('number', 'Traffic metapod'); - data.addColumn('number', 'Some other Traffic'); - data.addColumn('number', 'Some other Traffic'); - - data.addRows([ - [1, 37.8, 80.8, 41.8], - [2, 30.9, 69.5, 32.4], - [3, 25.4, 57, 25.7], - [4, 11.7, 18.8, 32.5], - [5, 11.9, 25.6, 10.4], - [6, 68.8, 13.6, 27.7], - [7, 7.6, 42.3, 9.6], - [8, 12.3, 29.2, 10.6], - [9, 16.9, 42.9, 14.8] - ]); - - var options = { - chart: { - title: 'Network traffic throughput', - subtitle: 'in Mbps' - } - }; - - var chart = new google.charts.Line(document.getElementById('curve_chart')); - - chart.draw(data, options); - } - }); - - */ -}; -/* - * Helpers - */ - -Template.Dashboard.helpers({ - - envList:function(){ - //return Environments.find({type:'environment'}); - return Environments.find({}); - }, - - instancesCount: function (envName){ - //return Inventory.find({environment: envName, type:'instance'}).count(); - return Counts.get('inventory?env+type!counter?env=' + - envName + '&type=' + 'instance'); - }, - - vservicesCount: function (envName) { - //return Inventory.find({environment: envName, type:'vservice'}).count(); - return Counts.get('inventory?env+type!counter?env=' + - envName + '&type=' + 'vservice'); - }, - - hostsCount: function (envName) { - //return Inventory.find({environment: envName, type:'host'}).count(); - return Counts.get('inventory?env+type!counter?env=' + - envName + '&type=' + 'host'); - }, - - vconnectorsCount: function(envName){ - //return Inventory.find({environment: envName, type:'vconnector'}).count(); - return Counts.get('inventory?env+type!counter?env=' + - envName + '&type=' + 'vconnector'); - }, - - projectsCount: function (envName){ - //return Inventory.find({environment: envName, type:'project'}).count(); - return Counts.get('inventory?env+type!counter?env=' + - envName + '&type=' + 'project'); - }, - - regoinsCount: function (envName){ - //return Inventory.find({environment: envName, type:'region'}).count(); - return Counts.get('inventory?env+type!counter?env=' + - envName + '&type=' + 'region'); - }, - - regoins: function (envName) { - return Inventory.find({environment: envName, type:'region'}); - }, - - projects: function (envName){ - return Inventory.find({environment: envName, type:'project'}); - }, - - notificationsCount: function(){ - //return Messages.find({level:'notify'}).count(); - return Counts.get('messages?level!counter?' + - 'level=' + 'notify'); - }, - - warningsCount: function(){ - //return Messages.find({level:'warn'}).count(); - return Counts.get('messages?level!counter?' + - 'level=' + 'warn'); - }, - - errorsCount: function(){ - //return Messages.find({level:'error'}).count(); - return Counts.get('messages?level!counter?' + - 'level=' + 'error'); - }, - /* - notificationsTimestamp: function(){ - var msgTimestamp = Messages.findOne({state:'added'},{fields: {'timestamp': 1} }); - return msgTimestamp.timestamp; - }, - warnings: function(){ - return Messages.findOne({state:'warn'}); - }, - errors: function(){ - return Messages.findOne({state:'down'}); - }, -*/ - - getListMessagesInfoBox: function () { - return [ - { - level: 'info' - }, - { - level: 'warning' - }, - { - level: 'error' - }, - ]; - }, - - msgCounterName: function (level) { - let instance = Template.instance(); - let msgsViewBackDelta = instance.state.get('msgsViewBackDelta'); - let counterName = `messages/count?backDelta=${msgsViewBackDelta}&level=${level}`; - - return counterName; - }, - - argsMessagesInfoBox: function(boxDef, messageCount) { - //let instance = Template.instance(); - let title = _.capitalize(boxDef.level); - - return { - title: title, - count: messageCount, - lastScanTimestamp: lastMessageTimestamp(boxDef.level), - icon: calcIconForMessageLevel(boxDef.level), - colorClass: calcColorClassForMessagesInfoBox(boxDef.level), - onMoreDetailsReq: function () { - $('#messagesModalGlobal').modal('show', { - dataset: { - messageLevel: boxDef.level, - } - }); - } - }; - }, - - argsEnvBox: function ( - environmentName, - regionsCount, - regions, - projectsCount, - projects, - instancesCount, - vservicesCount, - vconnectorsCount, - hostsCount - ) { - - return { - environmentName: environmentName, - regionsCount: regionsCount, - regions: regions, - projectsCount, - projects: projects, - instancesCount: instancesCount, - vservicesCount: vservicesCount, - vconnectorsCount: vconnectorsCount, - hostsCount: hostsCount, - }; - } -}); // end: helpers |