From 47c2a8bdc1eb073ef7564f83b163bf78e6ca4e88 Mon Sep 17 00:00:00 2001 From: Johannes Meyer Date: Wed, 20 Nov 2019 13:51:14 +0100 Subject: [PATCH] js: Utilize `utils.objectsEqual()` in `actiontable.select()` --- public/js/icinga/behavior/actiontable.js | 12 +----------- public/js/icinga/utils.js | 9 +++++++-- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/public/js/icinga/behavior/actiontable.js b/public/js/icinga/behavior/actiontable.js index a9e587f9d..c7d62ee32 100644 --- a/public/js/icinga/behavior/actiontable.js +++ b/public/js/icinga/behavior/actiontable.js @@ -189,17 +189,7 @@ this.rowActions() .filter( function (i, el) { - var params = _this.getRowData($(el)); - if (_this.icinga.utils.objectKeys(params).length !== _this.icinga.utils.objectKeys(filter).length) { - return false; - } - var equal = true; - $.each(params, function(key, value) { - if (filter[key] !== value) { - equal = false; - } - }); - return equal; + return _this.icinga.utils.objectsEqual(_this.getRowData($(el)), filter); } ) .closest('tr') diff --git a/public/js/icinga/utils.js b/public/js/icinga/utils.js index 34caab3ca..8b2a90921 100644 --- a/public/js/icinga/utils.js +++ b/public/js/icinga/utils.js @@ -365,8 +365,13 @@ }, objectsEqual: function equals(obj1, obj2) { - return Object.keys(obj1) - .concat(Object.keys(obj2)) + var obj1Keys = Object.keys(obj1); + var obj2Keys = Object.keys(obj2); + if (obj1Keys.length !== obj2Keys.length) { + return false; + } + + return obj1Keys.concat(obj2Keys) .every(function (key) { return obj1[key] === obj2[key]; });