Discourse Calendar

Can we sort out a better way to handle Time Zones? It would be nice to have the time zones involved default in a more helpful way.

I’m currently working on a project where everyone is in the same location. When users leave out time zones, they default to UTC time zone. Most of my users are not software developers, and would need an explanation of what UTC even is.

Both the calendar view and the event have time zones associated with them.

Currently I think the zone of the calendar view is based on my browser’s idea of its own zone, but if we’re talking about physical events in a given location, it would be much more useful to use the zone associated with that location. Could we just set this in the calendar tag in the first post?

[calendar timezone="Australia/Sydney"]

When entering an event for a calendar which has a timezone, I’d like the timezone to default to that of the calendar. If we used the timezone presented by the posting user, or otherwise associated with that user, that would also work OK. Defaulting to UTC is guaranteed to be wrong and confusing.

There’s another wrinkle which is likely to come up - daylight savings. I haven’t looked at what’s under the hood, but this needs to be handled carefully, with different offsets from UTC likely to be in play within a single month view.

1 Like

this is great. is there a way to default to the list view? The hour long event titles don’t really show up well, but starting at list could alleviate that.

1 Like

Creating a post with two dates creates an event that starts on the first date and ends on the second. Is there a way to add two dates to a post so they are treated as separate events?

No it’s not possible. You should create two posts for this. No plan to support this atm.


Not totally against this, but having worked a lot with timezones this year I have one request. If you want me to work on this kind of feature I want a detailed example:

What is the raw of the post, what you expect to see for each timezone, eg: I would expect userA with browser timezone in Paris to see xxxx and I see zzz atm, I would expect userB with browser timezone in Singapore to see xxxx and I see zzz atm…


I’d like to be able to use a calendar tag that specifies the timezone,
and then use that timezone throughout.

First Post:

[calendar timezone="Australia/Sydney"]

Subsequent Post:


The above post, with no timezone specified, should use the timezone of
the calendar, not UTC.

For my current project, I would prefer that the calendar should be
displayed using its own timezone, regardless of timezones of users.
This is preferable for events where attendees are going to show up
physically, even if they might be viewing the calendar from another
timezone, such as if viewing before travel to an event.

I can imagine use cases like online or phone meetings across time zones
where users would be better served by a view using their own timezone
(presumably from their browser). Maybe that could be a setting in the
calendar tag? Mouse-over on an event in the calendar could show a
pop-up with the time in the user’s time zone and the calendar’s time
zone, and the pop-up would also provide space for a less truncated event

1 Like

Is there a way to change the language of the calendar ?

Not ATM, wouldn’t be very hard to implement though.


Thank, also was wondering if there’s a way to change the color of an event ?

It would be awesome if this included a tooltip with a full event title on hoover. Right now, if you have a one-day event, the title is practically invisible so you need to click which scrolls you away from the calendar. Or am I doing something wrong?



I love this idea but think we should take it one step further.

On click we should do something like the user card, aka a “post card”, and it can offer to take you to the post if you wish.

@joffreyjaffeux / @zogstrip thoughts? should we assign this out to someone?


I like the idea but I haven’t been bothered enough by the jump to actually need it. Especially when we have automatic deletion of posts that includes a past date.

Maybe #pr-welcome?


Are those calendar topics composable?

For eg. there is a separate calendar topic for everyone, and the boss wants to see all calendars combined?

Level 2: filterable calendar view

Level 3: can compose filtered calendars

So assume I use calendar plugin to track holidays.

How do you achive the following:

Ok, you use the " holiday calendar topic id". There are 4 people working on a project. All workers (30+) use discourse. We’d like to use this calendar for capacity planning of the project, so we need to filter people on that project. How could one achive that?

OTOH one might need calendar composition to see more calendars in one place.

I can find that setting searchinig the settings, but I cannot see it under /admin/site_settings/category/plugins?filter=calendar.

  1. Whether I enable this plugin or disable, there is only 1 calendar button in my msg compose window, i.e. shown below. (the blank space just before the gear icon is another, separate issue).
  2. When I clicked on that calendar icon, shown in the above image, a simple current time/date button is inserted in my post. Which, I don’t know, is useful in what way.
  3. And if manually type this bbcode
    nothing happens.

Can somebody pls guide me as to what is the purpose of this plugin and how does it differ with original calendar function of the discourse core?
And how can I benefit from this plugin. From seeing the screen shots shown in the first post of this topic, it seems useful to me somehow.

This icon is not related to discourse-calendar, this is a button to insert timezone aware dates.

Calendar code only works in first post of a topic, and will be filled by subsequent posts using dates (inserted with the button mentioned before).

In other words, discourse-calendar uses the dates system of discourse core to work.


Thanks for clearing some of the doubts.

But, Even if I insert the calendar bbcode in the first post of topic, there is no visible change or benefit of this.

Can you pls elaborate a bit more on this plugin usage. Perhaps with some example.

Nothing I would say has not been said in first post of this topic. Please provide screenshot of your current state, as it’s totally unclear what you are doing ATM.


I’m trying to achieve something with this plugin in this way.
But clearly am doing something wrong. Or not doing something, which is basic to this.

As the preview on right side pane is showing, nothing is happening or appearing.
I’m failing to understand the purpose or function of this plugin.
In the background you can see that calendar plugin is enabled.
Kindly guide.