diff --git a/docs/DrugsForPathologies/js/PageInitializer.js b/docs/DrugsForPathologies/js/PageInitializer.js index 7211bf87c5a..ee7a1540959 100644 --- a/docs/DrugsForPathologies/js/PageInitializer.js +++ b/docs/DrugsForPathologies/js/PageInitializer.js @@ -1,19 +1,23 @@ class PageInitializer { static initializePage({ pathologySelectElement, drugsChartViewElement, urlSearchParam }) { - PageInitializer.#configurePathologySelect(pathologySelectElement, drugsChartViewElement, urlSearchParam); + PageInitializer.#configurePathologySelect( + { + pathologySelectElement: pathologySelectElement, + drugsChartView: new DrugsChartView(drugsChartViewElement), + urlSearchParam: urlSearchParam + }); } - static #configurePathologySelect(pathologySelectElement, drugsChartViewElement, urlSearchParam) { - const drugsChartView = new DrugsChartView(drugsChartViewElement); + static #configurePathologySelect({ pathologySelectElement, drugsChartView, urlSearchParam }) { Select2.initializeSelectElement( { selectElement: pathologySelectElement, minimumInputLength: 0, textOfOption2Select: urlSearchParam.get(), onSelectOptionHavingValueAndText: (id, text) => { - fetch(`data/DrugDescriptionsForPathologies/${id}.json`) - .then(response => response.json()) + PageInitializer + .#loadDrugDescr(id) .then(drugDescr => { drugsChartView.displayChart(drugDescr); urlSearchParam.set(text); @@ -21,4 +25,8 @@ class PageInitializer { } }); } + + static #loadDrugDescr(id) { + return fetch(`data/DrugDescriptionsForPathologies/${id}.json`).then(response => response.json()); + } }