Events Plugin 📆

(Jerry) #276

Hi @angus. We are finding this plugin really useful for teamwork, thank you :slight_smile:

There seems to be a small problem with display of events in the calendar, when the events are multi-day spanning a month end.

Whilst most events are shown with a title at the start of the event, inside the event line, if they are multi-day spanning a month end the title is not shown at the start of the event line:

(see the event starting 29th May)

Compare this to the multi-week event above which has the title clearly shown at the start of each line.

Same problem in the next month, though it does show at the start of the following week’s line…

2 Likes
(François Douville) #277

That’s my request so I just want to make sure we talk about the same thing.

For one topic (one event), I want multiple dates. For example :

Baseball game
Dates : july 14, august 31, december 22

Also, it could have the option of periodicity. For example :

Baseball game
Monday 9:00 to 11:00 am, each week for 8 weeks

For now, I have to create multiple topics (events) for the same event but with different dates. Some events have ten different dates so it is ten topics. Not useful…

Thanks so much @angus

2 Likes
(Greg) #278

I think there may be a bug with the main calendar view… I have an event here created for 10am in the GMT-5 timezone - but I’m in the Europe/London timezone. Loading the ICS file into my email client, I correctly see 1500 (3pm) as the time for me - but in the calendar view it’s not converted:

Screenshot%20from%202018-05-10%2015-29-16

That should show 15:00 for me. Is this:

or is it just a bug?

(Greg) #279

Also the webcal:// link doesn’t seem to respect DST, I added it to Google and the events are an hour out - the forum is set to Europe/London, but the Google-side display is GMT. If there’s anything I can get logs-wise, just let me know.

(Tobias Eigen) #280

Your work so far and plans are great, Angus - nice work on this incredibly handy plugin.

Probably unreasonable, but with the RSVP feature I can see possibilities to stop relying on external services like eventbrite or gotowebinar for organizing events. For that, I am seeing the following features that would help:

  • event author (or moderators?) export rsvp list (already mentioned above)
  • guest rsvp for non-members, using email address (creates staged user and subscribes them to event?)
  • custom event fields for rsvp to fill out (what are you bringing, etc)
  • reminder notifications to those who rsvp (a la gotowebinar. 24 hours, 1 hour ahead of meeting)

Some other random feedback/ideas:

  • I am still missing the ability to add event details via the title edit pencil. I keep trying to do it and it doesn’t work, then I have to go find the bottom of the OP and edit it which is a little cumbersome. FWP but still. :wink:
  • on topic lists, event details take up alot of real estate, especially on mobile. is there an easy way to set it up so that only the date shows up, and nothing else? Then on click through people can find out the details about date and time. For past events, the exact time of day is not at all important on topic lists.
3 Likes
Event organizing in Discourse
(Angus McLeod) #281

Thanks for reporting this. Fixed.

https://github.com/angusmcleod/discourse-events/commit/6a1d9c8e30017e67777ed13b3ea4d5bb55e6c47c

@Francois_Douville Thanks for clarifying.

This is actually all expected behaviour. The logic determining what timezone is used to display an event is explained in some more detail here. Basically:

  1. User’s timezone is the default.

  2. If the timezone site setting is set, use that instead.

  3. If the event has a custom timezone, use that instead < ---- this applies in this case.

For the .ics file however, times are always converted to the user’s local time (see here).

You feel this is unexpected?

Could you post the full link you’re using here? Thanks.

@tobiaseigen All good ideas (and thanks for the reminder about the existing requests). Let’s put Eventbrite out of business.


Current tasklist

  1. Ensuring the rsvp feature v1 works.

  2. Ensuring emoji and html entities work in topic excerpts in event cards (see).

  3. Update event details in title edit area.

  4. Better layout of event details in topic list

  5. Rspec and unit tests updates.

  6. Event calendar for groups.

  7. Adding multiple events to one topic.

  8. Allowing Discourse Local Dates to be displayed in calendars.

  9. Add event details to onebox previews.

  10. Recurring events.

  11. Event rsvp list export.

  12. Guest rsvp.

  13. Rsvp custom fields

  14. Event reminders.

… I need @cpradio’s checklist plugin on meta :slight_smile:

10 Likes
(Greg) #282

I do. Perhaps a slightly more zoomed out screenshot might illustrate (by the way all this comes from this calendar):

Screenshot%20from%202018-05-11%2010-39-04

So in one view I have events at:

  • 14:00 on May 2nd - and that’s in BST which is my timezone, so it’s correct
  • 10:30 on May 11th - but in Amsterdam, so actually 9:30 in my timezone
  • 14:00 on May 17th - again, in my timezone so it’s right
  • 10:00 on May 25th - but in US East, so actually 15:00 my time

In other words, the view is misleading. When I see a calendar, I would expect everything to be shown in one timezone - that’s what you get from the webcal / ICS links, after all. Things get more fun if I move the 10:00 GMT-5 to the 17th:

Screenshot%20from%202018-05-11%2010-47-05

So clearly this is just a display thing, since the calendar knows 10:00 -5 is later than 14:00 +1. When you have a busy calendar, it becomes obvious that timezones are in play, but when there’s only one event on a given day I think it’s a natural assumption that it’s in your zone.

I read though your link, and for the most part it does makes sense - especially for the agenda view where there’s more room. Here I’d suggest either showing the timezone (possibly not enough space though), using local-dates (I think I saw that on your to-do?) or converting the time text to the browser timezone just for the calendar entry.

Some history: Until we set up the events plugin our calendar was on our website (now discontinued in favour of Discourse, but the code is here, it’s a Jekyll site using the iCalendar gem), and there we did convert all events to the browser timezone. My users seem reluctant to add webcal / ICS stuff to their own calendars, so I assume they’ll come to Discourse to see when events are - and then complain at me when they miss stuff.

Sure, it’s from the above linked calendar - webcal link. Here’s a shot of what Google did with it:

Screenshot%20from%202018-05-11%2010-58-23

Note how the timezone field is not editable, so while the URL is correct (timezone=Europe/London), the choice of UTC by Google is … odd, and annoying :stuck_out_tongue:

1 Like
(François Douville) #283

Is it possible to change the name of the list “Agenda” to other name? How?

#284

yes:
Go to Admin - Customize - Text Content and search for “Agenda”. First item should be the name of the agenda filter

(In French its “Administration - Personnaliser - Contenu”)

5 Likes
(Angus McLeod) #285

Thanks for going into detail @gwmngilfen, it’s very useful. As you say, this is a question of getting the display right. I’ll look at your use case either tomorrow or the day after.


This is fixed. cc @Francois_Douville

https://github.com/angusmcleod/discourse-events/commit/e5d44f23646576c76ab3dedf9cb9a98ffef9b25a

1 Like
(Angus McLeod) #286

iCal Feed

The ical feed should now be fully timezone aware.

https://github.com/angusmcleod/discourse-events/commit/7260f5c972594a3798914e2934d2f4f04018103a

Picking the timezone to display an event in

I don’t think this assumption holds for every case.

I’ve made the use of event timezones to display events a setting: events timezone event (default on).

The updated timezone display logic is now:

  1. Start with the user’s timezone

  2. If there is a default timezone set use that instead.

  3. If there is an event timezone and the setting events timezone event is on, use the event timezone.

So, in your case turn the setting events timezone event off.

Note that regardless of the setting, in the composer and the add event modal, the event timezone (if one exists) will always be used.

https://github.com/angusmcleod/discourse-events/commit/615e7718be58157c9727e2e0043f7762604cb45f

3 Likes
(Nichalas Petranek) #287

Seems to work just fine. I use the feature on my forum with no issues.

2 Likes
(Greg) #288

Thanks for the fast turnaround @angus, excellent support as ever.

However, this seems to have forced all events to the calendar timezone, rather than the user viewing the calendar. Setting that flag to off makes the calendar look right for me (as I’m the admin, I have the same timezone as the forum), but if I impersonate a user in another timezone (or just change the timezone on my laptop), the event is still wrong (although at least they’re all consistently wrong now :stuck_out_tongue:) - the event shows at 15:00 even for a user in the GMT-5 timezone.

What I was hoping for is to display events in the users timezone - is that possible, or going to cause mayhem? I don’t see a timezone setting under a user’s prefs, so I guess it’d have to be the browser environment?

(Jeremie Leroy) #289

Hi @angus,

I hope you are well, thanks for the great plugin developpment. Just this little bug is that since 2 days the currently Upgrading status is not moving. I cannot stop it. Any idea ?

Many thanks

(Angus McLeod) #290

Sounds like you’re talking about events timezone default?

If you have that set, it will override the localisation to the user’s timezone:

In other words, if both events timezone default and events timezone event are disabled, the event will be localised according to the timezone of the user.

Here’s an example from my sandbox:


hm. I haven’t come across this issue before. I upgrade my sandbox via docker/upgrade each time I push updates for this plugin. It could be an issue unrelated to the events plugin, but let’s assume it is for now.

Do you see anything at https://yoursite.com/admin/upgrade#/upgrade/discourse_events?

Are you able to ssh into your server and rebuild the container?

(Greg) #291

That’s where I’m going wrong. Seems to be working now - thanks!

1 Like
(Julia C) #292

I’m having problems getting events created in other categories to also appear in the events category.
Should they sync this way so that an event can relate to a particular category, but also be found in a collective events category that covers all categories?

Please link this reply if already covered elsewhere - I did search but found nothing.

(Angus McLeod) #293

Each category calendar will only show you events from that category.

However, there’s a site-level calendar at yoursite.com/calendar which will include events from all categories.

You can add a link to the site-level calendar:

  • By adding ‘calendar’ to the top menu site setting. This will add a “Calendar” button to the navigation buttons for the non-category topic lists.

  • By turning the setting events hamburger menu calendar link on. This will add a “Calendar” link to the hamburger menu.

3 Likes
(Julia C) #294

Thanks for this reply.

I think have created ‘calendar’ in the top menu site setting. Although I can’t see it appear and returning to it, it isn’t saved and won’t let me create:

I can’t find this?

Inputting URL mysite.com/calendar return error message that the page doesn’t exist or is private.

(Angus McLeod) #295

Could you type “events” into the site setting search take a screenshot of the results and paste it here?

Also please post a screenshot of yoursite.com/admin/plugins and yoursite.com/calendar.