From f181450aa926d18abcd72538476e7a605f7ca565 Mon Sep 17 00:00:00 2001 From: Bilal Catic Date: Wed, 30 Oct 2019 11:23:07 +0100 Subject: [PATCH] fix slider box input - handle one input grater/smaller than the other --- app/views/realEstateFilters.ejs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/app/views/realEstateFilters.ejs b/app/views/realEstateFilters.ejs index 5d27162..2748210 100644 --- a/app/views/realEstateFilters.ejs +++ b/app/views/realEstateFilters.ejs @@ -94,14 +94,18 @@ const priceMinChangeHandler = (element) => { if (element && element.currentTarget && element.currentTarget.value){ + const currentValues = priceSliderObject.get(); const newValue = element.currentTarget.value; - priceSliderObject.set([newValue, null]); + const fixedNewValue = newValue > currentValues[1] ? currentValues[1] : newValue; + priceSliderObject.set([fixedNewValue, null]); + $("#priceMin").val(Math.round(priceSliderObject.get()[0])); } } const priceMaxChangeHandler = (element) => { if (element && element.currentTarget && element.currentTarget.value){ const newValue = element.currentTarget.value; priceSliderObject.set([null, newValue]); + $("#priceMax").val(Math.round(priceSliderObject.get()[1])); } } $("#priceMin").val(priceSliderOptions.start[0]); @@ -111,14 +115,18 @@ const sizeMinChangeHandler = (element) => { if (element && element.currentTarget && element.currentTarget.value){ + const currentValues = sizeSliderObject.get(); const newValue = element.currentTarget.value; - sizeSliderObject.set([newValue, null]); + const fixedNewValue = newValue > currentValues[1] ? currentValues[1] : newValue; + sizeSliderObject.set([fixedNewValue, null]); + $("#sizeMin").val(Math.round(sizeSliderObject.get()[0])); } } const sizeMaxChangeHandler = (element) => { if (element && element.currentTarget && element.currentTarget.value){ const newValue = element.currentTarget.value; sizeSliderObject.set([null, newValue]); + $("#sizeMax").val(Math.round(sizeSliderObject.get()[1])); } } $("#sizeMin").val(sizeSliderOptions.start[0]); @@ -141,14 +149,18 @@ gardenSizeSliderObject.on('slide', updateGardenSizeInputs); const gardenSizeMinChangeHandler = (element) => { if (element && element.currentTarget && element.currentTarget.value){ + const currentValues = gardenSizeSliderObject.get(); const newValue = element.currentTarget.value; - gardenSizeSliderObject.set([newValue, null]); + const fixedNewValue = newValue > currentValues[1] ? currentValues[1] : newValue; + gardenSizeSliderObject.set([fixedNewValue, null]); + $("#gardenSizeMin").val(Math.round(gardenSizeSliderObject.get()[0])); } } const gardenSizeMaxChangeHandler = (element) => { if (element && element.currentTarget && element.currentTarget.value){ const newValue = element.currentTarget.value; gardenSizeSliderObject.set([null, newValue]); + $("#gardenSizeMin").val(Math.round(gardenSizeSliderObject.get()[0])); } } $("#gardenSizeMin").val(gardenSizeSliderOptions.start[0]);