PageSourceSearch

https://www.volksbund.de/typo3temp/assets/compressed/portal-332ee2e4b4dc7472dcbd12f630c1bd32.js?1790848798

js volksbund.de collected 2026-10-01 11:41:29 UTC 9,037 bytes, 271 lines download raw bytes

1/* global $ */
2
3// mitgliedschaftsantrag min amount
4const input = document.getElementById('interferer-output');
5var type_timeout = undefined;
6if (input) {
7  input.addEventListener('keyup', function(e) {
8      clearTimeout(type_timeout)
9
10      type_timeout = setTimeout(function () {
11          if (e.target.value < 6) {
12              input.value = 6;
13          }
14      }, 500)
15  });
16}
17
18// Spendenprogressbar: add/remove classes of dots and change width of progressbar
19$('.ig-amount-1').click(function () {
20  $(this).addClass('active')
21  $('.ig-amount-2').removeClass('active')
22  $('.ig-amount-3').removeClass('active')
23  $('#poi1').addClass('show')
24  $('#poi2').removeClass('show')
25  $('#poi3').removeClass('show')
26  $('#igprogressbar').addClass('ig-pb-15')
27  $('#igprogressbar').removeClass('ig-pb-50')
28  $('#igprogressbar').removeClass('ig-pb-85')
29})
30$('.ig-amount-2').click(function () {
31  $(this).addClass('active')
32  $('.ig-amount-1').removeClass('active')
33  $('.ig-amount-3').removeClass('active')
34  $('#poi2').addClass('show')
35  $('#poi1').removeClass('show')
36  $('#poi3').removeClass('show')
37  $('#igprogressbar').addClass('ig-pb-50')
38  $('#igprogressbar').removeClass('ig-pb-15')
39  $('#igprogressbar').removeClass('ig-pb-85')
40})
41$('.ig-amount-3').click(function () {
42  $(this).addClass('active')
43  $('.ig-amount-2').removeClass('active')
44  $('.ig-amount-1').removeClass('active')
45  $('#poi3').addClass('show')
46  $('#poi2').removeClass('show')
47  $('#poi1').removeClass('show')
48  $('#igprogressbar').addClass('ig-pb-85')
49  $('#igprogressbar').removeClass('ig-pb-15')
50  $('#igprogressbar').removeClass('ig-pb-50')
51})
52
53// Navigation on mouseenter and mouseleave
54$('li.ig-has-children').on('mouseenter', function() {
55    // Update ARIA state on the toggle button
56    const toggleButton = $(this).find('.ig-dropdown-toggle');
57    toggleButton.attr('aria-expanded', 'true');
58  });
59
60  $('li.ig-has-children').on('mouseleave', function() {
61    // Update ARIA state on the toggle button
62    const toggleButton = $(this).find('.ig-dropdown-toggle');
63    toggleButton.attr('aria-expanded', 'false');
64  });
65
66// Spenden Banner Progress Bar
67$(document).ready(function () {
68  const $valueSpan = $('.valueSpan2')
69  const $value = $('#customRange11')
70  $valueSpan.html($value.val())
71  $value.on('input change', function () {
72    $valueSpan.html($value.val())
73  })
74})
75
76// on viewport add class
77function isScrolledIntoView (elem) {
78  const docViewTop = $(window).scrollTop()
79  const docViewBottom = docViewTop + $(window).height()
80
81  const elemTop = $(elem).offset().top
82
83  return ((elemTop <= docViewBottom) && (elemTop >= docViewTop))
84}
85
86$(window).scroll(function () {
87  $('.ig-js-on-view').each(function () {
88    if (isScrolledIntoView(this) === true) {
89      $(this).addClass('ig-visible')
90    }
91  })
92})
93
94$('.igcontent_faq .banner-amount').each(function () {
95  $(this).click(function () {
96    const amount = $(this).data('amount')
97    const buttontext = $(this).closest('.faq-wrapper').find('#buttonTextHidden').text()
98    const url = $(this).closest('.faq-wrapper').find('#buttonText').data('link')
99    $(this).closest('.faq-wrapper').find('.btn').attr('href', url + '?' + 'amount=' + amount + '&no_cache=1')
100    $(this).closest('.faq-wrapper').find('.btn').html(amount + '€ ' + buttontext)
101  })
102})
103
104// Search field in navigation logic
105const navbarContainer = document.querySelector('#navbarResponsive')
106const showSearchFieldButton = document.querySelector('#navigation-search-button')
107const navigationSearchFieldContainer = document.querySelector('#navigation-search-bar-container')
108const navigationSearchField = document.querySelector('#navigation-search-bar-container input')
109let navigationSearchFieldCloseButton = null;
110let navigationSearchFieldFireButton = null;
111
112if(navigationSearchFieldContainer) {
113    navigationSearchFieldCloseButton = navigationSearchFieldContainer.querySelector('.icon-close')
114    navigationSearchFieldFireButton = navigationSearchFieldContainer.querySelector('.icon-search')
115}
116
117// Funktion zum Öffnen/Schließen der Suche
118function toggleSearch() {
119    const isVisible = navigationSearchFieldContainer.classList.contains('visible');
120
121    showSearchFieldButton.classList.toggle('hidden')
122    navigationSearchFieldContainer.classList.toggle('visible')
123    navbarContainer.classList.toggle('search-is-visible')
124
125    // ARIA-Status aktualisieren
126    showSearchFieldButton.setAttribute('aria-expanded', !isVisible)
127
128    if (!isVisible) {
129        navigationSearchField.focus()
130    }
131}
132
133if (showSearchFieldButton) {
134  // Click-Event beibehalten
135  showSearchFieldButton.addEventListener('click', toggleSearch)
136
137  // Keyboard-Support hinzufügen
138  showSearchFieldButton.addEventListener('keydown', function(e) {
139    // Enter oder Space-Taste
140    if (e.keyCode === 13 || e.keyCode === 32) {
141      e.preventDefault()
142      toggleSearch()
143    }
144  })
145}
146
147if (navigationSearchField) {
148  // ARIA-Attribute für das Suchfeld hinzufügen
149  navigationSearchField.setAttribute('aria-label', 'Suchbegriff eingeben')
150
151  if(!$('#navigation-search-bar-container input').hasClass('no_js')) {
152    navigationSearchField.addEventListener('keyup', function (e) {
153      if (e.keyCode === 13) {
154        const baseURL = window.location.protocol + '//' + window.location.host
155        const searchURL = baseURL + '/suche?q=' + navigationSearchField.value
156
157        window.location.replace(searchURL)
158      }
159    })
160  }
161}
162
163if (navigationSearchFieldCloseButton) {
164  // Schließen-Button barrierefrei machen
165  navigationSearchFieldCloseButton.setAttribute('tabindex', '0')
166  navigationSearchFieldCloseButton.setAttribute('role', 'button')
167  navigationSearchFieldCloseButton.setAttribute('aria-label', 'Suche schließen')
168
169  navigationSearchFieldCloseButton.addEventListener('click', function () {
170    toggleSearch()
171    // Fokus zurück auf den Suche-Button setzen
172    showSearchFieldButton.focus()
173  })
174
175  // Keyboard-Support für Schließen-Button
176  navigationSearchFieldCloseButton.addEventListener('keydown', function(e) {
177    if (e.keyCode === 13 || e.keyCode === 32) {
178      e.preventDefault()
179      toggleSearch()
180      showSearchFieldButton.focus()
181    }
182  })
183}
184
185if (navigationSearchFieldFireButton) {
186    // Such-Button barrierefrei machen
187    navigationSearchFieldFireButton.setAttribute('tabindex', '0')
188    navigationSearchFieldFireButton.setAttribute('role', 'button')
189    navigationSearchFieldFireButton.setAttribute('aria-label', 'Suche starten')
190
191    navigationSearchFieldFireButton.addEventListener('click', function () {
192      if(!$('#navigation-search-bar-container input').hasClass('no_js')) {
193        const baseURL = window.location.protocol + '//' + window.location.host
194        const searchURL = baseURL + '/suche?q=' + navigationSearchField.value
195
196        window.location.replace(searchURL)
197      }
198      else {
199          $('#form_kesearchform').submit();
200      }
201    })
202
203    // Keyboard-Support für Such-Button
204    navigationSearchFieldFireButton.addEventListener('keydown', function(e) {
205      if (e.keyCode === 13 || e.keyCode === 32) {
206        e.preventDefault()
207        if(!$('#navigation-search-bar-container input').hasClass('no_js')) {
208          const baseURL = window.location.protocol + '//' + window.location.host
209          const searchURL = baseURL + '/suche?q=' + navigationSearchField.value
210
211          window.location.replace(searchURL)
212        }
213        else {
214          $('#form_kesearchform').submit();
215        }
216      }
217    })
218}
219
220// ESC-Taste zum Schließen der Suche
221if (navigationSearchFieldContainer) {
222  navigationSearchFieldContainer.addEventListener('keydown', function(e) {
223    if (e.keyCode === 27) { // ESC
224      if (navigationSearchFieldContainer.classList.contains('visible')) {
225        toggleSearch()
226        showSearchFieldButton.focus()
227      }
228    }
229  })
230}
231
232$(document).ready(function () {
233  if ($('.ce-navigation-wrapper').length === 1) {
234    $('body').scrollspy({ target: '.ce-navigation-wrapper' })
235  }
236
237  /** fe_manager form for registration */
238
239  $('.js-femanager-field-country').on("change", function() {
240    if($(this).val() == 'DEU') {
241      $('.femanager_fieldset.femanager_state').removeClass('d-none');
242    } else {
243      $('.femanager_fieldset.femanager_state').addClass('d-none');
244    }
245  })
246})
247
248// Slider Touchswipes nachgeruestet
249$('.carousel').on('touchstart', function (event) {
250  const xClick = event.originalEvent.touches[0].pageX
251  $(this).one('touchmove', function (event) {
252    const xMove = event.originalEvent.touches[0].pageX
253    const sensitivityInPx = 5
254
255    if (Math.floor(xClick - xMove) > sensitivityInPx) {
256      $(this).carousel('next')
257    } else if (Math.floor(xClick - xMove) < -sensitivityInPx) {
258      $(this).carousel('prev')
259    }
260  })
261  $(this).on('touchend', function () {
262    $(this).off('touchmove')
263  })
264})
265
266const urlShareElement = document.querySelectorAll('.contact .link span')
267for (let i = 0; i < urlShareElement.length; i++) {
268  if (urlShareElement[i].textContent === window.location.href) {
269    urlShareElement[i].parentElement.remove()
270  }
271}

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.