You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.0 KiB
66 lines
2.0 KiB
// |
|
// (function (Drupal, once) { |
|
// Drupal.behaviors.removeTrailingZeros = { |
|
// attach: function (context) { |
|
// function processField(id) { |
|
// var el = document.getElementById(id); |
|
// if (!el) return; |
|
// |
|
// // If value isn't populated yet, wait and retry once |
|
// if (el.value === "") { |
|
// setTimeout(function () { |
|
// processField(id); |
|
// }, 100); |
|
// return; |
|
// } |
|
// |
|
// var str = el.value.toString().slice(0, -3); |
|
// el.value = parseInt(str, 10); |
|
// } |
|
// |
|
// once("from-slider", "#nouislider-input-from", context).forEach( |
|
// function () { |
|
// processField("nouislider-input-from"); |
|
// } |
|
// ); |
|
// |
|
// once("to-slider", "#nouislider-input-to", context).forEach(function () { |
|
// processField("nouislider-input-to"); |
|
// }); |
|
// }, |
|
// }; |
|
// })(Drupal, once); |
|
/** |
|
* @file |
|
* Fix noUiSlider formatting for year facets (remove .00). |
|
*/ |
|
|
|
Drupal.behaviors.olivesnewsYearSliderFix = { |
|
attach: function (context, settings) { |
|
// Target the year slider (ID comes from your facet machine name) |
|
const sliderElements = context.querySelectorAll( |
|
'#year.facet-slider, .facet-slider[id="year"]' |
|
); |
|
|
|
sliderElements.forEach(function (slider) { |
|
if (slider && slider.noUiSlider) { |
|
// Re-apply options with clean integer formatting |
|
slider.noUiSlider.updateOptions( |
|
{ |
|
format: { |
|
to: function (value) { |
|
return Math.round(value).toString(); // e.g., 1787 instead of 1787.00 |
|
}, |
|
from: function (value) { |
|
return Number(value); |
|
}, |
|
}, |
|
// Optional: also force tooltips to use the same clean format |
|
tooltips: [true, true], // or a custom formatter if needed |
|
}, |
|
true |
|
); // true = fire 'update' event so it refreshes immediately |
|
} |
|
}); |
|
}, |
|
};
|
|
|