PageSourceSearch

https://progulka-v-temnote.ru/js/pub_scripts.js?_v=717823

js progulka-v-temnote.ru collected 2026-10-07 17:04:13 UTC 5,761 bytes, 82 lines download raw bytes

1const Pt = (e) => ['Январь','Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'].indexOf(e);
2        window.initCalendar = (e = null, validDates = [],clsDisabled = 'prev-date') => {
3			console.log('init calendar',e);
4			console.log('init validaDates', validDates);
5            let t = null,
6                n = !1,
7                i = null,
8                s = null,
9                r = null,
10                o = !1;
11            e
12                ? ((n = !0), (t = new Date(+e.year, Pt(e.month), +e.day, 0, 0, 0, 0)), (i = +e.day), (s = Pt(e.month)), (r = +e.year))
13                : ((t = new Date()), (i = new Date().getDate()), (s = new Date().getMonth()), (r = new Date().getFullYear()));
14            document.querySelectorAll(".calendar").forEach((e) => {
15                const a = e.querySelector(".calendar__days"),
16                    l = e.querySelector("#today"),
17                    c = e.querySelector("#clear"),
18                    d = e.querySelector(".date__month"),
19                    u = e.querySelector(".date__year"),
20                    p = e.querySelector(".calendar__btn--next"),
21                    h = e.querySelector(".calendar__btn--prev");
22                let f = [];
23                e.querySelector(".calendar__months") && (f = Array.from(e.querySelector(".calendar__months").children).map((e) => e.textContent));
24                const g = () => {
25                    t.setDate(1);
26                    let e = "";
27                    const r = new Date(t.getFullYear(), t.getMonth() + 1, 0).getDate(),
28                        l = new Date(t.getFullYear(), t.getMonth(), 0).getDate(),
29                        c = new Date(t.getFullYear(), t.getMonth() + 1, 0).getDay(),
30                        p = 0 === t.getDay() ? 7 : t.getDay(),
31                        h = 7 - c - 1;
32                    (d.innerHTML = f[t.getMonth()]), (u.innerHTML = t.getFullYear());
33                    for (let t = p - 1; t > 0; t--) e += `<div class="prev-date">${l - t + 1}</div>`;
34                    for (let a = 1; a <= r; a++)
35                        n || o || a !== i || f.indexOf(d.textContent) !== new Date().getMonth() || parseInt(u.textContent) !== new Date().getFullYear()
36                            ? (n && !o && a === i && f.indexOf(d.textContent) === t.getMonth() && parseInt(u.textContent) === t.getFullYear()) || (o && a === i && f.indexOf(d.textContent) === s && parseInt(u.textContent))
37                                ? (e += `<div class="day today">${a}</div>`)
38                                : parseInt(u.textContent) < new Date().getFullYear() ||
39                                  (parseInt(u.textContent) === new Date().getFullYear() && f.indexOf(d.textContent) < new Date().getMonth()) ||
40                                  (parseInt(u.textContent) === new Date().getFullYear() && f.indexOf(d.textContent) === new Date().getMonth() && new Date().getDate() > a)
41                                ? (e += `<div class="prev-date">${a}</div>`)
42                                : (validDates.length && !validDates.includes(new Date(t.getFullYear(), t.getMonth(), a).getTime()) ? (e += `<div class="${clsDisabled}">${a}</div>`) : (e += `<div class="day">${a}</div>`))
43                            : (e += `<div class="day today">${a}</div>`);
44                    for (let t = 1; t <= h + 1; t++) e += `<div class="next-date">${t}</div>`;
45                    (a.innerHTML = e),
46                        a.querySelectorAll(".day").forEach((e) => {
47                            e.addEventListener("click", (e) => {
48                                const t = {
49                                    day: e.currentTarget.textContent,
50                                    month: e.currentTarget.closest(".calendar").querySelector(".date__month").textContent,
51                                    year: e.currentTarget.closest(".calendar").querySelector(".date__year").textContent,
52                                    calendarId: e.currentTarget.closest(".calendar").id,
53                                };
54                                document.dispatchEvent(new CustomEvent("dateChoosen", { detail: { payload: t } }));
55                            });
56                        });
57                };
58                a &&
59                    a.addEventListener("click", (e) => {
60                        const n = e.target;
61                        n.classList.contains("day") &&
62                            ((o = !0), (i = parseInt(n.textContent)), (s = f.indexOf(d.textContent)), (r = parseInt(u.textContent)), t.setMonth(f.indexOf(d.textContent)), t.setFullYear(parseInt(u.textContent)), g());
63                    }),
64                    h &&
65                        h.addEventListener("click", () => {
66                            (o = !0), t.setMonth(t.getMonth() - 1), g();
67                        }),
68                    p &&
69                        p.addEventListener("click", () => {
70                            (o = !0), t.setMonth(t.getMonth() + 1), g();
71                        }),
72                    l &&
73                        l.addEventListener("click", () => {
74                            (o = !1), (i = new Date().getDate()), (s = new Date().getMonth()), (r = new Date().getFullYear()), t.setMonth(new Date().getMonth()), t.setFullYear(new Date().getFullYear()), g();
75                        }),
76                    c &&
77                        c.addEventListener("click", () => {
78                            (o = !1), t.setMonth(new Date().getMonth()), t.setFullYear(new Date().getFullYear()), t.setDate(new Date().getDate()), g();
79                        }),
80                    a && g();
81            });
82        };

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.