PageSourceSearch

https://www.inselderjugend.de/wp-content/plugins/bs-formular/asset…/js/bs-formular-public.js?ver=202308021353

js inselderjugend.de collected 2026-10-08 06:51:53 UTC 6,179 bytes, 177 lines download raw bytes

1(function () {
2    'use strict'
3    let forms = document.querySelectorAll('.send-bs-formular.needs-validation');
4    Array.prototype.slice.call(forms).forEach(function (form) {
5
6            let dscheck = form.querySelector('.dscheck');
7            if (dscheck) {
8                form.querySelector('button').classList.add('disabled');
9            }
10
11            form.addEventListener('submit', function (event) {
12                let showSending = form.querySelector('.bs-form-sending');
13
14                this.blur();
15                let divBox = document.createElement("div");
16                divBox.classList.add('add_repeat');
17                let input = document.createElement("input");
18                input.setAttribute('type', 'text');
19                input.setAttribute('name', 'repeat_email');
20
21                if (form.checkValidity()) {
22                    event.preventDefault()
23                    event.stopPropagation()
24
25                    divBox.appendChild(input);
26                    form.prepend(divBox);
27
28                    showSending.classList.add('show-sending');
29                    send_xhr_bs_forms_data(form);
30                }
31
32                let child = form.childNodes[0];
33                if (child) {
34                    if (child.className === 'add_repeat') {
35                        child.remove();
36                    }
37                }
38                event.preventDefault()
39                form.classList.add('was-validated');
40            }, false)
41        })
42})()
43
44document.addEventListener("DOMContentLoaded", function (event) {
45    if (bs_form_ajax_obj.bs_form_redirect_data['07107b9b03cb']) {
46        let testDaten = bs_form_ajax_obj.bs_form_redirect_data['07107b9b03cb'];
47      //  console.log(testDaten);
48    }
49});
50
51let closeAlert = document.querySelectorAll('.bs-form-alert');
52if (closeAlert) {
53    let alertNode = Array.prototype.slice.call(closeAlert, 0);
54    alertNode.forEach(function (alertNode) {
55        alertNode.addEventListener('click', function (event) {
56            alertNode.classList.add('d-none');
57        });
58    });
59}
60
61let dsCheck = document.querySelectorAll('.dscheck input');
62if (dsCheck) {
63    let dsNode = Array.prototype.slice.call(dsCheck, 0);
64    let ifFiles = '';
65    dsNode.forEach(function (dsNode) {
66        dsNode.addEventListener('change', function (event) {
67            dsNode.blur();
68            let button = dsNode.form.querySelector('button[type="submit"]');
69            let filePondBtn = dsNode.form.querySelector('.filePondWrapper .invalid-feedback');
70
71            if (dsNode.checked) {
72                button.classList.remove('disabled');
73            } else {
74                button.classList.add('disabled');
75            }
76
77            let filepond = dsNode.form.querySelector('input.filepond--browser');
78            let pondRoot = dsNode.form.querySelector('.bsFiles');
79            if (filepond) {
80                if (filepond.required) {
81                    pondRoot.classList.add('fileError');
82                    filePondBtn.style.display = 'block';
83                    button.classList.add('disabled');
84                } else {
85                    pondRoot.classList.remove('fileError');
86                    if (filePondBtn) {
87                        filePondBtn.style.display = null;
88                    }
89
90                    if (dsNode.checked) {
91                        button.classList.remove('disabled');
92                    }
93                }
94            }
95
96        });
97    });
98}
99
100function send_xhr_bs_forms_data(data) {
101
102    let xhr = new XMLHttpRequest();
103    let formData = new FormData();
104    let input = new FormData(data);
105    for (let [name, value] of input) {
106        formData.append(name, value);
107    }
108
109    formData.append('_ajax_nonce', bs_form_ajax_obj.nonce);
110    formData.append('action', 'BsFormularNoAdmin');
111
112    xhr.open('POST', bs_form_ajax_obj.ajax_url, true);
113
114    xhr.send(formData);
115    //Response
116    xhr.onreadystatechange = function () {
117        if (this.readyState === 4 && this.status === 200) {
118            let data = JSON.parse(this.responseText);
119            let err = document.getElementById('error' + data.formId);
120            let success = document.getElementById('success' + data.formId);
121            let sendMsg = success.parentNode.querySelector('.bs-form-sending');
122            sendMsg.classList.remove('show-sending');
123
124            if (data.status) {
125
126                if(data.redirect){
127                    if(data.redirect_uri) {
128                        location.href = data.redirect_uri;
129                        return false;
130                    }
131                }
132
133                if (data.show_success) {
134                    err.classList.add('d-none');
135                    success.parentNode.firstChild.remove();
136                    success.parentNode.classList.remove('was-validated');
137                    success.parentNode.reset();
138                    success.innerHTML = data.msg;
139                    success.classList.remove('d-none');
140                }
141            } else {
142                if (data.show_error) {
143                   // err.parentNode.firstChild.remove();
144                   // err.parentNode.classList.remove('was-validated');
145                   // err.parentNode.reset();
146
147                    err.innerHTML = data.msg;
148                    err.classList.remove('d-none');
149                }
150            }
151        }
152    }
153}
154
155/**=====================================
156 ========== HELPER RANDOM KEY ===========
157 ========================================
158 */
159function createBSRandomCode(length) {
160    let randomCodes = '';
161    let characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
162    let charactersLength = characters.length;
163    for (let i = 0; i < length; i++) {
164        randomCodes += characters.charAt(Math.floor(Math.random() * charactersLength));
165    }
166    return randomCodes;
167}
168
169function createBSRandomInteger(length) {
170    let randomCodes = '';
171    let characters = '0123456789';
172    let charactersLength = characters.length;
173    for (let i = 0; i < length; i++) {
174        randomCodes += characters.charAt(Math.floor(Math.random() * charactersLength));
175    }
176    return randomCodes;
177}

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.