This plugin allows you to add and manage events with Discourse.
-
Add an event to a topic.
-
Features Agenda view, Calendar view, RSVP, timezone support and much more.
-
Events can be enabled sitewide (i.e. for all the categories) or for specific categories.
For issues, feature requests, and discussions visit the Events category on the Pavilion Coöp site:
Setup
Not sure how to install a plugin? Follow the steps here.
Features
Agenda and Calendar
- The plugin allows two ways of listing the events, Agenda view and Calendar view.
- These views can be enabled for all the categories using site settings, or for specific categories using the category settings.
- The agenda view displays the events in chronological order from earliest to latest occuring event.
- The calendar view displays a calendar and marks the events on it.
- You can optionally remove the past events from agenda and calendar by changing the site settings
events remove past from agenda
andevents remove past from calendar
.
RSVP
- The user can indicate they are
Going
to the event. - The event post has a list of people who have marked themselves as
Going
to attend the event. - The site setting for this feature is
events rsvp
.
Locations Plugin Integration
- The plugin offers integration with
Locations
plugin. - The user can set a location for the event, which will be marked on the map.
- There is a setting to remove the past events from the map called
events remove past from map
.
Time and Timezone Formatting
- Datetimes are stored as Unix timestamps (i.e seconds since epoch). This makes it easy to order the topics using the existing topic list filter structure.
- Time conversion and formatting on the client is handled by moment.js; see e.g. the eventLabel helper. Should probably add settings that allow the time format to be changed.
- Time selection dropdown is handled by the jquery-timepicker plugin. Probably could be replaced by a native solution in the future. And the increment period of the times in the dropdown should be a setting.
iCal Feed
-
When on the calendar view, there’s a subscribe button to subscribe to the events calendar, as a webcal feed or an RSS feed.
-
Recently, we added a feature to support subscribing the feed of private forums using the user’s api key.(thanks to haveyaseen)
-
It is possible to get a .ics/ICalendar file of the topics with the date, time, description and url of the topic. time_zone is required and you can choose the time zone for your location.
Events Integration
Events Integration lets you integrate calendars, event discovery, event ticketing, event management and events from social network events Discourse. It currently supports the following service providers
Provider | Type | Notes |
---|---|---|
iCalendar | Calendar Client | e.g. Google Calendar or Outlook Calendar |
Eventbrite | Event Discovery | |
Meetup | Event Groups | Requires Meetup Pro |
Humanitix | Event Ticketing | |
Eventzilla | Event Management |
Any other calendaring, event discovery, event ticketing, event management or social network can be integrated. Please reach out to product@pavilion.tech for details.
How does it work?
The integration works with the event service providers you’re already using. When you create events in a provider like Google Calendar, Eventbrite or Meetup, the plugin lets you automatically integrate those events into your Discourse community. That means you can schedule in your calendar, run ticketing in Eventbrite, publicise on Meetup.com and discuss on your Discourse.
Here’s a little intro to the functionality I’ve made for the beta
Loom Message - 6 October 2022 | Loom
Learn more about getting started with the DEIP here: Connecting external calendars to the Events plugin - Docs - Coöperative
And read more about the plugin in the documentation
Research and Development
The DEIP is the product of an EU-funded research project conducted by Pavilion, and is part of a wider project to develop a modern event data portability standard. Read more about the project here
https://docs.google.com/document/d/1-oJsXivT_KRBZ-wUQ-TbHdO7Z-qf7z4GeiRiJ014V-E/edit?usp=sharing
DEIP: Discourse Events Integration Plugin - DAPSI - Data Portability & Services Incubator