From 0646c0253df9536b6b6cbbbc7b5d331f32eac4cf Mon Sep 17 00:00:00 2001 From: emkael Date: Tue, 20 Jun 2017 22:35:29 +0200 Subject: Refactoring param change detection --- http/res/ranking.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'http') diff --git a/http/res/ranking.js b/http/res/ranking.js index 61cb856..bae4be9 100644 --- a/http/res/ranking.js +++ b/http/res/ranking.js @@ -69,16 +69,18 @@ var ranking = { savedParams : new Map(), + paramChanged: function(params, param) { + var newParam = params.get(param) || []; + var oldParam = ranking.savedParams.get(param) || []; + return (newParam.length != oldParam.length) || (newParam.join(',') != oldParam.join(',')); + }, + readHash : function() { var params = ranking.parseHash(location.hash); var allParams = ['age', 'gender', 'region', 'name']; var paramsChanged = false; allParams.forEach(function(param) { - var newParam = params.get(param) || []; - var oldParam = ranking.savedParams.get(param) || []; - if (newParam.length != oldParam.length || newParam.join(',') != oldParam.join(',')) { - paramsChanged = true; - } + paramsChanged |= ranking.paramChanged(params, param); }); $('button.btn-primary').removeClass('btn-primary'); params.forEach(function(values, param) { -- cgit v1.2.3