templates/_includes/radiusslider.html.twig line 1

Open in your IDE?
  1. <script>
  2. {{ inlineJsWrapperBegin() }}
  3. window.appFunctions.setupRadiusSlider = function (idOfSliderElement, selectorOfTextElementToChange, selectorOfFormElementToChange, startValue) {
  4. var availabilityRadiuses = [];
  5. {% for radius in constant('App\\Value\\ZipcodeRadiusesValue::ALL') %}
  6. availabilityRadiuses.push({{ radius }});
  7. {% endfor %}
  8. var sliderElement = document.getElementById(idOfSliderElement);
  9. noUiSlider.create(sliderElement, {
  10. start: [startValue],
  11. connect: [true, false],
  12. range: {
  13. 'min': 5,
  14. '33%': 15,
  15. '66%': 30,
  16. 'max': 50
  17. },
  18. snap: true,
  19. pips: {
  20. mode: 'values',
  21. values: availabilityRadiuses,
  22. density: 100
  23. }
  24. });
  25. // Ensure jlls-slider class is present for styling
  26. sliderElement.classList.add('jlls-slider');
  27. sliderElement.noUiSlider.on('change', function () {
  28. jQuery(selectorOfFormElementToChange).val(
  29. Math.floor(sliderElement.noUiSlider.get())
  30. );
  31. jQuery(selectorOfTextElementToChange).text(
  32. Math.floor(sliderElement.noUiSlider.get())
  33. );
  34. });
  35. };
  36. {{ inlineJsWrapperEnd() }}
  37. </script>