From ed30596abd53599d5f81091c4acff42b30fb0ab3 Mon Sep 17 00:00:00 2001 From: Alexander Zobnin Date: Fri, 10 Jul 2015 14:16:08 +0300 Subject: [PATCH] iss #43 - Some refactoring fixes. --- zabbix/datasource.js | 23 ++++++++++++++--------- zabbix/zabbixAPIWrapper.js | 14 +++++++------- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/zabbix/datasource.js b/zabbix/datasource.js index fd18637..db23d88 100644 --- a/zabbix/datasource.js +++ b/zabbix/datasource.js @@ -239,8 +239,11 @@ function (angular, _, kbn) { }); }; + //////////////// + // Templating // + //////////////// + /** - * For templated query. * Find metrics from templated request. * * @param {string} query Query from Templating @@ -264,16 +267,18 @@ function (angular, _, kbn) { var template = _.object(['group', 'host', 'app', 'item'], parts); // Get items + var self = this; if (parts.length === 4) { - return this.zabbixAPI.itemFindQuery(template.group, template.host, template.app).then(function (result) { - return _.map(result, function (item) { - var itemname = this.zabbixAPI.expandItemName(item); - return { - text: itemname, - expandable: false - }; + return this.zabbixAPI.itemFindQuery(template.group, template.host, template.app) + .then(function (result) { + return _.map(result, function (item) { + var itemname = self.zabbixAPI.expandItemName(item); + return { + text: itemname, + expandable: false + }; + }); }); - }); } // Get applications else if (parts.length === 3) { diff --git a/zabbix/zabbixAPIWrapper.js b/zabbix/zabbixAPIWrapper.js index 4dbb420..b067195 100644 --- a/zabbix/zabbixAPIWrapper.js +++ b/zabbix/zabbixAPIWrapper.js @@ -286,7 +286,7 @@ function (angular, _) { var params = { output: ['name'] }; - if (group !== '*') { + if (group[0] !== '*') { params.filter = { name: group }; @@ -321,7 +321,7 @@ function (angular, _) { var params = { output: ['host', 'name'] }; - if (hostnames !== '*') { + if (hostnames[0] !== '*') { params.filter = { name: hostnames }; @@ -339,7 +339,7 @@ function (angular, _) { var params = { output: ['name'] }; - if (application !== '*') { + if (application[0] !== '*') { params.filter = { name: application }; @@ -360,7 +360,7 @@ function (angular, _) { var promises = []; // Get hostids from names - if (hosts && hosts !== '*') { + if (hosts && hosts[0] !== '*') { promises.push(this.getHostByName(hosts)); } // Get groupids from names @@ -383,7 +383,7 @@ function (angular, _) { return object.groupid; }), 'groupid'); } - if (hosts && hosts !== '*') { + if (hosts && hosts[0] !== '*') { hostids = _.map(_.filter(results, function (object) { return object.hostid; }), 'hostid'); @@ -409,7 +409,7 @@ function (angular, _) { var promises = []; // Get hostids from names - if (hosts && hosts !== '*') { + if (hosts && hosts[0] !== '*') { promises.push(this.getHostByName(hosts)); } // Get groupids from names @@ -427,7 +427,7 @@ function (angular, _) { return object.groupid; }), 'groupid'); } - if (hosts && hosts !== '*') { + if (hosts && hosts[0] !== '*') { hostids = _.map(_.filter(results, function (object) { return object.hostid; }), 'hostid');