IPA-Kredse i Danmark

let piecalAJAX = { ajaxURL: "https://ipa-dk.dk/ipa-dk/wp-admin/admin-ajax.php", ajaxNonce: "816cd601ce" } let alreadyExpandedOccurrences = []; function piecalPrepareCustomViewsForCalendar( views ) { let supportedEventHandlers = [ 'eventDataTransform', 'dateClick', 'eventClick', 'eventDidMount', 'dayCellDidMount', 'viewDidMount', 'viewWillUnmount', 'dayHeaderContent', 'dayHeaderDidMount' ]; for( let view in views ) { let viewProps = views[view]; for( let prop in viewProps ) { if( supportedEventHandlers.includes( prop ) ) { let eventHandlerCode = viewProps[prop]; let handlerFunction = new Function( 'info', eventHandlerCode ); viewProps[prop] = handlerFunction; } } // Remove customProps since we don't want those output inside the calendar object delete viewProps.customProps; // Add in the $atts['duration'] value if the view has a duration property. if( viewProps.duration ) { viewProps.duration = { months: 2 }; } } return views; } document.addEventListener('DOMContentLoaded', function() { var pieCalendarFirstLoad = true; var calendarEl = document.getElementById('calendar'); var calendar = new FullCalendar.Calendar(calendarEl, { headerToolbar: false, initialView: "dayGridMonth", editable: false, eventSources: [[{"title":"Sort Sol – Midt og Vestsjælland","start":"2025-10-09T12:00:00","end":"2025-10-12T12:00:00","details":"Midt og Vestsj\u00e6lland \nSORT SOL 9-12 okt 2025 og meget mere omkring Syd og S\u00f8nderjylland, vi k\u00f8rer med BUS. \/ F\u00c5 PLADSER\nKontakt XXX for yderligere information.","permalink":"https:\/\/ipa-dk.dk\/ipa-dk\/sort-sol-2\/","postType":"Page","postId":6164,"allDay":"1"}]], direction: "ltr", contentHeight: "auto", locale: "en-US", eventTimeFormat: {"hour":"2-digit","minute":"2-digit"}, dayHeaderFormat: { weekday: 'long' }, views: piecalPrepareCustomViewsForCalendar({"listUpcoming":{"type":"listMonth","duration":{"months":2},"customProps":{"niceName":"List - Upcoming"}}}), eventClick: function( info ) { info = piecalJS.eventClick( info, { appendOffset: false } ); }, eventDataTransform: function(event) { event = piecalJS.eventDataTransform( event ); return event; }, dateClick: function( info ) { info = piecalJS.dateClick( info ); }, eventDidMount: function( info ) { info = piecalJS.eventDidMount( info ); }, dayCellDidMount: function( info ) { info = piecalJS.dayCellDidMount( info ); }, dayHeaderContent: function( info ) { info = piecalJS.dayHeaderContent( info ); return info.text; }, dayHeaderDidMount: function( info ) { let defaultOptions = { showDates: true, locale: "en-US" }; info = piecalJS.dayHeaderDidMount( info, defaultOptions ); }, }); calendar.render(); window.calendar = calendar; }); function piecalChangeView( view ) { piecalCleanView( document.querySelector('.piecal-wrapper').getAttribute('data-view'), view ); document.querySelector('.piecal-wrapper').setAttribute('data-view', view); window.calendar.changeView(view); Alpine.store('calendarEngine').calendarView = view; Alpine.store('calendarEngine').viewTitle = window.calendar.currentData.viewTitle; Alpine.store('calendarEngine').viewSpec = window.calendar.currentData.viewSpec.buttonTextDefault; } // This function forces the calendar to re-render events when the view is changed, but only // when necessary. This prevents artifacts from custom views from persisting between view changes // when those views have the same or similar types, e.g. listMonth and listUpcoming. function piecalCleanView( oldView, newView ) { if( oldView.toLowerCase().includes( 'list' ) && newView.toLowerCase().includes( 'grid' ) ) { return false; } if( oldView.toLowerCase().includes( 'list' ) && newView.toLowerCase().includes( 'list' ) ) { window.calendar.changeView('dayGridMonth'); } if( oldView.toLowerCase().includes( 'grid' ) && newView.toLowerCase().includes( 'grid' ) ) { window.calendar.changeView('listMonth'); } } function piecalGotoToday() { console.log('today'); } function piecalNextInView() { window.calendar.next(); } function piecalPreviousInView() { console.log('prev'); } function piecalSkipCalendar() { let focusedCalendar = document.querySelector('.piecal-wrapper:focus-within'); let focusablesInCalendar = focusedCalendar.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"]'); let lastFocusable = focusablesInCalendar[focusablesInCalendar.length - 1]; let focusablesInDocument = document.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"]'); let targetFocusable = Array.prototype.indexOf.call(focusablesInDocument, lastFocusable) + 1; focusablesInDocument[targetFocusable].focus(); } document.addEventListener('alpine:init', () => { Alpine.store('calendarEngine', { viewTitle: "Loading", viewSpec: "Loading", buttonText: {}, showPopover: false, locale: "en-US", localeDateStringFormat: {"hour":"2-digit","minute":"2-digit"}, allDayLocaleDateStringFormat: [], calendarView: "dayGridMonth", eventTitle: "Loading...", eventDetails: "Loading...", eventType: "Loading...", eventStart: "Loading...", eventAllDay: false, eventActualEnd: null, eventEnd: "Loading...", eventUrl: "/", safeOutput( input ) { let scrubber = document.createElement('textarea'); scrubber.innerHTML = input; return scrubber.value; } }) }) window.addEventListener('DOMContentLoaded', () => { Alpine.store('calendarEngine').viewTitle = window.calendar.currentData.viewTitle; Alpine.store('calendarEngine').viewSpec = window.calendar.currentData.viewSpec.buttonTextDefault; Alpine.store('calendarEngine').buttonText = window.calendar.currentData.localeDefaults.buttonText; }) window.addEventListener('keydown', (e) => { if( e.keyCode == 27 || e.key == 'Escape' ) Alpine.store('calendarEngine').showPopover = false; })

Her ses alle de events som der udbydes i de forskellige kredse.

I kan trykke på de forskellige events og se status for tilmelding mv.

Klik på den enkelte kreds i menuen og se aktiviteter, beskrivelser af kredsene, bestyrelser og kontaktinformationer

Translate »
IPA Danmark
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.