PageSourceSearch

https://katho-nrw.de/typo3temp/assets/compressed/content-filter-7ad06ef3844b50a0de79c25a01d1a79c.js?1763380531

js katho-nrw.de collected 2026-10-02 06:05:00 UTC 3,780 bytes, 131 lines download raw bytes

1$(() => {
2    let $contentFilter = $('.content-filter');
3
4    if (!$contentFilter) {
5        return;
6    }
7
8    let submitForm = function (additionalFormData = null) {
9        let $form = $contentFilter.find('form'),
10            formData = new FormData($form[0]),
11            $dropdown = $contentFilter.find('.dropdown-toggle')
12
13        if (additionalFormData) {
14            $.each(additionalFormData, function (name, value) {
15                formData.append(name, value);
16            });
17        }
18
19        $dropdown.each(function () {
20            $(this).dropdown('hide');
21        });
22
23        $contentFilter.find('.content-filter__list')
24            .find('.content-filter__list-content').html('');
25        $contentFilter.find('.content-filter__list')
26            .find('.content-filter__list-loader').removeClass('js-deactivated');
27
28        $.ajax({
29            type: "POST",
30            enctype: 'multipart/form-data',
31            url: $form.attr('action'),
32            data: formData,
33            processData: false,
34            contentType: false,
35            cache: false,
36            timeout: 800000,
37            success: function (data) {
38                let uri = $(data).find('.content-filter form').data('uri');
39
40                window.history.pushState({
41                    "html": data,
42                    "pageTitle": window.location.pageTitle
43                }, "", uri);
44
45                $contentFilter.find('.applied-filter-display__filters-block')
46                    .html($(data).find('.applied-filter-display__filters-block').html());
47
48                $contentFilter.find('.content-filter__list')
49                    .html($(data).find('.content-filter__list').html());
50
51                $contentFilter.find('.alphabet-filter-list')
52                    .html($(data).find('.alphabet-filter-list').html());
53
54                $contentFilter.find('.content-filter__pagination')
55                    .html($(data).find('.content-filter__pagination').html());
56                preventUppercase();
57            },
58            error: function (e) {
59                console.error("ERROR: ", e);
60            }
61        });
62    };
63
64    $contentFilter.on('click', '.alphabet-filter-list button[type="submit"]', function (e) {
65        e.preventDefault();
66
67        let additionalFormData = {};
68        additionalFormData[$(this).attr('name')] = $(this).attr('value');
69
70        submitForm(additionalFormData);
71
72        return false;
73    });
74
75    $contentFilter.on('click', '.applied-filter-display__applied-filters .link-delete', function (e) {
76        e.preventDefault();
77
78        let selector = 'input[value="' + $(this).data('option') + '"]';
79        $(selector).click();
80
81        $(this).parent('li').remove();
82
83        submitForm();
84
85        return false;
86    });
87
88    $contentFilter.on('submit', 'form', function (e) {
89        e.preventDefault();
90
91        submitForm();
92
93        return false;
94    });
95
96    $contentFilter.on('click', 'button.content-filter__list-more', function (e) {
97        e.preventDefault();
98
99        let additionalFormData = {};
100        additionalFormData[$(this).attr('name')] = $(this).attr('value');
101
102        submitForm(additionalFormData);
103
104        return false;
105    });
106
107    $contentFilter.on('keydown', '#filter-search-input', function (e) {
108        e.stopPropagation();
109
110        if (!(e.key === 'Enter' || e.keyCode === 13)) {
111            return;
112        }
113
114        e.preventDefault();
115
116        submitForm();
117
118        return false;
119    });
120
121    $contentFilter.on('click', '.content-filter__pagination button', function (e) {
122        e.preventDefault();
123
124        let additionalFormData = {};
125        additionalFormData[$(this).attr('name')] = $(this).attr('value');
126
127        submitForm(additionalFormData);
128
129        return false;
130    });
131});

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.