PageSourceSearch

https://www.gemeinde-altheim.de/typo3conf/ext/cm_package/Resources…/JavaScript/Dist/scripts.js?1700665114

js gemeinde-altheim.de collected 2026-10-02 20:13:47 UTC 3,794 bytes, 105 lines download raw bytes

1document.addEventListener("DOMContentLoaded", function () {
2  switchNewsCalendar(); //Switched zwischen den Kalendereinträgen und Newseinträgen on click
3  scrollToBreadcrumbOrC7Details();
4});
5
6window.addEventListener("load", function () {
7  smoothMenu();
8  toggleAccessibilityOptions();
9});
10
11function scrollToBreadcrumbOrC7Details() {
12  if (window.location.href.indexOf("c7-item=") > 0) {
13    const c7Element = document.querySelector(".frame-type-html");
14    c7Element?.scrollIntoView({ block: "start" });
15  } else {
16    let breadcrumb = document.getElementById("breadcrumb");
17    breadcrumb?.scrollIntoView({ block: "start" });
18  }
19}
20
21function smoothMenu() {
22  let navBarToggler = document.querySelector("header .navbar-toggler");
23  let navbarMainNavi = document.getElementById("mainnavigation");
24  let body = document.querySelector("body");
25  let bodyBg = document.querySelector(".body-bg");
26
27  //Erstelle neues Element und füge es in Body zum Schluss ein
28  let newBodyBackgroundResp = document.createElement("div");
29  newBodyBackgroundResp.classList.add("body-bg-after");
30  bodyBg.insertAdjacentElement("beforeend", newBodyBackgroundResp);
31
32  //Beim Klick auf den Menü-Button, lass den Background aufblitzen
33  navBarToggler.addEventListener("click", function () {
34    newBodyBackgroundResp.classList.toggle("menu-open");
35    body.classList.toggle("locked");
36  });
37
38  //Beim Klick auf alles außer das aufgeklappte Menü, schließe das Menü
39  newBodyBackgroundResp.addEventListener("click", function () {
40    navBarToggler.classList.add("collapsed");
41    navBarToggler.setAttribute("aria-expanded", "true");
42    navbarMainNavi.classList.remove("show");
43    newBodyBackgroundResp.classList.remove("menu-open");
44    body.classList.remove("locked");
45  });
46
47  //Bei Escape, verhalte dich wie wenn du auf Body-bg-after drückst
48  document.addEventListener("keydown", function (event) {
49    if (event.key === "Escape") {
50      navBarToggler.classList.add("collapsed");
51      navBarToggler.setAttribute("aria-expanded", "true");
52      navbarMainNavi.classList.remove("show");
53      newBodyBackgroundResp.classList.remove("menu-open");
54      body.classList.remove("locked");
55    }
56  });
57}
58
59function switchNewsCalendar() {
60  let buttonNews = document.querySelector(".news-calendar-switch .news-button");
61  let buttonCalendar = document.querySelector(
62    ".news-calendar-switch .calendar-button"
63  );
64  let sectionNews = document.querySelector(
65    ".section-row-news .section-column-news"
66  );
67  let sectionCalendar = document.querySelector(
68    ".section-row-calendar .section-column-calendar"
69  );
70
71  const setHeightWithPreload = () =>
72    document
73      .querySelectorAll("c7-slides .swiper-wrapper")
74      .forEach((item) => (item.style = ""));
75
76  if (buttonNews) {
77    buttonNews.classList.add("active");
78    sectionNews.classList.add("active");
79    buttonNews.addEventListener("click", function () {
80      buttonNews.classList.add("active");
81      buttonCalendar.classList.remove("active");
82      sectionNews.classList.add("active");
83      sectionCalendar.classList.remove("active");
84      setTimeout(setHeightWithPreload, 1);
85    });
86    buttonCalendar.addEventListener("click", function () {
87      buttonNews.classList.remove("active");
88      buttonCalendar.classList.add("active");
89      sectionNews.classList.remove("active");
90      sectionCalendar.classList.add("active");
91      setTimeout(setHeightWithPreload, 1);
92    });
93  }
94}
95
96function toggleAccessibilityOptions() {
97  let settingsButton = document.querySelector(".accessibility-settings button");
98  let settingsContainer = document.querySelector(
99    ".accessibility-settings .accessibility-buttons-container"
100  );
101
102  settingsButton.addEventListener("click", function () {
103    settingsContainer.classList.toggle("open");
104  });
105}

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.