1async function loadEvents() { 2 try { 3 const response = await fetch(ckanext_mobidata_calendar); 4 if (!response.ok) { 5 throw new Error('Failed to fetch ' + ckanext_mobidata_calendar); 6 } 7 const events = await response.json(); 8 9 function mergeObjects(obj1, obj2) { 10 for (let key in obj2) { 11 obj1[key] = obj2[key]; 12 } 13 return obj1; 14 } 15 16 let my_viewoptions = {viewToOpenOnFirstLoad: "all-events"}; 17 let myoptions = mergeObjects(__TRANSLATION_OPTIONS, my_viewoptions); 18 19 const calendarInstance1 = new calendarJs("calendar", myoptions); 20 calendarInstance1.setOptions({ 21 manualEditingEnabled: false, 22 exportEventsEnabled: false, 23 dragAndDropForEventsEnabled: false, 24 allowHtmlInDisplay: true, 25 fullScreenModeEnabled: false, 26 showHolidays: false, 27 shortcutKeysEnabled: false, 28 autoRefreshTimerDelay: 0, 29 tooltipDelay: 100, 30 eventTooltipDelay: 100 31 }); 32 events.forEach(event => { 33 calendarInstance1.addEvent({ 34 from: new Date(event.from), 35 to: new Date(event.to), 36 title: event.title, 37 description: event.description, 38 location: event.location, 39 url: event.url 40 }); 41 }); 42 } catch (error) { 43 console.error('Error loading events:', error); 44 } 45} 46document.addEventListener('DOMContentLoaded', loadEvents);
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.