Repository navigation
What's Changed
New features
- Month view with a day list for busy days and a quick switch between the week and month views.
- Events that span several days, shown as bands above the week grid.
- Creating an event by selecting a time range in the week view — drag with the mouse or use two taps on a touch screen.
- Per-event time zone: an event remembers the time zone it was scheduled in; the selector shows the UTC offset of every zone.
- Event description and event history.
- E-mail reminders about upcoming events: reminders of the event, personal reminders per event or personal defaults, with a per-user opt-out.
- E-mail notifications about created, changed and deleted events and about membership changes, with a per-project recipient matrix like the one of MantisBT itself (#7).
- Replies to invitations: members say whether they will take part — on the event page or from the link in the mail; a list of invitations awaiting a reply is reachable from the calendar header.
- iCalendar export: every event can be downloaded as an
.icsfile, linked from the mails and the event page. - Events are coloured by project, with a project legend that switches the current project with one click.
- Open an event by its number from the bottom toolbar of the calendar.
- 12-hour time format (1:30 PM), a personal setting that by default follows the MantisBT date format (#105).
- The administrator chooses where the calendar sits on the issue page — a row of the issue details, a block of its own below the notes, or each user's choice (based on #58 by @paspiz85, thank you!). The block can be collapsed and has its own 0–24 toggle.
- Personal calendar settings moved to the "Event calendar" tab of My Account.
- A manual check for a newer release on the plugin settings page.
- Public API for other plugins: create events, write to the event history, read and change replies and reminders of a user, get the
.icsfile, ask who would be notified, and subscribe to calendar signals. The TelegramBot plugin 2.0+ uses it to manage events and deliver notifications through Telegram. See Public API for other plugins. - Translations updated: English, Russian, Spanish, Chinese (Simplified).
Fixes
- Recurring events no longer shift by one hour across daylight saving time transitions (#104).
- Access denied for non-administrators on event actions (#103).
- Events of the displayed period are loaded with one query.
- Access checks now follow the project of the event, and user-supplied texts are escaped everywhere they are shown.
- Updated dependencies:
rlanvin/php-rrule3.0.0,google/apiclient2.16.1 and its stack (phpseclib3.0.56 with security fixes).
Upgrade notes
- The upgrade converts recurring events: their rules are re-anchored to the time zone of the event's author, so that occurrences keep their local time across DST transitions (#104). The conversion cannot be undone — back up the database and check the time zones in the user profiles before upgrading. The upgrade asks for confirmation before any change.
- Reminders, notifications and replies to invitations are switched off after the upgrade and are enabled on the plugin settings page.
- The 2.7.x–2.8.x line is closed: users of 2.7.0–2.8.0 should upgrade to 3.0.0.
Requirements
- MantisBT 2.26.0 or newer, PHP 7.4 or newer.
- For MantisBT 2.14 – 2.25.x use v2.6.5.
Download
Calendar-v3.0.0.zip in the Assets below.
Full Changelog: v2.8.0...v3.0.0