PageSourceSearch

https://frequenceluz.fr/wp-content/themes/_/luz//cal-public.js?v=58

js frequenceluz.fr collected 2026-10-09 17:54:06 UTC 4,113 bytes, 153 lines download raw bytes

1$(function () {
2  var calendar
3
4  function getView() {
5    return window.innerWidth >= 768 ? "timeGridWeek" : "listWeek"
6  }
7
8  // function getTheadTop() {
9  //   var offset = $(".fc-scrollgrid-section-sticky").offset()
10  //   if (offset) {
11  //     return offset.top
12  //   }
13  //   return 115
14  // }
15
16  $document.on("tcf.render", function () {
17    if (calendar && typeof calendar.destroy === "function") {
18      calendar.destroy()
19    }
20    var calendarEl = document.getElementById("calendar")
21    $(calendarEl).closest(".leaf").removeClass("leaf")
22
23    if (calendarEl) {
24      calendar = new FullCalendar.Calendar(calendarEl, {
25        initialView: getView(),
26
27        listDaySideFormat: false,
28
29        height: "auto",
30
31        allDaySlot: false,
32        // slotDuration: { minutes: 2.5 },
33        slotDuration: { minutes: 2.5 },
34        // slotDuration: { minutes: 15 },
35        slotLabelInterval: { minutes: 15 },
36        slotLabelFormat: {
37          hour: "numeric",
38          minute: "2-digit",
39          omitZeroMinute: false,
40          meridiem: "short",
41        },
42
43        droppable: false,
44        editable: false,
45        timeZone: "UTC",
46
47        headerToolbar: false,
48        validRange: {
49          start: "1900-01-01",
50          end: "1900-01-08",
51        },
52
53        // slotMinTime: "08:30",
54        slotMinTime: "00:00",
55        // slotMaxTime: "22:15",
56        // slotMaxTime: "24:15",
57        slotMaxTime: "24:00",
58
59        dayHeaderFormat: { weekday: "short" },
60        locale: "fr",
61
62        windowResize: function () {
63          // getTheadTop()
64          calendar.changeView(getView())
65        },
66
67        eventClick: function (info) {
68          info.jsEvent.preventDefault()
69          info.jsEvent.stopPropagation()
70          if (info.event.url) {
71            try {
72              var url = new URL(info.event.url)
73              var pathname = url.pathname
74              go(pathname)
75            } catch (e) {}
76          }
77        },
78
79        eventMouseEnter: function (info) {
80          var $el = $(info.el)
81          $el.css({
82            "min-height": $el.outerHeight() + "px",
83            height: "auto",
84            position: "relative",
85          })
86        },
87        eventMouseLeave: function (info) {
88          var $el = $(info.el)
89          $el.css({
90            "min-height": "",
91            height: "",
92            position: "",
93          })
94        },
95
96        eventDidMount: function (info) {
97          info.el.id = info.event.id
98        },
99        eventContent: function (info) {
100          var dom = []
101
102          var time = document.createElement("div")
103
104          time.className = "fc-event-time"
105          time.innerHTML = info.timeText
106          dom.push(time)
107
108          var title = document.createElement("strong")
109          title.innerHTML = info.event.title
110          dom.push(title)
111
112          if (info.event.extendedProps.type === "podcasts") {
113            title.innerHTML += " "
114            var redif = document.createElement("abbr")
115            redif.title = "Rediffusion du " + info.event.extendedProps.published
116            redif.innerHTML = "*"
117            title.append(redif)
118          }
119
120          if (info.event.extendedProps.description) {
121            var desc = document.createElement("div")
122            desc.innerHTML = info.event.extendedProps.description
123            dom.push(desc)
124          }
125
126          if (info.event.extendedProps.authors) {
127            var em = document.createElement("em")
128            var authors = info.event.extendedProps.authors.map(function (item) {
129              return item.name
130            })
131            if (authors.length) {
132              em.innerHTML = "par " + authors.join(", ")
133              dom.push(document.createTextNode(" "))
134              dom.push(em)
135            }
136          }
137
138          if (info.backgroundColor === "#ffffff") {
139            info.borderColor = info.textColor
140          } else {
141            info.borderColor = info.backgroundColor
142          }
143
144          return { domNodes: dom }
145        },
146
147        events: calData,
148      })
149      calendar.render()
150      // getTheadTop()
151    }
152  })
153})

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.