The events calendar¶
The events calendar is the platform's diary of events and meetings:
site-wide happenings with a date/time, a location, a description, and an
optional list of attendees who can be invited and can RSVP. It is
reached at /calendar/list — an events list alongside a month/week/day
calendar widget.
This is a standalone events calendar. It does not aggregate deal key dates, figures reminders, or tasks — those are separate features. (A different "spend calendar" under turnover is unrelated.)
What an event is¶
An event is stored in the calendar table with: a name, description,
start and end date/time (held in UTC), an address and postcode, a
type (appointmentType), an organizer, a maximum guests
count, a require-registration flag, a private flag, and a soft
link to another object (relatedType/relatedID) such as a deal or
company. Events are not all-day, recurring, or color-coded, and there
are no scheduled reminders — the platform has none of those for the
calendar.
The calendar views¶
- Events list — upcoming events as a simple list, each linking to its detail.
- Calendar widget — a full month/week/day/list calendar (FullCalendar) that loads events for the visible date range. Events are fetched by start/end date range, not by month.
Registration and attendees¶
Events can require registration with a maximum guest count; the
detail view shows remaining slots. Each event has an attendee list
(the calender_attendee table) with a per-attendee RSVP status.
Attendees are added when the event is created (all invited recipients are
auto-added) or later, individually or by expanding a group. On the detail
view, an admin — or the attendee themselves — can confirm or decline
an attendee.
When an event is saved with the email option on, each attendee receives a one-shot invitation email with a calendar (ICS) attachment. This is the only notification the calendar sends — there are no lead-time reminders, and RSVP changes don't notify the organizer.
Who can see and manage events¶
- View is controlled per event by an object-level ACL (object type
calendar) enforced in the query, so users only see events they are permitted to. By default aviewgrant is open. - Add event is shown to
adminusers; edit defaults to the event creator andsuperusers(with theadminrole); delete and admin default tosuperusers. See the permissions matrix.
Why does the calendar change unexpectedly¶
- An event you could see disappeared — its view ACL or your roles changed; visibility is filtered per user in the query.
- Registration slots changed — attendees were added or removed; remaining slots are the max guests minus current attendees.
- An event shows different times to different people — times are stored in UTC and formatted in the viewer's display; check the UTC value if a time looks off.
What the events calendar is not¶
- Not a deal timeline — it does not surface deal period dates; those live on the deal.
- Not a figures/turnover calendar — that is the separate spend calendar.
- Not a reminder system — the only email is the invitation sent at save time.
Related pages¶
- Creating a calendar event
- Permissions matrix — the
calendarobject ACL