PageSourceSearch

https://www.weiten.at/system/statV.1789655742/Javascript/L3G0/filter.js

js weiten.at collected 2026-10-02 21:01:35 UTC 4,027 bytes, 87 lines download raw bytes

1document.addEventListener("DOMContentLoaded", function (event) {
2    const dotNetForm = document.getElementById("aspnetForm");
3
4    //Distance Order
5    const orderSelectOptionVal_distance = 1415;
6    const orderSelectOptions = document.querySelectorAll("option[value='" + orderSelectOptionVal_distance + "']");
7    orderSelectOptions.forEach(function (orderSelectOption) {
8        new DistanceOrder(orderSelectOption, ".bemClientCoordinates input", ".bemFilterContainer").init();
9    });
10
11    //Setup Multiselect
12    const filterMultiselect = document.querySelectorAll(".bemInput__Dropdown--Multiple");
13    filterMultiselect.forEach(function (ddMultipleInput) {
14        new Multiselect(ddMultipleInput).init();
15    });
16
17    //Setup RangeSliderTextSync
18    const filterRangeSliders = document.querySelectorAll("input[type='range']");
19    filterRangeSliders.forEach(function (rangeSlider) {
20        rangeSlider.addEventListener("input", function (event) {
21            let syncValueTo = this.closest(".bemInput__Range--Default").querySelector("label .bemText--value");
22            syncValueTo.innerText = this.value;
23        });
24    });
25
26    //Setup filterTransferValue
27    const filterInputs = document.querySelectorAll("[data-filter=true]");
28    filterInputs.forEach(function (filterInput) {
29        
30        if (Boolean(filterInput.getAttribute("data-filterInstantSubmit")) == true) {
31            filterInput.addEventListener("click", function (event) {
32                if (event.currentTarget.getAttribute("data-filterTransferValueTo")) {
33                    const elToSetVal = document.getElementById(event.currentTarget.getAttribute("data-filterTransferValueTo"));
34                    if (elToSetVal.nodeName == "INPUT") {
35                        elToSetVal.value = filterInput.getAttribute("data-filterValue");
36                        resetPagerIfOtherFilter(elToSetVal);
37                        dotNetForm.submit();
38                    }
39                }
40            });
41        }
42    });
43
44    //Setup instantSubmit
45    const instantSubmitFormElements = document.querySelectorAll("[data-filterInstantSubmit='true']");
46    instantSubmitFormElements.forEach(function (instantSubmitFormElement) {
47        instantSubmitFormElement.addEventListener("change", function (event) {
48            resetPagerIfOtherFilter(event.currentTarget);
49            dotNetForm.submit();
50        });
51    });
52
53    //Reset Pager if Date Filter changes
54    const dateFilterElement = document.querySelectorAll("input[type = 'date']");
55    dateFilterElement.forEach(function (dateFilterElement) {
56        dateFilterElement.addEventListener("change", function (event) {
57            resetPagerIfOtherFilter(event.currentTarget);
58        });
59    });
60
61
62    //Setup reset logic
63    const filterResetButtons = document.querySelectorAll("[type=reset]");
64    filterResetButtons.forEach(function (filterResetButton) {
65        filterResetButton.addEventListener("click", function (event) {
66            event.preventDefault();
67            const filterInputsToReset = event.currentTarget.closest(".bemFilterContainer").querySelectorAll("input, select, textarea");
68            filterInputsToReset.forEach(function (filterInputToReset) {
69                if (filterInputToReset.getAttribute("type") == "date") {
70                    filterInputToReset.value = new Date().toISOString().split("T")[0];
71                } else {
72                    filterInputToReset.value = "";
73                }
74            });
75            dotNetForm.submit();
76        });
77    });
78
79    function resetPagerIfOtherFilter(currentInput) {
80        if (currentInput.id.indexOf("pager") === -1) {
81            const templateId = currentInput.closest("[data-ris-templateId]").getAttribute("data-ris-templateId");
82            document.querySelectorAll("input#pager-" + templateId + "[type=hidden]").forEach(function (pagerInput) {
83                pagerInput.value = 0;
84            });
85        }
86    }
87});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.