diff --git a/digiplan/static/js/scenarios.js b/digiplan/static/js/scenarios.js index 7870f5ce..6b22a644 100644 --- a/digiplan/static/js/scenarios.js +++ b/digiplan/static/js/scenarios.js @@ -1,5 +1,10 @@ import { getCurrentMenuTab } from "./menu.js"; -import { detailSliders, panelSliders, updateSliderMarks } from "./sliders.js"; +import { + detailSliders, + panelSliders, + updateSliderMarks, + adaptMainSliders, +} from "./sliders.js"; const scenarioSettings = JSON.parse( document.getElementById("scenario_settings").textContent, @@ -137,8 +142,11 @@ function adaptSlidersScenario(msg, scenario) { input: [{ id: slider.id }], from: sliderValue, }; + // Has to be called manually, as otherwise main slider is not ready for scenario data update + adaptMainSliders(eventTopics.DETAIL_PANEL_SLIDER_CHANGE, data); PubSub.publish(eventTopics.DETAIL_PANEL_SLIDER_CHANGE, data); } + console.log("Start adapting main sliders"); // update main panel Sliders afterwards for (const slider of panelSliders) { // Check if the slider is defined in scenario settings diff --git a/digiplan/static/js/sliders.js b/digiplan/static/js/sliders.js index d8aa5e9d..c3cda840 100644 --- a/digiplan/static/js/sliders.js +++ b/digiplan/static/js/sliders.js @@ -152,7 +152,7 @@ function adaptDetailSliders(msg, data) { * @param {string} msg Publisher message * @param {object} data Data from changed ionrangeslider */ -function adaptMainSliders(msg, data) { +export function adaptMainSliders(msg, data) { const slider_id = data.input[0].id; if (slider_id === "id_s_w_6" || slider_id === "id_s_w_7") { calculate_max_wind();